*{box-sizing:border-box}html{scroll-behavior:auto;overscroll-behavior-y:none;background:var(--page-bg)}
body{margin:0;color:var(--c-ink);background:var(--page-bg);font-family:var(--font-body);font-size:var(--body);line-height:1.75;overflow-x:clip;overscroll-behavior:none;touch-action:pan-x pan-y;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,input{font:inherit;color:inherit}button{cursor:pointer}button,a{outline-offset:6px}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--c-gold)}
button{border:0;background:none}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto;object-fit:contain}svg{display:block}svg path{stroke-linecap:round;stroke-linejoin:round}
h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--font-serif);font-weight:900;line-height:1.12}h2{font-size:var(--h2);letter-spacing:-.055em}h3{font-size:var(--h3);font-weight:600;letter-spacing:-.035em}p{max-width:34em}button:disabled{opacity:.35;cursor:default}[hidden]{display:none!important}
.shell{width:min(100%,var(--content-max));margin-inline:auto;padding-inline:max(var(--gutter),env(safe-area-inset-left)) max(var(--gutter),env(safe-area-inset-right))}.grid{display:grid;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));gap:var(--grid-gap)}
.eyebrow{display:flex;align-items:center;gap:14px;font-family:var(--font-mono);font-size:11px;line-height:1.5;letter-spacing:.23em}.eyebrow::before{content:'';height:1px;width:24px;background:currentColor;transform-origin:left}
.tag{font-size:12px;line-height:1.5;letter-spacing:.1em;opacity:.75}.reveal-line{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}.reveal-line>span{display:block;transform:translateY(0)}
.motion-ready [data-reveal]:not(.is-revealed) .reveal-line>span{transform:translateY(115%)}.motion-ready [data-reveal]:not(.is-revealed)>p:not(.eyebrow){opacity:0;transform:translateY(22px)}
[data-reveal] .reveal-line>span,[data-reveal]>p{transition:transform var(--reveal-ms) var(--ease),opacity var(--reveal-ms) var(--ease)}.reveal-line:nth-child(2)>span{transition-delay:90ms}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:52px;padding:10px 24px;border-radius:99px;background:var(--c-coral);color:var(--c-cream);font-size:15px;line-height:1.4;transition:transform var(--feedback-ms) var(--ease),box-shadow var(--feedback-ms)}.pill svg,.text-link svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.5}.pill:active,button:active{transform:scale(.96)}.pill:hover{box-shadow:0 6px 25px #e6524829}.text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:15px}
.wheel-accent{stroke:var(--c-gold)}.grain{position:fixed;inset:0;z-index:40;pointer-events:none;opacity:.035;background-repeat:repeat}.skip-link{position:fixed;top:8px;left:20px;z-index:110;padding:10px 18px;border-radius:24px;background:var(--c-cream);transform:translateY(-150%)}.skip-link:focus{transform:none}
.boot-fallback{position:fixed;inset:0;z-index:99;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:24px;background:var(--c-cream)}.boot-fallback img{height:45vh;max-width:80vw}.boot-fallback h1{font-size:40px}.boot-fallback a{border:1px solid var(--c-ink);border-radius:99px;padding:8px 24px;min-height:44px}
.debug-panel{position:fixed;left:8px;bottom:8px;z-index:80;max-width:calc(100vw - 16px);padding:8px 12px;border-radius:12px;background:#10172ce8;color:#fff;font:11px/1.5 var(--font-mono);pointer-events:none;white-space:pre-wrap}.cursor-dot,.cursor-ring{display:none}
@media(pointer:fine){body.custom-cursor,body.custom-cursor a,body.custom-cursor button{cursor:none}.cursor-dot,.cursor-ring{display:block;position:fixed;left:0;top:0;z-index:200;pointer-events:none;border-radius:50%;color:var(--c-cream);mix-blend-mode:difference}.cursor-dot{width:8px;height:8px;background:currentColor}.cursor-ring{width:36px;height:36px;border:1px solid currentColor;display:grid;place-items:center;font-size:10px;line-height:1}.cursor-ring.is-hover{width:62px;height:62px}.roll-label{display:block;position:relative;overflow:hidden}.roll-label>span{display:block;transition:transform var(--feedback-ms) var(--ease)}.roll-label>span+span{position:absolute;inset:0;transform:translateY(110%)}a:hover .roll-label>span:first-child,button:hover .roll-label>span:first-child{transform:translateY(-110%)}a:hover .roll-label>span+span,button:hover .roll-label>span+span{transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-line>span{transform:none!important}[data-reveal]>p{opacity:1!important;transform:none!important}.cursor-dot,.cursor-ring{display:none!important}body.custom-cursor,body.custom-cursor a,body.custom-cursor button{cursor:auto}}
