/* V66 global QA polish: consistent headline scales, accessible controls, safe spacing.
   Intentionally conservative: it does not alter the mechanics of any slider/form. */
:root{--wahab-heading-font:'Plus Jakarta Sans','DM Sans',system-ui,sans-serif;--wahab-body-font:'DM Sans',system-ui,sans-serif}
body.v30-site{font-family:var(--wahab-body-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.v30-site :is(h1,h2,h3,h4){text-wrap:balance;overflow-wrap:break-word}
body.v30-site main :is(h1,h2){font-family:var(--wahab-heading-font);font-weight:800;letter-spacing:-.048em}
body.v30-site main h1{font-size:clamp(2.125rem,4.6vw,3.75rem);line-height:1.1;max-width:100%;}
body.v30-site main :is(.v30-page-hero,.v32-art-hero,.v65-contact-hero,.v56-hero,.v61-insights-hero,.v61-post-hero,.v60-hero,.wp48-hero) h1{font-size:clamp(2.125rem,4.5vw,3.75rem);line-height:1.13}
body.v30-site main :is(.v31-block-header,.v32-motion-heading,.v60-panel-head,.v63-section-head,.v65-section-heading) h2{font-size:clamp(1.8rem,3.2vw,2.75rem);line-height:1.2}
body.v30-site main :is(p,li){overflow-wrap:break-word}
body.v30-site :is(a,button,input,textarea,select,summary):focus-visible{outline:3px solid #70acff;outline-offset:3px}
body.v30-site button:disabled{cursor:not-allowed;opacity:.58}
body.v30-site :is(.v30-btn,.v30-mobile-toggle,.v31-theme-toggle){touch-action:manipulation}
body.v30-site .v30-header{z-index:150}
body.v30-site img{max-width:100%}
/* Section rhythm: apply only to the shared non-immersive card sections. */
body.v30-site main :is(.v31-block,.v31-block-tint):not(.v31-stack-zone){scroll-margin-top:92px}
body.v30-site main :is(.v31-block-header,.v61-section-heading,.v63-section-head){margin-block-end:clamp(20px,3vw,36px)}
body.v30-site main :is(.v65-contact-gallery,.v65-contact-work,.v65-contact-quality){scroll-margin-top:90px}
@media(max-width:767px){
 body.v30-site main h1{font-size:clamp(2.05rem,8.5vw,3rem);line-height:1.14}
 body.v30-site main :is(.v30-page-hero,.v32-art-hero,.v65-contact-hero,.v56-hero,.v61-insights-hero,.v61-post-hero,.v60-hero,.wp48-hero) h1{font-size:clamp(2.05rem,8.5vw,3rem)}
 body.v30-site main :is(.v31-block-header,.v32-motion-heading,.v60-panel-head,.v63-section-head,.v65-section-heading) h2{font-size:clamp(1.62rem,6.5vw,2.15rem)}
 body.v30-site .v30-btn{max-width:100%;white-space:normal;text-align:center}
 body.v30-site :is(.v30-mobile-toggle,.v31-theme-toggle){min-width:44px;min-height:44px}
 body.v30-site main :is(.v31-block-header,.v61-section-heading,.v63-section-head){margin-block-end:22px}
}
@media(prefers-reduced-motion:reduce){
 body.v30-site *,body.v30-site *::before,body.v30-site *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
