/* Shared document defaults. Page components own their layout. */
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--site-header-height) + 24px);color-scheme:light}
body{margin:0;min-width:0;background:var(--surface);color:var(--text);font:var(--type-body)/1.65 var(--font-ui)}
*,*::before,*::after{box-sizing:border-box}
button,input,textarea,select{font:inherit}button,a,input,summary,textarea{-webkit-tap-highlight-color:transparent}
button,summary{cursor:pointer}img,svg{max-width:100%}img{height:auto}
::selection{background:var(--brand);color:var(--surface)}
input,textarea{caret-color:var(--brand)}
:where(h1,h2,h3){text-wrap:balance}
:where(p){text-wrap:pretty}
:where(table,output,.hero-dots,.product-facts){font-variant-numeric:tabular-nums}
[hidden]{display:none!important}
a{color:var(--brand);text-underline-offset:4px}
:focus-visible{outline:2px solid var(--brand);outline-offset:4px}
:is(button,a,input,textarea,summary){scroll-margin-top:calc(var(--site-header-height) + 24px)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.site-container{width:min(var(--container),calc(100% - 80px));margin-inline:auto}
.site-section{padding-block:var(--section-space)}.site-section.is-soft{background:var(--surface-soft)}
.eyebrow{font-size:var(--type-label);letter-spacing:0;text-transform:none;color:var(--muted);font-weight:600}
.site-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:13px 26px;border:1px solid var(--brand);border-radius:var(--radius-pill);background:var(--brand);color:white;text-decoration:none;font-weight:500;transition:background var(--duration) var(--ease),border-color var(--duration) var(--ease),transform var(--duration) var(--ease)}
.site-button:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.site-button.is-secondary{background:transparent;color:var(--brand);border-color:var(--border)}
.site-button.is-secondary:hover{background:var(--surface-soft);border-color:var(--brand)}
.site-button:active{transform:translateY(1px)}
.text-link{font-weight:500;text-decoration:none;border-bottom:1px solid var(--border);padding-block:9px;display:inline-block;transition:border-color var(--duration),color var(--duration)}
.text-link:hover{border-color:var(--brand);color:var(--brand-dark)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:40px}
.section-heading h2{font-size:var(--type-heading);line-height:1.15;letter-spacing:var(--tracking-heading);font-weight:400;color:var(--brand);margin:0}
@media(max-width:768px){.site-container{width:calc(100% - 40px)}.site-section{padding-block:48px}
.section-heading{align-items:start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
