:root { color-scheme: dark; --navy:#061329; --navy2:#0c1c39; --ivory:#f7f1e5; --muted:#aeb9cc; --gold:#efc06c; --line:rgba(239,192,108,.24); }
* { box-sizing: border-box; }
html { min-height:100%; background:var(--navy); }
body { min-height:100vh; margin:0; color:var(--ivory); font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif; background:radial-gradient(circle at 70% 20%,rgba(88,72,147,.24),transparent 30%),radial-gradient(circle at 50% 70%,rgba(239,145,78,.13),transparent 28%),linear-gradient(150deg,#041027,var(--navy2) 54%,#061329); }
a { color:inherit; }
.site-nav { height:78px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(24px,7vw,100px); border-bottom:1px solid rgba(255,255,255,.08); backdrop-filter:blur(18px); }
.site-nav nav { display:flex; gap:28px; }
.site-nav nav a,.wordmark { text-decoration:none; }
.wordmark { font-family:Georgia,serif; color:var(--gold); font-size:22px; }
.hero { max-width:850px; margin:0 auto; text-align:center; padding:clamp(80px,14vh,160px) 24px; }
.crescent { color:var(--gold); font-size:50px; }
.eyebrow { text-transform:uppercase; letter-spacing:.22em; color:var(--gold); font-size:12px; }
.hero h1,.legal h1 { font-family:Georgia,'Times New Roman',serif; font-weight:500; line-height:1.06; color:#f5cf87; }
.hero h1 { font-size:clamp(48px,8vw,82px); margin:18px 0; }
.lede { font-size:clamp(18px,2.3vw,24px); line-height:1.6; color:var(--muted); max-width:690px; margin:0 auto; }
.notice { display:inline-block; margin-top:46px; padding:14px 20px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.045); color:#d8dfeb; }
.legal { max-width:850px; margin:0 auto; padding:70px 24px 120px; }
.legal h1 { font-size:clamp(42px,7vw,66px); margin-bottom:10px; }
.effective { color:var(--muted); margin-bottom:48px; }
.legal h2 { font-family:Georgia,serif; color:var(--gold); font-size:26px; margin-top:45px; }
.legal p,.legal li { color:#d1d8e4; line-height:1.75; }
.legal li+li { margin-top:8px; }
.callout { border:1px solid var(--line); background:rgba(255,255,255,.045); border-radius:18px; padding:22px; margin:30px 0; }
.contact-card { display:grid; gap:18px; padding:28px; border:1px solid var(--line); border-radius:22px; background:rgba(255,255,255,.05); }
.button { display:inline-flex; width:max-content; border:0; text-decoration:none; background:linear-gradient(135deg,#f6d28e,#dfaa52); color:#07152d; font-weight:700; padding:14px 22px; border-radius:999px; cursor:pointer; }
label { display:grid; gap:8px; color:#dfe5ef; font-weight:600; }
input,select,textarea { width:100%; border:1px solid rgba(255,255,255,.16); border-radius:12px; background:rgba(3,12,29,.72); color:var(--ivory); font:inherit; padding:13px 14px; }
textarea { resize:vertical; }
.consent { display:flex; align-items:flex-start; font-weight:400; line-height:1.5; }
.consent input { width:18px; margin-top:3px; }
.honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.button:disabled { opacity:.55; cursor:wait; }
#form-status { min-height:1.5em; margin:0; color:var(--gold); }
footer { padding:32px; text-align:center; color:#8997af; border-top:1px solid rgba(255,255,255,.07); }
footer a { color:#cbd4e2; }
@media(max-width:620px) { .site-nav { height:auto; padding:20px 22px; align-items:flex-start; gap:20px; } .site-nav nav { gap:14px; flex-wrap:wrap; justify-content:flex-end; } .legal { padding-top:45px; } }
