
:root{
  --bg:#f7f4f2;
  --paper:#ffffff;
  --text:#1d1d1f;
  --muted:#61646d;
  --line:#e7e0db;
  --accent:#7a1723;
  --accent-2:#4d0f17;
  --radius:20px;
  --shadow:0 16px 40px rgba(39, 22, 25, 0.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);line-height:1.6}
a{color:inherit;text-decoration:none}
.container{width:min(1120px, calc(100% - 2rem));margin:0 auto}
.narrow{width:min(860px, calc(100% - 2rem));}
.center{text-align:center}
.site-header{position:sticky;top:0;z-index:20;backdrop-filter:blur(10px);background:rgba(247,244,242,0.88);border-bottom:1px solid rgba(122,23,35,0.08)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:72px}
.brand{font-weight:800;letter-spacing:.02em;color:var(--accent)}
nav{display:flex;gap:1rem;flex-wrap:wrap}
nav a{font-size:.95rem;color:var(--muted)}
.hero{padding:5rem 0 3rem;background:radial-gradient(circle at top left, rgba(122,23,35,0.10), transparent 30%), radial-gradient(circle at bottom right, rgba(122,23,35,0.08), transparent 25%)}
.hero-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:2rem;align-items:center}
.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:700;color:var(--accent)}
h1{font-size:clamp(2.4rem, 5vw, 4.4rem);line-height:1.02;margin:.5rem 0 1rem;letter-spacing:-0.03em}
h2{font-size:clamp(1.7rem, 3vw, 2.6rem);line-height:1.1;margin:.3rem 0 1rem;letter-spacing:-0.02em}
h3{margin:0 0 .65rem;font-size:1.15rem}
.lead{font-size:1.18rem;max-width:44rem;color:#31343a}
.hero-actions,.cta{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.95rem 1.25rem;font-weight:700;transition:.2s ease;border:1px solid transparent}
.button:hover{transform:translateY(-1px)}
.button.primary{background:var(--accent);color:white}.button.primary:hover{background:var(--accent-2)}
.button.secondary{background:transparent;border-color:rgba(122,23,35,0.2);color:var(--accent)}
.button.large{padding:1rem 1.5rem}
.hero-card,.card,.quote-box,.age-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.hero-card{padding:1.35rem}.hero-card ul{margin:.75rem 0 0;padding-left:1.1rem}
.section{padding:4.5rem 0}.section.alt{background:#fbf9f7;border-top:1px solid rgba(122,23,35,0.06);border-bottom:1px solid rgba(122,23,35,0.06)}
.cards{display:grid;gap:1rem;margin-top:1.4rem}.cards.three{grid-template-columns:repeat(3, 1fr)}.cards.two{grid-template-columns:repeat(2, 1fr)}
.card{padding:1.3rem}.split{display:grid;grid-template-columns:1.2fr .8fr;gap:1.3rem;align-items:center}
.quote-box{padding:2rem;background:linear-gradient(180deg, #fff, #f7efec)}.quote-box p{font-size:1.35rem;line-height:1.35;margin:0;color:var(--accent);font-weight:700}
.clean-list{margin:.3rem 0 0;padding-left:1.05rem}
.age-grid{margin-top:1.2rem;display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem}.age-card{padding:1.2rem}
.cta{justify-content:space-between;background:white;padding:1.4rem;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}
.final-band{background:var(--accent);color:white;padding:3.5rem 0}.final-band p{color:rgba(255,255,255,.88);font-size:1.1rem;margin:0}
@media (max-width: 900px){.hero-grid,.split,.cards.three,.cards.two,.age-grid{grid-template-columns:1fr}.nav{min-height:auto;padding:1rem 0;align-items:flex-start;flex-direction:column}h1{max-width:14ch}}
