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

.site-shell-brand { display: flex; align-items: center; gap: 10px; color: #292a26; font-family: 'Libre Caslon Display', serif; font-size: 24px; white-space: nowrap; }
.site-shell-brand img { width: 36px; height: 36px; filter: hue-rotate(70deg) saturate(.5); }
.site-shell-header nav { display: flex; gap: 28px; margin-left: auto; font-size: 14px; }
.site-shell-header nav a:hover { color: #b96d16; }
.site-shell-cta { min-width: 165px; padding: 12px 18px; color: #fff; background: #334634; border: 1px solid #334634; border-radius: 4px; text-align: center; font-size: 14px; font-weight: 700; }
.site-shell-cta:hover { color: #fff; background: #b96d16; border-color: #b96d16; }
.mobile-nav,
.mobile-toggle { display: none !important; }

.blog-hero,
.faq-hero,
.article-hero { margin-top: 0 !important; padding: clamp(72px, 8vw, 108px) clamp(24px, 7vw, 96px) !important; background: #fffdf8 !important; border-bottom: 1px solid #d8d0c3; 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: 'Libre Caslon Display', serif !important; font-size: clamp(45px, 5vw, 72px) !important; line-height: 1.02 !important; letter-spacing: -.025em; color: #292a26 !important; }
.blog-card,
.faq-card,
.faq-group { border: 1px solid #d8d0c3 !important; border-radius: 0 !important; box-shadow: none !important; background: #fffdf8 !important; }
.blog-card { border-top: 2px solid #b96d16 !important; }
.article-content { max-width: 820px !important; }
.article-practical { border-radius: 0 !important; background: #f3eee5 !important; border-left-color: #b96d16 !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; }
}
