/**
 * DISK Christmas season — elegant temporary accent layer, no theme replacement.
 * The public menu, content, page structure and core blue DISK branding persist.
 * Accessible, responsive, reduced-motion friendly and printer safe.
 */
.disk-christmas-only { display: none !important; }
body.disk-christmas .disk-christmas-only { display: block !important; }
body.disk-christmas .disk-standard-topbar,
body.disk-christmas .disk-original-home-hero { display: none !important; }

/* Page-wide Advent/Christmas accents, never obscure the underlying content. */
body.disk-christmas {
  --disk-christmas-evergreen: #123d35;
  --disk-christmas-dark: #082b30;
  --disk-christmas-gold: #ecd5a2;
  --disk-christmas-red: #8d3140;
}
body.disk-christmas .disk-christmas-topbar {
  background: #0b3030;
  color: #fff8e9;
  border-bottom: 2px solid #c8a467;
}
.disk-christmas-topbar-inner {
  margin: 0 auto;
  max-width: 90rem;
  padding: 8px 22px;
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  text-align: center;
  font: 800 11px/1.4 Arial, Helvetica, sans-serif;
  letter-spacing: .13em;
}
.disk-christmas-topbar-inner > span:first-child,
.disk-christmas-topbar-inner > span:last-child {
  color: #f4dcaa;
  font-size: 16px;
}
.disk-christmas-topbar-message {
  color: #e9d7bd;
  font-weight: 600;
  letter-spacing: .04em;
}
body.disk-christmas #disk-site-shell > header {
  border-bottom: 2px solid #bf9a61;
  box-shadow: 0 5px 20px rgba(2, 36, 33, .075);
}
body.disk-christmas #disk-site-shell > header .disk-nav-trigger:hover,
body.disk-christmas #disk-site-shell > header .disk-nav-trigger[aria-expanded="true"] {
  background: #f6f0e5;
  color: #225646;
}
body.disk-christmas #disk-site-shell > header .disk-header-apply {
  background: #1a594b;
  color: #fff;
}
body.disk-christmas #disk-site-shell > header .disk-header-apply:hover {
  background: #104238;
}
body.disk-christmas #main-content > .disk-christmas-home-hero {
  display: block !important;
}
.disk-christmas-home-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 19%, rgba(189, 153, 88, .16), transparent 33%),
    radial-gradient(circle at 11% 90%, rgba(136, 58, 64, .2), transparent 36%),
    linear-gradient(125deg, #071f2b 1%, #0e3d39 51%, #1e4d40 100%);
  color: #fffaf2;
}
.disk-christmas-home-hero::before,
.disk-christmas-home-hero::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 480px;
  height: 480px;
  border: 1px solid rgba(234, 206, 150, .12);
  border-radius: 50%;
  pointer-events: none;
}
.disk-christmas-home-hero::before { left: -300px; top: -320px; }
.disk-christmas-home-hero::after { right: -310px; bottom: -360px; }
.disk-christmas-hero-stars {
  position: absolute;
  inset: 0;
  opacity: .56;
  pointer-events: none;
  background-image:
    radial-gradient(circle at 2% 24%, rgba(255,236,189,.48) 0 1px, transparent 2px),
    radial-gradient(circle at 70% 50%, rgba(255,236,189,.32) 0 1px, transparent 2px),
    radial-gradient(circle at 92% 15%, rgba(255,236,189,.26) 0 2px, transparent 3px);
  background-size: 68px 78px, 101px 107px, 173px 139px;
}
.disk-christmas-hero-inner {
  max-width: 90rem;
  margin-inline: auto;
  padding: clamp(4.4rem, 7vw, 7.2rem) clamp(1.25rem, 4vw, 4rem) 3.25rem;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  align-items: center;
  gap: clamp(1.5rem, 4vw, 5rem);
}
.disk-christmas-copy { min-width: 0; position: relative; z-index: 2; max-width: 730px; }
.disk-christmas-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: #edce8d;
  font: 800 11px/1.6 Arial, Helvetica, sans-serif;
  letter-spacing: .15em;
}
.disk-christmas-kicker-star { font-size: 25px; line-height: 1; }
.disk-christmas-copy h1 {
  margin: 26px 0 19px;
  max-width: 750px;
  color: #fffdf9;
  font: 700 clamp(3rem, 5.5vw, 6rem)/1.02 Georgia, 'Times New Roman', serif;
  letter-spacing: -.046em;
  text-wrap: balance;
}
.disk-christmas-copy h1 em {
  display: inline-block;
  color: #eacb92;
  font-weight: 400;
  font-style: italic;
}
.disk-christmas-rule {
  display: flex;
  align-items: center;
  max-width: 300px;
  color: #e9c784;
  gap: 12px;
  margin: 18px 0 24px;
  font-size: 18px;
}
.disk-christmas-rule::before,
.disk-christmas-rule::after {
  content: '';
  height: 1px;
  background: rgba(239, 209, 152, .42);
  flex: 1;
}
.disk-christmas-description {
  max-width: 610px;
  margin: 0;
  color: #e5efe9;
  font: 400 clamp(1rem, 1.4vw, 1.2rem)/1.78 Arial, Helvetica, sans-serif;
}
.disk-christmas-cta-row { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 31px; }
.disk-christmas-primary,
.disk-christmas-secondary {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  gap: 18px;
  border-radius: 999px;
  padding: 12px 23px;
  text-decoration: none;
  font: 800 13px/1.35 Arial, Helvetica, sans-serif;
  transition: transform .2s, background-color .2s, border-color .2s;
}
.disk-christmas-primary { background: #e5c78f; color: #102f2e; }
.disk-christmas-primary:hover { background: #f3dba9; color: #102f2e; transform: translateY(-2px); }
.disk-christmas-secondary { color: #fffdf5; background: transparent; border: 1px solid rgba(244,227,196,.52); }
.disk-christmas-secondary:hover { color: #fffdf5; background: rgba(255,255,255,.09); border-color: #f4dfb4; transform: translateY(-2px); }
.disk-christmas-primary:focus-visible,
.disk-christmas-secondary:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.disk-christmas-motto {
  margin: 38px 0 0;
  font: 700 11px/1.5 Arial, Helvetica, sans-serif;
  letter-spacing: .17em;
  color: #e8cf9f;
}
.disk-christmas-motto > span { font-size: 18px; margin-right: 9px; vertical-align: -1px; }
.disk-christmas-art { position: relative; display: grid; place-items: center; min-width: 0; }
.disk-christmas-art-halo {
  position: absolute;
  z-index: -1;
  aspect-ratio: 1;
  width: 91%;
  border-radius: 50%;
  filter: blur(12px);
  background: radial-gradient(circle, rgba(235,199,122,.24) 0%, rgba(218,172,105,.09) 46%, transparent 72%);
}
.disk-christmas-nativity {
  display: block;
  width: min(100%, 610px);
  max-height: 650px;
  height: auto;
  filter: drop-shadow(0 30px 27px rgba(0, 18, 23, .26));
}
.disk-christmas-art-note {
  position: absolute;
  display: inline-block;
  padding: 12px 15px;
  border: 1px solid rgba(238,204,142,.36);
  color: #fff4d7;
  background: rgba(12,42,43,.76);
  backdrop-filter: blur(10px);
  border-radius: 5px;
  box-shadow: 0 13px 35px rgba(0,16,20,.21);
  font: 800 12px/1.1 Arial, Helvetica, sans-serif;
  letter-spacing: .17em;
  white-space: nowrap;
}
.disk-christmas-note-top { top: 14%; right: 0; transform: rotate(6deg); }
.disk-christmas-note-top span { color: #e4bf7e; font-size: 18px; margin-left: 4px; }
.disk-christmas-note-bottom { bottom: 12%; left: -1%; transform: rotate(-5deg); background: #f4e5c6; color: #214638; }
.disk-christmas-features {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 16px;
  max-width: 90rem;
  padding: 0 clamp(1.25rem,4vw,4rem) 38px;
  margin: 0 auto;
}
.disk-christmas-features > div {
  display: flex;
  align-items: center;
  gap: 10px;
  border-top: 1px solid rgba(245,218,166,.27);
  padding-top: 17px;
  color: #f2f2e9;
  font: 700 14px/1.5 Arial, Helvetica, sans-serif;
}
.disk-christmas-features > div > span:first-child {
  color: #e9ca89;
  font: 400 24px/1 Georgia, serif;
}

body.disk-christmas .disk-christmas-subpage-banner {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px 16px;
  padding: 11px 18px;
  background: #f7f2e8;
  border-bottom: 1px solid #e1d4b8;
  color: #254238;
  text-align: center;
  font: 500 13px/1.5 Arial, Helvetica, sans-serif;
}
.disk-christmas-subpage-banner > span:first-child { color: #a47c40; font-size: 21px; }
.disk-christmas-subpage-banner a { font-weight: 800; color: #206251; text-decoration: underline; text-underline-offset: 3px; }
body.disk-christmas #main-content > section.hero-pattern,
body.disk-christmas .hero-pattern.bg-\[\#071f35\] {
  background-color: #0d3937 !important;
  background-image:
    radial-gradient(circle at 86% 14%, rgba(235,199,134,.19), transparent 29%),
    radial-gradient(circle at 5% 92%, rgba(113,42,57,.18), transparent 31%);
}
body.disk-christmas #main-content > section.hero-pattern::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, #b78c53 0%, #e7cf9b 30%, #a14553 60%, #b78c53 100%);
  pointer-events: none;
}
body.disk-christmas .disk-person-card { border-color: #e2daca; }
body.disk-christmas footer { background: #092d2d !important; }
body.disk-christmas .disk-christmas-footer-banner {
  display: flex !important;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
  background: linear-gradient(95deg, #113f39, #234f3c 43%, #703445 100%);
  border-top: 1px solid rgba(228,198,135,.38);
  border-bottom: 1px solid rgba(228,198,135,.38);
  color: #fff1d6;
  text-align: center;
  font: 500 14px/1.5 Arial, Helvetica, sans-serif;
  padding: 15px 18px;
}
.disk-christmas-footer-banner strong { font-weight: 800; }
.disk-christmas-footer-banner > span:first-child,
.disk-christmas-footer-banner > span:last-child { color: #f2d6a2; font-size: 21px; }

@media (max-width: 1020px) {
  .disk-christmas-hero-inner { gap: 16px; }
  .disk-christmas-note-bottom { left: 2%; }
}
@media (max-width: 800px) {
  .disk-christmas-hero-inner { grid-template-columns: 1fr; padding: 3.9rem 1.6rem 2rem; gap: 10px; }
  .disk-christmas-copy h1 { font-size: clamp(3.15rem,8.4vw,5rem); }
  .disk-christmas-art { max-width: 550px; width: 100%; justify-self: center; }
  .disk-christmas-nativity { width: min(85%,480px); max-height: 540px; }
  .disk-christmas-note-top { right: 8%; }
  .disk-christmas-note-bottom { left: 8%; }
  .disk-christmas-features { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px 20px; padding: 0 1.6rem 30px; }
}
@media (max-width: 480px) {
  .disk-christmas-topbar-inner { padding: 9px 9px; flex-wrap: wrap; gap: 2px 9px; font-size: 9px; letter-spacing: .08em; }
  .disk-christmas-topbar-message { font-size: 9px; }
  .disk-christmas-topbar-inner > span:first-child,
  .disk-christmas-topbar-inner > span:last-child { display: none; }
  .disk-christmas-hero-inner { padding: 3.35rem 1.15rem 1.7rem; }
  .disk-christmas-kicker { font-size: 10px; letter-spacing: .075em; gap: 7px; }
  .disk-christmas-kicker-star { font-size: 20px; }
  .disk-christmas-copy h1 { font-size: clamp(2.65rem,10vw,3.55rem); margin: 19px 0 16px; }
  .disk-christmas-description { font-size: 15px; line-height: 1.66; }
  .disk-christmas-rule { margin: 16px 0 20px; }
  .disk-christmas-cta-row { margin-top: 24px; }
  .disk-christmas-primary, .disk-christmas-secondary { min-height: 46px; padding: 11px 17px; font-size: 12px; }
  .disk-christmas-motto { margin-top: 27px; letter-spacing: .1em; font-size: 10px; }
  .disk-christmas-art { margin-top: 10px; }
  .disk-christmas-nativity { width: 96%; }
  .disk-christmas-art-note { font-size: 9px; padding: 8px 9px; letter-spacing: .08em; }
  .disk-christmas-note-top { top: 13%; right: 0; }
  .disk-christmas-note-bottom { left: 0; bottom: 10%; }
  .disk-christmas-features { padding: 0 1.15rem 26px; gap: 8px 12px; }
  .disk-christmas-features > div { font-size: 12px; gap: 7px; }
  .disk-christmas-features > div > span:first-child { font-size: 20px; }
  .disk-christmas-subpage-banner { font-size: 12px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .disk-christmas-primary, .disk-christmas-secondary { transition: none; }
}
@media print {
  body.disk-christmas .disk-christmas-home-hero,
  body.disk-christmas .disk-christmas-topbar,
  body.disk-christmas .disk-christmas-subpage-banner,
  body.disk-christmas .disk-christmas-footer-banner { display: none !important; }
}
