@font-face{font-family:Geist;src:url('../assets/geist-latin.woff2') format('woff2');font-weight:100 900;font-display:swap}
*,*::before,*::after{box-sizing:border-box}
:root{font-family:Geist,system-ui,sans-serif;color:var(--text);background:var(--base);font-synthesis:none;line-height:1.55;scroll-behavior:smooth}
body,h1,h2,h3,p,figure{margin:0}
img{display:block;width:100%;height:auto;object-fit:cover}
a{color:inherit;text-underline-offset:4px}
button,select,input,textarea{font:inherit}
button{cursor:pointer}
button:disabled{cursor:default;opacity:.55}
:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:4px}
[hidden]{display:none!important}
.wrap{width:min(1240px,calc(100% - clamp(36px,9vw,128px)));margin-inline:auto}
.demo-bar{background:var(--bar,var(--surface));border-bottom:1px solid var(--line);font-size:.75rem;font-weight:550}
.demo-bar .wrap,.site-nav,.site-footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px}
.demo-bar .wrap{min-height:38px}
.demo-bar a,.brand,.site-nav nav a,.site-footer a{text-decoration:none}
.demo-bar a:hover,.site-nav nav a:hover,.site-footer a:hover{text-decoration:underline}
.site-nav{min-height:80px}
.site-nav nav{display:flex;align-items:center;gap:clamp(11px,2.5vw,35px);font-size:.86rem;font-weight:600;flex-wrap:wrap}
.site-nav nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}
.brand{font-family:var(--display,Geist),var(--display-fallback,Geist),sans-serif;font-weight:800;line-height:.95;letter-spacing:-.05em;font-size:clamp(24px,3.1vw,42px)}
.brand small{display:block;font:650 .62rem/1.2 Geist,sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-top:7px}
.label{display:block;color:var(--label,var(--muted));text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:750}
.button,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 17px;min-height:44px;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);border-radius:var(--radius,4px);text-decoration:none;font-weight:700;font-size:.88rem;line-height:1.2}
.button:hover{filter:brightness(1.12)}
.secondary{border-color:var(--line-strong,var(--line));background:transparent;color:inherit}
.secondary:hover,.secondary[aria-pressed=true]{border-color:var(--focus,var(--accent));background:var(--soft,var(--surface))}
.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.section{padding-block:clamp(53px,8vw,115px)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(22px,4vw,48px)}
.section-head>p{max-width:39ch}
h1,h2,h3{font-family:var(--display,Geist),var(--display-fallback,Geist),sans-serif;font-weight:var(--heading-weight,750);line-height:.98;letter-spacing:var(--tracking,-.055em);text-wrap:balance}
h1{font-size:clamp(52px,9vw,138px)}
h2{font-size:clamp(37px,6vw,80px)}
h3{font-size:clamp(23px,3vw,37px);line-height:1.09}
p{max-width:67ch}
.muted,.section-head>p,.form-hint{color:var(--muted)}
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,5vw,72px);align-items:center}
.grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2.6vw,34px)}
.panel{min-width:0;padding:clamp(17px,2.7vw,31px);border:1px solid var(--line);background:var(--surface);border-radius:var(--radius,4px)}
.panel h3 + p,.panel p + p,.panel p + .actions{margin-top:10px}
.panel h3 + form,.panel form + p{margin-top:16px}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
form{display:grid;gap:15px}
form .button{justify-self:start}
label{display:grid;align-content:start;gap:5px;font-weight:660;font-size:.84rem}
input,select,textarea{width:100%;min-width:0;min-height:42px;border:1px solid var(--line-strong,var(--line));border-radius:var(--radius,4px);padding:8px 10px;background:var(--base);color:var(--text)}
textarea{resize:vertical}
.notice{padding:12px 15px;background:var(--soft,var(--surface));border:1px solid var(--line);margin:14px 0;font-size:.9rem}
.notice:empty{display:none}
.switch{display:flex;flex-wrap:wrap;gap:5px}
.switch button{min-height:40px}
.switch button[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.site-footer{padding:25px 0 30px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}
.site-footer .wrap{flex-wrap:wrap}
.site-footer button{background:transparent;border:0;text-decoration:underline;color:inherit;padding:8px 0}
details{border-top:1px solid var(--line);padding:13px 0}
summary{cursor:pointer;font-weight:650}
details p{margin-top:8px}
@media(max-width:700px){.section-head{align-items:start;flex-direction:column;gap:13px}.split{grid-template-columns:1fr}.grid-three{grid-template-columns:1fr}.site-nav{padding-block:17px;align-items:start}.site-nav nav{justify-content:end}.demo-bar .wrap{min-height:43px}}
@media(max-width:410px){.fields{grid-template-columns:1fr}.site-nav{gap:10px}.site-nav nav{font-size:.76rem}.demo-bar{font-size:.68rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
