@import url("article-typography.css?v=20260915");
/* Keep grid children shrinkable when refined letterforms need more room. */
.keybox,.article-prose{min-width:0;overflow-wrap:anywhere}
/* Inline two-column offer grids must yield to a readable mobile measure. */
@media(max-width:600px){.grid:has(>.keybox){grid-template-columns:minmax(0,1fr)!important;gap:32px!important}.grid:has(>.keybox)>*{min-width:0}}
/* Long course introductions use a stable reading measure during font swap. */
.hero-content:has(>.partner-line)>p:not(.partner-line){max-width:32em;line-height:1.7;margin-inline:auto;text-align:left}
/* Dark-footer copyright inherits the light-paper muted token otherwise. */
.footer .footer-bottom p{color:#9fb3c8}
/* Shared delivery and roles only: preserve each marketing/tool surface's layout and scale. */
body{--font-body:'Hanken Grotesk','Hanken Fallback',Arial,sans-serif;--font-head:'Spectral','Spectral Fallback',Georgia,serif;font-synthesis:none}
body,body :where(p,li,a,span,div,label,input,select,textarea,button,td,th,summary,small,blockquote,figcaption){font-family:var(--font-body)!important}
body :where(h1,h2){font-family:var(--font-head)!important;font-weight:600!important;font-style:normal!important}
body :where(h3,h4,h5,h6){font-family:var(--font-body)!important;font-weight:600!important;font-style:normal!important}
body :where(p,li,a,span,div,label,input,select,textarea,button,td,small,blockquote,figcaption){font-weight:400!important}
body :where(b,strong,th,summary,button,.btn,.cta-button,.nav-links a,.kicker,.eyebrow){font-weight:600!important}
body :where(h1,h2,h3,h4,h5,h6,b,strong,th,summary,button,.btn,.cta-button) :where(span,a){font-family:inherit!important;font-weight:inherit!important}
body :where(pre,code,kbd,samp),body :where(pre,code,kbd,samp) *{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-weight:400!important}
