/* MyLegalDocsAI UK — desktop/mobile parity layer. */
:root{
  --uk-safe-bottom:env(safe-area-inset-bottom,0px);
  --uk-touch:48px;
}
html,body{max-width:100%;overflow-x:hidden}
body{overflow-wrap:break-word}
img,svg,video,canvas{max-width:100%;height:auto}
input,textarea,select,button{font:inherit}
button,a,input,textarea,select{touch-action:manipulation}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{
  outline:3px solid #7890ff!important;
  outline-offset:3px!important;
}
.analysis-card,.offer-card,.review-page,.order-modal,.checkout-box,.uk-legal-page,.service-page-v532{
  min-width:0;
}
.analysis-card input,.analysis-card textarea,.analysis-card select,
.order-modal input,.review-page textarea{max-width:100%;box-sizing:border-box}
.analysis-card textarea{resize:vertical;min-height:220px}
.service-tabs-v51 label,.analyze-button,.primary-link,.header-cta,
.cookie-actions button,.order-modal button,.review-page button{min-height:var(--uk-touch)}
.offer-grid,.offers-grid,.pricing-grid-v51,.capabilities-grid,.knowledge-grid-v7{
  min-width:0;
}
[data-service='lawyer_review'],[data-value='lawyer_review'],[data-addon='lawyer_review'],
label:has(input[name='lawyer_review']),label:has(input[value='lawyer_review']),
.lawyer-review,.lawyer-offer,.professional-review-offer{display:none!important}

@media(max-width:900px){
  body{padding-bottom:calc(82px + var(--uk-safe-bottom))}
  .wrap{width:100%;max-width:100%;overflow:hidden}
  .site-header,.uk-site-header{padding-left:14px!important;padding-right:14px!important}
  .header-nav{gap:8px!important;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}
  .header-nav::-webkit-scrollbar{display:none}
  .header-nav a{flex:0 0 auto;white-space:nowrap}
  .hero-v51,.hero-v52,.hero-v72,.hero-v73,.uk-home-hero{
    grid-template-columns:1fr!important;
    gap:24px!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .hero-copy-v51 h1,.hero-copy-v72 h1,.hero-copy-v73 h1{
    font-size:clamp(38px,10.8vw,58px)!important;
    line-height:1.02!important;
    letter-spacing:-2px!important;
    overflow-wrap:anywhere;
  }
  .hero-lead{font-size:17px!important;line-height:1.6!important}
  .analysis-card{width:100%!important;max-width:100%!important;margin:0!important;padding:18px!important;border-radius:24px!important}
  .service-tabs,.service-tabs-v51,.service-tabs-v84{grid-template-columns:1fr!important}
  .service-tabs-v51 label{width:100%!important;min-width:0!important;padding:14px!important}
  .dropzone,.dropzone-v51{width:100%!important;min-height:112px!important;padding:16px!important}
  .analysis-card textarea{min-height:260px;font-size:16px!important;line-height:1.55!important}
  .analyze-button{width:100%!important;justify-content:center!important}
  .metrics-strip,.metrics-strip-v51{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-left:14px!important;margin-right:14px!important}
  .process-diagram-v551,.capabilities-grid,.pricing-grid-v51,.knowledge-grid-v7,.service-info-grid-v532{
    grid-template-columns:1fr!important;
  }
  .process-flow-v551,.capabilities-section,.pricing-section,.wibor-section,.service-cta-v532{
    margin-left:14px!important;margin-right:14px!important;padding-left:0!important;padding-right:0!important
  }
  .offer-grid,.offers-grid,.order-options,.review-options{grid-template-columns:1fr!important}
  .offer-card,.offer-card-v56,.pricing-grid-v51 article{width:100%!important;max-width:100%!important}
  .order-modal,.order-modal-panel,.checkout-box,.review-panel{
    width:calc(100% - 20px)!important;
    max-width:calc(100% - 20px)!important;
    max-height:calc(100dvh - 20px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    border-radius:22px!important;
    padding:18px!important;
  }
  #checkoutOverlay{padding:10px!important;align-items:center!important}
  .document-actions,.review-actions,.order-actions,.modal-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .document-actions a,.review-actions a,.review-actions button,.order-actions button,.modal-actions button{width:100%!important;justify-content:center!important}
  .uk-legal-page{width:100%!important;padding:24px 14px 70px!important}
  .uk-legal-page h1{font-size:clamp(36px,10vw,54px)!important;letter-spacing:-1.8px!important}
  .uk-legal-page h2{font-size:clamp(24px,7vw,34px)!important;letter-spacing:-.8px!important}
  .uk-legal-page p,.uk-legal-page li{font-size:16px!important;line-height:1.7!important}
  .uk-footer-grid{grid-template-columns:1fr!important;gap:26px!important}
  .uk-footer-bottom{display:grid!important;gap:8px!important}
  .cookie-banner{left:10px!important;right:10px!important;bottom:calc(10px + var(--uk-safe-bottom))!important;width:auto!important;max-width:none!important}
  .cookie-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  .cookie-actions button{width:100%!important}
}

@media(max-width:520px){
  .metrics-strip,.metrics-strip-v51{grid-template-columns:1fr!important}
  .hero-points{display:grid!important;grid-template-columns:1fr!important}
  .card-topline{align-items:flex-start!important;gap:8px!important;flex-direction:column!important}
  .cookie-actions{grid-template-columns:1fr!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}

@media print{
  .site-header,.site-footer,.cookie-banner,.header-nav,.header-cta,.service-cta-v532{display:none!important}
  body{padding:0!important;background:#fff!important;color:#000!important}
  .wrap,.uk-legal-page,.article-page-v56{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
}
