:root{
  --purple:#5c2d63;
  --plum:#2a102d;
  --lavender:#ede2f0;
  --gold:#d8ad55;
  --ink:#231f24;
  --muted:#706873;
  --cream:#fffaf5;
  --white:#ffffff;
  --shadow:0 20px 60px rgba(42,16,45,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--cream);line-height:1.65}
a{color:inherit;text-decoration:none}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:14px 6vw;background:rgba(255,250,245,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(92,45,99,.12)}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--plum);letter-spacing:.02em}.brand img{width:54px;height:54px;object-fit:cover;border-radius:50%}.brand span{font-family:"Cormorant Garamond",serif;font-size:1.35rem}.nav{display:flex;align-items:center;gap:24px;font-weight:700;font-size:.95rem}.nav a{color:var(--plum);opacity:.9}.nav-cta{padding:10px 16px;border-radius:999px;background:var(--purple)!important;color:#fff!important}.menu-toggle{display:none;background:none;border:0;font-size:2rem;color:var(--purple)}
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;min-height:760px;padding:90px 6vw;background:radial-gradient(circle at top right,rgba(216,173,85,.28),transparent 35%),linear-gradient(135deg,var(--cream),#f3e8f4)}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.22em;color:var(--purple);font-weight:800;font-size:.78rem}.hero h1,.section h2{font-family:"Cormorant Garamond",serif;color:var(--plum);line-height:1.02;margin:12px 0 20px}.hero h1{font-size:clamp(3rem,7vw,6.4rem);max-width:850px}.hero-text{font-size:1.25rem;max-width:680px;color:#4c424f}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;font-weight:800;border:2px solid var(--purple)}.button.primary{background:var(--purple);color:#fff}.button.secondary{background:#fff;color:var(--purple)}.button.full{width:100%;margin-top:12px}.hero-card{background:rgba(255,255,255,.72);border:1px solid rgba(92,45,99,.15);border-radius:34px;padding:24px;box-shadow:var(--shadow)}.hero-card img{width:100%;display:block;border-radius:26px}
.intro-band{padding:35px 8vw;background:var(--plum);color:#fff;text-align:center}.intro-band p{max-width:1000px;margin:auto;font-family:"Cormorant Garamond",serif;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.25}
.section{padding:90px 6vw}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px}.section h2{font-size:clamp(2.4rem,5vw,4.2rem)}.copy-card,.contact-card,.founder-box{background:#fff;border:1px solid rgba(92,45,99,.12);border-radius:28px;padding:36px;box-shadow:var(--shadow)}.tinted{background:#f2e6f4}.centered{text-align:center;margin:auto;max-width:760px}.cards{display:grid;gap:22px;margin-top:34px}.cards.three{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border-radius:24px;padding:30px;border:1px solid rgba(92,45,99,.12);box-shadow:0 12px 35px rgba(42,16,45,.08)}.card h3,.program h3,.contact-card h3{font-family:"Cormorant Garamond",serif;color:var(--purple);font-size:1.7rem;line-height:1.1;margin:0 0 10px}.card p,.program p,.copy-card p,.founder-box p,.contact p{color:var(--muted)}
.program-list{display:grid;gap:18px;margin-top:34px}.program{display:grid;grid-template-columns:76px 1fr;gap:20px;align-items:start;background:#fff;border-radius:24px;padding:26px;border-left:6px solid var(--gold);box-shadow:0 12px 35px rgba(42,16,45,.07)}.program span{font-family:"Cormorant Garamond",serif;font-size:2.2rem;font-weight:800;color:var(--gold)}.founder{background:linear-gradient(135deg,var(--plum),var(--purple));}.founder-box{max-width:930px;margin:auto;text-align:center}.contact{display:grid;grid-template-columns:1fr .9fr;gap:40px;align-items:center}.footer{padding:28px 6vw;text-align:center;background:var(--plum);color:#fff}.footer p{margin:0;color:#eee}
@media (max-width:900px){.menu-toggle{display:block}.nav{position:absolute;top:83px;left:0;right:0;display:none;flex-direction:column;background:var(--cream);padding:24px;border-bottom:1px solid rgba(92,45,99,.15)}.nav.open{display:flex}.hero,.split,.contact{grid-template-columns:1fr}.cards.three{grid-template-columns:1fr}.hero{padding-top:55px;min-height:auto}.brand span{font-size:1.05rem}.section{padding:64px 6vw}}
