
:root{
  --ink:#21182c;
  --muted:#6f6877;
  --cream:#fbf9fd;
  --gold:#c6a15b;
  --deep:#4a2368;
  --white:#ffffff;
  --line:#e7deed;
  --soft:#f2e9f7;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:var(--cream);
  line-height:1.65;
}
a{color:inherit}
.container{width:min(1120px, 92%); margin:auto}
header{
  position:sticky; top:0; z-index:10;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex; align-items:center; justify-content:space-between; gap:24px; padding:18px 0}
.brand{font-weight:800; letter-spacing:.2px; text-decoration:none; color:var(--deep)}
.brand span{color:var(--gold)}
nav ul{display:flex; flex-wrap:wrap; list-style:none; margin:0; padding:0; gap:20px; align-items:center}
nav a{text-decoration:none; font-weight:600; font-size:.95rem}
.btn{
  display:inline-block; padding:12px 18px; border-radius:10px; text-decoration:none; font-weight:700;
  border:1px solid var(--deep);
}
.btn.primary{background:var(--deep); color:white}
.btn.secondary{background:white; color:var(--deep)}
.hero{padding:84px 0 66px}
.eyebrow{text-transform:uppercase; letter-spacing:.14em; font-size:.78rem; font-weight:800; color:var(--gold)}
h1{font-size:clamp(2.5rem,5vw,5rem); line-height:1.02; margin:.25em 0 .35em; max-width:900px}
h2{font-size:clamp(1.8rem,3vw,3rem); line-height:1.15; margin:0 0 18px}
h3{margin-top:0}
.lead{font-size:1.18rem; color:#3d454d; max-width:760px}
.hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:28px}
.grid{display:grid; gap:22px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.card{
  background:var(--white); border:1px solid var(--line); border-radius:18px; padding:26px;
  box-shadow:0 8px 30px rgba(30,30,30,.04)
}
section{padding:64px 0}
.alt{background:white}
.kicker{color:var(--muted); max-width:760px}
.price{font-size:1.9rem; font-weight:800; color:var(--deep); margin:8px 0}
.small{font-size:.92rem; color:var(--muted)}
.checks{padding-left:20px}
.notice{
  border-left:4px solid var(--gold); background:var(--soft); padding:18px 20px; border-radius:8px;
}
.cta{
  background:var(--deep); color:white; border-radius:24px; padding:42px;
}
.cta .btn{border-color:white}
footer{padding:42px 0; border-top:1px solid var(--line); background:#f5eff8}
.footer-grid{display:grid; grid-template-columns:2fr 1fr 1fr; gap:28px}
footer a{text-decoration:none}
.legal h1{font-size:2.6rem}
.legal section{padding:24px 0}
form{display:grid; gap:14px}
input, textarea, select{
  width:100%; padding:12px 14px; border:1px solid #cfc8bb; border-radius:10px; font:inherit; background:white;
}
textarea{min-height:140px}
button{cursor:pointer}
.tag{display:inline-block; padding:5px 10px; border-radius:999px; background:var(--soft); font-size:.82rem; font-weight:700; color:var(--deep)}
@media (max-width:850px){
  .grid-3,.grid-2,.footer-grid{grid-template-columns:1fr}
  .nav{align-items:flex-start; flex-direction:column}
  nav ul{gap:12px}
  .hero{padding-top:54px}
}
