:root{--bg:#f7f0e8;--bg-deep:#efe4d6;--ink:#2a211c;--muted:#7a6a62;--primary:#b54a3c;--primary-soft:color-mix(in srgb, var(--primary) 12%, white);--card:#fffcf8;--line:#e8ddd4;--font-display:"Fraunces", "Times New Roman", serif;--font-body:"Geist", "Helvetica Neue", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100dvh;color:var(--ink);background:radial-gradient(ellipse 120% 80% at 10% -10%, #f3d9c8 0%, transparent 55%), radial-gradient(ellipse 90% 70% at 100% 0%, #e8dcc8 0%, transparent 50%), var(--bg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:1.05rem;line-height:1.65}a{color:var(--primary);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:color-mix(in srgb, var(--primary) 80%, black)}img{max-width:100%;height:auto}.site-wrap{width:min(720px,100% - 2.5rem);margin-inline:auto}.site-header{justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 0 .5rem;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:1.55rem;font-weight:550;text-decoration:none}.brand span{color:var(--primary)}.nav{align-items:center;gap:1rem;font-size:.92rem;display:flex}.nav a:not(.btn){color:var(--muted);text-decoration:none}.nav a:not(.btn):hover{color:var(--ink)}.btn{background:var(--primary);color:#fffaf6;min-height:2.85rem;font:inherit;box-shadow:0 10px 28px color-mix(in srgb, var(--primary) 22%, transparent);border:0;border-radius:999px;justify-content:center;align-items:center;padding:.65rem 1.35rem;font-weight:560;text-decoration:none;display:inline-flex}.btn:hover{color:#fffaf6;filter:brightness(.96)}.btn-ghost{color:var(--muted);box-shadow:none;border:1px solid var(--line);background:0 0}.btn-ghost:hover{color:var(--ink);background:#ffffff8c}.play-badge{color:#fffaf6;background:#1a1210;border-radius:999px;align-items:center;gap:.55rem;min-height:2.85rem;padding:.4rem 1rem .4rem .85rem;text-decoration:none;display:inline-flex;box-shadow:0 8px 22px #1a121029}.play-badge:hover{color:#fffaf6;filter:brightness(1.08)}.play-badge span{letter-spacing:-.01em;flex-direction:column;align-items:flex-start;font-size:.92rem;font-weight:600;line-height:1.05;display:flex}.play-badge small{letter-spacing:.08em;color:#ffffffb8;font-size:.58rem;font-weight:560}.hero{padding:3.5rem 0 2.5rem}.hero h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(2.35rem,6vw,3.4rem);font-weight:550;line-height:1.12}.hero .lede{max-width:36rem;color:var(--muted);margin:1.1rem 0 0;font-size:1.12rem}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.section{padding:2.25rem 0}.section h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 .75rem;font-size:1.7rem;font-weight:550}.section p{color:var(--muted);margin:.65rem 0 0}.pain-grid{gap:1rem;margin-top:1.5rem;display:grid}@media (width>=640px){.pain-grid{grid-template-columns:1fr 1fr}}.pain{background:color-mix(in srgb, var(--card) 88%, transparent);border:1px solid var(--line);border-radius:1.25rem;padding:1.15rem 1.2rem}.pain h3{font-size:1.05rem;font-family:var(--font-display);margin:0;font-weight:550}.pain p{margin:.45rem 0 0;font-size:.95rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:3rem;padding:2rem 0 2.5rem;font-size:.9rem}.site-footer nav{flex-wrap:wrap;gap:.85rem 1.15rem;margin-bottom:.85rem;display:flex}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--ink)}.prose{padding-bottom:3rem}.prose h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 .75rem;font-size:clamp(2rem,5vw,2.7rem);font-weight:550;line-height:1.15}.prose .meta{color:var(--muted);margin-bottom:1.75rem;font-size:.92rem}.prose h2{font-family:var(--font-display);margin:2rem 0 .7rem;font-size:1.45rem;font-weight:550}.prose p,.prose li{color:color-mix(in srgb, var(--ink) 88%, var(--muted))}.prose p{margin:.9rem 0}.prose ul{padding-left:1.2rem}.post-card{border-bottom:1px solid var(--line);color:inherit;padding:1.2rem 0;text-decoration:none;display:block}.post-card:hover .post-title{color:var(--primary)}.post-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:550}.post-desc{color:var(--muted);margin:.4rem 0 0;font-size:.98rem}.post-meta{color:var(--muted);margin:.45rem 0 0;font-size:.85rem}
