:root{--color-bg:#fbf6ef;--color-text:#241c1a;--color-muted:#5a5250;--color-primary:#a31556;--color-primary-dark:#7d0f41;--color-primary-tint:#fbeaf0;--color-accent:#d9a441;--color-accent-tint:#faeeda;--color-blue:#2c5fcc;--color-blue-tint:#e6f1fb;--color-green:#3fa34d;--color-green-tint:#eaf3de;--color-border:#241c1a1a;--color-surface:#fff;--font-heading:"Fraunces", serif;--font-body:"Inter", system-ui, sans-serif;--container-width:1160px;--radius-sm:12px;--radius-md:18px;--radius-lg:24px;--radius-pill:999px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);line-height:1.6}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em;margin:0 0 .6em;font-weight:500;line-height:1.2}p{margin:0 0 1em}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}.container{max-width:var(--container-width);margin:0 auto;padding:0 1.5rem}.reading-width{max-width:780px;margin:0 auto}.card{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid #241c1a0f}.section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary);margin-bottom:.625rem;font-size:.8125rem;font-weight:600;display:block}.btn-primary{background:var(--color-primary);color:#fff;border-radius:var(--radius-pill);cursor:pointer;border:none;align-items:center;gap:8px;padding:14px 28px;font-size:.9375rem;font-weight:600;transition:background .2s,transform .15s;display:inline-flex}.btn-primary:hover{background:var(--color-primary-dark);text-decoration:none;transform:translateY(-1px)}.btn-secondary{color:var(--color-text);border-radius:var(--radius-pill);border:1.5px solid var(--color-text);background:0 0;align-items:center;gap:8px;padding:13px 26px;font-size:.9375rem;font-weight:600;display:inline-flex}.btn-secondary:hover{background:#241c1a0a;text-decoration:none}.amazon-btn,.buy-btn{background:var(--color-text);color:#fff;border-radius:var(--radius-pill);align-items:center;gap:6px;padding:10px 16px;font-size:.84375rem;font-weight:600;display:inline-flex}.amazon-btn:hover,.buy-btn:hover{background:var(--color-primary-dark);text-decoration:none}.confetti-piece{opacity:0;width:10px;height:10px;position:absolute;top:50%;left:50%}.site-header{border-bottom:1px solid var(--color-border)}.nav-row{align-items:center;gap:2rem;padding:1.125rem 1.5rem;display:flex;position:relative}.nav-logo-link{flex-shrink:0}.nav-logo{width:auto;height:60px}.nav-links{flex:1;justify-content:center;align-items:center;gap:2rem;display:flex}.nav-link{color:var(--color-text);font-size:1.0625rem;font-weight:600}.nav-link:hover{color:var(--color-primary);text-decoration:none}.nav-link.active{color:var(--color-primary)}.nav-cta{background:var(--color-primary);color:#fff;border-radius:var(--radius-pill);flex-shrink:0;padding:12px 24px;font-size:.9375rem;font-weight:600}.nav-cta:hover{background:var(--color-primary-dark);text-decoration:none}.nav-hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;margin-left:auto;padding:.5rem;display:none}.nav-hamburger span{background:var(--color-text);width:22px;height:2px;display:block}.mobile-menu{border-bottom:1px solid var(--color-border);flex-direction:column;padding:0 1.5rem;display:none}.mobile-menu.open{display:flex}.mobile-menu .nav-link{border-bottom:1px solid var(--color-border);padding:.75rem 0}@media (width<=780px){.nav-links,.nav-cta{display:none}.nav-hamburger{display:flex}}footer{background:var(--color-surface);border-top:1px solid var(--color-border);margin-top:4rem;padding:3.5rem 0 2.5rem}.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2.5rem;display:grid}.footer-logo{width:auto;height:51px;margin-bottom:.875rem}.footer-about p{color:var(--color-muted);max-width:280px;margin:0;font-size:.875rem}.footer-col-title{letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);margin-bottom:.875rem;font-size:.8125rem;font-weight:700}.footer-link{color:var(--color-text);opacity:.85;margin-bottom:.625rem;font-size:.9rem;display:block}.footer-link:hover{opacity:1;color:var(--color-primary)}.footer-bottom{border-top:1px solid var(--color-border);color:var(--color-muted);flex-wrap:wrap;justify-content:space-between;gap:.75rem;padding-top:1.75rem;font-size:.84375rem;display:flex}.footer-bottom a{color:var(--color-muted)}.footer-bottom a:hover{color:var(--color-primary)}@media (width<=860px){.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=560px){.footer-grid{grid-template-columns:1fr}}.article-body h2{margin-top:1.8em}.article-body h3{margin-top:1.4em}.article-body ul,.article-body ol{margin-bottom:1em;padding-left:1.4em}.article-body li{margin-bottom:.4em}.article-body a{color:var(--color-primary-dark);text-decoration:underline}.article-body img{border-radius:var(--radius-sm);margin:1.5em 0}.article-body blockquote{border-left:3px solid var(--color-accent);color:var(--color-muted);margin:1.5em 0;padding-left:1em}.product-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem;display:grid}.product-card{transition:transform .2s;overflow:hidden}.product-card:hover{transform:translateY(-3px)}.product-card img{aspect-ratio:1;object-fit:contain;background:var(--color-accent-tint);border-radius:0;width:100%;margin:0;padding:16px}.product-card .product-info{text-align:left;padding:1.125rem 1.375rem 1.5rem}.product-card h3{font-family:var(--font-body);margin-bottom:.4em;font-size:.96875rem;font-weight:600}.product-price{color:var(--color-muted);margin-bottom:.875em;font-size:.875rem}.post-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.post-card{transition:transform .2s;display:block;overflow:hidden}.post-card:hover{transform:translateY(-3px)}.post-card img{aspect-ratio:16/10;object-fit:cover;border-radius:0;margin-bottom:0}.post-card h3{font-family:var(--font-body);color:var(--color-text);margin:0;padding:1rem 1.125rem 1.25rem;font-size:.9375rem;font-weight:600}.post-card:hover h3{color:var(--color-primary)}section.hero{text-align:center;padding:4rem 0}section.hero h1{font-size:clamp(2rem,5vw,3rem)}section.hero p{color:var(--color-muted);max-width:640px;margin:0 auto 1.5em;font-size:1.1rem}
