/* Shared hierarchy: clear titles, readable evidence, grouped actions. */
main .h1{font-size:clamp(38px,5vw,64px);line-height:1.08;letter-spacing:-.045em}
main .h2,main .a-h2{font-size:clamp(28px,3.3vw,40px);line-height:1.18;letter-spacing:-.03em;margin-bottom:24px}
main .h3{font-size:22px;line-height:1.3}
main .body,main .prose,main .a-body,main .lc-b{font-size:16px;line-height:1.75}
main .fine,main .qs-note,main .a-cond,main figcaption{font-size:14px;line-height:1.65}
main section[id]{scroll-margin-top:110px}
main .sec-head{margin-bottom:36px}
.ds-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin:64px 0 28px;padding-bottom:20px;border-bottom:1px solid #ccd6df}
.ds-section-heading h2{font-size:clamp(32px,4vw,46px);line-height:1.1;letter-spacing:-.04em;margin:0;color:#101c29}
.ds-meta,.ds-eyebrow{font-size:12px;font-weight:650;letter-spacing:.12em;color:#415b75;line-height:1.5}
.ds-eyebrow{display:block;margin-bottom:22px}
.ds-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ds-card,.ds-action-card{padding:32px;border:1px solid #cbd5df;background:#fff;border-radius:12px;color:#172635;min-width:0}
.ds-card h3,.ds-action-card h3{font-size:25px;line-height:1.2;letter-spacing:-.025em;margin:0 0 16px}
.ds-card p,.ds-action-card p,.ds-callout p,.ds-status p,.ds-contact-card p{font-size:16px;line-height:1.65;margin:0;max-width:65ch;color:#40546a}
.ds-action-card{display:flex;flex-direction:column;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.ds-action-card:hover{border-color:#2563b9;box-shadow:0 6px 24px #203b5810}
.ds-card-link{margin-top:auto;padding-top:28px;font-size:15px;font-weight:650;color:#215ea6}
.ds-contact-card{margin:40px 0 56px;padding:36px;background:#eaf1f9;border-left:4px solid #2769b2;border-radius:0 12px 12px 0}
.ds-contact-card .bigmail{display:block;font-size:clamp(21px,3.5vw,42px);line-height:1.25;overflow-wrap:anywhere;margin-bottom:18px;color:#133453;text-decoration:none}
.ds-status{padding:32px;background:#eaf1f9;border-radius:12px;margin-top:40px}
.ds-badge{display:inline-block;font-size:11px;letter-spacing:.12em;font-weight:700;color:#204e80;border:1px solid #8aa8c8;border-radius:4px;padding:6px 10px;margin-bottom:18px}
.ds-status h2,.ds-callout h2{font-size:28px;line-height:1.2;margin:0 0 16px;letter-spacing:-.025em}
.ds-callout{margin-top:44px;padding:36px 0;border-top:1px solid #ccd6df;display:flex;align-items:center;gap:32px;justify-content:space-between}
.ds-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;background:#143d6b;color:white!important;text-decoration:none!important;border-radius:6px;font-size:15px;font-weight:650;flex-shrink:0;line-height:1.5}
.ds-button:hover{background:#20578f}
.ds-product-dek{font-size:clamp(22px,2.8vw,32px);line-height:1.35;max-width:33ch;letter-spacing:-.02em;margin:24px 0}
main .nqh-h{font-size:clamp(54px,8vw,96px);line-height:1.02;letter-spacing:-.05em}
.ds-editorial-section{margin-top:44px;padding-top:28px;border-top:1px solid #cbd5df}
.ds-editorial-section h2{font-size:clamp(26px,3vw,34px);line-height:1.2;margin:0 0 20px;letter-spacing:-.03em}
.ds-industry-copy{font-size:18px;line-height:1.7;max-width:65ch;margin:22px 0 28px;color:#40546a}
.ds-pipeline{grid-template-columns:repeat(3,minmax(0,1fr))}
.ds-industry-context{padding-top:48px;margin-top:48px;border-top:1px solid #cbd5df}
.ds-industry-context h2{font-size:32px;letter-spacing:-.03em;margin-bottom:24px}
.ds-page-nav{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #cbd5df;border-bottom:1px solid #cbd5df;padding:18px 0;margin:32px 0}
.ds-page-nav a{padding:10px 14px;background:#eaf1f9;border-radius:6px;font-size:14px;line-height:24px;text-decoration:none;color:#164d86}
main .paper-page-preview{max-height:380px;width:auto;max-width:100%;object-fit:contain;margin-inline:auto}
main .a-tk{font-size:17px;line-height:1.65}
main .a-cond{padding:22px;background:#eaf1f9;border-left:3px solid #4679ad;color:#30485e}
main .asec{margin-top:56px}
.chart-scroll{overflow-x:auto;max-width:100%;overscroll-behavior-inline:contain}
.chart-scroll svg{display:block;width:100%;height:auto}
nav a[aria-current=page]{color:#19599a;text-decoration:underline;text-underline-offset:6px}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #2778d1;outline-offset:4px}
@media(max-width:700px){
.ds-grid,.ds-pipeline{grid-template-columns:1fr}.ds-card,.ds-action-card,.ds-status{padding:25px}
.ds-contact-card{padding:24px}.ds-callout{display:block;padding-top:28px}.ds-callout .ds-button{margin-top:24px}
.ds-section-heading{margin-top:44px;gap:12px;flex-wrap:wrap}.ds-meta{font-size:11px}
.chart-scroll svg{min-width:620px}.chart-scroll{border-bottom:2px solid #a5bad0;padding-bottom:10px}
main .paper-preview-heading{align-items:flex-start;gap:20px;flex-direction:column}
main .fine,main .qs-note,main figcaption{font-size:14px}
.ds-page-nav a{flex:1 1 auto}.ds-industry-context h2{font-size:28px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
main .pfig{min-width:0;max-width:100%;box-sizing:border-box}
main .fine,main .qs-note,main .nqh-note,main .hero-note{font-size:14px}
main .sc-c,main .fnotes p,main .cap-prop{font-size:14px;line-height:1.65}
main .paper-page-preview{max-height:none;width:auto}
main .paper-page-preview img{max-height:380px;width:auto;max-width:100%;object-fit:contain}
main .scards-sm .sc-c{font-size:14px;line-height:1.65}
