.site-shell-header {
    min-height: 76px;
    padding: 14px clamp(20px, 5vw, 76px);
    display: flex;
    align-items: center;
    gap: 34px;
    border-bottom: 1px solid #ddd4c7;
    background: rgba(248, 243, 235, .97);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.site-shell-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: 'Newsreader', serif;
    font-size: 24px;
    font-weight: 600;
    color: #24312d;
    white-space: nowrap;
}

.site-shell-brand img { width: 34px; height: 34px; }
.site-shell-header nav { display: flex; gap: 28px; margin-left: auto; font-size: 14px; font-weight: 600; }
.site-shell-header nav a:hover { color: #24312d; text-decoration: underline; text-underline-offset: 5px; }
.site-shell-cta { min-width: 150px; padding: 12px 18px; background: #7c382c; color: #fff; border: 1px solid #7c382c; border-radius: 4px; text-align: center; font-size: 14px; font-weight: 700; }
.site-shell-cta:hover { color: #fff; background: #24312d; border-color: #24312d; }
.blog-page,
.faq-page,
.article-page { padding-top: 0 !important; }

.blog-header,
.faq-header,
.article-header {
    margin-top: 0 !important;
    padding: clamp(72px, 8vw, 112px) clamp(24px, 7vw, 104px) !important;
    background: #f8f3eb !important;
    border-bottom: 1px solid #ddd4c7;
    text-align: left !important;
}

.blog-header .container,
.faq-header .container,
.article-header .container { display: block !important; max-width: 1220px; padding: 0; }
.blog-title,
.faq-title,
.article-title { max-width: 900px; margin: 0 0 18px !important; font-family: 'Newsreader', serif !important; font-size: clamp(44px, 5vw, 72px) !important; line-height: 1.01 !important; letter-spacing: -.035em; color: #24312d !important; }
.blog-subtitle,
.faq-subtitle,
.article-subtitle { max-width: 720px; margin: 0 !important; color: #66706b !important; font-size: 19px !important; }
.blog-intro,
.faq-intro { border: 1px solid #ddd4c7 !important; border-left: 4px solid #a5503f !important; border-radius: 0 !important; box-shadow: none !important; background: #fffdf9 !important; }
.blog-post-card,
.faq-category,
.category-item { border: 1px solid #ddd4c7 !important; border-radius: 0 !important; box-shadow: none !important; background: #fffdf9 !important; }
.blog-post-card { overflow: hidden; }
.post-link,
.cta-button { border-radius: 4px !important; }
.faq-question { border-radius: 0 !important; }
.article-body,
.article-content .container { max-width: 900px; }
.article-practical { border-radius: 0 !important; }

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

@media (max-width: 520px) {
    .site-shell-header { min-height: 66px; padding-inline: 20px; }
    .site-shell-brand { font-size: 21px; }
}
