/* Override Astra narrow container variable */
:root {
    --ast-narrow-container-width: 1200px;
}

/* ── SINGLE POST — logo centered at top ── */
body.single #masthead .site-primary-header-wrap,
body.single-post #masthead .site-primary-header-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 12px 2em !important;
}
body.single #masthead .ast-builder-grid-row,
body.single-post #masthead .ast-builder-grid-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    gap: 10px !important;
}
body.single #masthead .site-header-primary-section-left,
body.single-post #masthead .site-header-primary-section-left,
body.single #masthead .site-header-primary-section-right,
body.single-post #masthead .site-header-primary-section-right {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
}
body.single #masthead .ast-site-identity,
body.single-post #masthead .ast-site-identity {
    text-align: center !important;
}
body.single #masthead .main-header-menu,
body.single-post #masthead .main-header-menu {
    justify-content: center !important;
}

/* ── DEEP ORANGE HEADER ── */
#masthead,
.ast-primary-header-bar,
.site-header,
.main-header-bar {
    background-color: #bf360c !important;
    background: #bf360c !important;
}

/* ── WHITE NAV TEXT ── */
#masthead .menu-link,
#masthead a.menu-link,
#masthead .menu-item > .menu-link,
#masthead .menu-item.current-menu-item > .menu-link,
#masthead .menu-item.current-menu-ancestor > .menu-link,
.ast-primary-header-bar .menu-link,
.ast-primary-header-bar .menu-item > .menu-link {
    color: #ffffff !important;
}
#masthead .menu-link:hover,
#masthead .menu-item > .menu-link:hover {
    color: #ffe0b2 !important;
}
#masthead .site-title a,
.ast-site-identity .site-title a,
.site-header .site-title a { color: #ffffff !important; }
.site-description { color: rgba(255,255,255,0.85) !important; }
.menu-toggle .ast-icon,
.ast-mobile-menu-trigger-minimal .ast-icon { color: #ffffff !important; }

/* ── FULL WIDTH SINGLE POST ── */
body.single .site-content,
body.single-post .site-content {
    max-width: 1200px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 2em !important;
    box-sizing: border-box !important;
}
body.single .site-content .ast-container,
body.single-post .site-content .ast-container,
body.single.ast-narrow-container .ast-container,
body.single.ast-separate-container .ast-container {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    box-sizing: border-box !important;
}
body.single #primary,
body.single-post #primary,
body.single.ast-no-sidebar #primary,
body.single.ast-separate-container #primary {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
body.single .ast-article-single,
body.single.ast-separate-container .ast-article-single {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}
body.single .entry-content,
body.single-post .entry-content {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
}

/* ── ARCHIVE / CATALOG ── */
.blog .ast-container,
.archive .ast-container,
.category .ast-container {
    max-width: 1200px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 2em !important;
    box-sizing: border-box !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 767px) {
    body.single .site-content,
    body.single-post .site-content,
    .blog .ast-container,
    .archive .ast-container { padding: 0 1em !important; }
    h1 { font-size: 1.6rem !important; }
    h2 { font-size: 1.3rem !important; }
    h3 { font-size: 1.1rem !important; }
    .entry-content img { max-width: 100% !important; height: auto !important; }
    div[style*="grid-template-columns:1fr 1fr 1fr 1fr"] { grid-template-columns: 1fr 1fr !important; }
    div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }
    table { display: block !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; }
}
@media (min-width: 768px) and (max-width: 1023px) {
    body.single .site-content,
    body.single-post .site-content,
    .blog .ast-container,
    .archive .ast-container { padding: 0 1.5em !important; }
    table { display: block !important; overflow-x: auto !important; }
}
