:root { --ink:#050505; --paper:#eee9df; --muted:#98948c; --line:rgba(238,233,223,.17); --gold:#c7aa79; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ink); }
body { margin:0; color:var(--paper); background:var(--ink); font-family:"DM Sans",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
::selection { color:#080808; background:var(--gold); }
.grain { position:fixed; z-index:5; inset:0; pointer-events:none; opacity:.06; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E"); }
.skip-link { position:fixed; left:1rem; top:-4rem; z-index:20; padding:.75rem 1rem; color:#000; background:var(--paper); transition:top .2s; }.skip-link:focus { top:1rem; }
.site-header { height:86px; position:absolute; top:0; left:0; right:0; z-index:6; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(1.35rem,5vw,5rem); font-family:"DM Mono",monospace; text-transform:uppercase; letter-spacing:.14em; font-size:10px; }
.wordmark { color:var(--paper); text-decoration:none; letter-spacing:.26em; font-family:"Playfair Display",serif; font-size:15px; }.header-link { color:var(--paper); text-decoration:none; opacity:.7; transition:opacity .2s; }.header-link:hover { opacity:1; }.header-link span { color:var(--gold); }
.hero { position:relative; isolation:isolate; overflow:hidden; min-height:100svh; display:flex; flex-direction:column; justify-content:space-between; padding:116px clamp(1.35rem,5vw,5rem) 38px; border-bottom:1px solid var(--line); }
.hero-seal { position:absolute; z-index:-1; right:clamp(-30rem,-27vw,-12rem); top:50%; width:clamp(38rem,71vw,82rem); height:auto; opacity:.34; transform:translateY(-50%); mix-blend-mode:screen; pointer-events:none; user-select:none; }
.hero-top { display:flex; justify-content:space-between; font:10px "DM Mono",monospace; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); }.eyebrow { margin:0; }.eyebrow span { display:inline-block; width:5px; height:5px; margin:0 9px 2px 0; border-radius:50%; background:var(--gold); }.edition { margin:0; color:var(--gold); }
.hero-core { max-width:1200px; margin:auto 0; padding:11vh 0 8vh; }.kicker,.overline { margin:0 0 24px; color:var(--gold); font:10px "DM Mono",monospace; letter-spacing:.18em; text-transform:uppercase; }.hero h1 { margin:0; font:clamp(3.7rem,11.8vw,12rem)/.83 "Playfair Display",serif; letter-spacing:-.07em; font-weight:400; }.hero-rule { width:min(23vw,230px); height:1px; margin:clamp(1.5rem,4vw,4rem) 0; background:linear-gradient(90deg,var(--gold),transparent); }.hero-statement { margin:0 0 38px; font:clamp(1.45rem,3.2vw,3.8rem)/1.1 "Playfair Display",serif; letter-spacing:-.035em; }.hero-statement em,h2 em { font-weight:400; color:var(--gold); }.button { display:inline-flex; gap:18px; align-items:center; padding:14px 0; color:var(--paper); border-bottom:1px solid var(--gold); text-decoration:none; font:10px "DM Mono",monospace; letter-spacing:.13em; text-transform:uppercase; transition:color .3s,gap .3s; }.button:hover { color:var(--gold); gap:26px; }.scroll-hint { display:flex; align-items:center; gap:12px; margin:0; font:9px "DM Mono",monospace; color:var(--muted); letter-spacing:.12em; text-transform:uppercase; }.scroll-hint span { display:block; width:42px; height:1px; background:var(--line); }
.section-pad { padding:clamp(6.5rem,15vw,14rem) clamp(1.35rem,10vw,10rem); border-bottom:1px solid var(--line); }.section-label { color:var(--muted); font:10px "DM Mono",monospace; letter-spacing:.13em; text-transform:uppercase; }.section-label span { color:var(--gold); margin-right:14px; }
.manifesto { display:grid; grid-template-columns:1fr 2.1fr; gap:10vw; }.manifesto-copy { max-width:830px; }.manifesto h2,.access h2 { margin:0 0 38px; font:400 clamp(2.45rem,5.4vw,6.3rem)/1 "Playfair Display",serif; letter-spacing:-.055em; }.body-copy { margin:0; max-width:470px; color:#b9b5ad; font-size:15px; line-height:1.75; }
.principles { background:#080808; }.principle-list { display:grid; grid-template-columns:repeat(3,1fr); margin-top:clamp(4rem,8vw,8rem); border-top:1px solid var(--line); }.principle { min-height:300px; padding:28px 28px 12px 0; border-right:1px solid var(--line); }.principle:not(:first-child) { padding-left:28px; }.principle:last-child { border-right:0; }.principle-number { color:var(--gold); font:12px "DM Mono",monospace; }.principle h3 { margin:clamp(2.7rem,7vw,7rem) 0 17px; font:400 clamp(1.9rem,3vw,3.5rem)/1 "Playfair Display",serif; letter-spacing:-.04em; }.principle p { max-width:225px; margin:0; color:var(--muted); font-size:14px; line-height:1.65; }
.invitation { min-height:70vh; display:flex; flex-direction:column; justify-content:space-between; background:radial-gradient(ellipse 60% 48% at 76% 57%,rgba(126,94,43,.11),transparent 65%); }.invitation-inner { width:100%; }.invitation-content { margin:clamp(4rem,10vw,9rem) 0 0 20%; }.number { margin:0; font:400 clamp(10rem,32vw,29rem)/.65 "Playfair Display",serif; letter-spacing:-.1em; color:var(--paper); }.invitations-word { margin:25px 0 clamp(2.5rem,6vw,5rem); font:400 clamp(2.1rem,5vw,5.3rem)/1 "Playfair Display",serif; letter-spacing:-.05em; color:var(--gold); }
.access { display:grid; grid-template-columns:1.2fr 1fr; gap:10vw; align-items:end; padding-bottom:clamp(6rem,11vw,10rem); }.waitlist-form { max-width:500px; }.waitlist-form label { display:block; margin-bottom:13px; color:var(--muted); font:10px "DM Mono",monospace; text-transform:uppercase; letter-spacing:.13em; }.form-row { display:flex; border-bottom:1px solid var(--paper); }.form-row:focus-within { border-color:var(--gold); }.form-row input { width:100%; min-width:0; padding:17px 0; color:var(--paper); border:0; outline:0; background:transparent; font:15px "DM Sans",sans-serif; }.form-row input::placeholder { color:#595751; }.form-row button { flex-shrink:0; padding:0 0 0 20px; color:var(--paper); border:0; background:transparent; cursor:pointer; font:10px "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; transition:color .2s; }.form-row button:hover { color:var(--gold); }.form-note { margin:13px 0 0; color:var(--muted); font-size:11px; line-height:1.5; }.honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
footer { display:flex; justify-content:space-between; gap:2rem; padding:25px clamp(1.35rem,5vw,5rem); color:var(--muted); font:9px "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; } footer p { margin:0; } footer span { color:var(--gold); }
.confirmation { min-height:100svh; display:flex; flex-direction:column; justify-content:center; padding:8rem clamp(1.35rem,10vw,10rem); }.confirmation h1 { margin:0 0 2rem; font:400 clamp(2.8rem,6vw,7rem)/.98 "Playfair Display",serif; letter-spacing:-.06em; }.confirmation > p:not(.overline) { max-width:340px; margin:0 0 2.5rem; color:#b9b5ad; font:15px/1.7 "DM Sans",sans-serif; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }.reveal { opacity:0; transform:translateY(16px); transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1); }.reveal.visible { opacity:1; transform:none; }
@media (max-width:700px) { .site-header { height:72px; }.header-link { font-size:9px; }.hero { padding-top:100px; }.hero-seal { right:-20rem; width:46rem; opacity:.23; }.hero-core { padding:17vh 0 9vh; }.hero h1 { font-size:clamp(3.25rem,16vw,5rem); }.hero-statement { font-size:1.65rem; }.manifesto,.access { grid-template-columns:1fr; gap:50px; }.manifesto h2,.access h2 { font-size:2.65rem; margin-bottom:25px; }.principle-list { display:block; margin-top:50px; }.principle,.principle:not(:first-child) { min-height:auto; padding:25px 0 42px; border-right:0; border-bottom:1px solid var(--line); }.principle:last-child { border-bottom:0; padding-bottom:0; }.principle h3 { margin:45px 0 13px; font-size:2.3rem; }.invitation { min-height:65svh; }.invitation-content { margin:75px 0 0; }.number { font-size:clamp(9rem,48vw,14rem); }.invitations-word { margin-top:24px; font-size:2.8rem; }.form-row { display:block; }.form-row input { display:block; }.form-row button { padding:16px 0 14px; }.section-pad { padding-top:6rem; padding-bottom:6rem; } footer { flex-direction:column; gap:10px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } .reveal { opacity:1; transform:none; } }
