*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.65 var(--font-body);-webkit-font-smoothing:antialiased}main,section,article,header,footer,div{min-width:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-heading);line-height:1.16;letter-spacing:-.045em}p{color:var(--muted)}a{color:inherit;text-decoration:none}img,svg{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button,summary{cursor:pointer}button:disabled{cursor:not-allowed}a,button,summary{outline-offset:6px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--positive)}:target{scroll-margin-top:100px}::selection{background:var(--accent);color:var(--accent-ink)}
.button,.button-secondary{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:10px;padding:12px 23px;border:1px solid transparent;border-radius:999px;font-weight:600;font-size:14px;line-height:1.35;transition:transform var(--motion) var(--ease),box-shadow var(--motion) var(--ease),background var(--motion) var(--ease)}.button{background:var(--accent);color:var(--accent-ink)}.button-secondary{color:var(--ink);border-color:var(--line);background:var(--surface)}.button:hover,.button-secondary:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.button:active,.button-secondary:active{transform:translateY(0)}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--positive)}.skip{position:fixed;z-index:100;left:16px;top:12px;padding:10px 16px;background:var(--accent);color:var(--accent-ink);transform:translateY(-150%)}.skip:focus{transform:none}.menu-toggle{display:none;min-width:44px;min-height:44px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px}.preview-note{font-size:12px;color:var(--muted)}fieldset:disabled{opacity:1}input:disabled,select:disabled,textarea:disabled{color:var(--muted);background:var(--soft);border:1px solid var(--line);-webkit-text-fill-color:var(--muted);opacity:1}label{display:block;font-size:12px;font-weight:600}input,select,textarea{display:block;width:100%;min-height:46px;padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:var(--surface)}textarea{min-height:100px;resize:vertical}fieldset{padding:0;border:0;min-width:0}.motion-ready .reveal{opacity:0;transform:translateY(16px);transition:opacity 550ms var(--ease),transform 550ms var(--ease)}.motion-ready .reveal.is-visible{opacity:1;transform:none}.reference-updating{transition:background 260ms var(--ease),color 260ms var(--ease)}
@media(max-width:760px){
 html{scroll-padding-top:82px}
 .site-header{flex-wrap:wrap}
 .site-header [data-navigation]{display:flex;position:static;flex-basis:100%;order:4;flex-direction:column;align-items:stretch;gap:0;margin-left:0;padding:10px 0}
 .site-header [data-navigation] a{padding:13px 0}
 .site-header .header-cta{order:5}
 .js-navigation .site-header{flex-wrap:nowrap}
 .js-navigation .site-header.is-open{flex-wrap:wrap}
 .js-navigation .menu-toggle{display:inline-grid;place-items:center}
 .js-navigation .site-header:not(.is-open) [data-navigation]{display:none}
 .js-navigation .site-header.is-open [data-navigation]{display:flex}
 .actions{gap:10px}.button,.button-secondary{font-size:13px;padding-inline:18px}
}
@media(max-width:760px){html[data-reference=raccoon] .hero .actions{flex-direction:column;align-items:stretch}html[data-reference=raccoon] .hero .actions>a{width:100%;justify-content:center;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}
:root :is(a,button,summary):focus-visible{outline:3px solid #111;outline-offset:3px;box-shadow:0 0 0 6px #fff;transition:none}
@media(max-width:1100px){
 html:not(.js-navigation) .site-header{flex-wrap:wrap}
 html:not(.js-navigation) .site-header .header-cta{display:inline-flex}
}
:root .form-feedback:focus{outline:3px solid #111;outline-offset:3px;box-shadow:0 0 0 6px #fff}
