@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Inter:wght@400;600;800;900&display=swap');
:root{--black:#050505;--cream:#E8DDC6;--stone:#B8AA95;--white:#F7F4EE;--muted:rgba(232,221,198,.72);--line:rgba(232,221,198,.22)}
*{box-sizing:border-box} html,body{margin:0;min-height:100%;background:var(--black);color:var(--white);font-family:Inter,Arial,sans-serif} body{overflow-x:hidden}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.intro-screen{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:var(--black);pointer-events:none;animation:introFade 2.3s ease forwards}
.intro-screen img{width:min(340px,70vw);filter:invert(1) sepia(.18) saturate(.8);opacity:0;animation:introLogo 1.2s ease forwards}
.intro-screen p{position:absolute;bottom:22%;margin:0;color:var(--cream);font-family:Cinzel,Georgia,serif;letter-spacing:.08em;opacity:0;animation:introWords 1.4s ease .35s forwards}
.hero{min-height:100vh;padding:26px;display:grid;grid-template-rows:auto 1fr auto;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 10%,rgba(232,221,198,.13),transparent 30%),linear-gradient(135deg,#050505 0%,#0e0d0b 52%,#050505 100%)}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(232,221,198,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(232,221,198,.03) 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(circle at center,black,transparent 70%);pointer-events:none}
.topbar{position:relative;z-index:2;width:min(1180px,100%);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.mark{width:124px;filter:invert(1) sepia(.18) saturate(.8)}
nav{display:flex;gap:22px} nav a{color:rgba(232,221,198,.78);text-decoration:none;font-size:.9rem} nav a:hover{color:var(--cream)}
.center{position:relative;z-index:2;width:min(780px,100%);margin:auto;text-align:center;padding:40px 0}.eyebrow{margin:0 0 18px;color:var(--stone);text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:800}
.hero-logo{width:min(560px,88vw);margin:0 auto;display:block;filter:invert(1) sepia(.18) saturate(.8)} h1{margin:0;font-size:clamp(4.2rem,12vw,10rem);line-height:.84;letter-spacing:-.09em;font-weight:900}
h2{margin:24px 0 0;font-family:Cinzel,Georgia,serif;color:var(--cream);font-weight:400;font-size:clamp(1.55rem,4vw,3.5rem);line-height:1.05}
.lead{max-width:620px;margin:24px auto 34px;color:var(--muted);line-height:1.7;font-size:clamp(1rem,2vw,1.16rem)}
.signup-form{max-width:640px;margin:0 auto}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input{width:100%;min-height:58px;border:1px solid var(--line);border-radius:0;background:rgba(255,255,255,.045);color:var(--white);padding:0 16px;outline:none;font-size:1rem}
input::placeholder{color:rgba(232,221,198,.50)} input:focus{border-color:var(--cream);background:rgba(255,255,255,.075)}
button,.button-link{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:60px;margin-top:12px;border:1px solid var(--cream);background:var(--cream);color:var(--black);cursor:pointer;font-weight:900;text-transform:uppercase;letter-spacing:.13em;text-decoration:none;transition:transform .18s ease,background .18s ease,color .18s ease}
button:hover,.button-link:hover{transform:translateY(-2px);background:transparent;color:var(--cream)}button:disabled{cursor:wait;opacity:.7}
.form-message{min-height:20px;margin:12px 0 0;color:var(--cream);font-size:.9rem}.form-message.error{color:#ffb4a8}.limited{margin:14px auto 0;color:rgba(232,221,198,.72);line-height:1.45;font-size:.92rem}
.tags{margin-top:28px;display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.tags span{border:1px solid var(--line);color:rgba(232,221,198,.82);padding:10px 12px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}
footer{position:relative;z-index:2;text-align:center;color:rgba(232,221,198,.56);font-family:Cinzel,Georgia,serif;letter-spacing:.04em}
.thank-you-page{min-height:100vh;display:grid;place-items:center;padding:26px;background:radial-gradient(circle at 50% 10%,rgba(232,221,198,.13),transparent 30%),linear-gradient(135deg,#050505 0%,#0e0d0b 52%,#050505 100%)}
.thank-you-card{width:min(620px,100%);text-align:center;border:1px solid var(--line);padding:clamp(28px,6vw,58px);background:rgba(255,255,255,.035)}
.thank-you-card img{width:180px;filter:invert(1) sepia(.18) saturate(.8);margin-bottom:30px}.thank-you-card p{color:var(--muted);line-height:1.7}.signature{color:var(--cream)!important;margin-top:24px}
@keyframes introLogo{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes introWords{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes introFade{0%,72%{opacity:1}100%{opacity:0;visibility:hidden}}
@media(max-width:760px){.hero{padding:20px 16px}.topbar{align-items:flex-start}.mark{width:98px}nav{flex-direction:column;align-items:flex-end;gap:7px}nav a{font-size:.78rem}.center{padding:34px 0 28px}.fields{grid-template-columns:1fr}.intro-screen p{width:90%;text-align:center;bottom:20%}}
