/* September 29 responsive/usability audit. Shared enhancements, not a new visual system. */
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #287d45;outline-offset:4px}
:where(h2,h3,h4,[id]){scroll-margin-top:90px}
.sanor-form-status{flex-basis:100%;font-size:16px;margin:12px 0}.sanor-form-status:empty{display:none}
button[aria-disabled="true"]{opacity:.7;cursor:wait}
#page-home .home-strategy-pair:has(> :only-child){grid-template-columns:1fr}#page-home .home-strategy-pair> :only-child{display:grid;grid-template-columns:1fr 1fr;align-items:center}#page-home .home-strategy-pair> :only-child>.img-ph{height:100%;min-height:260px;aspect-ratio:auto;border-radius:14px 0 0 14px}
a[download]{min-height:44px;display:inline-flex;align-items:center}
@media(min-width:701px) and (max-width:1199px){.home-intelligence-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.home-intelligence-card,.home-intelligence-card:first-child{height:auto;min-height:400px}.home-intelligence-card:first-child h3{font-size:28px}.home-intelligence-card:first-child .home-intelligence-card__copy p{font-size:15px}}
@media(max-width:1100px){
 .art-layout{grid-template-columns:minmax(0,1fr);gap:32px}.art-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.art-side>*{min-width:0}
 .arch-title,.research-overview__intro .arch-title,.monitors-hero .arch-title{font-size:clamp(40px,6vw,64px)}.art-top .art-title{font-size:clamp(36px,5.6vw,60px)}
 .home-research-panel{grid-template-columns:minmax(0,1fr);gap:32px;padding:56px 0}.home-research-panel__image{width:100%;max-height:480px}.home-research-panel h3{font-size:clamp(34px,5vw,48px)}.home-research-panel p{margin:20px 0 28px}
 #page-home .hero .callout{grid-template-columns:1fr;gap:24px}#page-home .hero .callout .section-title{font-size:38px}
 .gm__layout,.gm--hero .gm__layout{grid-template-columns:1fr;gap:36px}.gm__media{max-width:360px;margin:auto}.gm--hero{min-height:0;padding-top:110px}.gm--hero .gm__title{font-size:clamp(40px,6vw,64px)}.playbook-audience{grid-template-columns:1fr;gap:36px}
 .sanor-about-design h1,.sanor-contact-design h1,.sanor-careers-design h1{font-size:clamp(44px,7vw,72px)}.sanor-about-design h2{font-size:clamp(36px,5vw,56px)}
}
@media(max-width:700px){
 #page-home{--home-mobile-body:18px;--home-mobile-leading:1.6}
 #page-home .hero__content>p,#page-home .section__head>.byline,#page-home .home-content--research .section__head>.byline,#page-home .home-research-panel p,#page-home .home-services__card p,#page-home .card-byline,body.home .gm__text{font-size:18px;font-size:var(--home-mobile-body,18px);line-height:var(--home-mobile-leading,1.6)}
 #page-home .hero .home-callout .section-title{font-size:28px!important;line-height:1.15}
 #page-home .hero{padding-top:54px;padding-left:20px;padding-right:20px}#page-home .hero h1{max-width:100%;font-size:42px;line-height:1.08}
 #page-home .section{padding-top:56px;padding-bottom:56px}#page-home .home-content--research:has(.home-research-panel){padding-bottom:0}#page-home .home-flagship-study{padding-top:0;padding-bottom:0}
 #page-home .home-content--research .section-title{font-size:36px}#page-home .home-content--research .section-title{margin-bottom:24px}#page-home .home-content--research .section__head>.byline{margin-top:0;margin-bottom:0}#page-home .home-content--research .section__head{margin-bottom:40px}
 .home-intelligence-grid{grid-template-columns:minmax(0,1fr);gap:24px}.home-intelligence-card,.home-intelligence-card:first-child{max-width:100%;height:auto;min-height:380px}.home-intelligence-card:first-child h3{font-size:28px}.home-intelligence-card:first-child .home-intelligence-card__copy p{font-size:15px}.home-intelligence-card:first-child .home-intelligence-card__copy{padding:20px 22px 26px}.home-intelligence-card:first-child .home-intelligence-card__eyebrow{font-size:12px}.home-intelligence-card:first-child .home-intelligence-card__cta{font-size:14px}
 .home-research-panel{padding:44px 0;margin-top:44px}.home-research-panel h3{font-size:34px}.home-services h2{font-size:38px}.home-services__card h3{margin-top:18px;margin-bottom:12px}
 #page-home .home-strategy-pair> :only-child{grid-template-columns:1fr}#page-home .home-strategy-pair> :only-child>.img-ph{height:auto;min-height:0;aspect-ratio:16/9;border-radius:14px 14px 0 0}
 .art-side{grid-template-columns:1fr}.art-top .art-title{font-size:38px}.arch-top{padding-top:48px;padding-bottom:32px}.section.art-body{padding-top:24px}.art-main{min-width:0}
 .sanor-contact-design .sp-contact-hero{padding:100px 0 28px}.sanor-contact-design .sp-contact-contact-form{padding:12px 0 48px}.sanor-contact-design .sp-contact-cf-grid{gap:24px}.sanor-contact-design .sp-contact-cf-intro{display:contents}.sanor-contact-design .sp-contact-cf-intro>p{order:0;font-size:18px}.sanor-contact-design .sp-contact-form{order:1}.sanor-contact-design .sp-contact-quick{order:2;margin-top:16px}.sanor-contact-design .sp-contact-hint,.sanor-contact-design .sp-contact-legal-note{opacity:1;color:#506054}
 .sanor-about-design section{padding:52px 0}.sanor-about-design .sp-about-hero{padding:104px 0 64px}.sanor-about-design .sp-about-hero p{font-size:20px;margin-bottom:28px}.sanor-about-design .sp-about-contact{padding:64px 0}.sanor-about-design .sp-about-contact h2{font-size:40px}.sanor-about-design .sp-about-group{padding:24px 18px;gap:20px}.sanor-about-design .sp-about-group h3{font-size:30px}.sanor-about-design .sp-about-g-area{max-height:100px}.sanor-about-design .sp-about-groups,.sanor-about-design .sp-about-track,.sanor-about-design .sp-about-team{margin-top:28px}.sanor-about-design .sp-about-rail .sp-about-step{padding-top:14px;padding-bottom:14px}.sanor-about-design .sp-about-team{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sanor-about-design .sp-about-person{padding:8px 8px 20px;border-radius:16px}.sanor-about-design .sp-about-portrait{aspect-ratio:1;border-radius:10px}.sanor-about-design .sp-about-person h4{font-size:19px;margin:14px 4px 0}.sanor-about-design .sp-about-person p{font-size:15px;margin:6px 4px 0}
 .sanor-careers-design .sp-careers-hero{padding:100px 0 40px}.sanor-careers-design .sp-careers-map{margin-top:20px}.sanor-careers-design .sp-careers-positions{padding:40px 0 56px}.sanor-careers-design .sp-careers-filters{margin-top:24px;gap:20px}.sanor-careers-design .sp-careers-chip{min-height:44px}.sanor-careers-design .sp-careers-count{margin-top:24px;opacity:1}
 .gm--hero{padding-top:100px;padding-bottom:48px}.gm__form{display:flex;flex-wrap:wrap;gap:16px}.gm__form .gmp-input{flex-basis:100%;width:100%}.gm__form .cta{width:100%;justify-content:center}.gm__media{max-width:240px}.gm__title,.gm--hero .gm__title{font-size:40px}
 .footer{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:32px}.footer>div:first-child{grid-column:1/-1}.footer h4{margin-bottom:14px}.footer li{font-size:16px;margin-bottom:8px}.footer li a{display:inline-flex;align-items:center;min-height:44px}.subfooter{flex-direction:column;align-items:flex-start;gap:4px}.subfooter a,.subfooter button.cmplz-manage-consent{display:inline-flex;align-items:center;min-height:44px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.sanor-toc,.home-intelligence-card,.home-intelligence-card *{transition:none!important}.sanor-chart-viewer{scroll-behavior:auto}}
/* Content is never hidden while an entrance animation waits to start. */
.sanor-about-design :is(.sp-about-reveal,.sp-about-step,.sp-about-person),.sanor-contact-design .sp-contact-reveal,.sanor-careers-design .sp-careers-reveal{opacity:1;transform:none;transition-delay:0s}

@media(max-width:700px){#page-home .hero__content{margin-top:24px}#page-home>.hero{gap:48px}#page-home .hero .callout{margin-left:0;margin-right:0}.sanor-contact-design .sp-contact-hero h1 .sp-contact-line span,.sanor-careers-design .sp-careers-hero h1 .sp-careers-line span{animation:none;transform:none}}


/* Source and visual order agree: introduction, form, then alternative routes. */
.sanor-contact-design .sp-contact-cf-grid{grid-template-areas:"intro form" "quick form";grid-template-rows:auto 1fr;row-gap:24px}.sanor-contact-design .sp-contact-cf-intro{grid-area:intro}.sanor-contact-design .sp-contact-form{grid-area:form}.sanor-contact-design .sp-contact-quick{grid-area:quick;align-self:start;margin-top:0}@media(max-width:1000px){.sanor-contact-design .sp-contact-cf-grid{grid-template-areas:"intro" "form" "quick";grid-template-rows:auto}.sanor-contact-design .sp-contact-cf-intro{display:block}}

/* Legal checklist: explicit optional consent and persistent cookie controls. */
.subfooter button.cmplz-manage-consent { appearance:none; border:0; padding:0; background:none; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.subfooter button.cmplz-manage-consent:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
/* Offer all policy categories without installing any tracking providers. */
.cmplz-cookiebanner .cmplz-category.cmplz-statistics { display:block !important; }
.cmplz-cookiebanner .cmplz-manage-third-parties,
.cmplz-cookiebanner .cmplz-documents .cookie-statement { display:none !important; }
.cmplz-cookiebanner input.cmplz-statistics { display:inline-block !important; }

.sanor-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
