/* Responsive QA corrections. Keep readable words intact; let components reflow. */
.wrap h1,.wrap h2,.wrap h3,.wrap h4,.wrap .button,.wrap .text-link,.wrap .privacy-button{word-break:normal;overflow-wrap:normal;hyphens:none}
.button{max-width:100%;height:auto;white-space:normal;line-height:1.45}
.button>span{flex-shrink:0}
.site-header .menu-toggle{background:transparent}
.faq-list summary>span{flex:0 0 20px;min-width:20px;text-align:center}
.work-video-grid figcaption{flex-wrap:wrap;gap:8px 15px}
.work-video-grid h4{flex:1 1 180px}
.work-video-grid figcaption>span{flex:0 0 auto}
#contact .contact-social{flex-wrap:wrap}
#contact .contact-social a{flex:1 1 145px;white-space:nowrap;overflow-wrap:normal}
#contact .contact-social a>span{flex-shrink:0}
.legal-page a{overflow-wrap:anywhere}
.legal-page h1,.legal-page h2,.doc-caption h2{word-break:normal;overflow-wrap:normal;hyphens:none}
.doc-controls button{flex:0 0 44px;min-height:44px;padding:8px}
.doc-controls p{min-width:0;overflow-wrap:normal}
@media(max-width:900px){.document-note{grid-template-columns:1fr;gap:16px}.doc-bottom .text-link{grid-column:1}}
@media(max-width:650px){
 .legal-page h1{font-size:clamp(24px,6.5vw,36px);line-height:1.2;letter-spacing:-.025em}
 .legal-page h2{font-size:22px;line-height:1.3}
 .doc-caption h2{font-size:22px}
 .document-note{padding:22px}
 #document-dialog{padding:56px 14px 18px}
 .doc-controls{gap:10px}
}
@media(max-width:420px){
 #request .inquiry-form textarea{min-height:190px}
 #request .request-task select{padding-left:10px;padding-right:4px}
 #contact .contact-bottom{grid-template-columns:1fr;justify-items:start;gap:16px}
 #contact .contact-bottom a{overflow-wrap:normal}
 .inner-hero .button{font-size:14px;padding:14px 17px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
