:root{--coral:#ff7b7b;--coral-2:#ff9a9e;--coral-shade:#e77272;--coral-tint:#fd8e8e;--coral-soft:#fff2f2;--coral-grad:linear-gradient(135deg, #ff7b7b, #ff9a9e);--ink:#221d1d;--ink-2:#4b4444;--muted:#7d7474;--line:#f3e3e3;--bg:#fffaf9;--surface:#fff;--r-sm:10px;--r-md:16px;--r-lg:24px;--r-pill:999px;--shadow-sm:0 2px 10px #ff7b7b1a;--shadow-md:0 14px 36px #ff7b7b2e;--max:1120px;--narrow:760px;--header-h:68px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}body{color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-family:Lexend,system-ui,-apple-system,Segoe UI,sans-serif;font-size:1rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--coral-shade);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--coral)}h1,h2,h3,h4{letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:600;line-height:1.2}p{margin:0}:focus-visible{outline:3px solid var(--coral);outline-offset:2px;border-radius:4px}.skip-link{background:var(--ink);color:#fff;border-radius:var(--r-sm);z-index:100;padding:8px 14px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.container{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:20px}.container--narrow{max-width:var(--narrow)}.section{padding-block:40px}@media (width>=768px){.section{padding-block:56px}}.kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--coral-shade);font-size:.75rem;font-weight:600}.btn{border-radius:var(--r-pill);white-space:nowrap;border:2px solid #0000;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s,background-color .15s,border-color .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--coral-grad);color:#fff;box-shadow:var(--shadow-sm)}.btn--primary:hover{color:#fff;box-shadow:var(--shadow-md)}.btn--ghost{background:var(--surface);color:var(--coral-shade);border-color:var(--line)}.btn--ghost:hover{border-color:var(--coral-tint);background:var(--coral-soft)}.btn--white{color:var(--coral-shade);background:#fff}.btn--white:hover{color:var(--coral-shade);box-shadow:0 8px 24px #0000001f}.btn--sm{padding:9px 16px;font-size:.875rem}.site-header{z-index:50;backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--line);background:#ffffffeb;position:sticky;top:0}.site-header__inner{min-height:var(--header-h);justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{color:var(--ink);letter-spacing:.02em;align-items:center;gap:10px;font-weight:700;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand img{border-radius:12px;width:40px;height:40px}.brand__sep{color:var(--coral-tint);font-weight:400}.brand__section{color:var(--coral-shade);font-weight:600}.site-nav{align-items:center;gap:6px 18px;display:flex}.site-nav a:not(.btn){color:var(--ink-2);border-bottom:2px solid #0000;padding:6px 2px;font-size:.95rem;font-weight:500;text-decoration:none}.site-nav a:not(.btn):hover,.site-nav a[aria-current=page]{color:var(--coral-shade);border-bottom-color:var(--coral)}.brand,.site-nav{flex-shrink:0}.label-short{display:none}@media (width<=600px){.brand__sep,.brand__section,.label-long{display:none}.label-short{display:inline}.site-nav{gap:12px}.site-nav .btn--sm{padding:8px 14px}}.hero{background:var(--coral-grad);color:#fff;border-radius:0 0 var(--r-lg) var(--r-lg);padding:48px 0 56px;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";background:#ffffff1f;border-radius:50%;position:absolute}.hero:before{width:260px;height:260px;bottom:-120px;left:-60px}.hero:after{width:320px;height:320px;top:-80px;right:-80px}.hero>.container{position:relative}.hero .kicker{color:#fff;opacity:.9}.hero h1{color:#fff;max-width:18ch;margin-top:10px;font-size:clamp(1.9rem,4.5vw,3rem)}.hero__lead{opacity:.95;max-width:56ch;margin-top:14px;font-size:1.05rem}@media (width>=768px){.hero{padding:72px 0 80px}}.chips{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.chip{color:#fff;border-radius:var(--r-pill);background:#ffffff2e;border:1px solid #ffffff73;padding:8px 14px;font-size:.875rem;font-weight:500;text-decoration:none}.chip:hover{color:var(--coral-shade);background:#fff}.page-head{margin-bottom:28px}.page-head h1{margin-top:6px;font-size:clamp(1.7rem,3.5vw,2.4rem)}.page-head .lead{color:var(--ink-2);max-width:60ch;margin-top:10px}.grid{grid-template-columns:1fr;gap:20px;display:grid}@media (width>=640px){.grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.grid{grid-template-columns:repeat(3,1fr)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:24px;transition:transform .18s,box-shadow .18s;display:flex;position:relative}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.card__title{font-size:1.2rem}.card__title a{color:var(--ink);text-decoration:none}.card__title a:after{content:"";border-radius:inherit;position:absolute;inset:0}.card:hover .card__title a{color:var(--coral-shade)}.card__desc{color:var(--ink-2);flex:1;font-size:.95rem}.card__meta{color:var(--muted);font-size:.85rem}.card .badge{z-index:1;align-self:flex-start;position:relative}@media (width>=1000px){.card--featured{grid-column:span 2;padding:32px}.card--featured .card__title{font-size:1.6rem}.card--featured .card__desc{font-size:1.05rem}}.badge{background:var(--coral-soft);color:var(--coral-shade);letter-spacing:.02em;border-radius:var(--r-pill);padding:5px 11px;font-size:.78rem;font-weight:600;text-decoration:none;display:inline-block}.badge:hover{background:var(--coral);color:#fff}.pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:36px;display:flex}.pagination__status{color:var(--muted);font-size:.9rem}.empty{color:var(--muted);text-align:center;padding:48px 0}.post__head{padding-top:36px}.breadcrumb ol{color:var(--muted);flex-wrap:wrap;gap:6px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.breadcrumb li+li:before{content:"›";color:var(--coral-tint);margin-right:6px}.breadcrumb a{color:var(--muted);text-decoration:none}.breadcrumb a:hover{color:var(--coral-shade)}.post__head h1{margin-top:18px;font-size:clamp(1.8rem,4vw,2.6rem)}.post__lead{color:var(--ink-2);margin-top:16px;font-size:1.15rem;line-height:1.55}.post__meta{color:var(--muted);margin-top:18px;font-size:.9rem}.post__cover{margin:32px auto 0}.post__cover img{border-radius:var(--r-lg);width:100%;box-shadow:var(--shadow-md)}.post__cover figcaption{color:var(--muted);text-align:center;margin-top:10px;font-size:.85rem}.post__body{padding-top:32px;padding-bottom:56px}.toc{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:32px;padding:18px 22px}.toc__title{color:var(--coral-shade);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;font-weight:600}.toc ol{color:var(--ink-2);margin:10px 0 0;padding-left:20px}.toc li{margin:6px 0}.toc a{color:var(--ink-2);text-decoration:none}.toc a:hover{color:var(--coral-shade)}.prose{color:var(--ink-2);font-size:1.05rem;line-height:1.75}.prose>*+*{margin-top:1.1em}.prose h2{color:var(--ink);margin-top:2.2em;font-size:1.55rem}.prose h2:before{content:"";background:var(--coral-grad);border-radius:2px;width:44px;height:4px;margin-bottom:14px;display:block}.prose h3{color:var(--ink);margin-top:1.8em;font-size:1.2rem}.prose ul,.prose ol{padding-left:1.4em}.prose li{margin:.45em 0}.prose li::marker{color:var(--coral)}.prose strong{color:var(--ink);font-weight:600}.prose blockquote{border-left:4px solid var(--coral);background:var(--coral-soft);border-radius:0 var(--r-md) var(--r-md) 0;color:var(--ink);margin:1.4em 0;padding:16px 22px}.prose blockquote p{margin:0}.prose img{border-radius:var(--r-md)}.prose hr{border:0;border-top:1px solid var(--line);margin:2.5em 0}.prose table{border-collapse:collapse;width:100%;font-size:.95rem}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.prose th{color:var(--ink);background:var(--coral-soft)}.prose code{background:var(--coral-soft);border-radius:6px;padding:2px 6px;font-size:.9em}.tags{flex-wrap:wrap;gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}.tag{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:var(--r-pill);padding:5px 12px;font-size:.82rem}.cta{background:var(--coral-grad);color:#fff;border-radius:var(--r-lg);box-shadow:var(--shadow-md);gap:18px;margin-top:40px;padding:32px 28px;display:grid;position:relative;overflow:hidden}.cta:after{content:"";background:#ffffff24;border-radius:50%;width:220px;height:220px;position:absolute;bottom:-90px;right:-60px}.cta>*{position:relative}.cta h2{color:#fff;font-size:1.5rem}.cta p{opacity:.95;max-width:52ch;margin-top:8px}.cta__actions{flex-wrap:wrap;align-items:center;gap:12px 18px;display:flex}.cta__actions a:not(.btn){color:#fff;font-weight:500}@media (width>=768px){.cta{grid-template-columns:1fr auto;align-items:center;padding:40px}.cta__actions{justify-content:flex-end}}.related{margin-top:56px}.related h2{margin-bottom:20px;font-size:1.4rem}.center{text-align:center;padding-block:72px}.center h1{margin:10px 0 14px;font-size:clamp(1.8rem,4vw,2.6rem)}.center p{color:var(--ink-2);max-width:50ch;margin-inline:auto}.center .actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.site-footer{background:var(--surface);border-top:1px solid var(--line);color:#555;margin-top:24px;font-size:.92rem}.site-footer__grid{grid-template-columns:1fr;gap:28px;padding-block:44px;display:grid}@media (width>=720px){.site-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}.site-footer h4{color:var(--coral);margin-bottom:12px;font-size:1rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:8px 0}.site-footer a{color:#555;text-decoration:none}.site-footer a:hover{color:var(--coral)}.site-footer__brand{align-content:start;gap:10px;display:grid}.site-footer__brand p{color:#666;max-width:36ch}.site-footer__bottom{color:#777;text-align:center;background:#f9f9f9;padding:14px 0;font-size:.82rem}
