/*
 * ══════════════════════════════════════════════════════════════════
 *  BCB DESIGN REFRESH — CONTRAST & VISUAL IMPACT OVERRIDE
 *  File:    bcb-style-REFRESH.css
 *  Applies: index.html · bourbondirectory.html
 *  Method:  Drop this <link> AFTER the base inline <style> block.
 *           Equal-specificity rules here win by cascade order.
 *  Author:  Design Refresh Pass — March 2026
 * ══════════════════════════════════════════════════════════════════
 *
 *  WHAT CHANGED (summary — full log in CHANGES.md):
 *    • Gold richer:    #D4AF37 → #E8C547
 *    • Landing radials more prominent (.08 → .15/.12 opacity)
 *    • Grid lines more visible (.03 → .07 opacity)
 *    • Tagline contrast: .6 → .9 opacity
 *    • Card borders:   .15 → .30 opacity; gold-left border added
 *    • Nav buttons:    .50 → .72 opacity
 *    • Section rule:   1px/50%op → 2px/88%op + wider (60→80px)
 *    • Section padding: 60px → 80px; header margin 50→64px
 *    • Section titles: gold underline accent added
 *    • All body/sub-text failing WCAG AA raised to ≥4.5:1
 *    • Card hover glows brighter throughout
 *    • Shimmer animation on primary CTA nav button
 *    • Section separator utility class added
 * ══════════════════════════════════════════════════════════════════
 */

/* ═══════════════════════════════════════════════════════
   1. ROOT — RICHER GOLD + BRIGHTER FOREGROUND TEXT
   ═══════════════════════════════════════════════════════ */
:root {
  --gold:  #E8C547;           /* was #D4AF37 — more saturated, warmer */
  --gold-muted: rgba(232,197,71,.85);
  --text:  #F2E8D6;           /* was #E8DCC8 — brighter, higher contrast on #0D0D0D */
  --cream: #FBF5E8;           /* was #F5EFE0 — crisper white-cream */
}

/* ── BACKGROUND: deep warm brown — barrel interior, cognac leather ── */
body {
  background:
    radial-gradient(ellipse at 50% 0%,   rgba(200,132,42,.10) 0%, transparent 55%),
    radial-gradient(ellipse at 50% 100%, rgba(0,0,0,.55)      0%, transparent 65%),
    #1C1208;                  /* deep warm brown — was cold #0D0D0D */
  color: var(--text);
}


/* ═══════════════════════════════════════════════════════
   2. LANDING SECTION — more dramatic radial glow
   ═══════════════════════════════════════════════════════ */
#landing {
  background:
    radial-gradient(ellipse at 20% 50%, rgba(200,132,42,.22) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 50%, rgba(61,107,79,.16)  0%, transparent 60%),
    #1C1208;               /* matches warm body bg */
}
#landing::before {
  background-image:
    repeating-linear-gradient(0deg,  transparent, transparent 80px, rgba(212,175,55,.07) 80px, rgba(212,175,55,.07) 81px),
    repeating-linear-gradient(90deg, transparent, transparent 80px, rgba(212,175,55,.07) 80px, rgba(212,175,55,.07) 81px);
}

/* Tagline: was rgba(212,175,55,.6) — fails contrast */
.site-tagline {
  color: rgba(232,197,71,.92);
  letter-spacing: .46em;
}


/* ═══════════════════════════════════════════════════════
   3. LANDING CARDS — stronger border, overlay, sub-text
   ═══════════════════════════════════════════════════════ */
.choice-card {
  border-color: rgba(212,175,55,.30);    /* was .15 */
}
.card-photo::after {
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,.05)  0%,
    rgba(0,0,0,.65) 55%,   /* was .55 */
    rgba(0,0,0,.92) 100%   /* was .85 */
  );
}
/* Sub-text: was .65 — low contrast on image */
.card-sub {
  color: rgba(245,239,224,.88);
  text-shadow: 0 1px 10px rgba(0,0,0,1);
}
/* CTA: was invisible (0 opacity) at rest — now subtly readable */
.card-cta {
  color: rgba(245,239,224,.40);
}
.choice-card:hover .card-cta {
  color: rgba(245,239,224,.96);
}
/* Hover glows — slightly more punch */
.choice-card:hover.glow-bourbon {
  box-shadow: 0 28px 70px rgba(200,132,42,.42);
  border-color: rgba(200,132,42,.60);
}
.choice-card:hover.glow-cigar {
  box-shadow: 0 28px 70px rgba(61,107,79,.40);
  border-color: rgba(90,153,112,.60);
}
.choice-card:hover.glow-poker {
  box-shadow: 0 28px 70px rgba(196,30,58,.40);
  border-color: rgba(196,30,58,.60);
}


/* ═══════════════════════════════════════════════════════
   4. NAVIGATION — warm background + raise resting button contrast
   ═══════════════════════════════════════════════════════ */
.section-nav {
  background: rgba(22,14,6,.98);               /* deep warm brown, matches body */
  border-bottom-color: rgba(212,175,55,.28);
}
.nav-btn {
  color: rgba(245,239,224,.75);                 /* was .50 */
}
.nav-btn-cta {
  border-color: rgba(232,197,71,.65) !important; /* was .40 */
  position: relative;
  overflow: hidden;
}
/* Shimmer sweep on the primary CTA button */
.nav-btn-cta::after {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 55%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.20), transparent);
  animation: bcbShimmer 3.5s infinite;
  pointer-events: none;
}
@keyframes bcbShimmer {
  0%,30% { left: -100%; }
  60%     { left: 120%;  }
  100%    { left: 120%;  }
}


/* ═══════════════════════════════════════════════════════
   5. SECTIONS — breathing room, bolder rule, gold underline
   ═══════════════════════════════════════════════════════ */
.section {
  padding: 80px 20px;     /* was 60px */
}
.section-header {
  margin-bottom: 64px;    /* was 50px */
}
.section-eyebrow {
  opacity: 1;             /* was .80 */
  letter-spacing: .55em;
  color: var(--gold);
}
/* Gold rule: thicker, bolder, wider */
.section-rule {
  width:   80px;          /* was 60px */
  height:  2px;           /* was 1px */
  opacity: .90;           /* was .50 */
}
/* Body description text: was .60 — borderline contrast */
.section-desc {
  color: rgba(245,239,224,.82);
}
/* Decorative gold underline after every section title */
.section-title::after {
  content: '';
  display: block;
  width: 52px;
  height: 2px;
  background: linear-gradient(90deg, var(--gold), rgba(232,197,71,.25));
  margin: 15px auto 0;
}
/* Section separator utility (insert <hr class="section-separator"> between sections) */
.section-separator {
  display: block;
  width: 80%;
  max-width: 820px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,.22), transparent);
  margin: 0 auto;
  border: none;
}


/* ═══════════════════════════════════════════════════════
   6. FILTER BAR — stronger borders & placeholder contrast
   ═══════════════════════════════════════════════════════ */
.search-input {
  border-color: rgba(212,175,55,.35);    /* was .20 */
}
.search-input::placeholder {
  color: rgba(245,239,224,.52);          /* was .30 */
}
.filter-select {
  border-color: rgba(212,175,55,.35);    /* was .20 */
}


/* ═══════════════════════════════════════════════════════
   7. BOURBON CARDS — stronger borders, left accent, contrast
   ═══════════════════════════════════════════════════════ */
.bourbon-card {
  background:   rgba(255,255,255,.11);       /* was .03 — clearly elevated above #0F0A06 */
  border-color: rgba(200,132,42,.45);
  border-left:  3px solid rgba(200,132,42,.60);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);  /* resting elevation shadow */
}
.bourbon-card:hover {
  border-color: rgba(200,132,42,.75);
  box-shadow:   0 20px 58px rgba(200,132,42,.32), 0 0 0 1px rgba(200,132,42,.18);
  background:   rgba(200,132,42,.10);
}
/* Age italic: was .45 — fails WCAG AA */
.bourbon-age {
  color: rgba(245,239,224,.75);
}
/* Score sub-label: was .50 */
.bourbon-score-label {
  color: rgba(212,175,55,.92);
}
/* Stats grid borders: was .12 */
.bourbon-stats {
  border-color: rgba(200,132,42,.28);
}
.bourbon-stat {
  border-right-color: rgba(200,132,42,.28);
}
/* Stat label: was .35 — fails WCAG AA */
.bourbon-stat-label {
  color: rgba(245,239,224,.70);
}
/* Tasting notes label: was .50 */
.bourbon-notes-title {
  color: rgba(212,175,55,.92);
}
/* Tasting notes body: was .55 — borderline */
.bourbon-notes-text {
  color: rgba(245,239,224,.80);
  border-left-color: rgba(200,132,42,.55);   /* was .25 */
}
/* Card footer border: was .10 */
.bourbon-card-footer {
  border-top-color: rgba(200,132,42,.25);
}
/* Spotlight banner: was .15 border, .7 text */
.bourbon-spotlight {
  background: linear-gradient(135deg, rgba(139,90,26,.32), rgba(212,175,55,.13));
  border-color: rgba(212,175,55,.32);
}
.bourbon-spotlight-text {
  color: rgba(212,175,55,.96);
}
/* Button hover glow */
.btn-bourbon:hover {
  box-shadow: 0 0 18px rgba(200,132,42,.40);
}


/* ═══════════════════════════════════════════════════════
   8. TABS — stronger borders and resting text
   ═══════════════════════════════════════════════════════ */
.section-tabs {
  border-color: rgba(200,132,42,.40);    /* was .25 */
}
.section-tab {
  color: rgba(245,239,224,.65);          /* was .40 */
  border-right-color: rgba(200,132,42,.35);
}
.section-tab.active, .section-tab:hover {
  background: rgba(200,132,42,.16);
}


/* ═══════════════════════════════════════════════════════
   9. TAGS — raise all low-opacity text to pass WCAG AA
   ═══════════════════════════════════════════════════════ */
.tag-region  { color: rgba(212,175,55,.88); border-color: rgba(212,175,55,.40); }
.tag-finish  { color: rgba(245,239,224,.75); border-color: rgba(245,239,224,.30); }
.tag-wrapper { color: rgba(212,175,55,.85); border-color: rgba(212,175,55,.35); }
.tag-size    { color: rgba(245,239,224,.72); border-color: rgba(245,239,224,.28); }


/* ═══════════════════════════════════════════════════════
   10. CIGAR CARDS — left accent border, contrast fixes
   ═══════════════════════════════════════════════════════ */
.cigar-card {
  background:   rgba(255,255,255,.11);
  border-color: rgba(61,107,79,.45);
  border-left:  3px solid rgba(61,107,79,.65);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);
}
.cigar-card:hover {
  border-color: rgba(90,153,112,.72);
  box-shadow:   0 16px 52px rgba(61,107,79,.28);
}
/* Vitola italic: was .42 — fails WCAG AA */
.cigar-vitola {
  color: rgba(245,239,224,.75);
}
/* Rating sub-label: was .50 */
.rating-label {
  color: rgba(212,175,55,.90);
}
/* Cigar stats: was .15 borders */
.cigar-stats {
  border-color: rgba(61,107,79,.30);
}
.cigar-stat {
  border-right-color: rgba(61,107,79,.30);
}
/* Stat label: was .32 — fails WCAG AA */
.cigar-stat-lbl {
  color: rgba(245,239,224,.68);
}
/* Notes label: was .45 */
.cigar-notes-lbl {
  color: rgba(212,175,55,.90);
}
/* Notes body: was .52 */
.cigar-notes {
  color: rgba(245,239,224,.80);
  border-left-color: rgba(61,107,79,.60);    /* was .30 */
}
/* Footer border: was .12 */
.cigar-card-footer {
  border-top-color: rgba(61,107,79,.26);
}
.cigar-price span {
  color: rgba(212,175,55,.88);               /* was .50 */
}
.btn-view:hover {
  box-shadow: 0 0 18px rgba(61,107,79,.38);
}


/* ═══════════════════════════════════════════════════════
   11. SHOP / LOUNGE CARDS
   ═══════════════════════════════════════════════════════ */
.shop-card {
  background:   rgba(255,255,255,.11);
  border-color: rgba(61,107,79,.42);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);
}
.shop-card:hover {
  border-color: rgba(90,153,112,.60);
  box-shadow:   0 16px 50px rgba(61,107,79,.22);
}
/* Location italic: was .42 */
.shop-location {
  color: rgba(245,239,224,.75);
}
/* Description: was .50 */
.shop-desc {
  color: rgba(245,239,224,.78);
  border-left-color: rgba(61,107,79,.55);    /* was .28 */
}
.shop-card-footer {
  border-top-color: rgba(61,107,79,.25);     /* was .10 */
}
.shop-price-range span {
  color: rgba(212,175,55,.72);               /* was .45 */
}
/* Mobile bar hero stat labels: was .40 */
.mh-lbl {
  color: rgba(245,239,224,.68);
}
.mobilebar-card {
  border-color: rgba(61,107,79,.35);
}
/* Mobile bar package content */
.mb-includes-title {
  color: rgba(212,175,55,.88);               /* was .50 */
}
.mb-include-item {
  color: rgba(245,239,224,.82);              /* was .60 */
}
.mb-desc {
  color: rgba(245,239,224,.78);              /* was .50 */
  border-top-color: rgba(61,107,79,.25);
}
.mobilebar-footer {
  border-top-color: rgba(61,107,79,.25);
}
.mb-starting span {
  color: rgba(212,175,55,.72);               /* was .45 */
}


/* ═══════════════════════════════════════════════════════
   12. POKER CARDS — contrast and border fixes
   ═══════════════════════════════════════════════════════ */
.poker-card {
  background:   rgba(255,255,255,.11);
  border-color: rgba(196,30,58,.42);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);
}
.poker-card:hover {
  border-color: rgba(196,30,58,.65);
  box-shadow:   0 20px 56px rgba(196,30,58,.22);
}
/* Room location: was .45 */
.poker-room-location {
  color: rgba(245,239,224,.75);
}
/* Rating label: was .45 */
.poker-rating-label {
  color: rgba(255,112,136,.82);
}
/* Stats: was .12 borders */
.poker-stats {
  border-color: rgba(196,30,58,.28);
}
.poker-stat {
  border-right-color: rgba(196,30,58,.28);
}
/* Stat label: was .33 — fails WCAG AA */
.poker-stat-label {
  color: rgba(245,239,224,.68);
}
/* Description: was .52 */
.poker-desc {
  color: rgba(245,239,224,.80);
  border-left-color: rgba(196,30,58,.42);    /* was .22 */
}
.poker-card-footer {
  border-top-color: rgba(196,30,58,.22);     /* was .10 */
}
.poker-stakes span {
  color: rgba(212,175,55,.80);               /* was .50 */
}
.btn-poker:hover {
  box-shadow: 0 0 18px rgba(196,30,58,.35);
}
/* Poker tabs */
.poker-tabs {
  border-color: rgba(196,30,58,.40);
}
.poker-tabs .section-tab {
  border-right-color: rgba(196,30,58,.32);
}


/* ═══════════════════════════════════════════════════════
   13. TOURNAMENTS
   ═══════════════════════════════════════════════════════ */
.tournament-card {
  background:   rgba(255,255,255,.11);
  border-color: rgba(196,30,58,.32);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);
}
.tournament-card:hover {
  border-color: rgba(196,30,58,.55);
  box-shadow:   0 10px 36px rgba(196,30,58,.18);
}
.tournament-date-block {
  border-right-color: rgba(196,30,58,.28);
}
/* Year label: was .35 */
.t-year {
  color: rgba(245,239,224,.68);
}
/* Venue italic: was .45 */
.t-venue {
  color: rgba(245,239,224,.75);
}
.tournament-prize {
  border-left-color: rgba(196,30,58,.22);    /* was .10 */
}
/* Prize label: was .50 */
.t-prize-label {
  color: rgba(212,175,55,.88);
}
/* Buy-in: was .35 */
.t-buyin {
  color: rgba(245,239,224,.68);
}


/* ═══════════════════════════════════════════════════════
   14. STRATEGY CARDS
   ═══════════════════════════════════════════════════════ */
.strategy-card {
  background:   rgba(255,255,255,.11);
  border-color: rgba(196,30,58,.32);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);
}
.strategy-card:hover {
  border-color: rgba(196,30,58,.50);
  box-shadow: 0 14px 40px rgba(196,30,58,.15);
}
/* Description: was .52 */
.strategy-desc {
  color: rgba(245,239,224,.80);
  border-top-color: rgba(196,30,58,.20);
}
/* Tips: was .60 */
.strategy-tip {
  color: rgba(245,239,224,.84);
}


/* ═══════════════════════════════════════════════════════
   15. PAIRING CARDS
   ═══════════════════════════════════════════════════════ */
.pairing-card {
  background:   rgba(255,255,255,.11);
  border-color: rgba(200,132,42,.38);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);
}
.pairing-card:hover {
  border-color: rgba(200,132,42,.55);
  box-shadow:   0 16px 50px rgba(200,132,42,.18);
}
/* Ampersand: was .60 opacity */
.pairing-amp {
  opacity: .88;
}
/* Description: was .55 */
.pairing-desc {
  color: rgba(245,239,224,.78);
  border-top-color: rgba(200,132,42,.22);    /* was .10 */
}
/* Match strength label: was .35 */
.match-label {
  color: rgba(245,239,224,.68);
}
/* Match bar track: was .08 */
.match-bar {
  background: rgba(255,255,255,.15);
}
/* Coming soon */
.coming-soon p {
  color: rgba(245,239,224,.75);              /* was .50 */
}


/* ═══════════════════════════════════════════════════════
   16. LISTING / PRICING PAGE
   ═══════════════════════════════════════════════════════ */
.list-hero {
  background: radial-gradient(ellipse at center, rgba(212,175,55,.13) 0%, transparent 70%);
  border-bottom-color: rgba(212,175,55,.20); /* was .08 */
}
.list-hero-eyebrow {
  opacity: 1;                                /* was .80 */
}
/* Hero sub: was .55 */
.list-hero-sub {
  color: rgba(245,239,224,.80);
}
/* Hero stat labels: was .40 */
.lh-lbl {
  color: rgba(245,239,224,.70);
}
/* Pricing subhead: was .50 */
.pricing-heading p {
  color: rgba(245,239,224,.78);
}
/* Tier cards */
.tier-card {
  background:   rgba(255,255,255,.09);
  border-color: rgba(212,175,55,.28);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);
}
.tier-card.tier-featured {
  border-color: rgba(212,175,55,.65);
  box-shadow: 0 0 0 1px rgba(212,175,55,.28), 0 24px 68px rgba(212,175,55,.15);
}
.tier-card.tier-featured:hover {
  box-shadow: 0 0 0 1px rgba(212,175,55,.50), 0 32px 80px rgba(212,175,55,.22);
}
/* Price period: was .35 */
.tier-price-period {
  color: rgba(245,239,224,.68);
}
/* Price note: was .40 */
.tier-price-note {
  color: rgba(245,239,224,.68);
}
.tier-divider {
  background: rgba(212,175,55,.40);          /* was .20 */
}
/* Tier description: was .50 */
.tier-desc {
  color: rgba(245,239,224,.75);
}
/* Feature text: was .70 */
.tf-text-yes {
  color: rgba(245,239,224,.90);
}
/* Struck-out feature: was .25 */
.tf-text-no {
  color: rgba(245,239,224,.38);
}
.btn-tier-free {
  border-color: rgba(245,239,224,.35);       /* was .20 */
  color: rgba(245,239,224,.72);              /* was .50 */
}
.btn-tier-free:hover {
  border-color: rgba(245,239,224,.65);
  color: var(--cream);
}
.btn-tier-featured {
  box-shadow: 0 4px 22px rgba(212,175,55,.38);
}
.btn-tier-featured:hover {
  box-shadow: 0 8px 32px rgba(200,132,42,.42);
}


/* ═══════════════════════════════════════════════════════
   17. COMPARE TABLE
   ═══════════════════════════════════════════════════════ */
.compare-table {
  border-color: rgba(212,175,55,.20);
}
.compare-table th {
  border-bottom-color: rgba(212,175,55,.22);
}
.compare-table th:first-child {
  color: rgba(245,239,224,.75);              /* was .50 */
}
.compare-table td {
  border-bottom-color: rgba(212,175,55,.10);
}
.compare-table td:first-child {
  color: rgba(245,239,224,.82);              /* was .60 */
}
.compare-table .section-row td {
  color: rgba(212,175,55,.85);               /* was .50 */
}


/* ═══════════════════════════════════════════════════════
   18. FORM
   ═══════════════════════════════════════════════════════ */
.form-card {
  background:   rgba(255,255,255,.09);
  border-color: rgba(212,175,55,.28);
  box-shadow:   0 4px 24px rgba(0,0,0,.55);
}
/* Label: was .50 */
.form-label {
  color: rgba(245,239,224,.75);
}
/* Field borders: was .15 */
.form-input, .form-textarea, .form-select-field {
  border-color: rgba(212,175,55,.28);
}
/* Placeholders: was .25 */
.form-input::placeholder, .form-textarea::placeholder {
  color: rgba(245,239,224,.45);
}
/* Hint: was .30 */
.form-hint {
  color: rgba(245,239,224,.55);
}
.form-section-label {
  opacity: 1;                                /* was .70 */
  color: var(--gold);
}
.form-section-label::after {
  background: rgba(212,175,55,.28);          /* was .15 */
}
/* Checkbox label: was .60 */
.checkbox-label {
  color: rgba(245,239,224,.80);
}
/* Submit note: was .35 */
.form-submit-note {
  color: rgba(245,239,224,.58);
}
/* Success paragraph: was .55 */
.form-success p {
  color: rgba(245,239,224,.78);
}
/* Submit button glow */
.btn-submit {
  box-shadow: 0 4px 26px rgba(212,175,55,.32);
}
.btn-submit:hover {
  box-shadow: 0 10px 36px rgba(200,132,42,.45);
}


/* ═══════════════════════════════════════════════════════
   19. FAQ
   ═══════════════════════════════════════════════════════ */
.faq-item {
  border-bottom-color: rgba(212,175,55,.16); /* was .08 */
}
/* Question text: was .75 */
.faq-q {
  color: rgba(245,239,224,.90);
}
/* Answer text: was .50 */
.faq-a {
  color: rgba(245,239,224,.75);
}


/* ═══════════════════════════════════════════════════════
   20. FOOTER
   ═══════════════════════════════════════════════════════ */
footer {
  border-top-color: rgba(212,175,55,.22);    /* was .10 */
}
/* Copyright text: was .25 */
footer p {
  color: rgba(245,239,224,.48);
}


/* ═══════════════════════════════════════════════════════
   21. SCROLLBAR — slightly more visible
   ═══════════════════════════════════════════════════════ */
::-webkit-scrollbar-thumb {
  background: rgba(212,175,55,.45);          /* was .30 */
}
