:root {
  --ink: #eceae6;
  --muted: rgba(236, 234, 230, 0.68);
  --soft: rgba(236, 234, 230, 0.1);
  --line: rgba(236, 234, 230, 0.18);
  --gold: #c79a6b;
  --bg: #101013;
  --panel: #171719;
}
* { box-sizing: border-box; }
html, body { margin: 0; background: var(--bg); color: var(--ink); font-family: Jost, system-ui, sans-serif; }
a { color: inherit; }
.shell { min-height: 100vh; padding: 38px clamp(20px, 5vw, 72px); }
.nav { display:flex; align-items:center; justify-content:space-between; gap:22px; padding-bottom:24px; border-bottom:1px solid var(--line); }
.brand { text-decoration:none; letter-spacing:.34em; font-weight:600; font-size:18px; }
.links { display:flex; gap:16px; flex-wrap:wrap; align-items:center; }
.links a { text-decoration:none; text-transform:uppercase; letter-spacing:.18em; font-size:11px; color:var(--muted); }
.pill { display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--line); border-radius:999px; padding:11px 18px; text-decoration:none; text-transform:uppercase; letter-spacing:.16em; font-size:11px; background:rgba(255,255,255,.04); }
.hero { max-width:1040px; padding:72px 0 42px; }
.eyebrow { color:var(--gold); text-transform:uppercase; letter-spacing:.28em; font-size:11px; margin-bottom:18px; }
h1 { font-size:clamp(42px, 7vw, 92px); line-height:.98; letter-spacing:.03em; margin:0 0 22px; font-weight:400; }
p { color:var(--muted); line-height:1.8; font-weight:300; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:18px; margin-top:34px; }
.card { border:1px solid var(--line); background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025)); border-radius:24px; padding:24px; }
.card h2, .card h3 { margin:0 0 12px; font-weight:400; }
.price { color:var(--ink); font-size:28px; margin:16px 0; }
button, input, textarea, select { font:inherit; }
button, .button { cursor:pointer; border:1px solid rgba(236,234,230,.34); color:#101013; background:var(--ink); border-radius:999px; padding:12px 18px; text-transform:uppercase; letter-spacing:.16em; font-size:11px; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
.secondary { color:var(--ink); background:transparent; }
.form { display:grid; gap:14px; max-width:560px; }
input, textarea, select { width:100%; border:1px solid var(--line); background:rgba(255,255,255,.045); color:var(--ink); border-radius:14px; padding:14px 15px; }
.notice { border:1px solid rgba(199,154,107,.35); background:rgba(199,154,107,.08); color:var(--ink); border-radius:18px; padding:16px 18px; }
.small { font-size:13px; color:var(--muted); }
@media (max-width: 760px) { .nav { align-items:flex-start; flex-direction:column; } .links { gap:12px; } .shell { padding:26px 18px; } }
