/* Public shell: shared by every header and footer rendered by puls-site-chrome.php.
   Component IDs keep page themes from overriding the common appearance. */
html body:has(> #puls-site-header) .page-shell {
    width: min(1380px, calc(100% - 48px));
    margin-inline: auto;
}
#puls-site-header, #puls-site-footer {
    --puls-petroleum-deep: #0c3037;
    --puls-petroleum: #153e46;
    --puls-rust: #b95d3f;
    --puls-paper: #fffefa;
    font-family: var(--puls-sans);
}
#puls-site-header {
    color: #0c3037;
    background: linear-gradient(105deg, #0c3037, #153e46);
    border-bottom: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 8px 24px rgba(12,48,55,.16);
}
#puls-site-header .main-nav { color: #0c3037; }
#puls-site-header .main-nav > a,
#puls-site-header .nav-theme > summary { color: rgba(255,255,255,.92); }
#puls-site-header .brand-name,
#puls-site-footer .brand-name { color: #fff; }
#puls-site-header .brand-name em,
#puls-site-footer .brand-name em { color: #b95d3f; }
#puls-site-footer {
    background: linear-gradient(105deg, #0c3037, #153e46);
    color: rgba(255,255,255,.78);
    border-top: 4px solid #b95d3f;
}
#puls-site-footer .footer-inner nav a { color: rgba(255,255,255,.72); }
#puls-site-footer .footer-inner nav a:hover { color: #fff; }
#puls-site-footer .footer-inner nav strong { color: #fff; }
#puls-site-footer .footer-inner > p { color: #697675; }
@media (max-width: 900px) {
    #puls-site-header .main-nav { background: #0c3037; }
}
@media (max-width: 680px) {
    html body:has(> #puls-site-header) .page-shell {
        width: min(1380px, calc(100% - 28px));
    }
}

/* Shared calendar month cards. */
.puls-event-month{box-sizing:border-box;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:116px;padding:18px!important;border:1px solid #dbe5ef;border-radius:8px;background:#edf6ff;color:#0b2547;text-align:center;list-style:none}
.puls-event-month>strong{font-size:1.65rem!important;line-height:1.15!important;font-weight:750}
.puls-event-month>small{font-size:.85rem!important;line-height:1.2!important}
.puls-event-month[hidden]{display:none!important}
