.christmas-hero {
  background: linear-gradient(90deg, rgba(3,25,17,.65), rgba(3,25,17,.12)), url('/images/christmas-evergreen-gold-v4.png') center/cover !important;
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.christmas-women-section, .christmas-final {
  background: linear-gradient(135deg, #092c20, #154633) !important;
}

.christmas-book-card { background: #123e2c !important; color: #fff5d9; }
.christmas-hero::before, .christmas-hero::after { display: none !important; }
.book-cover-crop img { width: 100% !important; height: 100% !important; object-fit: fill; transform: none !important; }
.book-cover-crop { background: #65191f; border: 2px solid #dfc77e; }
.christmas-hero h1 { color: #f6dfa0 !important; text-shadow: 0 3px 18px #00190f; }
.christmas-hero .hero-copy, .christmas-subtitle { color: #fff9e9 !important; }
.christmas-final { background: linear-gradient(#092c20bb, #092c20dd), url('/images/christmas-evergreen-gold-v4.png') center/cover !important; }

.christmas-hero > * {
  position: relative;
  z-index: 2;
}

.christmas-hero::before {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 150px;
  z-index: 0;
  opacity: .3;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='150' viewBox='0 0 240 150'%3E%3Cg fill='%230d4c35'%3E%3Cpath d='M35 145h18v-28h-18z'/%3E%3Cpath d='M44 5 5 70h22L8 106h72L61 70h22z'/%3E%3Cpath d='M152 145h18v-31h-18z'/%3E%3Cpath d='M161 0 118 68h24l-26 42h90l-27-42h25z'/%3E%3C/g%3E%3Cg fill='%23d7b865'%3E%3Ccircle cx='28' cy='83' r='3'/%3E%3Ccircle cx='60' cy='61' r='3'/%3E%3Ccircle cx='45' cy='102' r='3'/%3E%3Ccircle cx='142' cy='82' r='3'/%3E%3Ccircle cx='180' cy='59' r='3'/%3E%3Ccircle cx='165' cy='103' r='3'/%3E%3C/g%3E%3Cg fill='%23e6e8e8'%3E%3Ccircle cx='43' cy='48' r='2.5'/%3E%3Ccircle cx='67' cy='90' r='2.5'/%3E%3Ccircle cx='159' cy='43' r='2.5'/%3E%3Ccircle cx='190' cy='88' r='2.5'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: repeat-x;
  background-position: center bottom;
  background-size: 240px 150px;
}

.christmas-hero::after {
  content: "";
  position: absolute;
  left: -2%;
  right: -2%;
  top: 18px;
  height: 58px;
  z-index: 1;
  background:
    radial-gradient(circle at 5% 33%, #f7df88 0 4px, transparent 5px),
    radial-gradient(circle at 15% 48%, #d9dfe3 0 4px, transparent 5px),
    radial-gradient(circle at 25% 35%, #f7df88 0 4px, transparent 5px),
    radial-gradient(circle at 35% 51%, #d9dfe3 0 4px, transparent 5px),
    radial-gradient(circle at 45% 37%, #f7df88 0 4px, transparent 5px),
    radial-gradient(circle at 55% 52%, #d9dfe3 0 4px, transparent 5px),
    radial-gradient(circle at 65% 36%, #f7df88 0 4px, transparent 5px),
    radial-gradient(circle at 75% 50%, #d9dfe3 0 4px, transparent 5px),
    radial-gradient(circle at 85% 35%, #f7df88 0 4px, transparent 5px),
    radial-gradient(circle at 95% 49%, #d9dfe3 0 4px, transparent 5px);
  filter: drop-shadow(0 0 7px rgba(255, 224, 129, .75));
  pointer-events: none;
}

.christmas-reading-callout {
  margin: 18px 0 22px;
  padding: 14px 17px;
  max-width: 660px;
  color: #fff8e8;
  font-size: clamp(1rem, 2vw, 1.15rem);
  font-weight: 700;
  line-height: 1.55;
  border: 1px solid rgba(229, 206, 145, .72);
  border-left: 5px solid #d9bd6e;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(14, 75, 52, .9), rgba(24, 104, 72, .72));
  box-shadow: 0 12px 32px rgba(0, 0, 0, .2), inset 0 0 20px rgba(255, 255, 255, .05);
}

.christmas-intro,
.christmas-details {
  position: relative;
}

.christmas-intro::before,
.christmas-details::after {
  content: "✦  ✧  ✦";
  position: absolute;
  color: #b69545;
  letter-spacing: .5rem;
  font-size: 1.15rem;
}

.christmas-intro::before { right: 1rem; top: 1rem; }
.christmas-details::after { left: 1rem; bottom: 1rem; }

.christmas-women-grid article,
.christmas-book-card {
  border-image: linear-gradient(135deg, #d7b65e, #eff1f2, #b78b34) 1;
  box-shadow: 0 16px 38px rgba(40, 17, 20, .13), inset 0 0 0 1px rgba(255,255,255,.34);
}

@media (max-width: 720px) {
  .christmas-hero::after { top: 8px; opacity: .75; }
  .christmas-hero::before { height: 105px; background-size: 168px 105px; }
  .christmas-reading-callout { font-size: .98rem; }
}
