*,:after,:before{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:96px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"lnum";font-variant-numeric:lining-nums;overflow-x:hidden}img,picture,svg,video{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{font-family:var(--font-heading);text-wrap:balance}h1{line-height:1.1;letter-spacing:var(--ls-display)}h1,h2{font-weight:800}h2{line-height:1.16;letter-spacing:var(--ls-h2)}h3{line-height:1.3;letter-spacing:var(--ls-h3)}h3,h4{font-weight:700}h4{line-height:1.4;letter-spacing:var(--ls-h4)}p{text-wrap:pretty}ol[class],ul[class]{list-style:none;padding:0}::selection{background:var(--brand-strong);color:#fff}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:var(--radius-sm)}.cta-section :focus-visible,.hero :focus-visible,.on-dark :focus-visible,.site-footer :focus-visible,.site-header.is-overlay:not(.is-solid) :focus-visible{outline-color:var(--focus-on-dark)}.contact-form :focus-visible,.on-dark .surface-card :focus-visible{outline-color:var(--focus)}.skip-link{position:absolute;inset-inline-start:var(--gutter);top:-100px;z-index:999;background:var(--brand-strong);color:var(--text-on-brand);padding:var(--space-sm) var(--space-lg);border-radius:0 0 var(--radius) var(--radius);font-weight:700;transition:top var(--transition)}.skip-link:focus{top:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.container-narrow{max-width:var(--container-narrow)}.container-wide{max-width:1400px}.section{padding-block:var(--section-y);position:relative}.section-tight{padding-block:clamp(2.75rem,1.5rem + 4vw,4.5rem)}.section-alt{background:var(--bg-alt)}.section-soft{background:var(--brand-soft)}.on-dark{background:var(--ink);--text:var(--on-ink);--text-muted:var(--on-ink-muted);--border:rgba(255,255,255,0.14);--surface:var(--ink-alt)}.on-dark,.on-dark a:not(.btn),.on-dark h1,.on-dark h2,.on-dark h3,.on-dark h4{color:var(--on-ink)}.section-head{max-width:64ch;margin-bottom:clamp(2rem,1.2rem + 2.4vw,3.5rem)}.section-head-center{margin-inline:auto;text-align:center}.section-head-center .eyebrow{align-self:center}.section-title{font-size:var(--fs-h2);margin-bottom:var(--space-md)}.section-lead{font-size:var(--fs-lead);line-height:var(--lh-lead);color:var(--text-muted);max-width:56ch;text-wrap:pretty}.section-head-center .section-lead{margin-inline:auto}.eyebrow{display:inline-flex;align-items:center;padding:.32rem .68rem;margin-bottom:var(--space-md);font-family:var(--font-body);font-size:var(--fs-micro);font-weight:700;letter-spacing:.11em;color:var(--accent-strong);background-color:var(--accent-soft);border:1px solid rgba(176,128,31,.3);border-radius:var(--radius-sm)}.on-dark .eyebrow{color:var(--gold);background-color:rgba(216,180,90,.1);border-color:rgba(216,180,90,.34)}.prose{max-width:68ch}.prose>*+*{margin-top:var(--space-md)}.prose h2{font-size:var(--fs-h3);margin-top:var(--space-xl)}.prose h3{font-size:var(--fs-h4);margin-top:var(--space-lg)}.prose li,.prose p{color:var(--text-muted)}.prose ol,.prose ul{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs);-webkit-padding-start:1.3rem;padding-inline-start:1.3rem}.prose ol{color:var(--text-muted)}.prose img{margin-block:var(--space-lg);border-radius:var(--radius);box-shadow:var(--shadow)}.prose a:not(.btn){color:var(--brand);text-decoration:underline;text-underline-offset:3px}.prose a:not(.btn):hover{color:var(--accent-strong)}.prose blockquote{margin-block:var(--space-lg);-webkit-padding-start:var(--space-lg);padding-inline-start:var(--space-lg);-webkit-border-start:3px solid var(--accent);border-inline-start:3px solid var(--accent);font-family:var(--font-heading);font-size:var(--fs-h4);color:var(--text)}