:root{--pink:#db2777;--ink:#241019;--mut:#7c6470;--line:#f0e3ea;--bg:#fff7fb}
*{box-sizing:border-box;margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#2a1c24;background:#fff;line-height:1.6}
a{color:var(--pink);text-decoration:none}a:hover{text-decoration:underline}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 26px;border-bottom:1px solid var(--line)}
.nav .brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:18px;color:#2a1c24}
.nav .brand .heart{color:var(--pink);font-size:16px}
.nav nav a{color:var(--mut);font-size:14px;font-weight:600;margin-left:18px}.nav nav a:hover{color:var(--pink);text-decoration:none}
.kick{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--pink)}
.hero{background:radial-gradient(900px 380px at 50% -30%,#ffe3ef,transparent 60%),var(--bg);border-bottom:1px solid var(--line)}
.hwrap{max-width:820px;margin:0 auto;padding:74px 26px 56px;text-align:center}
.hero h1{font-size:52px;line-height:1.08;letter-spacing:-.02em;margin-top:14px}
.hero .sub{color:#6b5660;font-size:19px;margin:18px auto 0;max-width:560px}
.wrap{max-width:820px;margin:0 auto;padding:48px 26px 56px}
h1{font-size:38px;line-height:1.14;letter-spacing:-.01em}h2{font-size:24px;margin-bottom:18px}
.lede{font-size:19px;color:var(--mut);margin:12px 0 24px;max-width:620px}
.cards{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;padding:0}
.cards a{display:block;height:100%;padding:20px;background:var(--bg);border:1px solid var(--line);border-radius:16px;color:#2a1c24}.cards a:hover{border-color:var(--pink);text-decoration:none}
.cards b{font-size:17px;display:block}.cards span{display:block;color:var(--mut);font-size:14px;margin-top:6px}
.prose{max-width:680px}.prose p{margin-top:15px;font-size:17px}.prose h2{margin-top:28px;font-size:22px}.prose .lede{margin-top:8px}
.foot{border-top:1px solid var(--line);background:var(--bg);padding:30px 26px;color:var(--mut);font-size:14px}.foot .fine{font-size:12px;margin-top:12px}
@media(max-width:560px){.hero h1{font-size:38px}.nav nav{display:none}}