:root{--plum:#3b1640;--plum2:#5a2463;--char:#232027;--cream:#faf3e3;--must:#f2b705;--coral:#ff6b57;--ink:#232027}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font:400 18px/1.7 "DM Sans",system-ui,sans-serif}
img{max-width:100%;height:auto;display:block}
a{color:var(--plum2);text-decoration-thickness:2px;text-underline-offset:3px}a:hover{color:var(--coral)}
h1,h2,h3,.logo{font-family:"Archivo Black",Impact,sans-serif;font-weight:400;line-height:1.12;letter-spacing:-.01em;color:var(--plum)}
h1{font-size:clamp(2.1rem,5vw,3.6rem);margin:.2em 0}h2{font-size:clamp(1.45rem,3vw,2rem);margin:1.6em 0 .5em}h3{font-size:1.2rem;margin:1.3em 0 .3em}
.wrap{max-width:1140px;margin:0 auto;padding:0 22px}.narrow{max-width:760px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:9}
.site-header{background:var(--plum);position:sticky;top:0;z-index:5}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.logo{color:var(--cream)!important;text-decoration:none;font-size:1.35rem}.logo span{color:var(--must)}
nav a{color:var(--cream);text-decoration:none;font-weight:700;margin-left:20px}nav a:hover{color:var(--must)}
.btn{display:inline-block;background:var(--coral);color:#fff;font-weight:700;padding:13px 24px;border-radius:999px;text-decoration:none;margin:6px 8px 6px 0;border:3px solid var(--coral)}
.btn:hover{background:var(--plum);border-color:var(--plum);color:var(--must)}
.btn.ghost{background:transparent;color:var(--cream);border-color:var(--must)}
.hero-home{background:var(--plum);color:var(--cream);padding:70px 0 80px;border-bottom:12px solid var(--must)}
.hero-home h1{color:var(--cream);max-width:15ch}.hero-home h1 span{color:var(--must)}.hero-home em{color:var(--must);font-style:normal;display:block}
.kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:700;color:var(--coral)}.kicker a{color:inherit}
.lede{font-size:1.2rem;max-width:62ch}
.three{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;padding-top:40px;padding-bottom:20px}
.three>div{background:#fff;border-left:8px solid var(--must);padding:6px 24px 18px;border-radius:6px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px}
.card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 3px 0 var(--plum)}.card a{text-decoration:none;color:inherit}
.card-body{padding:16px 20px 22px}.card h3{margin:.3em 0}.card p{font-size:.95rem;margin:0}.card time{font-size:.8rem;color:var(--coral);font-weight:700}
.card:hover{transform:translateY(-3px)}
.latest,.related{padding:30px 0 60px}
.post-head{background:var(--plum);padding:50px 0 40px}.post-head h1{color:var(--cream)}.post-head .lede{color:#eadff0}.post-head .kicker{color:var(--must)}
.post-body{padding-top:30px;padding-bottom:40px}.post-body .hero{border-radius:12px;margin:10px 0 20px}
.post-body li{margin:.35em 0}
.disclosure-line{background:#fff3c4;border-left:6px solid var(--must);padding:10px 16px;font-size:.92rem;border-radius:4px}
.product{background:#fff;border:3px solid var(--plum);border-radius:12px;padding:18px 24px;margin:26px 0;position:relative}
.product h3{margin-top:.4em}.product small{display:block;color:#665;font-size:.8rem}
.product-tag{display:inline-block;background:var(--must);color:var(--plum);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;padding:3px 10px;border-radius:999px}
.pin{margin:40px auto;max-width:420px;text-align:center}.pin figcaption{font-size:.85rem;color:#665}
.newsletter{background:var(--char);color:var(--cream);padding:46px 0;text-align:center;border-top:10px solid var(--coral)}.newsletter h2{color:var(--must);margin-top:0}
.site-footer{background:var(--plum);color:#eadff0;padding:40px 0;font-size:.95rem}.site-footer a{color:var(--must)}.fine{font-size:.82rem}
@media(max-width:600px){nav a{margin:0 14px 0 0}.hero-home{padding:44px 0 50px}body{font-size:17px}}
a:focus-visible,.btn:focus-visible{outline:3px solid var(--must);outline-offset:3px}
