*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--ink);background:var(--cream);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(16px,4vw,48px);transition:padding .35s,background .35s,box-shadow .35s;background:transparent}.nav.scrolled{padding:11px clamp(16px,4vw,48px);background:#fff8fbeb;backdrop-filter:blur(12px);box-shadow:0 6px 30px -22px #29257480}.nav .logo{height:38px}.nav .links{display:flex;align-items:center;gap:24px;font-weight:500;font-size:.95rem}.nav .links a:not(.btn){position:relative;color:var(--navy);opacity:.85}.nav .links a:not(.btn)[aria-current=page]{opacity:1;color:var(--pink-text)}.nav .links a:not(.btn):after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:2px;background:var(--pink-deep);transition:width .25s}.nav .links a:not(.btn):hover:after{width:100%}.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;background:none;border:none}.burger span{width:26px;height:3px;background:var(--navy);border-radius:3px;transition:transform .3s,opacity .3s}.burger[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}.burger[aria-expanded=true] span:nth-child(2){opacity:0}.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.page-hero{position:relative;overflow:hidden;min-height:clamp(400px,56vh,600px);display:flex;align-items:center;padding:calc(var(--nav-h) + clamp(56px,8vw,104px)) 0 clamp(48px,6vw,76px);background:radial-gradient(1100px 600px at 82% -6%,var(--pink) 0%,var(--pink-soft) 48%,var(--cream) 80%)}.page-hero:before,.page-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0;background:radial-gradient(closest-side,#f4aacc80,#f4aacc00 72%);will-change:transform}.page-hero:before{width:min(640px,66vw);height:480px;top:-130px;right:-70px;animation:orbDrift 13s ease-in-out infinite}.page-hero:after{width:440px;height:380px;bottom:-140px;left:-90px;background:radial-gradient(closest-side,#e2719f42,#f4aacc00 74%);animation:orbDrift 17s ease-in-out infinite reverse}.page-hero .container{position:relative;z-index:1}.page-hero .eyebrow{color:var(--pink-text);font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;margin-bottom:14px;display:block}.page-hero h1{font-size:clamp(2.2rem,6vw,3.6rem);font-weight:800;color:var(--navy);letter-spacing:-.02em;line-height:1.04}.page-hero .lead{margin-top:18px;max-width:62ch;color:var(--navy);font-size:clamp(1.05rem,2.2vw,1.2rem)}.sec{padding:clamp(40px,6vw,72px) 0}.sec.alt{background:#fff}.kicker{color:var(--pink-text);font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;margin-bottom:12px}h2{font-size:clamp(1.6rem,4vw,2.4rem);color:var(--navy);font-weight:800;line-height:1.1;letter-spacing:-.01em}.sec .intro{color:var(--muted);font-size:1.05rem;margin:14px 0 36px;max-width:64ch}.sec .u-tac .intro{margin:14px auto 28px;max-width:56ch}.sec .intro.u-mb0{margin-bottom:0}footer{background:var(--navy-2);color:#cfcce8;padding:56px 0 26px;font-size:.95rem}footer .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:36px}footer .logo{height:44px;filter:brightness(0) invert(1);margin-bottom:14px}footer h2{color:#fff;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:13px;font-weight:600}footer a{opacity:.82;transition:opacity .2s,color .2s;display:block;margin-bottom:8px}footer a:hover{opacity:1;color:var(--pink)}footer .bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-size:.82rem;opacity:.78}@media (max-width:860px){footer .cols{grid-template-columns:1fr 1fr}.nav .links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);flex-direction:column;align-items:stretch;padding:20px;gap:16px;box-shadow:var(--shadow)}.nav .links.open{display:flex}.nav .links .btn{justify-content:center}.burger{display:flex}}@media (max-width:560px){footer .cols{grid-template-columns:1fr}}
