/* GlamRush holiday theme (through ~January 2).
   Deep red, maroon/burgundy, metallic gold trim, cream backgrounds.
   Classy department-store holiday — no cartoon motifs, no urgency copy.
   Pink is replaced with red/maroon for the season.

   To turn this off after January 2:
     1. Remove the "holiday" class from every <body>, and/or
     2. Remove the <link rel="stylesheet" href="/css/holiday.css"> tag.
   A one-pass example from the site root:
     python3 -c "import pathlib,re; root=pathlib.Path('.');
     [p.write_text(re.sub(r'(\s*)<link rel=\"stylesheet\" href=\"/css/holiday.css\">','', re.sub(r'(class=\")holiday ?','\\1', p.read_text()),1) if p.suffix=='.html' and 'holiday' in p.read_text() else None)
     for p in list(root.glob('*.html'))+list(root.glob('articles/*.html'))+list(root.glob('amazon-finds/*.html'))+list(root.glob('p/*.html'))]"
*/

body.holiday {
  --holiday-red: #8B0000;
  --holiday-maroon: #5a1a24;
  --holiday-maroon-deep: #3d1018;
  --holiday-gold: #c9a45c;
  --holiday-gold-soft: #e6d5a8;
  --holiday-cream: #f7f2ea;
  --accent: #8B0000;
  --gold: #c9a45c;
  --gold-soft: #e6d5a8;
  --navy: #5a1a24;
  --pine: #5a1a24;
  --pine-deep: #3d1018;
  --burgundy: #5a1a24;
  --festive-red: #8B0000;
  --festive-gold: #c9a45c;
  --blush: #8B0000;
  --cream: #f7f2ea;
  --sale: #8B0000;
  background: var(--holiday-cream);
  color: var(--ink);
}

/* ----- Header, nav, gold trim ----- */
body.holiday .site-header {
  background: rgba(247, 242, 234, 0.96);
  border-bottom: 1px solid var(--holiday-gold);
  backdrop-filter: blur(12px);
}
body.holiday .gl-header { border-bottom-color: var(--holiday-gold); }
body.holiday .topbar,
body.holiday .gl-header .topbar {
  background: var(--holiday-maroon);
  color: var(--holiday-gold-soft);
  border-bottom: 1px solid var(--holiday-gold);
}
body.holiday .gl-nav { border-top: 1px solid rgba(201, 164, 92, 0.4); }
body.holiday .gl-nav .nav-list a.hl,
body.holiday .nav-list a[aria-current="page"] {
  color: var(--holiday-maroon);
  border-bottom-color: var(--holiday-gold);
}
body.holiday .gl-ico,
body.holiday .hdr-icons a { color: var(--holiday-maroon-deep); }

/* Eyebrows: maroon text on cream (gold-on-cream fails contrast); gold-soft on dark */
body.holiday .gl-eyebrow { color: var(--holiday-maroon); }
body.holiday .gl-dark .gl-eyebrow,
body.holiday .hg-hero .gl-eyebrow,
body.holiday .hg-strip .gl-eyebrow,
body.holiday .hg-slide.hg-tone-maroon .gl-eyebrow,
body.holiday .hg-slide.hg-tone-ink .gl-eyebrow,
body.holiday .hg-slide.hg-tone-forest .gl-eyebrow,
body.holiday .hg-slide.hg-tone-red .gl-eyebrow { color: var(--holiday-gold-soft); }

/* Gold section rules */
body.holiday .gl-hero h1::after,
body.holiday .hg-hero h1::after,
body.holiday .hg-slide h1::after,
body.holiday .hg-slide h2::after {
  background: var(--holiday-gold);
}
body.holiday .gl-sec + .gl-sec,
body.holiday .gl-brands,
body.holiday .gl-disclose {
  border-top: 1px solid rgba(201, 164, 92, 0.45);
}
body.holiday .gl-dark { background: var(--holiday-maroon); color: var(--holiday-cream); }
body.holiday .gl-dark h2,
body.holiday .gl-dark .gl-more { color: var(--holiday-cream); }

/* ----- Buttons ----- */
body.holiday .btn-primary,
body.holiday .btn-gold,
body.holiday .btn-black,
body.holiday .gl-btn,
body.holiday .gp-buy,
body.holiday .ig-buy,
body.holiday .gf-buy,
body.holiday .btn-amz,
body.holiday .gr-deals-form button,
body.holiday .hg-strip-link {
  background: var(--holiday-maroon);
  color: var(--holiday-cream);
  border: 1px solid var(--holiday-gold);
}
body.holiday .btn-primary:hover,
body.holiday .btn-gold:hover,
body.holiday .btn-black:hover,
body.holiday .gl-btn:hover,
body.holiday .gp-buy:hover,
body.holiday .ig-buy:hover,
body.holiday .gf-buy:hover,
body.holiday .btn-amz:hover,
body.holiday .gr-deals-form button:hover,
body.holiday .hg-strip-link:hover {
  background: var(--holiday-red);
  color: #fff;
  border-color: var(--holiday-gold);
}
body.holiday .gl-btn.ghost,
body.holiday .btn-line,
body.holiday .btn-outline,
body.holiday .btn-ghost,
body.holiday .ig-quick a {
  background: transparent;
  color: var(--holiday-maroon);
  border: 1px solid var(--holiday-gold);
}
body.holiday .gl-btn.ghost:hover,
body.holiday .btn-line:hover,
body.holiday .btn-outline:hover,
body.holiday .ig-quick a:hover {
  background: var(--holiday-maroon);
  color: var(--holiday-cream);
}

/* Holiday heroes / strip default to maroon; carousel slides use per-tone classes below
   so bottoms don't all look the same. Easy off-switch: drop body.holiday or this file. */
body.holiday .hg-hero,
body.holiday .hg-hero-media,
body.holiday .hg-carousel,
body.holiday .hg-strip { background: var(--holiday-maroon); color: var(--holiday-cream); }
body.holiday .hg-hero-copy > div,
body.holiday .hg-hero h1 { color: var(--holiday-cream); }
body.holiday .hg-hero .gl-lead,
body.holiday .hg-strip p { color: var(--holiday-gold-soft); }
body.holiday .hg-hero .gl-btn {
  background: var(--holiday-cream);
  color: var(--holiday-maroon);
  border-color: var(--holiday-gold);
}
body.holiday .hg-hero .gl-btn:hover {
  background: var(--holiday-gold-soft);
  color: var(--holiday-maroon-deep);
  border-color: var(--holiday-gold);
}
body.holiday .hg-hero .gl-btn.ghost {
  background: transparent;
  color: var(--holiday-cream);
  border-color: var(--holiday-gold);
}
body.holiday .hg-hero .gl-btn.ghost:hover {
  background: var(--holiday-gold-soft);
  color: var(--holiday-maroon-deep);
}
@media (max-width: 760px) {
  body.holiday .hg-hero .hg-hero-copy { background: var(--holiday-maroon); }
}

/* ----- Per-slide carousel tones (homepage) ----- */
body.holiday .hg-slide { color: var(--holiday-cream); }
body.holiday .hg-slide .hg-hero-media { background: transparent; }

/* Maroon — Entertaining */
body.holiday .hg-slide.hg-tone-maroon { background: var(--holiday-maroon); }
body.holiday .hg-slide.hg-tone-maroon .gl-eyebrow { color: var(--holiday-gold-soft); }
body.holiday .hg-slide.hg-tone-maroon h1,
body.holiday .hg-slide.hg-tone-maroon h2 { color: var(--holiday-cream); }
body.holiday .hg-slide.hg-tone-maroon .gl-lead { color: var(--holiday-gold-soft); }
body.holiday .hg-slide.hg-tone-maroon .gl-btn {
  background: var(--holiday-cream); color: var(--holiday-maroon); border-color: var(--holiday-gold);
}
body.holiday .hg-slide.hg-tone-maroon .gl-btn.ghost {
  background: transparent; color: var(--holiday-cream); border-color: var(--holiday-gold);
}

/* Cream — Cozy Home (maroon type on cream; WCAG AA) */
body.holiday .hg-slide.hg-tone-cream { background: var(--holiday-cream); color: var(--holiday-maroon-deep); }
body.holiday .hg-slide.hg-tone-cream .gl-eyebrow { color: var(--holiday-maroon); }
body.holiday .hg-slide.hg-tone-cream h1,
body.holiday .hg-slide.hg-tone-cream h2 { color: var(--holiday-maroon-deep); }
body.holiday .hg-slide.hg-tone-cream h1::after,
body.holiday .hg-slide.hg-tone-cream h2::after { background: var(--holiday-gold); }
body.holiday .hg-slide.hg-tone-cream .gl-lead { color: #5a3a42; }
body.holiday .hg-slide.hg-tone-cream .gl-btn {
  background: var(--holiday-maroon); color: var(--holiday-cream); border-color: var(--holiday-gold);
}
body.holiday .hg-slide.hg-tone-cream .gl-btn.ghost {
  background: transparent; color: var(--holiday-maroon); border-color: var(--holiday-maroon);
}

/* Ink / black + gold — Winter Shoes & Bags */
body.holiday .hg-slide.hg-tone-ink { background: #0e0e10; color: var(--holiday-cream); }
body.holiday .hg-slide.hg-tone-ink .gl-eyebrow { color: var(--holiday-gold); }
body.holiday .hg-slide.hg-tone-ink h1,
body.holiday .hg-slide.hg-tone-ink h2 { color: var(--holiday-cream); }
body.holiday .hg-slide.hg-tone-ink .gl-lead { color: var(--holiday-gold-soft); }
body.holiday .hg-slide.hg-tone-ink .gl-btn {
  background: var(--holiday-gold); color: #0e0e10; border-color: var(--holiday-gold);
}
body.holiday .hg-slide.hg-tone-ink .gl-btn.ghost {
  background: transparent; color: var(--holiday-gold-soft); border-color: var(--holiday-gold);
}

/* Forest / emerald accent — Tech Gifts */
body.holiday .hg-slide.hg-tone-forest { background: #122e24; color: var(--holiday-cream); }
body.holiday .hg-slide.hg-tone-forest .gl-eyebrow { color: var(--holiday-gold-soft); }
body.holiday .hg-slide.hg-tone-forest h1,
body.holiday .hg-slide.hg-tone-forest h2 { color: var(--holiday-cream); }
body.holiday .hg-slide.hg-tone-forest .gl-lead { color: #d7e6dc; }
body.holiday .hg-slide.hg-tone-forest .gl-btn {
  background: var(--holiday-cream); color: #122e24; border-color: var(--holiday-gold);
}
body.holiday .hg-slide.hg-tone-forest .gl-btn.ghost {
  background: transparent; color: var(--holiday-cream); border-color: var(--holiday-gold);
}

/* Deep red — Beauty Gifts */
body.holiday .hg-slide.hg-tone-red { background: var(--holiday-red); color: #fff; }
body.holiday .hg-slide.hg-tone-red .gl-eyebrow { color: var(--holiday-gold-soft); }
body.holiday .hg-slide.hg-tone-red h1,
body.holiday .hg-slide.hg-tone-red h2 { color: #fff; }
body.holiday .hg-slide.hg-tone-red .gl-lead { color: var(--holiday-gold-soft); }
body.holiday .hg-slide.hg-tone-red .gl-btn {
  background: var(--holiday-cream); color: var(--holiday-red); border-color: var(--holiday-gold);
}
body.holiday .hg-slide.hg-tone-red .gl-btn.ghost {
  background: transparent; color: #fff; border-color: var(--holiday-gold);
}

/* Desktop copy alignment variants */
body.holiday .hg-slide.hg-copy-left .hg-hero-copy { justify-content: flex-start; }
body.holiday .hg-slide.hg-copy-right .hg-hero-copy { justify-content: flex-end; }
body.holiday .hg-slide.hg-copy-center .hg-hero-copy { justify-content: center; text-align: center; }
body.holiday .hg-slide.hg-copy-center .hg-hero-copy > div { margin-inline: auto; }
body.holiday .hg-slide.hg-copy-center h1::after,
body.holiday .hg-slide.hg-copy-center h2::after { margin-inline: auto; }
body.holiday .hg-slide.hg-copy-center .gl-cta { justify-content: center; }

/* Desktop: tone panel behind copy for cream/ink clarity over collage */
@media (min-width: 761px) {
  body.holiday .hg-slide.hg-tone-cream .hg-hero-copy > div {
    background: rgba(247, 242, 234, 0.94);
    padding: 1.4rem 1.5rem 1.5rem;
    border: 1px solid var(--holiday-gold);
  }
  body.holiday .hg-slide.hg-tone-ink .hg-hero-copy > div {
    background: rgba(14, 14, 16, 0.88);
    padding: 1.4rem 1.5rem 1.5rem;
    border: 1px solid var(--holiday-gold);
  }
  body.holiday .hg-slide.hg-tone-forest .hg-hero-copy > div {
    background: rgba(18, 46, 36, 0.88);
    padding: 1.4rem 1.5rem 1.5rem;
    border: 1px solid rgba(201, 164, 92, 0.55);
  }
}

/* Mobile bottoms: each tone paints its own copy block (Vickie's "same red" fix) */
@media (max-width: 760px) {
  body.holiday .hg-slide.hg-tone-maroon .hg-hero-copy { background: var(--holiday-maroon); }
  body.holiday .hg-slide.hg-tone-cream .hg-hero-copy { background: var(--holiday-cream); }
  body.holiday .hg-slide.hg-tone-ink .hg-hero-copy { background: #0e0e10; }
  body.holiday .hg-slide.hg-tone-forest .hg-hero-copy { background: #122e24; }
  body.holiday .hg-slide.hg-tone-red .hg-hero-copy { background: var(--holiday-red); }
  /* Carousel chrome strip under slides: cream so it doesn't extend one red band */
  body.holiday .hg-carousel-ui {
    background: var(--holiday-cream);
    border-top: 1px solid rgba(201, 164, 92, 0.45);
  }
  body.holiday .hg-carousel-ui .hg-arrow {
    background: #fff;
    color: var(--holiday-maroon);
    border-color: var(--holiday-gold);
  }
  body.holiday .hg-carousel-ui .hg-dot { border-color: var(--holiday-maroon); }
  body.holiday .hg-carousel-ui .hg-dot[aria-current="true"] {
    background: var(--holiday-maroon); border-color: var(--holiday-maroon);
  }
}

/* Carousel chrome */
body.holiday .hg-arrow {
  background: var(--holiday-cream);
  color: var(--holiday-maroon);
  border-color: var(--holiday-gold);
}
body.holiday .hg-arrow:hover,
body.holiday .hg-arrow:focus-visible { background: var(--holiday-gold-soft); }
body.holiday .hg-hero::before,
body.holiday .hg-carousel::before {
  background: linear-gradient(90deg, var(--holiday-maroon-deep), var(--holiday-gold), var(--holiday-cream), var(--holiday-gold), var(--holiday-maroon-deep));
}

/* ----- Gift Finder ----- */
body.holiday .gf-page { background: var(--holiday-cream); }
body.holiday .gf-hero .gl-eyebrow { color: var(--holiday-maroon); }
body.holiday .gf-progress span.on { background: var(--holiday-gold); }
body.holiday .gf-progress span.done { background: var(--holiday-maroon); }
body.holiday .gf-opt.picked {
  background: var(--holiday-maroon);
  border-color: var(--holiday-gold);
  color: var(--holiday-cream);
}
body.holiday .gf-name:hover { color: var(--holiday-maroon); }
body.holiday .gf-card,
body.holiday .gf-tile { border-color: rgba(90, 26, 36, 0.12); }

/* ----- Deals Club ----- */
body.holiday .gr-deals-inner {
  background: var(--holiday-cream);
  border: 1px solid var(--holiday-gold);
  box-shadow: none;
  border-radius: 0;
}
body.holiday .gr-deals-inner h2,
body.holiday .gr-deals-inner h3 { color: var(--holiday-maroon); }
body.holiday .gr-deals-form input[type="email"] {
  border: 1px solid var(--holiday-maroon);
  border-radius: 0;
  background: #fff;
}
body.holiday .gr-deals-form button { border-radius: 0; }

/* ----- Footer trim ----- */
body.holiday .site-footer {
  background: var(--holiday-cream) !important;
  border-top: 2px solid var(--holiday-gold);
}
body.holiday .footer-bottom { border-top-color: rgba(201, 164, 92, 0.45) !important; }
body.holiday .footer-brand { color: var(--holiday-maroon) !important; }
body.holiday .site-footer h3 { color: var(--holiday-maroon) !important; }
body.holiday .site-footer .socials a,
body.holiday .site-footer .socials a.social-link,
body.holiday .socials.socials-lg a {
  border-color: var(--holiday-maroon) !important;
  color: var(--holiday-maroon) !important;
  background: #fff !important;
}
body.holiday .site-footer .socials a:hover,
body.holiday .site-footer .socials a.social-link:hover,
body.holiday .socials.socials-lg a:hover {
  color: var(--holiday-cream) !important;
  border-color: var(--holiday-gold) !important;
  background: var(--holiday-maroon) !important;
}

/* Follow row, disclose, page heroes */
body.holiday .gr-follow { border-top: 1px solid rgba(201, 164, 92, 0.45); }
body.holiday .page-hero,
body.holiday .article-hero,
body.holiday .shop-hero,
body.holiday .dc-hero { background: var(--holiday-cream) !important; border-bottom-color: rgba(201, 164, 92, 0.45); }
body.holiday .gl-disclose { background: var(--holiday-cream); }

/* Holiday Entertaining feature */
body.holiday .he-feature {
  background: var(--holiday-cream);
  border-top: 1px solid rgba(201, 164, 92, 0.45);
  border-bottom: 1px solid rgba(201, 164, 92, 0.45);
}
body.holiday .he-tile {
  border-color: var(--holiday-gold);
  background: #fff;
  color: var(--ink);
}
body.holiday .he-tile:hover { border-color: var(--holiday-maroon); }
body.holiday .he-tile .gl-link { border-bottom-color: var(--holiday-gold); }

/* IG link-in-bio */
body.holiday.ig-page { background: var(--holiday-cream); }
body.holiday .ig-foot { border-top-color: rgba(201, 164, 92, 0.45); }

/* Focus, stickers */
body.holiday :focus-visible { outline-color: var(--holiday-maroon); }
body.holiday .sticker.accent,
body.holiday .sticker.red {
  border-color: var(--holiday-maroon) !important;
  color: var(--holiday-maroon) !important;
  background: #f7f2ea !important;
}
body.holiday .sticker.gold {
  border-color: var(--holiday-gold) !important;
  color: var(--holiday-maroon) !important;
}
