:root {
  --bg:#0d0f12; --bg2:#14171b; --slate:#5d6870; --line:#262b31;
  --ivory:#e9e6df; --mute:#9aa1a8; --dim:#80878e; --brass:#b9a27a;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--ivory); font:300 16px/1.7 Montserrat, Arial, sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
.wrap { max-width:1140px; margin:0 auto; padding:0 24px; }
.eyebrow { font-size:11px; font-weight:500; letter-spacing:.32em; text-transform:uppercase; color:var(--brass); }

header { position:fixed; inset:0 0 auto 0; z-index:10; background:rgba(13,15,18,.86); backdrop-filter:blur(10px); border-bottom:1px solid var(--line); }
header .wrap { display:flex; align-items:center; justify-content:space-between; height:76px; }
.brand b { display:block; font-family:"Cormorant Garamond", Georgia, serif; font-weight:500; font-size:22px; letter-spacing:.24em; line-height:1.1; }
.brand small { display:block; font-size:9px; font-weight:500; letter-spacing:.46em; color:var(--mute); }
nav a { margin-left:34px; font-size:11px; font-weight:500; letter-spacing:.24em; text-transform:uppercase; color:var(--mute); transition:color .2s; }
nav a:hover { color:var(--ivory); }
.hcta { display:none; font-size:10px; font-weight:600; letter-spacing:.22em; text-transform:uppercase; border:1px solid var(--ivory); padding:10px 14px; }

.hero { padding:170px 0 80px; background:radial-gradient(ellipse 70% 60% at 75% 35%, rgba(93,104,112,.30), transparent 70%), var(--bg); }
.hero h1 { font-family:"Cormorant Garamond", Georgia, serif; font-weight:400; font-size:clamp(40px,6vw,80px); line-height:1.04; letter-spacing:-.01em; margin:22px 0 28px; max-width:980px; }
.hero p { font-size:17px; color:var(--mute); max-width:620px; margin:0 0 40px; }
.hero .fee { color:var(--ivory); }
.btn { display:inline-block; padding:17px 34px; font-size:11px; font-weight:600; letter-spacing:.28em; text-transform:uppercase; border:1px solid var(--ivory); transition:all .25s; }
.btn.solid { background:var(--ivory); color:var(--bg); }
.btn.solid:hover { background:transparent; color:var(--ivory); }
.btn.ghost:hover { background:var(--ivory); color:var(--bg); }
.btn + .btn { margin-left:14px; }

.proof { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--bg2); }
.proof .wrap { padding-top:34px; padding-bottom:34px; display:flex; align-items:baseline; gap:22px; flex-wrap:wrap; }
.proof b { font-family:"Cormorant Garamond", Georgia, serif; font-weight:500; font-size:44px; line-height:1; }
.proof span { font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--mute); }

section { padding:120px 0; }
.head { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:end; margin-bottom:64px; }
h2 { font-family:"Cormorant Garamond", Georgia, serif; font-weight:400; font-size:clamp(36px,4.4vw,56px); line-height:1.05; margin:16px 0 0; }
.head p { color:var(--mute); margin:0; max-width:440px; justify-self:end; }

.pillars { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--slate); }
.pillars div { padding:36px 28px 0 0; }
.pillars h3 { font-family:"Cormorant Garamond", Georgia, serif; font-weight:500; font-size:26px; line-height:1.15; margin:0 0 12px; }
.pillars p { color:var(--mute); margin:0; font-size:15px; }

.who { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.who a, .who div.card { display:block; border:1px solid var(--line); padding:34px; transition:border-color .2s; }
.who a:hover { border-color:var(--slate); }
.who h3 { font-family:"Cormorant Garamond", Georgia, serif; font-weight:500; font-size:26px; margin:0 0 8px; }
.who p { color:var(--mute); margin:0; font-size:15px; }
.who .more { display:inline-block; margin-top:16px; font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--brass); }

.band { background:var(--bg2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.menu { display:grid; grid-template-columns:1fr 1fr; gap:0 80px; }
.item { display:grid; grid-template-columns:1fr auto; gap:6px 24px; padding:26px 0; border-bottom:1px solid var(--line); transition:padding .25s; }
.item:hover { padding-left:10px; }
.item .n { font-family:"Cormorant Garamond", Georgia, serif; font-size:26px; font-weight:500; line-height:1.2; }
.item .p { font-family:"Cormorant Garamond", Georgia, serif; font-size:26px; font-weight:500; white-space:nowrap; }
.item .p small { font-family:Montserrat, Arial, sans-serif; font-size:11px; letter-spacing:.1em; color:var(--dim); margin-left:4px; }
.item .d { grid-column:1 / -1; color:var(--mute); font-size:14px; max-width:480px; }
.item.lead { border-top:1px solid var(--slate); }
.note { color:var(--mute); font-size:14px; margin-top:28px; }

.steps { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--slate); }
.steps div { padding:40px 40px 0 0; }
.steps b { font-family:"Cormorant Garamond", Georgia, serif; font-weight:400; font-size:60px; line-height:1; color:var(--slate); }
.steps h3 { font-size:12px; font-weight:600; letter-spacing:.26em; text-transform:uppercase; margin:18px 0 10px; }
.steps p { color:var(--mute); margin:0; font-size:15px; }

.split { display:grid; grid-template-columns:1.1fr 1fr; gap:80px; align-items:start; }
.split p { color:var(--mute); }
.boxed { border:1px solid var(--line); padding:40px; background:linear-gradient(160deg, rgba(93,104,112,.14), transparent 60%); }
.boxed h3 { font-family:"Cormorant Garamond", Georgia, serif; font-weight:500; font-size:30px; margin:12px 0 12px; }

.samples { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.samples video { width:100%; aspect-ratio:9/16; background:#000; border:1px solid var(--line); display:block; }
.samples p { color:var(--mute); font-size:14px; margin:12px 0 0; }

.cta { text-align:center; padding:140px 0; background:radial-gradient(ellipse 60% 70% at 50% 50%, rgba(93,104,112,.25), transparent 70%); }
.cta h2 { margin:18px auto 22px; max-width:760px; }
.cta p { color:var(--mute); max-width:540px; margin:0 auto 46px; }

footer { border-top:1px solid var(--line); padding:44px 0; font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:var(--dim); }
footer .wrap { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px 28px; }
footer nav a { margin:0 0 0 24px; font-size:11px; color:var(--dim); }
footer nav a:first-child { margin-left:0; }

@media (max-width:900px) {
  header nav { display:none; }
  .hcta { display:inline-block; }
  .head, .menu, .steps, .who, .split, .samples, .pillars { grid-template-columns:1fr; }
  .head p { justify-self:start; }
  .pillars div { padding:28px 0 0; }
  .steps div { padding:34px 0 0; }
  .split { gap:40px; }
  section { padding:84px 0; }
  .hero { padding:130px 0 64px; }
  .btn { display:block; text-align:center; }
  .btn + .btn { margin:12px 0 0; }
  .boxed { padding:28px; }
  footer nav a { margin:0 18px 0 0; }
}
