/* Purposeful media, complete frames and a consistent marketing hierarchy. */
.motion-surface{overflow:visible}
.hero,.editorial-lede,.sample-intro{isolation:isolate}
.hero h1,.editorial-lede h1,.sample-intro h1{font-size:clamp(36px,4.35vw,56px);line-height:1.06;letter-spacing:-.045em}
:where(.page-index,.page-about,.page-data-foundation-build,.page-how-we-work,.page-getting-started,.page-contact) .section h2{font-size:clamp(27px,3vw,38px);line-height:1.12}
:where(.hero,.editorial-lede) .lead{font-size:17px;line-height:1.65;margin-top:22px;max-width:49ch}
.hero{padding-block:54px}
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.07fr);gap:6%;align-items:center}
.hero .actions{gap:14px 24px}
.editorial-lede{padding-block:42px}
.editorial-lede>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,.98fr);gap:6%}
.editorial-lede .lede-plate{margin:0;min-width:0;overflow:visible;border:0;background:transparent;box-shadow:none}
.editorial-lede .lede-plate img{display:block;max-width:100%;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;transform:none;filter:none;border-radius:6px;border:1px solid var(--line);box-shadow:0 8px 24px #163e3010}
.editorial-lede .vector-plate img{border:0;border-radius:0;box-shadow:none}
.practice-plate figcaption{padding-top:10px;color:var(--muted);font-size:11px;line-height:1.4}
.practice-plate figcaption a{color:inherit;text-underline-offset:3px}
.hero .reporting-feature{display:block;min-width:0;overflow:visible;border:1px solid #b6cbbd;background:#edf3ee;border-radius:7px;box-shadow:0 12px 30px #15372a0e;text-decoration:none}
.feature-kicker{display:block;padding:17px 20px 10px;font-size:12px;font-weight:650;letter-spacing:.04em;color:#265c48}
.feature-preview{display:block;margin:0 12px 12px;border:1px solid #d0dbd3;border-radius:3px;background:white}
.hero .reporting-feature .feature-preview img{width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;object-position:center;border:0;border-radius:3px;filter:none;display:block;box-shadow:none}
.hero .reporting-feature .feature-caption{display:flex;justify-content:space-between;border-radius:0 0 6px 6px;padding:15px 20px;background:#174d3b;color:#fff;border-top:1px solid #174d3b;font-size:13px}
.feature-still:focus-visible,.sample-card:focus-visible,.sample-feature:focus-visible,.document-plate:focus-visible{outline-offset:4px}
.page-getting-started .document-plate{display:block;padding:20px;background:#eef2ec;border:1px solid #c9d5ca;border-radius:7px;text-decoration:none;overflow:visible}
.page-getting-started .document-plate img{height:330px;width:100%;max-height:none;object-fit:contain;padding:0;transform:none;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 4px 5px #183d3120)}
.document-caption{display:flex;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid #c3d0c3;color:#174d3b;font-size:13px;font-weight:600}
.contact-guide-card{display:grid;grid-template-columns:66px minmax(0,1fr) 20px;gap:18px;align-items:center;max-width:440px;margin-top:25px;padding:18px;border:1px solid #cad7cb;border-radius:6px;background:#fff;text-decoration:none}
.contact-guide-card img{display:block;width:66px;height:auto;border:1px solid #d9dfd7;border-radius:0;box-shadow:0 3px 7px #173d3112}
.contact-guide-card strong{font-size:15px;font-weight:650;line-height:1.4;display:block}
.contact-guide-card small{display:block;color:var(--muted);margin-top:6px;font-size:12px;line-height:1.5}
.company-overview{display:grid;grid-template-columns:1fr 1fr;gap:7%}
.company-overview h2{max-width:20ch;margin-bottom:18px}
.company-overview p,.company-deliverables{font-size:16px;line-height:1.7;max-width:51ch}
.company-deliverables{padding-left:20px;margin:0;color:var(--muted)}
.company-deliverables li+li{margin-top:8px}
.company-boundary{max-width:83ch;font-size:14px;line-height:1.65;margin-top:30px;padding-top:20px;border-top:1px solid var(--line)}
.page-about .about-next h2{max-width:20ch}
.page-about .about-next .actions{gap:12px;margin:0}
.cinema .film{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:6%;align-items:center}
.cinema figure{min-width:0;padding:6px;border:1px solid #819b8c;border-radius:8px;overflow:visible}
.cinema figure video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;border:1px solid #3b6251;border-radius:3px;overflow:visible}
.sample-film-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;display:block}
.sample-feature,.sample-card{min-width:0}
.sample-feature img,.sample-preview img{width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;object-position:center}
.executive-app .ranking-list .rank-row:focus-visible{outline-offset:-3px}
.role-path>div:first-child{background:#174d3b}
@media(max-width:760px){
 .hero{padding-block:32px}
 .hero-grid,.editorial-lede>.wrap,.company-overview,.cinema .film{grid-template-columns:minmax(0,1fr);gap:28px}
 .editorial-lede{padding-block:30px}
 .hero h1,.editorial-lede h1,.sample-intro h1{font-size:clamp(34px,7.6vw,44px)}
 .hero .lead,.editorial-lede .lead{font-size:16px;line-height:1.65;margin-top:18px}
 .hero .actions{margin-top:22px}
 .feature-kicker{padding:14px 16px 9px}
 .hero .reporting-feature .feature-caption{padding:13px 16px}
 .company-overview{gap:30px}
 .company-boundary{margin-top:24px}
 .page-getting-started .document-plate img{height:300px}
 .sample-film-image img{aspect-ratio:16/9;object-fit:contain}
 .cinema figure{padding:5px}
 .contact-guide-card{padding:16px;gap:14px}
}
@media print{.motion-surface{overflow:visible}.reporting-feature{break-inside:avoid}}

/* Supporting pages share the same title, section and body scale. */
body.page-contact h1,body.page-privacy h1,body.page-terms h1,body.page-inquiry-received-index h1{font-size:clamp(34px,4.1vw,52px);line-height:1.08;letter-spacing:-.04em}
.legal-main h2{font-size:clamp(23px,2.2vw,28px);line-height:1.2;margin-top:32px;margin-bottom:12px}
.legal-main p{font-size:16px;line-height:1.75;max-width:72ch}
.legal-main h1+.small{margin-top:14px}
.policy-nav{gap:10px 20px}
.page-sample-dashboards .sample-library h2{font-size:clamp(28px,3vw,38px);line-height:1.12}
:where(.page-index,.page-about,.page-data-foundation-build,.page-how-we-work,.page-getting-started,.page-contact) .section{padding-block:46px}
:where(.page-index,.page-data-foundation-build) .triplet h3{font-size:22px;line-height:1.25}
:where(.page-data-foundation-build,.page-how-we-work) .details-list summary{font-size:18px;line-height:1.4}
:where(.page-index,.page-about,.page-data-foundation-build,.page-how-we-work,.page-getting-started,.page-contact) .eyebrow{font-size:10px;letter-spacing:.13em;margin-bottom:14px}
@media(max-width:760px){:where(.page-index,.page-about,.page-data-foundation-build,.page-how-we-work,.page-getting-started,.page-contact) .section{padding-block:32px}}

.company-overview .eyebrow{font-size:10px;line-height:1.6;letter-spacing:.13em;margin-bottom:14px}

@media(max-width:760px){.page-about .about-next .actions{margin-top:22px}}

.page-how-we-work .stage-section{padding-block:12px}.page-how-we-work .stage-section:has(+.stage-section){padding-bottom:0}
