.site-shell-header {
    height: 78px;
    padding: 0 clamp(22px, 5vw, 72px);
    display: flex;
    align-items: center;
    gap: 35px;
    background: rgba(247, 241, 233, .97);
    border-bottom: 1px solid #ded2d2;
    position: sticky;
    top: 0;
    z-index: 1000;
}

.site-shell-brand { display: flex; align-items: center; gap: 10px; color: #2f252a; font-family: 'Fraunces', serif; font-size: 23px; font-weight: 600; white-space: nowrap; }
.site-shell-brand img { width: 38px; height: 38px; }
.site-shell-header nav { display: flex; gap: 28px; margin-left: auto; font-size: 14px; }
.site-shell-header nav a:hover { color: #7c3f57; }
.site-shell-cta { min-width: 170px; padding: 12px 18px; color: #fff; background: #442b3b; border: 1px solid #442b3b; border-radius: 999px; text-align: center; font-size: 14px; font-weight: 700; }
.site-shell-cta:hover { color: #fff; background: #7c3f57; border-color: #7c3f57; }
.mobile-nav,
.mobile-toggle { display: none !important; }

.blog-hero,
.faq-hero,
.article-hero { margin-top: 0 !important; padding: clamp(72px, 8vw, 110px) clamp(24px, 7vw, 96px) !important; background: #fffdf9 !important; border-bottom: 1px solid #ded2d2; text-align: left !important; }
.blog-hero .container,
.faq-hero .container,
.article-hero .container { display: block !important; max-width: 1180px; padding: 0; }
.blog-hero h1,
.faq-hero h1,
.article-hero h1 { max-width: 920px; font-family: 'Fraunces', serif !important; font-size: clamp(44px, 5vw, 70px) !important; line-height: 1.03 !important; letter-spacing: -.035em; }
.blog-grid { gap: 1px !important; background: #ded2d2; padding: 1px; }
.blog-card,
.faq-card,
.faq-group { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: #fffdf9 !important; }
.article-content { max-width: 820px !important; }
.article-practical { border-radius: 0 !important; background: #ead8dc !important; border-left-color: #7c3f57 !important; }

@media (max-width: 900px) {
    .site-shell-header nav,
    .site-shell-cta { display: none; }
    .blog-hero,
    .faq-hero,
    .article-hero { padding: 58px 24px !important; }
}

@media (max-width: 520px) {
    .site-shell-header { height: 68px; }
    .site-shell-brand { font-size: 21px; }
}
