/* Shared additions across every BCC page (added 2026-10-19): cookie consent,
   skip-link colors, contrast fixes. Page layout and brand styles stay inline per page. */
.skip-link:focus { background: #4A0000 !important; color: #fff !important; border-color: #E8A020 !important; }
#main:focus { outline: none; }

/* Contrast (WCAG AA). "html body" outranks each page's inline <style>; labels that set
   their color inline on dark sections keep the brand gold. Light-section gold #E8A020 is 2.1:1. */
html body .section-label, html body .category-header .count { color: #8A5300; }
html body .section-label::after, html body .section-label::before { background: #8A5300; }
html body .resources-section .section-label, html body .perks-section .section-label,
html body .cta-section .section-label, html body footer .section-label { color: #E8A020; }
html body .pillar-number { color: #8A5300 !important; }
html body .newsletter-form p { color: #f6dede; }
html body .resource-card p { color: #c4c4c4; }
html body .partner-strip .label, html body .partner-strip-inner .partner-tag,
html body .directory-count, html body .tier-price span, html body .fine-print { color: #5A554E; }
html body .tier-card.featured .tier-price span { color: rgba(255,255,255,0.8); }
html body footer .footer-brand p, html body footer .footer-bottom p { color: #ABA2A2 !important; }
html body footer .footer-col a, html body footer .footer-bottom-links a { color: #BDB5B5 !important; }
html body footer .footer-col a:hover, html body footer .footer-bottom-links a:hover { color: #F0BC50 !important; }

/* Cookie consent */
.cookie-bar { position: fixed; right: 16px; bottom: 16px; z-index: 300; max-width: 380px; background: #1A0505;
  color: #f4ece4; border: 1px solid rgba(232,160,32,.45); padding: 18px 20px; font-family: 'Barlow', sans-serif;
  font-size: 14px; line-height: 1.55; box-shadow: 0 18px 40px -18px rgba(0,0,0,.6); }
.cookie-bar p { margin: 0 0 12px; }
.cookie-bar a { color: #F0BC50; text-decoration: underline; text-underline-offset: 3px; }
.cookie-bar__row { display: flex; gap: 10px; }
.cookie-bar button { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 14px; letter-spacing: .1em;
  text-transform: uppercase; min-height: 44px; padding: 10px 20px; cursor: pointer; border: 1px solid #E8A020; }
.cookie-bar .ck-yes { background: #E8A020; color: #2a0000; }
.cookie-bar .ck-no { background: transparent; color: #f4ece4; border-color: rgba(255,255,255,.4); }
@media (max-width: 620px) { .cookie-bar { left: 10px; right: 10px; bottom: 10px; max-width: none; padding: 14px 16px; font-size: 13px; } }

/* Legal + 404 pages */
.legal { max-width: 780px; margin: 0 auto; padding: 140px 2rem 90px; color: #1A1A1A; line-height: 1.75; }
.legal h1 { font-family: 'Playfair Display', serif; font-size: clamp(2rem, 4vw, 2.8rem); line-height: 1.1; margin-bottom: .5rem; }
.legal h2 { font-family: 'Playfair Display', serif; font-size: 1.35rem; margin: 2rem 0 .5rem; }
.legal p, .legal li { margin-bottom: .8rem; }
.legal ul { padding-left: 1.25rem; }
.legal a { color: #8B0000; }
.legal .updated { color: #555; font-size: 14px; }
html body .footer-col h2.fh { margin-top: 0; line-height: inherit; }
