/* Shared semantic type roles; page families own their layout and surfaces. */
:root{--sg-size-split-display:clamp(2.125rem,3.4vw,3rem)}
:root{--sg-font:'Solding Manrope','Solding Manrope Full',Arial,sans-serif;--sg-size-display:clamp(2.25rem,4.45vw,4rem);--sg-size-section:clamp(1.875rem,3vw,2.625rem);--sg-size-subsection:clamp(1.375rem,2vw,1.75rem);--sg-size-card:1.25rem;--sg-size-lead:1.125rem;--sg-size-body:1.0625rem;--sg-size-ui:1rem;--sg-size-label:.875rem;--sg-size-caption:.8125rem;--sg-weight-body:450;--sg-weight-label:500;--sg-weight-strong:600;--sg-weight-heading:700;--sg-weight-display:750}
:root{--font-sans:var(--sg-font);--font-mono:var(--sg-font)}
body{font-family:var(--sg-font);font-weight:var(--sg-weight-body)}
.nav-link,.nav-dropdown__item{font-family:var(--sg-font);font-size:var(--sg-size-caption);font-weight:var(--sg-weight-label);letter-spacing:.04em}
.header-cta,.button-link{font-family:var(--sg-font);font-size:var(--sg-size-caption);font-weight:var(--sg-weight-strong);letter-spacing:.04em}
.skip-link{font-family:var(--sg-font);font-size:var(--sg-size-caption);font-weight:var(--sg-weight-strong);letter-spacing:.04em}
.eyebrow{font-family:var(--sg-font);font-size:var(--sg-size-caption);letter-spacing:.1em}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
#main-content .solding-page{--sp-ink:#20303e;--sp-muted:#526171;--sp-blue:#245c82;--sp-orange:#f36b24;--sp-paper:#f7f8fa;--sp-material:#eee9e0;--sp-line:#d6dfe6;color:var(--sp-ink);background:#fff;font-family:var(--sg-font);font-size:var(--sg-size-body);font-weight:var(--sg-weight-body);line-height:1.6}
#main-content .solding-page *{box-sizing:border-box;font-family:inherit}
#main-content .solding-page :is(h1,h2,h3,h4,p,ul,ol,dl,figure){margin:0}
#main-content .solding-page :is(h1,h2,h3,h4){font-weight:var(--sg-weight-heading);color:var(--sp-ink);text-wrap:balance;overflow-wrap:break-word}
#main-content .solding-page h1{font-size:var(--sg-size-display);font-weight:var(--sg-weight-display);line-height:1.12;letter-spacing:-.025em;max-width:20ch}
#main-content .solding-page h2{font-size:var(--sg-size-section);line-height:1.2;letter-spacing:-.025em}
#main-content .solding-page h3{font-size:var(--sg-size-subsection);line-height:1.4;letter-spacing:-.015em}
#main-content .solding-page h4{font-size:var(--sg-size-lead);font-weight:var(--sg-weight-strong);line-height:1.4;letter-spacing:0}
#main-content .solding-page p{font-size:var(--sg-size-body);line-height:1.6;font-weight:var(--sg-weight-body);letter-spacing:0;color:var(--sp-muted);max-inline-size:65ch;text-wrap:pretty;overflow-wrap:break-word}
#main-content .solding-page :is(span,li,dt,dd){color:inherit;letter-spacing:inherit}
#main-content .solding-page strong{font-weight:var(--sg-weight-strong);color:inherit}
#main-content .solding-page img{max-width:100%;height:auto}
#main-content .solding-page .sp-wrap{width:min(100% - 128px,1312px);margin-inline:auto}
#main-content .solding-page .sp-section{padding-block:80px}
#main-content .solding-page .sp-intro{padding-block:64px 56px}
#main-content .solding-page .sp-eyebrow{font-size:var(--sg-size-caption);line-height:1.5;font-weight:var(--sg-weight-strong);letter-spacing:.055em;color:var(--sp-blue);margin-bottom:20px}
#main-content .solding-page .sp-lead{font-size:var(--sg-size-lead);line-height:1.6;max-width:60ch;margin-top:24px}
#main-content .solding-page .sp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:32px}
#main-content .solding-page .sp-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:12px 20px;background:var(--sp-orange);color:#172b3b;border:1px solid transparent;border-radius:3px;font-size:var(--sg-size-ui);line-height:1.5;font-weight:var(--sg-weight-strong);letter-spacing:0;text-decoration:none;cursor:pointer}
#main-content .solding-page .sp-button:hover{background:var(--sp-orange);border-color:#9c3d0c;text-decoration:underline;text-underline-offset:4px}
#main-content .solding-page .sp-text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:var(--sp-blue);font-size:var(--sg-size-ui);font-weight:var(--sg-weight-label);line-height:1.5;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:from-font;text-underline-position:from-font;text-decoration-skip-ink:auto}
#main-content .solding-page .sp-text-link:hover{color:#163e5c}
#main-content .solding-page :is(a,button,input,select,textarea):focus-visible{outline:2px solid #9c3d0c;outline-offset:4px}
#main-content .solding-page .sp-source-note{padding:18px 22px;border-left:3px solid var(--sp-orange);background:var(--sp-material);font-size:14px;line-height:1.6;color:var(--sp-ink)}
#main-content .solding-page .sp-source-note p{font-size:14px;line-height:1.6;color:var(--sp-ink)}
#main-content .solding-page .sp-schematic{background:var(--sp-material);border:1px solid var(--sp-line);border-radius:3px}
#main-content .solding-page .sp-schematic figcaption{padding:14px 20px;border-top:1px solid var(--sp-line);font-size:13px;line-height:1.6;color:var(--sp-muted)}
#main-content .solding-page .sp-muted-panel{background:var(--sp-paper)}
#main-content .solding-page .sp-dark-panel{background:#20384b;color:#f5f8fa}
#main-content .solding-page .sp-dark-panel :is(h1,h2,h3,h4){color:#f5f8fa}
#main-content .solding-page .sp-dark-panel :is(p,li,dt,dd){color:#d6e2ea}
#main-content .solding-page .sp-dark-panel .sp-text-link{color:#d8eafa}
@media(max-width:1100px){#main-content .solding-page .sp-wrap{width:calc(100% - 80px)}#main-content .solding-page .sp-section{padding-block:64px}}
@media(max-width:650px){#main-content .solding-page .sp-wrap{width:calc(100% - 40px)}#main-content .solding-page .sp-intro{padding-block:40px}#main-content .solding-page .sp-section{padding-block:44px}#main-content .solding-page h1{font-size:var(--sg-size-display);line-height:1.4}#main-content .solding-page h2{line-height:1.4}#main-content .solding-page .sp-lead{font-size:var(--sg-size-lead);line-height:1.6}#main-content .solding-page .sp-actions{gap:12px 20px;margin-top:24px}}
@media(prefers-reduced-motion:reduce){#main-content .solding-page *,#main-content .solding-page *::before,#main-content .solding-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:650px){#main-content .solding-page :is(h1,h2,h3){-webkit-hyphens:auto;hyphens:auto}}
