@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--bg:#130f13;--panel:#21191f;--ink:#f6eae6;--muted:#c4b4b7;--pink:#f58fa9;--gold:#d5bc9a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(24px,5vw);background:#110d10;position:relative;z-index:2}.brand{font-family:'Playfair Display',Georgia,serif;font-size:24px;letter-spacing:.1em;white-space:nowrap}.brand span{color:var(--pink)}.brand small{display:block;font:500 9px 'DM Sans',sans-serif;letter-spacing:.43em;text-align:center;margin-top:5px}.topbar nav{display:flex;gap:28px}.topbar nav a{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#e8d8d7}.topbar nav a:hover,.text-link:hover{color:var(--pink)}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--pink);color:#221319;border:0;border-radius:100px;padding:15px 28px;font-weight:700;letter-spacing:.035em;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px);background:#ffacc0}.btn-small{padding:12px 18px;font-size:12px}.eyebrow{font-size:11px;letter-spacing:.25em;color:var(--gold);font-weight:700}.hero{min-height:690px;position:relative;display:flex;align-items:center;padding:70px max(24px,8vw);overflow:hidden}.hero-photo{position:absolute;inset:0;background:url('assets/scarlett-hero.png') center 32%/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,8,11,.92) 0%,rgba(12,8,11,.7) 33%,rgba(12,8,11,.12) 75%),linear-gradient(0deg,rgba(12,8,11,.5),transparent 30%)}.hero-copy{position:relative;max-width:530px}.hero h1{font:400 clamp(60px,7.4vw,112px)/1.06 'Playfair Display',Georgia,serif;margin:24px 0}.hero h1 em,h2 em{color:var(--pink);font-weight:400}.hero-copy p{max-width:440px;font-size:17px;line-height:1.8;color:#f2e5e3}.actions{display:flex;gap:24px;align-items:center;margin-top:28px}.text-link{font-size:13px;letter-spacing:.08em}.hero-tag{position:absolute;bottom:25px;left:max(24px,8vw);font-size:10px;letter-spacing:.22em}.intro{text-align:center;max-width:810px;padding:110px 24px;margin:auto}.intro h2,.section-head h2,.membership h2,.faq h2{font:400 clamp(38px,4.2vw,62px)/1.15 'Playfair Display',Georgia,serif;margin:20px 0}.intro p,.membership p{line-height:1.9;color:var(--muted);font-size:16px}.pillrow{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:28px}.pillrow span{border:1px solid #66525b;border-radius:100px;padding:10px 16px;font-size:12px}.gallery{padding:85px max(24px,6vw);background:#1a1318}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px}.section-head p,.caption{color:var(--muted);font-size:13px}.tiles{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;margin-top:24px}.tile{height:390px;position:relative;overflow:hidden;background:#3c3035}.tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.tile:hover img{transform:scale(1.04)}.tile-one img{object-position:52% 18%}.tile-two img{object-position:70% 0%;transform:scale(1.5)}.tile-two:hover img{transform:scale(1.56)}.tile-three img{object-position:20% 55%;transform:scale(1.25)}.tile-three:hover img{transform:scale(1.3)}.tile:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0e0b0dcc)}.tile span{position:absolute;z-index:1;bottom:23px;left:22px;font-size:11px;letter-spacing:.2em}.membership{padding:110px max(24px,9vw);display:grid;grid-template-columns:1fr 430px;gap:70px;align-items:center}.membership h2{font-size:clamp(44px,5vw,75px)}.price-card{padding:40px;background:var(--panel);border:1px solid #6d4a58;border-radius:18px}.price{font:400 64px 'Playfair Display',Georgia,serif;margin:22px 0}.price span{font:14px 'DM Sans',sans-serif;color:var(--muted)}.price-card ul{padding-left:20px;line-height:2.2;color:#ead9db;font-size:14px}.price-card li::marker{color:var(--pink)}.full{width:100%;margin:15px 0}.price-card small{display:block;text-align:center;color:var(--muted)}.faq{max-width:920px;margin:auto;padding:60px 24px 120px}.faq details{border-bottom:1px solid #4e3c45;padding:23px 0}.faq summary{cursor:pointer;font-weight:600}.faq details p{color:var(--muted);line-height:1.7}footer{border-top:1px solid #42323a;padding:55px 24px;text-align:center}footer .brand{display:inline-block}footer p{font-size:12px;color:var(--muted);line-height:1.7}.gate{position:fixed;inset:0;background:#100c10;z-index:10;display:grid;place-items:center;padding:22px}.gate[hidden]{display:none}.gate-card{max-width:560px;text-align:center;border:1px solid #75515e;background:#21171e;padding:clamp(25px,5vw,55px);border-radius:20px}.gate-card .mark{font:30px 'Playfair Display',Georgia,serif;margin-top:22px}.gate-card .mark span{color:var(--pink)}.gate-card h1{font:48px 'Playfair Display',Georgia,serif;margin:28px 0 10px}.gate-card p{color:var(--muted);line-height:1.7}.gate-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:30px 0}.secondary{background:transparent;border:1px solid #aa8592;color:var(--ink)}.gate-card small{color:var(--muted)}.toast{position:fixed;z-index:5;bottom:25px;left:50%;transform:translateX(-50%);background:#f7e9e9;color:#25181c;padding:18px 26px;border-radius:12px;box-shadow:0 8px 30px #0008;text-align:center;max-width:90vw}.toast[hidden]{display:none}@media(max-width:900px){.topbar nav{display:none}.hero{min-height:620px}.membership{grid-template-columns:1fr;gap:30px}.price-card{max-width:500px}.tiles{grid-template-columns:1fr 1fr}.tile-three{display:none}}@media(max-width:580px){.topbar{height:74px;padding:0 18px}.brand{font-size:17px}.brand small{font-size:7px}.btn-small{font-size:10px;padding:11px}.hero{min-height:650px;align-items:end;padding:60px 23px 85px}.hero-photo{background-position:58% center}.hero-shade{background:linear-gradient(0deg,#100c10 1%,#100c10bb 43%,#100c1022 90%)}.hero h1{font-size:57px}.hero-copy p{font-size:15px}.hero-tag{left:23px;bottom:25px;font-size:8px}.intro{padding:75px 23px}.gallery{padding:70px 20px}.section-head{display:block}.tiles{grid-template-columns:1fr}.tile{height:370px}.tile-three{display:block}.membership{padding:80px 20px}.price-card{padding:28px}.faq{padding:50px 20px 90px}}

.waitlist{padding:90px 24px;background:#1a1318}.waitlist-wrap{max-width:690px;margin:auto}.waitlist h2{font:400 clamp(40px,5vw,65px) 'Playfair Display',Georgia,serif;margin:20px 0}.waitlist p{line-height:1.8;color:var(--muted)}.waitlist form{display:grid;gap:15px;margin-top:30px}.waitlist input[type=email]{padding:17px 19px;border:1px solid #977180;background:#271d25;color:white;border-radius:9px;font:inherit;min-width:0}.waitlist .check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6}.waitlist .check input{margin-top:4px;accent-color:var(--pink)}.waitlist form small{color:var(--muted);line-height:1.5}.trap{position:absolute;left:-9999px;opacity:0;pointer-events:none}

.legal-page{max-width:900px;margin:0 auto;padding:70px 24px 100px;line-height:1.8}.legal-page h1{font:400 clamp(38px,5vw,60px) 'Playfair Display',Georgia,serif}.legal-page h2{font:400 29px 'Playfair Display',Georgia,serif;color:var(--pink);margin-top:35px}.legal-page p,.legal-page li{color:var(--muted)}.legal-page a,.legal-links a,.check a{color:var(--pink);text-decoration:underline}.legal-links{display:flex;gap:14px 23px;justify-content:center;flex-wrap:wrap;margin:20px auto;font-size:13px}.legal-note{border:1px solid #876273;background:#291e26;padding:16px;border-radius:10px}.legal-page input,.legal-page textarea,.legal-page select{width:100%;padding:14px;border:1px solid #977180;background:#271d25;color:white;border-radius:8px;font:inherit}.legal-page form{display:grid;gap:12px}.legal-page label{font-weight:600}.legal-page button{justify-self:start}.legal-page .check input{width:auto}.legal-page .check{display:flex;gap:10px;font-size:13px}.legal-page small{color:var(--muted)}
