@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-garamond-italic.ttf') format('truetype');font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-garamond.ttf') format('truetype');font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
:root{color-scheme:dark;--ink:#0a0a0a;--ivory:#f5f3ec;--muted:#ffffff8f;font-family:Manrope,Arial,sans-serif;background:var(--ink);color:var(--ivory);font-synthesis:none}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;min-height:100svh;isolation:isolate}a{color:inherit}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #d5bd90;outline-offset:5px}[hidden]{display:none!important}
/* Fixed-size composition matches the Framer background at every breakpoint. */
.scene{position:fixed;inset:0;overflow:hidden;z-index:-1;pointer-events:none;background:#0a0a0a}.space-stage{position:absolute;width:1200px;height:800px;left:50%;bottom:-100px;transform:translateX(-50%);isolation:isolate}#color-field{position:absolute;inset:0;width:1200px;height:800px}.color-blur{position:absolute;left:0;top:0;width:1200px;height:588px;backdrop-filter:blur(80px);-webkit-backdrop-filter:blur(80px);background:linear-gradient(180deg,#0a0a0a,transparent)}#particles{position:absolute;left:0;top:0;width:1200px;height:588px}.top-fade{position:absolute;top:0;left:0;width:1200px;height:100px;background:linear-gradient(180deg,#0a0a0a,transparent)}.horizon-radial{position:absolute;left:calc(50% - 25px);bottom:265px;width:787px;height:111px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,#ffffff80,transparent);filter:blur(57px)}.horizon-light{position:absolute;left:-443px;right:-443px;height:955px;bottom:-662px;border-radius:100%;background:linear-gradient(180deg,#fff,#0000)}.horizon-base{position:absolute;left:-521px;right:-521px;height:955.33px;bottom:-668px;border-radius:100%;background:#0a0a0a;box-shadow:inset 0 2px 20px #fff,0 -10px 50px 1px #ffffff7d}.side-fade{position:absolute;top:0;width:600px;height:800px}.side-fade-left{left:0;background:linear-gradient(90deg,#0a0a0a,transparent)}.side-fade-right{right:0;background:linear-gradient(270deg,#0a0a0a,transparent)}
.site-header{position:absolute;top:0;left:0;width:100%;padding:20px;display:flex;justify-content:space-between;align-items:center;z-index:2}.brand{display:flex;align-items:center;line-height:0}.brand img{display:block;width:132px;height:36.3px;object-fit:contain}.contact{display:inline-flex;align-items:center;padding:10px 17px;border:1px solid #ffffff26;background:#ffffff04;border-radius:6px;text-decoration:none;font-size:12px;font-weight:500;transition:background .2s,border-color .2s}.contact:hover{background:#ffffff0d;border-color:#ffffff55}
main{min-height:100svh;display:grid;place-items:center;padding:120px 32px}.hero{text-align:center;width:100%;max-width:720px;margin:0 auto}.badge{display:inline-flex;align-items:center;padding:6px 16px;border-radius:50px;background:#ffffff14;font-size:14px;line-height:1.2;letter-spacing:-.03em;color:#fff;margin-bottom:24px}h1{font-family:Cormorant,Georgia,serif;font-size:60px;line-height:1.1;letter-spacing:-.035em;font-weight:500;max-width:600px;margin:0 auto 16px;text-wrap:balance}h1 em{font-weight:400;font-style:italic;color:inherit}.intro{font-size:16px;line-height:1.5;letter-spacing:-.04em;color:var(--muted);margin:0 auto 24px;max-width:330px}#waitlist-form{position:relative;max-width:395px;margin:0 auto}.input-row{display:flex;align-items:center;background:#0a0a0a8f;height:49px;padding:4px;border-radius:8px;border:1px solid #ffffff1a;transition:border-color .2s}.input-row:focus-within{border-color:#c8b48c}#email{min-width:0;width:0;flex:1;background:none;border:0;outline:none;color:var(--ivory);padding:10px 11px;font-size:14px;line-height:1.2;height:39px}#email::placeholder{color:#ffffff80;opacity:1}.submit{border:0;border-radius:3px;flex:0 0 120px;height:39px;display:flex;align-items:center;justify-content:center;background:#f0f0f0;color:#0a0a0a;padding:0 12px;font-size:14px;font-weight:500;white-space:nowrap;transition:background .2s}.submit:hover{background:#fff}.consent{position:absolute;top:calc(100% + 17px);left:0;right:0;display:flex;text-align:left;justify-content:center;align-items:flex-start;gap:7px;margin:0;font-size:10px;color:#b9b9b9;line-height:1.65}.consent input{appearance:none;flex:0 0 13px;width:13px;height:13px;margin:2px 0 0;border:1px solid #878787;border-radius:2px;background:#0a0a0a;cursor:pointer}.consent input:checked{background:#d8d9c3;border-color:#d8d9c3;box-shadow:inset 0 0 0 3px #142d22}.form-note{position:absolute;top:calc(100% + 41px);left:0;right:0;font-size:10px;line-height:1.8;color:#aaa;margin:0}.text-button{border:0;padding:0;background:none;color:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:3px}.text-button:hover{color:var(--ivory)}.form-status{position:absolute;top:calc(100% + 70px);left:0;right:0;font-size:12px;line-height:1.7;color:#ead2ab;margin:0}.form-status:empty{display:none}.success-panel{max-width:395px;margin:0 auto;background:#0a0a0a80;padding:25px;border:1px solid #ffffff26;border-radius:8px}.success-mark{display:inline-grid;place-items:center;border:1px solid #a8bd8c;border-radius:50%;width:30px;height:30px;color:#dce8ce}.success-panel h2{font:500 32px/1.1 Cormorant,Georgia,serif;margin:15px 0 10px}.success-panel p{color:var(--muted);font-size:13px;line-height:1.8;margin:0}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:10;padding:12px;background:var(--ivory);color:var(--ink)}.skip-link:focus{top:15px}
dialog{color:var(--ivory);background:#101410;border:1px solid #86977a55;border-radius:14px;padding:28px;max-width:520px;width:calc(100% - 36px);box-shadow:0 20px 100px #0009}dialog::backdrop{background:#030704b8;backdrop-filter:blur(10px)}.dialog-top{display:flex;align-items:center;justify-content:space-between}.eyebrow{font-size:10px;letter-spacing:.16em;color:#a8b59e}.close-dialog{border:0;background:none;color:var(--ivory);font-size:28px;width:38px;height:38px}.dialog-done{border:1px solid #a9b19d66;border-radius:5px;background:#223523;color:var(--ivory);padding:10px 20px;margin-top:10px}dialog h2{font:500 40px/1.1 Cormorant,Georgia,serif;margin:15px 0 22px}dialog p{font-size:12px;line-height:1.85;color:#bfc8b8}dialog a{text-underline-offset:3px}body:has(dialog[open]){overflow:hidden}
.hero>.badge,.hero>h1,.hero>.intro,.hero>form{animation:enter .85s both}.hero>h1{animation-delay:.12s}.hero>.intro{animation-delay:.24s}.hero>form{animation-delay:.36s}@keyframes enter{from{opacity:0;filter:blur(4px);translate:0 8px}to{opacity:1;filter:blur(0);translate:0 0}}

@media(max-width:809.98px){.space-stage{bottom:0}body{position:relative;min-height:max(100svh,844px)}.scene{position:absolute;height:100%;min-height:844px}main{min-height:max(100svh,844px);padding:164px 32px 150px;place-items:start center}.badge{font-size:12px;margin-bottom:36px}h1{font-size:clamp(33px,10.7vw,60px);line-height:1.1;margin-bottom:16px}.intro{font-size:14px;line-height:1.5;max-width:302px;margin-bottom:36px}#waitlist-form{max-width:304px}#email{font-size:16px;padding:10px 10px}.submit{flex-basis:100px;font-size:12px}.consent{font-size:11px;top:calc(100% + 16px);justify-content:flex-start}.consent input{flex-basis:15px;width:15px;height:15px}.form-note{top:calc(100% + 59px)}.form-status{top:calc(100% + 88px)}}
@media(max-width:360px){main{padding-left:22px;padding-right:22px}.brand img{width:120px;height:33px}}
@media(min-width:500px) and (max-width:809.98px){body,main{min-height:max(100svh,900px)}.scene{min-height:900px}}
@media(min-width:810px) and (max-height:800px){body{position:relative;min-height:850px}main{min-height:850px}.scene{position:absolute;height:100%;min-height:850px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero>.badge,.hero>h1,.hero>.intro,.hero>form{animation:none}*,*::before,*::after{transition:none!important}}
