/* V16 refinement: existing palette, imagery, composition and motion are retained.
   This last contract resolves legacy type sizes, not the visual theme. */
:root {
 --audit-hero:clamp(2.5rem,4.5vw,4.75rem);
 --audit-page:clamp(2.5rem,4.45vw,4.5rem);
 --audit-section:clamp(2.25rem,3.2vw,2.875rem);
 --audit-card:clamp(1.5rem,1.85vw,1.875rem);
 --audit-sub:clamp(1.5rem,1.75vw,1.75rem);
 --audit-body:1.0625rem; --audit-lead:1.125rem;
 --audit-small:.9375rem; --audit-label:.875rem;
 --audit-nav:.9375rem; --audit-button:.9375rem;
 --audit-reading:1.75;
 --audit-measure:70ch;
 --audit-space-1:.5rem; --audit-space-2:1rem; --audit-space-3:1.5rem; --audit-space-4:2rem;
}
html[lang="ar"] {
 --audit-body:1.125rem; --audit-lead:1.1875rem;
 --audit-label:.875rem; --audit-nav:1rem; --audit-button:1rem;
 --audit-reading:1.85;
}
/* Do not mask responsive errors at document level. Rounded scenes clip locally. */
html,body {overflow-x:visible;}
body :is(figcaption,label,.text-link,.crumbs,.contact-label,.ftr-name) {font-family:var(--audit-face)!important;}
body :is(.text-link,.crumbs,.toc h2,.contact-label) {font-size:var(--audit-small)!important; line-height:1.6!important;}
body .toc h2 {letter-spacing:0;}
/* Legacy descendants must inherit the existing contrast-safe glass palette. */
body .scene-content :is(.crumbs,.crumbs span,.about-langs,.article-proof span,.scenario-note,.career-strip span) {color:var(--audit-muted)!important;}
body .scene-content :is(.article-body a,.privacy-body a,.sect-more a:not(.btn),.fin,.disc-num,.home-expertise-grid>a>span) {color:var(--audit-accent)!important;}
body .scene-content :is(.about-langs,.article-proof span,.scenario-note) {font-size:var(--audit-small)!important; line-height:1.65!important;}
body .scene-content .crumbs :is(a,span) {font-size:inherit!important;}
body .scene-content .home-expertise-grid>a>span {font-size:var(--audit-label)!important; line-height:1.6!important;}
body :is(.article-body h2,.case-body h2,.privacy-body h2,.cv-details h2,.contact-form .sect-h) {font-size:var(--audit-section)!important; line-height:var(--audit-card-leading)!important;}
body :is(.article-body h3,.case-body h3,.disc h3,.method-list h3,.lead-list h3) {font-size:var(--audit-sub)!important;}
body :is(.page-intro,.sect-copy,.man-body,.article-body p,.article-body>ul,.article-body>ol,.case-body p,.case-body>ul,.privacy-body p,.privacy-body>ul) {max-inline-size:var(--audit-measure);}
body .scene-content>:is(.sect-copy,.man-body) {margin-inline:auto;}
body :is(.article-body,.case-body,.role-body,.privacy-body) :is(p,ul,ol) {margin-block-end:1.25em;}
body :is(.article-body,.case-body,.privacy-body) :is(h2,h3) {margin-block:1.6em .65em;}
body :is(.article-body,.case-body,.privacy-body)>:first-child {margin-block-start:0;}
body :is(.case-title,.post-title,.role-title,.assignment dd,.related-title,.direct-list,.ftr-line) {overflow-wrap:anywhere;}
body .assignment>div {min-inline-size:0;}
body .field :is(input,select,textarea) {max-inline-size:100%; min-inline-size:0;}
body .hp-field {display:none!important;}
body .form-status:empty {display:none;}
body .field-error {display:block; margin-block:.5rem 0; color:var(--audit-accent); font-size:var(--audit-small); line-height:1.6;}
body .field-error:empty {display:none;}
body .post-grid-index>[hidden] {display:none!important;}
body .btn,body.is-home .hero-bottom-grid .btn-ghost {font-size:var(--audit-button)!important;}
body .menu.open a {font-size:var(--audit-nav)!important; line-height:1.6!important; min-block-size:44px;}
body .contact-dock {overflow:visible;}
body .contact-dock a {min-inline-size:44px; min-block-size:48px;}
body .contact-label {font-size:var(--audit-nav)!important;}
body .contact-dock a:hover .contact-label {color:inherit!important;}
body :is(a,button,input,select,textarea):focus-visible {outline:3px solid #123b37; outline-offset:4px; box-shadow:0 0 0 6px #fff;}
body [id] {scroll-margin-block-start:130px;}
html[lang="ar"] body :is(p,li,a,button,dt,dd,label,small,.contact-label,.ftr-name,.wm) {letter-spacing:0!important;}
html[lang="ar"] body :is(.role-head h2,.career-strip strong,.client-wall strong) {unicode-bidi:plaintext;}
html[lang="ar"] body :is(time,.metric-val,.cv-metrics strong,.assignment dd[dir="ltr"],a[href^="tel:"],a[href^="mailto:"]) {unicode-bidi:isolate;}
html[lang="ar"] body :is(.metric-val,.cv-metrics strong) {direction:ltr;}
@media(max-width:760px) {
 :root {--audit-hero:clamp(2.25rem,10.5vw,2.75rem); --audit-page:clamp(2.25rem,9.6vw,2.75rem); --audit-section:clamp(1.75rem,8vw,2.125rem); --audit-card:1.375rem; --audit-sub:1.375rem; --audit-body:1rem; --audit-lead:1.0625rem; --audit-small:.9375rem; --audit-label:.8125rem; --audit-nav:.9375rem; --audit-button:.9375rem;}
 html[lang="ar"] {--audit-body:1.0625rem; --audit-lead:1.0625rem; --audit-label:.875rem; --audit-nav:.9375rem; --audit-button:.9375rem; --audit-reading:1.85;}
 body .wm {font-size:12px;}
 body .contact-dock a {gap:5px; padding-inline:8px;}
 body .contact-mark {width:20px; height:20px;}
 body .ftr {padding-block-end:100px!important;}
 body .hdr .lang-toggle,body .menu-btn {min-inline-size:44px; min-block-size:44px;}
 body .hdr {gap:10px;}
 body .hero-work-card .hero-ctas {gap:8px;}
}
@media print {html,body {overflow:visible;} body :is(.field-error,.contact-dock) {display:none!important;}}
