/* Final visual pass: brighter, more saturated, clearer premium glass across the site. */
body::before {
  background:
    linear-gradient(90deg, rgba(2, 8, 18, .42), rgba(4, 16, 32, .18) 52%, rgba(2, 9, 20, .30)),
    linear-gradient(180deg, rgba(4, 12, 28, .14), rgba(4, 13, 29, .36) 58%, rgba(3, 10, 24, .48)) !important;
  backdrop-filter: none !important;
}

.site-header,
.footer,
.site-footer,
.panel,
.feature-card,
.bottom-link-card,
.collection-card,
.guide-card,
.country-home-grid a,
.country-home-grid > span,
.country-index-card,
.featured-country-card,
.directory-panel,
.world-holiday-grid article,
.guide-link-grid a,
.guide-link-grid > span,
.seo-card article,
.countries-faq details,
.collection-panel,
.collection-stat-card,
.countdown-topic-card,
.related-holiday-card,
.holiday-guide-grid a,
.collection-mini-grid a,
.detail-panel,
.days-faq details,
.quick-facts-grid article,
.timeline-grid article,
.tradition-window,
.country-chip-grid a,
.featured-guide-card,
.subguide-grid a,
.guide-article-card,
.guide-side-card,
.latest-guides-panel,
.guides-faq details,
.us-panel,
.country-directory-grid a,
.country-directory-grid > span {
  background-color: rgba(9, 18, 36, .56) !important;
  border-color: rgba(255,255,255,.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 20px 58px rgba(0,0,0,.20) !important;
}

.countdown-card,
.home-next-card.countdown-card,
.holiday-countdown-card,
.featured-countdown-card,
.guide-countdown-card,
.article-countdown {
  background:
    linear-gradient(145deg, rgba(255,255,255,.17), rgba(255,255,255,.060) 58%, rgba(8,16,32,.32)),
    rgba(10, 20, 38, .48) !important;
  border-color: rgba(255,255,255,.23) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.21),
    inset 0 -1px 0 rgba(255,255,255,.08),
    0 26px 72px rgba(0,0,0,.22),
    0 0 48px rgba(115,205,235,.10) !important;
}

.holiday-card::before,
.popular-holiday-card::before,
.directory-card::before,
.featured-guide-card::before,
.subguide-grid a::before,
.collection-detail-hero::before,
.collection-card::before,
.guide-card .thumb,
.article-list a span,
.article-list .disabled span,
.mini-card span,
.related-guide-links img,
.guide-intro img,
.about-team-card img,
.related-holiday-card,
.featured-countdown-media,
.us-holiday-card::before,
.tradition-window::before,
.related-articles img,
.guide-row img,
.country-badge span,
.latest-guide-card img {
  filter: saturate(1.12) brightness(1.20) contrast(1.03) !important;
}

.holiday-card::after,
.popular-holiday-card::after,
.directory-card::after,
.collection-card::after,
.related-holiday-card::before,
.us-holiday-card::after {
  background:
    linear-gradient(90deg, rgba(2,7,14,.32) 0%, rgba(2,7,14,.09) 50%, rgba(2,7,14,.26) 100%),
    linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.30) 100%) !important;
  backdrop-filter: none !important;
}

.popular-hero::after,
.collection-detail-hero::after,
.guides-hero::after,
.christmas-guide-hub::after,
.holiday-detail-hero::after,
.us-hero::after {
  background:
    linear-gradient(90deg, rgba(2,7,14,.36) 0%, rgba(2,7,14,.14) 48%, rgba(2,7,14,.06) 100%),
    linear-gradient(180deg, rgba(0,0,0,.04) 0%, rgba(0,0,0,.24) 100%) !important;
}

.home-portal,
.holiday-list-main,
.countries-main,
.guides-main,
.collection-shell,
.christmas-guide-main,
.us-country-main,
.article-main,
.collection-detail-page main,
.christmas-days-page main {
  filter: saturate(.96) brightness(1.045);
}

.card-copy small,
.card-copy em,
.collection-card p,
.guide-card p,
.guide-card em,
.section-title p,
.hero-intro,
.detail-panel p,
.faq-list p,
.days-faq p,
.footer a,
.footer p,
.footer-link,
.site-footer a,
.site-footer p,
.guide-row em,
.guide-side-card p,
.quick-guide-facts dt {
  color: rgba(238,245,252,.86) !important;
}

.home-section,
.guides-section,
.countries-section,
.collection-section,
.detail-section {
  filter: saturate(.94);
}

/* Font/rendering repair: avoid emoji/symbol fallback corruption and keep flip digits single-layered. */
.country-badge > span,
.country-code,
.flag,
.flag-icon,
.orbit-icon,
.mark {
  font-family: Inter, -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif !important;
  font-variant-ligatures: none;
}

.country-badge > span {
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
}

.orbit-icon {
  position: relative;
  width: 42px !important;
  height: 42px !important;
  color: transparent !important;
  font-size: 0 !important;
  overflow: hidden;
}

.orbit-icon::before {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px solid rgba(255,255,255,.36);
  border-radius: 999px;
  background:
    radial-gradient(circle at 38% 32%, rgba(255,255,255,.88), rgba(255,255,255,.20) 42%, transparent 62%),
    rgba(255,255,255,.08);
}

.featured-time-grid .flip-half,
.featured-time-grid .flip-bottom-static,
.featured-time-grid .flip-top-panel,
.featured-time-grid .flip-bottom-panel,
.countdown-card .flip-bottom-static,
.countdown-card .flip-top-panel,
.countdown-card .flip-bottom-panel {
  display: none !important;
}

.featured-time-grid .flip-top-static,
.countdown-card .flip-top-static {
  display: inline-flex !important;
  position: static !important;
  align-items: center !important;
  justify-content: center !important;
  height: auto !important;
  overflow: visible !important;
  transform: none !important;
}

.featured-time-grid .flip-digit,
.countdown-card .flip-digit {
  display: inline-flex !important;
  position: static !important;
  width: .58em !important;
  min-width: .58em !important;
  height: 1em !important;
  overflow: visible !important;
  perspective: none !important;
  transform-style: flat !important;
}

.featured-time-grid .flip-value,
.countdown-card .flip-value {
  display: inline-block !important;
  font: inherit !important;
  line-height: inherit !important;
}

/* Collection hero countdown repair: keep split digits inside their glass tiles. */
.featured-countdown-card {
  width: min(100%, 520px) !important;
}

.featured-countdown-card .featured-time-grid {
  grid-template-columns: repeat(4, minmax(86px, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
}

.featured-countdown-card .featured-time-grid > span {
  min-width: 0 !important;
  min-height: 132px !important;
  padding: 18px 9px !important;
  overflow: visible !important;
}

.featured-countdown-card .featured-time-grid strong[data-unit] {
  width: 100% !important;
  min-height: 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .01em !important;
  overflow: visible !important;
  font-family: Inter, "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif !important;
  font-size: clamp(36px, 2.8vw, 48px) !important;
  font-weight: 820 !important;
  line-height: .9 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  text-shadow: 0 10px 26px rgba(0,0,0,.28), 0 0 18px rgba(255,255,255,.08) !important;
}

.featured-countdown-card .featured-time-grid .flip-digit {
  width: .64em !important;
  min-width: .64em !important;
  max-width: .64em !important;
  height: .94em !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.featured-countdown-card .featured-time-grid .flip-top-static {
  width: 100% !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.featured-countdown-card .featured-time-grid .flip-value {
  display: inline-block !important;
  width: auto !important;
  min-width: .56em !important;
  text-align: center !important;
}

/* Christmas detail hero repair: no outer slab, no odd flip-color panels. */
.christmas-days-page .christmas-hero-card.countdown-card {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.christmas-days-page .christmas-hero-card.countdown-card::before,
.christmas-days-page .christmas-hero-card.countdown-card::after {
  display: none !important;
  content: none !important;
}

.christmas-days-page .premium-time-grid .flip-digit,
.christmas-days-page .premium-time-grid .flip-digit.is-flipping {
  animation: none !important;
  transform: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  overflow: hidden !important;
}

.christmas-days-page .premium-time-grid .flip-half,
.christmas-days-page .premium-time-grid .flip-bottom-static,
.christmas-days-page .premium-time-grid .flip-top-panel,
.christmas-days-page .premium-time-grid .flip-bottom-panel {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

.christmas-days-page .premium-time-grid .flip-top-static {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
  width: 100% !important;
  height: auto !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Home visual rhythm: break rigid grids while keeping the premium square-card language. */
body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid,
body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .collection-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-flow: dense !important;
  gap: clamp(16px, 1.7vw, 24px) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card {
  min-height: clamp(190px, 17vw, 250px) !important;
  border-radius: 20px !important;
  border-color: rgba(255,255,255,.16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 20px 54px rgba(0,0,0,.22) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child {
  grid-column: span 2 !important;
  min-height: clamp(250px, 23vw, 330px) !important;
  border-radius: 26px !important;
  border-color: rgba(246,200,102,.28) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 28px 78px rgba(0,0,0,.34), 0 0 44px rgba(226,184,117,.10) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child::after {
  background:
    linear-gradient(135deg, rgba(2,7,14,.28) 0%, rgba(94,38,26,.32) 54%, rgba(4,10,18,.66) 100%),
    linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.62)) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child .card-copy strong {
  font-size: clamp(28px, 3vw, 42px) !important;
  line-height: 1 !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .collection-card {
  min-height: clamp(180px, 15vw, 230px) !important;
  border-radius: 22px !important;
  border-color: rgba(255,255,255,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 20px 56px rgba(0,0,0,.22) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .collection-card:first-child {
  grid-column: span 2 !important;
  min-height: clamp(230px, 21vw, 310px) !important;
  border-radius: 28px !important;
  border-color: rgba(246,200,102,.24) !important;
  background:
    linear-gradient(135deg, rgba(246,200,102,.14), rgba(255,255,255,.05) 34%, rgba(8,16,32,.46)),
    rgba(8,16,32,.58) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 28px 76px rgba(0,0,0,.30), 0 0 46px rgba(226,184,117,.10) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .collection-card:first-child strong {
  font-size: clamp(26px, 2.45vw, 38px) !important;
  max-width: 12ch;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-section {
  padding-top: 4px !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px 26px !important;
  align-items: center !important;
  padding: 10px 0 2px !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a {
  position: relative !important;
  min-height: 34px !important;
  padding: 0 0 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(235,243,255,.74) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-weight: 760 !important;
  transition: color .18s ease, transform .18s ease !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 1px !important;
  transform: scaleX(.18) !important;
  transform-origin: left !important;
  background: linear-gradient(90deg, rgba(246,200,102,.85), rgba(255,255,255,.18)) !important;
  opacity: 0 !important;
  transition: opacity .18s ease, transform .18s ease !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a span {
  color: rgba(246,200,102,.72) !important;
  font-size: 14px !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a:hover {
  color: #f6c866 !important;
  transform: translateY(-1px) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a:hover::after {
  opacity: 1 !important;
  transform: scaleX(1) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge-list {
  gap: 18px 28px !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge {
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  border-radius: 18px !important;
  padding: 10px 12px !important;
  transition: background .18s ease, box-shadow .18s ease, transform .18s ease, border-color .18s ease !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.07) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 18px 46px rgba(0,0,0,.18) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .article-list {
  gap: clamp(10px, 1.2vw, 18px) !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .article-list a {
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 18px !important;
  padding: 12px !important;
  transition: background .18s ease, box-shadow .18s ease, transform .18s ease, border-color .18s ease !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .article-list a:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(255,255,255,.11) !important;
  background: rgba(255,255,255,.065) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 18px 44px rgba(0,0,0,.18) !important;
}

@media (max-width: 980px) {
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid,
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .collection-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid,
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .collection-grid {
    grid-template-columns: 1fr !important;
  }

  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child,
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .collection-card:first-child {
    grid-column: span 1 !important;
  }
}

/* Footer final safeguards */
.site-footer .newsletter-form label > span{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.site-footer .footer-primary-link{
  background:rgba(255,255,255,.94) !important;
  color:#071326 !important;
  border-color:rgba(255,255,255,.70) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 14px 34px rgba(0,0,0,.22) !important;
}

.site-footer .footer-primary-link:hover{
  color:#071326 !important;
  transform:translateY(-1px) !important;
}

.site-footer .footer-secondary-link{
  color:#fff !important;
  background:rgba(255,255,255,.075) !important;
  border-color:rgba(255,255,255,.16) !important;
}

.site-footer .newsletter-form button{
  display:grid !important;
  place-items:center !important;
  background:#fff !important;
  color:#071326 !important;
  border:0 !important;
  line-height:1 !important;
}

/* Ethereal Time Particles
   Solid black base with platinum dust,
   and a barely-there moonlit halo. Pure CSS, no markup required. */
html,
body {
  background-color: #09090b !important;
  background-image: none !important;
}

body {
  min-height: 100vh;
  position: relative !important;
  isolation: isolate !important;
}

html::before,
html::after,
body::before,
body::after {
  content: "" !important;
  position: fixed !important;
  pointer-events: none !important;
  will-change: transform, opacity !important;
}

body > * {
  position: relative;
  z-index: 1;
}

html::before {
  z-index: 0 !important;
  inset: -18vh auto auto -14vw !important;
  width: 70vw !important;
  height: 58vh !important;
  border-radius: 999px !important;
  background:
    radial-gradient(ellipse at 34% 36%, rgba(255,255,255,.050), rgba(231,229,228,.024) 34%, transparent 70%) !important;
  filter: blur(46px) !important;
  opacity: .92 !important;
  mix-blend-mode: screen !important;
  animation: moon-halo-breathe 26s ease-in-out infinite alternate !important;
}

html::after,
body::before {
  z-index: 0 !important;
  inset: -28vh 0 auto 0 !important;
  width: 100vw !important;
  height: 150vh !important;
  border-radius: 0 !important;
  pointer-events: none !important;
  mix-blend-mode: screen !important;
  will-change: transform, opacity !important;
}

html::after {
  background-image:
    radial-gradient(circle, rgba(255,255,255,.54) 0 1px, transparent 1.7px),
    radial-gradient(circle, rgba(250,250,249,.36) 0 1px, transparent 1.5px),
    radial-gradient(circle, rgba(231,229,228,.42) 0 1.4px, transparent 2.3px),
    radial-gradient(circle, rgba(255,255,255,.28) 0 .8px, transparent 1.6px),
    radial-gradient(circle, rgba(250,250,249,.50) 0 1.2px, transparent 2px),
    radial-gradient(circle, rgba(255,255,255,.24) 0 .9px, transparent 1.8px),
    radial-gradient(circle, rgba(231,229,228,.38) 0 1px, transparent 1.8px),
    radial-gradient(circle, rgba(255,255,255,.46) 0 1.3px, transparent 2.2px),
    radial-gradient(circle, rgba(250,250,249,.30) 0 .8px, transparent 1.6px),
    radial-gradient(circle, rgba(255,255,255,.40) 0 1px, transparent 1.8px),
    radial-gradient(circle, rgba(231,229,228,.34) 0 1.2px, transparent 2px),
    radial-gradient(circle, rgba(255,255,255,.26) 0 .9px, transparent 1.7px),
    radial-gradient(circle, rgba(250,250,249,.48) 0 1.4px, transparent 2.4px),
    radial-gradient(circle, rgba(255,255,255,.30) 0 1px, transparent 1.8px),
    radial-gradient(circle, rgba(231,229,228,.42) 0 1.1px, transparent 2px),
    radial-gradient(circle, rgba(255,255,255,.34) 0 .8px, transparent 1.5px),
    radial-gradient(circle, rgba(250,250,249,.46) 0 1.2px, transparent 2px),
    radial-gradient(circle, rgba(255,255,255,.22) 0 .8px, transparent 1.6px);
  background-repeat: no-repeat;
  background-size: 100vw 150vh;
  background-position:
    6vw 8vh, 14vw 34vh, 22vw 16vh, 31vw 48vh, 38vw 10vh, 47vw 30vh,
    55vw 18vh, 64vw 42vh, 72vw 9vh, 80vw 28vh, 91vw 22vh, 10vw 74vh,
    26vw 96vh, 42vw 82vh, 58vw 106vh, 73vw 88vh, 86vw 118vh, 94vw 70vh;
  filter: blur(.38px) drop-shadow(0 0 6px rgba(255,255,255,.13)) !important;
  opacity: .44 !important;
  animation: time-particles-fall-a 36s linear infinite, particle-breathe-a 12s ease-in-out infinite alternate !important;
}

body::before {
  background-image:
    radial-gradient(circle, rgba(255,255,255,.32) 0 .8px, transparent 1.5px),
    radial-gradient(circle, rgba(250,250,249,.48) 0 1.3px, transparent 2.2px),
    radial-gradient(circle, rgba(231,229,228,.26) 0 .9px, transparent 1.7px),
    radial-gradient(circle, rgba(255,255,255,.44) 0 1px, transparent 1.8px),
    radial-gradient(circle, rgba(250,250,249,.28) 0 .8px, transparent 1.5px),
    radial-gradient(circle, rgba(255,255,255,.52) 0 1.5px, transparent 2.4px),
    radial-gradient(circle, rgba(231,229,228,.34) 0 1px, transparent 1.9px),
    radial-gradient(circle, rgba(255,255,255,.24) 0 .8px, transparent 1.5px),
    radial-gradient(circle, rgba(250,250,249,.38) 0 1.2px, transparent 2.1px),
    radial-gradient(circle, rgba(255,255,255,.30) 0 .9px, transparent 1.6px),
    radial-gradient(circle, rgba(231,229,228,.46) 0 1.4px, transparent 2.3px),
    radial-gradient(circle, rgba(255,255,255,.28) 0 .8px, transparent 1.5px),
    radial-gradient(circle, rgba(250,250,249,.42) 0 1px, transparent 1.9px),
    radial-gradient(circle, rgba(255,255,255,.34) 0 1.1px, transparent 2px),
    radial-gradient(circle, rgba(231,229,228,.24) 0 .8px, transparent 1.6px),
    radial-gradient(circle, rgba(255,255,255,.40) 0 1.3px, transparent 2.2px),
    radial-gradient(circle, rgba(250,250,249,.30) 0 .9px, transparent 1.7px),
    radial-gradient(circle, rgba(255,255,255,.46) 0 1.1px, transparent 2px),
    radial-gradient(circle, rgba(231,229,228,.26) 0 .8px, transparent 1.5px),
    radial-gradient(circle, rgba(255,255,255,.36) 0 1px, transparent 1.8px);
  background-repeat: no-repeat;
  background-size: 100vw 150vh;
  background-position:
    3vw 30vh, 12vw 5vh, 19vw 58vh, 28vw 24vh, 36vw 69vh, 44vw 4vh,
    52vw 54vh, 60vw 12vh, 68vw 64vh, 76vw 38vh, 84vw 6vh, 96vw 52vh,
    7vw 112vh, 18vw 88vh, 34vw 120vh, 49vw 92vh, 63vw 126vh, 79vw 102vh,
    89vw 138vh, 97vw 96vh;
  filter: blur(.58px) drop-shadow(0 0 9px rgba(255,255,255,.16)) !important;
  opacity: .42 !important;
  backdrop-filter: none !important;
  animation: time-particles-fall-b 24s linear infinite, particle-breathe-b 9s ease-in-out infinite alternate !important;
}

body::after {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 72% 30%, rgba(255,255,255,.068), rgba(231,229,228,.032) 16%, transparent 38%),
    radial-gradient(circle at 18% 8%, rgba(255,255,255,.035), transparent 34%),
    linear-gradient(180deg, rgba(9,9,11,.10), rgba(9,9,11,.34) 62%, rgba(9,9,11,.70)) !important;
}

@keyframes time-particles-fall-a {
  from { transform: translate3d(-1vw, -18vh, 0); }
  to { transform: translate3d(4vw, 32vh, 0); }
}

@keyframes time-particles-fall-b {
  from { transform: translate3d(3vw, -20vh, 0); }
  to { transform: translate3d(-5vw, 40vh, 0); }
}

@keyframes particle-breathe-a {
  from { opacity: .16; }
  48% { opacity: .48; }
  to { opacity: .24; }
}

@keyframes particle-breathe-b {
  from { opacity: .14; }
  52% { opacity: .58; }
  to { opacity: .22; }
}

@keyframes moon-halo-breathe {
  from {
    transform: translate3d(-2vw, 0, 0) scale(.96);
    opacity: .62;
  }
  to {
    transform: translate3d(3vw, 2vh, 0) scale(1.05);
    opacity: .92;
  }
}

.home-page .hero-copy > p,
.home-page .hero-poetic-line,
.section-title p,
.hero-intro,
.detail-panel p,
.guide-card p,
.collection-card p,
.faq-list p {
  color: rgba(228,228,231,.86) !important;
}

.home-page h1,
.hero h1,
.detail-hero h1,
.collection-hero h1,
.answer-hero h1 {
  color: #fff !important;
}

.home-page .home-next-card .time-unit {
  background:
    linear-gradient(145deg, rgba(255,255,255,.072), rgba(255,255,255,.030) 58%, rgba(0,0,0,.18)),
    rgba(255,255,255,.030) !important;
  border-color: rgba(255,255,255,.10) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 24px 74px rgba(0,0,0,.28),
    0 0 34px rgba(255,255,255,.045) !important;
  backdrop-filter: blur(18px) saturate(126%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(126%) !important;
}

.site-header,
.footer,
.site-footer,
.panel,
.feature-card,
.bottom-link-card,
.collection-card,
.guide-card,
.country-index-card,
.featured-country-card,
.directory-panel,
.world-holiday-grid article,
.guide-link-grid a,
.guide-link-grid > span,
.seo-card article,
.countries-faq details,
.collection-panel,
.collection-stat-card,
.countdown-topic-card,
.related-holiday-card,
.holiday-guide-grid a,
.collection-mini-grid a,
.detail-panel,
.days-faq details,
.quick-facts-grid article,
.timeline-grid article,
.tradition-window,
.country-chip-grid a,
.featured-guide-card,
.subguide-grid a,
.guide-article-card,
.guide-side-card,
.latest-guides-panel,
.guides-faq details,
.us-panel,
.country-directory-grid a,
.country-directory-grid > span,
.home-faq,
.about-library,
.article-list a,
.holiday-orbit-track,
.country-badge,
.faq-list details {
  background: rgba(9, 9, 11, .34) !important;
  border-color: rgba(255,255,255,.10) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 22px 64px rgba(0,0,0,.30) !important;
  backdrop-filter: blur(22px) saturate(118%) !important;
  -webkit-backdrop-filter: blur(22px) saturate(118%) !important;
}

.countdown-card,
.premium-time-grid .time-unit,
.holiday-countdown-card,
.featured-countdown-card,
.guide-countdown-card,
.article-countdown,
.answer-countdown div {
  background:
    linear-gradient(145deg, rgba(255,255,255,.095), rgba(255,255,255,.035) 58%, rgba(0,0,0,.22)),
    rgba(255,255,255,.030) !important;
  border-color: rgba(255,255,255,.11) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 24px 72px rgba(0,0,0,.32),
    0 0 34px rgba(255,255,255,.040) !important;
  backdrop-filter: blur(22px) saturate(124%) !important;
  -webkit-backdrop-filter: blur(22px) saturate(124%) !important;
}

.holiday-card,
.popular-holiday-card,
.directory-card,
.us-holiday-card,
.related-card-grid .holiday-card {
  background-color: rgba(9,9,11,.30) !important;
  border-color: rgba(255,255,255,.11) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.09),
    0 22px 62px rgba(0,0,0,.32) !important;
  backdrop-filter: blur(18px) saturate(118%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(118%) !important;
}

.holiday-card::before,
.popular-holiday-card::before,
.directory-card::before,
.us-holiday-card::before {
  opacity: .72 !important;
}

.holiday-card::after,
.popular-holiday-card::after,
.directory-card::after,
.us-holiday-card::after,
.collection-card::after {
  background:
    linear-gradient(to top, rgba(5,5,6,.88) 0%, rgba(5,5,6,.50) 48%, rgba(5,5,6,.08) 100%) !important;
}

@media (prefers-reduced-motion: reduce) {
  html::after,
  body::before,
  html::before {
    animation: none !important;
  }
}

/* Home category module refinement: lightweight navigation, no carousel frame. */
body.home-page .category-section {
  margin-top: 64px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .category-section h2 {
  margin: 0 0 18px !important;
  color: #fff !important;
  font-size: clamp(28px, 2.7vw, 38px) !important;
  line-height: 1.08 !important;
  font-weight: 760 !important;
  letter-spacing: 0 !important;
}

body.home-page .category-carousel {
  display: block !important;
}

body.home-page .category-arrow {
  display: none !important;
}

body.home-page .category-chip-row {
  width: min(100%, 980px) !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .category-chip-row a {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  height: 38px !important;
  min-height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  padding: 0 15px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.045) !important;
  color: rgba(228,228,231,.78) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter: blur(14px) saturate(112%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(112%) !important;
  font-size: 13px !important;
  font-weight: 680 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-shadow: none !important;
  transition: transform .24s cubic-bezier(.16,1,.3,1), border-color .24s cubic-bezier(.16,1,.3,1), background .24s cubic-bezier(.16,1,.3,1), color .24s cubic-bezier(.16,1,.3,1) !important;
}

body.home-page .category-chip-row a::before,
body.home-page .category-chip-row a::after,
body.home-page .category-chip-row a span {
  display: none !important;
  content: none !important;
}

body.home-page .category-chip-row a strong {
  display: contents !important;
  color: inherit !important;
  font: inherit !important;
}

body.home-page .category-chip-row a:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(255,255,255,.22) !important;
  background: rgba(255,255,255,.075) !important;
  color: #fff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 12px 30px rgba(0,0,0,.18) !important;
}

/* Home popular-card overlay: protect top badges and bottom titles on bright images. */
.home-page .home-popular-grid > .holiday-card::after,
body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child::after,
.home-page .holiday-card::after {
  background:
    linear-gradient(
      to bottom,
      rgba(0,0,0,.46) 0%,
      rgba(0,0,0,.13) 30%,
      rgba(0,0,0,.12) 58%,
      rgba(2,6,23,.88) 100%
    ) !important;
  backdrop-filter: none !important;
}

.home-page .home-popular-grid > .holiday-card:hover::after,
body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child:hover::after,
.home-page .holiday-card:hover::after {
  background:
    linear-gradient(
      to bottom,
      rgba(0,0,0,.36) 0%,
      rgba(0,0,0,.08) 30%,
      rgba(0,0,0,.10) 58%,
      rgba(2,6,23,.82) 100%
    ) !important;
}

/* Premium countdown numerals: softer Apple-style glass, less blocky weight. */
.collection-detail-page .featured-countdown-card {
  width: min(100%, 540px) !important;
  padding: 24px 24px 22px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 18% 10%, rgba(255,255,255,.18), transparent 34%),
    radial-gradient(circle at 80% 78%, rgba(246,200,102,.13), transparent 40%),
    linear-gradient(145deg, rgba(255,255,255,.115), rgba(255,255,255,.045) 58%, rgba(9,9,11,.30)),
    rgba(255,255,255,.035) !important;
  border-color: rgba(255,255,255,.14) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 26px 80px rgba(0,0,0,.34),
    0 0 42px rgba(246,200,102,.045) !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid {
  grid-template-columns: repeat(4, minmax(88px, 1fr)) !important;
  gap: 14px !important;
  margin: 24px 0 20px !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid > span {
  min-height: 118px !important;
  padding: 18px 8px 15px !important;
  border-radius: 17px !important;
  border: 1px solid rgba(255,255,255,.145) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.135), rgba(255,255,255,.052) 48%, rgba(255,255,255,.032)),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.15), transparent 52%),
    rgba(255,255,255,.045) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -1px 0 rgba(255,255,255,.055),
    0 16px 36px rgba(0,0,0,.24) !important;
  backdrop-filter: blur(20px) saturate(126%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(126%) !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid strong[data-unit] {
  min-height: 54px !important;
  gap: .045em !important;
  font-family: "SF Pro Display", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif !important;
  font-size: clamp(34px, 2.45vw, 43px) !important;
  font-weight: 760 !important;
  line-height: .92 !important;
  letter-spacing: .015em !important;
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" 1, "ss01" 1 !important;
  color: rgba(255,255,255,.96) !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.10),
    0 10px 24px rgba(0,0,0,.34) !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit {
  position: relative !important;
  width: .62em !important;
  min-width: .62em !important;
  max-width: .62em !important;
  height: 1em !important;
  display: inline-grid !important;
  place-items: center !important;
  filter: none !important;
  opacity: .98 !important;
  overflow: visible !important;
  transform: none !important;
  animation: none !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit > * {
  display: none !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit::before {
  content: attr(data-value) !important;
  display: block !important;
  width: auto !important;
  min-width: .58em !important;
  text-align: center !important;
  line-height: 1 !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-bottom-static,
.collection-detail-page .featured-countdown-card .featured-time-grid .flip-top-panel,
.collection-detail-page .featured-countdown-card .featured-time-grid .flip-bottom-panel {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-top-static {
  width: 100% !important;
  height: 100% !important;
  display: inline-grid !important;
  place-items: center !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-value {
  min-width: .52em !important;
  text-align: center !important;
  transform: translateY(-.01em) !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: geometricPrecision !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit .flip-bottom-static,
.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit .flip-top-panel,
.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit .flip-bottom-panel {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit .flip-top-static {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
  width: auto !important;
  min-width: .62em !important;
  height: auto !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  transform: none !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit .flip-value {
  display: inline-block !important;
  width: auto !important;
  min-width: auto !important;
  transform: none !important;
  line-height: 1 !important;
  text-align: center !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid small {
  margin-top: 2px !important;
  color: rgba(255,255,255,.70) !important;
  font-size: 10px !important;
  font-weight: 760 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}

/* Home flow pass: category pills, guide covers, countries, and timeline. */
body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: center !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a {
  position: relative !important;
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 0 16px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 999px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.035)),
    rgba(255,255,255,.05) !important;
  color: rgba(228,228,231,.82) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 12px 30px rgba(0,0,0,.16) !important;
  backdrop-filter: blur(16px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(120%) !important;
  transition:
    transform .28s cubic-bezier(.16,1,.3,1),
    color .28s cubic-bezier(.16,1,.3,1),
    border-color .28s cubic-bezier(.16,1,.3,1),
    background .28s cubic-bezier(.16,1,.3,1),
    box-shadow .28s cubic-bezier(.16,1,.3,1) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a::before {
  content: "" !important;
  position: absolute !important;
  inset: -80% -30% !important;
  z-index: 0 !important;
  background: radial-gradient(circle, rgba(245,158,11,.18), rgba(245,158,11,0) 58%) !important;
  opacity: 0 !important;
  transform: scale(.72) !important;
  transition: opacity .32s cubic-bezier(.16,1,.3,1), transform .32s cubic-bezier(.16,1,.3,1) !important;
  pointer-events: none !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a::after {
  display: none !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a span {
  position: relative !important;
  z-index: 1 !important;
  color: rgba(250,204,21,.90) !important;
  font-size: 15px !important;
  line-height: 1 !important;
  text-shadow: 0 0 14px rgba(245,158,11,.30) !important;
  transition: transform .28s cubic-bezier(.16,1,.3,1), color .28s cubic-bezier(.16,1,.3,1) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a {
  z-index: 0 !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(245,158,11,.26) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.045)),
    rgba(245,158,11,.055) !important;
  color: #fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 16px 38px rgba(0,0,0,.22),
    0 0 28px rgba(245,158,11,.10) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a:hover::before {
  opacity: 1 !important;
  transform: scale(1) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .category-chip-row a:hover span {
  color: rgba(255,221,118,.98) !important;
  transform: scale(1.15) !important;
}

.home-page .guide-card .thumb {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  filter: saturate(.96) brightness(1.02) contrast(1.02) !important;
}

.home-page .guide-card .thumb::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.18) 45%, rgba(0,0,0,.34) 100%),
    rgba(0,0,0,.06) !important;
  mix-blend-mode: normal !important;
  pointer-events: none !important;
}

.home-page .guide-card:hover .thumb {
  filter: saturate(1.02) brightness(1.08) contrast(1.03) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge-list {
  gap: 16px !important;
  padding: 4px 0 22px !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge {
  min-height: 66px !important;
  align-items: center !important;
  gap: 13px !important;
  padding: 12px 15px !important;
  border: 1px solid rgba(255,255,255,.11) !important;
  border-radius: 20px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035)),
    rgba(9,9,11,.34) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 18px 44px rgba(0,0,0,.22) !important;
  backdrop-filter: blur(18px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(120%) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge > span {
  flex: 0 0 auto !important;
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 999px !important;
  background:
    radial-gradient(circle at 32% 22%, rgba(255,255,255,.26), rgba(255,255,255,.08) 34%, rgba(255,255,255,.03) 100%),
    rgba(255,255,255,.15) !important;
  color: rgba(255,255,255,.96) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -1px 0 rgba(0,0,0,.28),
    0 0 0 4px rgba(255,255,255,.035) !important;
  filter: none !important;
  transition: transform .28s cubic-bezier(.16,1,.3,1), box-shadow .28s cubic-bezier(.16,1,.3,1), border-color .28s cubic-bezier(.16,1,.3,1) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge strong {
  color: rgba(255,255,255,.86) !important;
  transition: color .28s cubic-bezier(.16,1,.3,1) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge em {
  color: rgba(228,228,231,.58) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(245,158,11,.24) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04)),
    rgba(245,158,11,.035) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 22px 52px rgba(0,0,0,.26),
    0 0 30px rgba(245,158,11,.10) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge:hover > span {
  transform: scale(1.07) !important;
  border-color: rgba(245,158,11,.38) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 -1px 0 rgba(0,0,0,.30),
    0 0 0 5px rgba(245,158,11,.08),
    0 0 26px rgba(245,158,11,.20) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge:hover strong {
  color: #fff !important;
}

.home-page .holiday-orbit-track {
  position: relative !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 9% 30%, rgba(245,158,11,.13), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018)),
    rgba(9,9,11,.34) !important;
}

.home-page .holiday-orbit-track::before {
  display: block !important;
  left: 52px !important;
  right: 52px !important;
  top: 72px !important;
  height: 2px !important;
  background:
    linear-gradient(90deg, rgba(245,158,11,.78) 0%, rgba(245,158,11,.38) 24%, rgba(255,255,255,.14) 58%, rgba(255,255,255,.07) 100%) !important;
  box-shadow: 0 0 16px rgba(245,158,11,.16) !important;
}

.home-page .holiday-orbit-track::after {
  display: block !important;
  left: 52px !important;
  top: 72px !important;
  width: 22% !important;
  height: 2px !important;
  background: linear-gradient(90deg, rgba(245,158,11,0), rgba(245,158,11,.95), rgba(245,158,11,0)) !important;
  filter: drop-shadow(0 0 10px rgba(245,158,11,.55)) !important;
  animation: orbit-flow 3.2s cubic-bezier(.4,0,.2,1) infinite !important;
}

.home-page .orbit-node {
  transition: transform .34s cubic-bezier(.16,1,.3,1) !important;
}

.home-page .orbit-node > time,
.home-page .orbit-node > strong,
.home-page .orbit-node > span,
.home-page .orbit-node > em {
  transition: transform .34s cubic-bezier(.16,1,.3,1), color .34s cubic-bezier(.16,1,.3,1) !important;
}

.home-page .orbit-icon {
  background:
    radial-gradient(circle at 34% 24%, rgba(255,255,255,.24), rgba(255,255,255,.06) 38%, rgba(255,255,255,.025) 100%) !important;
  border-color: rgba(255,255,255,.16) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -1px 0 rgba(0,0,0,.32),
    0 0 0 7px rgba(255,255,255,.035) !important;
  transition: transform .34s cubic-bezier(.16,1,.3,1), border-color .34s cubic-bezier(.16,1,.3,1), box-shadow .34s cubic-bezier(.16,1,.3,1), background .34s cubic-bezier(.16,1,.3,1) !important;
}

.home-page .orbit-node.is-next .orbit-icon {
  border-color: rgba(245,158,11,.58) !important;
  background:
    radial-gradient(circle at 34% 24%, rgba(255,229,176,.80), rgba(245,158,11,.42) 34%, rgba(245,158,11,.18) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 -1px 0 rgba(90,35,0,.38),
    0 0 0 9px rgba(245,158,11,.10),
    0 0 34px rgba(245,158,11,.42) !important;
  animation: orbit-current-pulse 2.8s ease-in-out infinite !important;
}

.home-page .orbit-node:hover {
  transform: translateY(-4px) !important;
}

.home-page .orbit-node:hover .orbit-icon {
  transform: scale(1.08) !important;
  border-color: rgba(245,158,11,.46) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.26),
    inset 0 -1px 0 rgba(0,0,0,.34),
    0 0 0 8px rgba(245,158,11,.08),
    0 0 28px rgba(245,158,11,.24) !important;
}

.home-page .orbit-node:hover > time,
.home-page .orbit-node:hover > strong,
.home-page .orbit-node:hover > span,
.home-page .orbit-node:hover > em {
  transform: translateY(-4px) !important;
}

.home-page .orbit-node:hover > strong {
  color: #fff !important;
}

@keyframes orbit-current-pulse {
  0%, 100% {
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.34),
      inset 0 -1px 0 rgba(90,35,0,.38),
      0 0 0 8px rgba(245,158,11,.08),
      0 0 26px rgba(245,158,11,.32);
  }
  50% {
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.38),
      inset 0 -1px 0 rgba(90,35,0,.38),
      0 0 0 13px rgba(245,158,11,.13),
      0 0 42px rgba(245,158,11,.52);
  }
}

@keyframes orbit-flow {
  0%, 100% {
    opacity: .42;
    transform: translateX(0) scaleX(.88);
  }
  50% {
    opacity: .95;
    transform: translateX(22%) scaleX(1.08);
  }
}

@media (max-width: 980px) {
  .home-page .holiday-orbit-track::before,
  .home-page .holiday-orbit-track::after {
    display: none !important;
  }
}

/* Emergency repair: collection countdown digits use the stable data-value layer. */
.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit {
  position: relative !important;
  display: inline-block !important;
  width: .64em !important;
  min-width: .64em !important;
  max-width: .64em !important;
  height: 1em !important;
  overflow: visible !important;
  color: transparent !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit > span {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.collection-detail-page .featured-countdown-card .featured-time-grid .flip-digit::after {
  content: attr(data-value) !important;
  position: absolute !important;
  inset: 0 !important;
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 100% !important;
  color: rgba(255,255,255,.97) !important;
  font: inherit !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.10), 0 10px 24px rgba(0,0,0,.34) !important;
}

/* Country badges readability pass: flexible wrapping and quieter previews. */
body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge-list {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 14px !important;
  padding: 6px 0 26px !important;
  overflow: visible !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge {
  flex: 1 1 260px !important;
  width: auto !important;
  min-width: 250px !important;
  max-width: 320px !important;
  min-height: 72px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(150px, 1fr) !important;
  align-items: center !important;
  column-gap: 14px !important;
  row-gap: 4px !important;
  padding: 13px 16px !important;
  text-align: left !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge > span {
  grid-row: 1 / span 2 !important;
  align-self: center !important;
  justify-self: center !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge strong,
body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge em {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: manual !important;
  line-height: 1.2 !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge strong {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: end !important;
  font-size: 17px !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge em {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;
  justify-self: start !important;
  max-width: none !important;
  font-size: 12px !important;
  text-align: left !important;
  white-space: nowrap !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge.is-preview {
  flex: 0 1 188px !important;
  min-width: 172px !important;
  max-width: 210px !important;
  opacity: .48 !important;
  filter: saturate(.52) brightness(.82) !important;
  border-color: rgba(255,255,255,.07) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.040), rgba(255,255,255,.020)),
    rgba(9,9,11,.20) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 12px 30px rgba(0,0,0,.16) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge.is-preview > span {
  width: 36px !important;
  height: 36px !important;
  opacity: .72 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -1px 0 rgba(0,0,0,.22),
    0 0 0 3px rgba(255,255,255,.025) !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge.is-preview strong {
  color: rgba(255,255,255,.54) !important;
  font-size: 15px !important;
  white-space: nowrap !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge.is-preview em {
  color: rgba(228,228,231,.38) !important;
  max-width: 54px !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge.is-preview:hover {
  opacity: .62 !important;
  filter: saturate(.68) brightness(.92) !important;
  transform: translateY(-2px) !important;
  border-color: rgba(255,255,255,.11) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.075),
    0 14px 34px rgba(0,0,0,.18) !important;
}

@media (max-width: 760px) {
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge,
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .country-badge.is-preview {
    flex-basis: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}

/* Popular countdowns layout correction: one large feature plus a balanced 2x2 grid. */
body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid {
  display: grid !important;
  grid-template-columns: minmax(360px, 1.18fr) repeat(2, minmax(220px, .82fr)) !important;
  grid-template-rows: repeat(2, minmax(210px, 1fr)) !important;
  grid-auto-flow: row !important;
  gap: clamp(18px, 1.8vw, 24px) !important;
  align-items: stretch !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  min-height: 100% !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:nth-child(2) {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:nth-child(3) {
  grid-column: 3 !important;
  grid-row: 1 !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:nth-child(4) {
  grid-column: 2 !important;
  grid-row: 2 !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:nth-child(5) {
  grid-column: 3 !important;
  grid-row: 2 !important;
}

body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child .card-copy {
  right: 80px !important;
}

@media (max-width: 1180px) {
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto !important;
  }

  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    min-height: 340px !important;
  }

  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:nth-child(n+2) {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 220px !important;
  }
}

@media (max-width: 640px) {
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid {
    grid-template-columns: 1fr !important;
  }

  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:first-child,
  body:not(.collection-detail-page):not(.holiday-detail-page):not(.christmas-days-page) .home-popular-grid .holiday-card:nth-child(n+2) {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 230px !important;
  }
}

/* Home-only technology backdrop: cold system depth, grid, scanlines, and data points. */
body.home-page {
  background:
    radial-gradient(circle at 18% 6%, rgba(56,189,248,.115), transparent 32%),
    radial-gradient(circle at 82% 12%, rgba(245,158,11,.075), transparent 26%),
    linear-gradient(135deg, #03050a 0%, #07101e 42%, #05070d 100%) !important;
  background-attachment: fixed !important;
}

body.home-page .site-header,
body.home-page .home-portal,
body.home-page .site-footer {
  position: relative !important;
  z-index: 2 !important;
}

body.home-page::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background-image:
    linear-gradient(rgba(148,163,184,.030) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,.026) 1px, transparent 1px),
    linear-gradient(115deg, transparent 0 45%, rgba(56,189,248,.045) 50%, transparent 55%),
    radial-gradient(circle at 50% 18%, rgba(56,189,248,.075), transparent 36%),
    linear-gradient(180deg, rgba(3,7,18,.12), rgba(3,7,18,.70)) !important;
  background-size:
    72px 72px,
    72px 72px,
    520px 520px,
    100% 100%,
    100% 100% !important;
  background-position:
    center top,
    center top,
    0 0,
    center,
    center !important;
  opacity: .95 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  animation: home-tech-grid-drift 28s linear infinite !important;
}

body.home-page::after {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background-image:
    radial-gradient(circle, rgba(125,211,252,.46) 0 1px, transparent 1.8px),
    radial-gradient(circle, rgba(255,255,255,.28) 0 .8px, transparent 1.6px),
    linear-gradient(180deg, transparent 0%, rgba(56,189,248,.075) 48%, transparent 56%),
    linear-gradient(90deg, transparent, rgba(148,163,184,.045), transparent) !important;
  background-size:
    190px 150px,
    260px 210px,
    100% 340px,
    100% 100% !important;
  background-position:
    24px 30px,
    110px 80px,
    0 -340px,
    center !important;
  opacity: .52 !important;
  mix-blend-mode: screen !important;
  animation: home-tech-scan 9s cubic-bezier(.4,0,.2,1) infinite !important;
}

.home-page .home-hero-section::after,
.home-page .timeline-section::before {
  content: "" !important;
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
  opacity: .44 !important;
}

.home-page .home-hero-section::after {
  inset: -16% -6% auto auto !important;
  width: min(620px, 58vw) !important;
  height: 320px !important;
  background:
    linear-gradient(90deg, transparent 0 8%, rgba(125,211,252,.18) 8% 8.3%, transparent 8.3% 19%, rgba(125,211,252,.12) 19% 19.3%, transparent 19.3%),
    radial-gradient(circle at 72% 50%, rgba(56,189,248,.12), transparent 55%) !important;
  filter: blur(.2px) !important;
  transform: rotate(-8deg) !important;
}

.home-page .home-hero-section > * {
  position: relative !important;
  z-index: 1 !important;
}

.home-page .timeline-section {
  position: relative !important;
}

.home-page .timeline-section::before {
  inset: -34px 0 auto !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(125,211,252,.24), rgba(245,158,11,.16), transparent) !important;
}

@keyframes home-tech-grid-drift {
  0% {
    background-position: center top, center top, 0 0, center, center;
  }
  100% {
    background-position: center 72px, center 72px, 520px 520px, center, center;
  }
}

@keyframes home-tech-scan {
  0%, 100% {
    background-position: 24px 30px, 110px 80px, 0 -340px, center;
    opacity: .44;
  }
  50% {
    background-position: 24px 30px, 110px 80px, 0 120vh, center;
    opacity: .62;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.home-page::before,
  body.home-page::after {
    animation: none !important;
  }
}

/* Immersive dark-tech UI rebuild, scoped to the homepage only. */
body.home-page {
  --home-glass-panel: rgba(255,255,255,.020);
  --home-glass-panel-strong: rgba(255,255,255,.032);
  --home-glass-border: rgba(255,255,255,.115);
  --home-glass-border-hot: rgba(245,158,11,.30);
  --home-tech-cyan: rgba(56,189,248,.16);
  --home-tech-orange: rgba(245,158,11,.16);
  --home-float-shadow: 0 24px 70px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.09);
  background:
    radial-gradient(circle at 16% 8%, rgba(14,165,233,.12), transparent 34%),
    radial-gradient(circle at 84% 16%, rgba(245,158,11,.075), transparent 28%),
    radial-gradient(circle at 50% 108%, rgba(59,130,246,.08), transparent 34%),
    linear-gradient(135deg, #02040a 0%, #06111f 46%, #03050b 100%) !important;
  background-attachment: fixed !important;
}

body.home-page::before {
  background-image:
    linear-gradient(rgba(125,211,252,.030) 1px, transparent 1px),
    linear-gradient(90deg, rgba(125,211,252,.024) 1px, transparent 1px),
    radial-gradient(circle at 18% 18%, rgba(56,189,248,.10), transparent 28%),
    radial-gradient(circle at 72% 30%, rgba(245,158,11,.055), transparent 24%),
    linear-gradient(115deg, transparent 0 42%, rgba(56,189,248,.052) 49%, transparent 56%),
    linear-gradient(180deg, rgba(2,6,23,.06), rgba(2,6,23,.76)) !important;
  background-size: 64px 64px, 64px 64px, 100% 100%, 100% 100%, 620px 620px, 100% 100% !important;
  background-position: center top, center top, center, center, 0 0, center !important;
  opacity: .78 !important;
  animation: home-tech-grid-drift 42s linear infinite !important;
}

body.home-page::after {
  background-image:
    radial-gradient(circle, rgba(125,211,252,.42) 0 .9px, transparent 1.8px),
    radial-gradient(circle, rgba(255,255,255,.20) 0 .7px, transparent 1.5px),
    linear-gradient(180deg, transparent 0%, rgba(56,189,248,.06) 46%, transparent 58%),
    linear-gradient(90deg, transparent 0%, rgba(148,163,184,.040) 52%, transparent 100%) !important;
  background-size: 210px 170px, 300px 240px, 100% 420px, 100% 100% !important;
  opacity: .42 !important;
  animation: home-tech-scan 14s cubic-bezier(.4,0,.2,1) infinite !important;
}

body.home-page .site-header,
body.home-page .home-next-card.countdown-card,
body.home-page .collection-card,
body.home-page .guide-card,
body.home-page .article-list a,
body.home-page .about-library,
body.home-page .about-feature-grid span,
body.home-page .home-faq,
body.home-page .faq-list details,
body.home-page .holiday-orbit-track,
body.home-page .country-panel,
body.home-page .footer.site-footer .footer-shell {
  background:
    linear-gradient(145deg, rgba(255,255,255,.034), rgba(255,255,255,.014) 58%, rgba(255,255,255,.026)),
    var(--home-glass-panel) !important;
  border: 1px solid var(--home-glass-border) !important;
  box-shadow: var(--home-float-shadow) !important;
  backdrop-filter: blur(16px) saturate(122%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(122%) !important;
}

body.home-page .home-next-card.countdown-card,
body.home-page .home-faq,
body.home-page .country-panel,
body.home-page .about-library,
body.home-page .holiday-orbit-track {
  position: relative !important;
  isolation: isolate !important;
}

body.home-page .home-next-card.countdown-card::before,
body.home-page .home-faq::before,
body.home-page .country-panel::before,
body.home-page .holiday-orbit-track::before {
  content: "" !important;
  position: absolute !important;
  inset: 12% 8% !important;
  z-index: -1 !important;
  border-radius: 999px !important;
  background: radial-gradient(circle, var(--home-tech-orange) 0%, rgba(245,158,11,.07) 36%, transparent 72%) !important;
  filter: blur(42px) !important;
  opacity: .55 !important;
  pointer-events: none !important;
}

body.home-page .home-next-card.countdown-card .time-unit {
  background:
    linear-gradient(180deg, rgba(255,255,255,.115), rgba(255,255,255,.032) 56%, rgba(0,0,0,.16)),
    rgba(255,255,255,.025) !important;
  border-color: rgba(255,255,255,.13) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -1px 0 rgba(0,0,0,.35),
    0 18px 48px rgba(0,0,0,.28),
    0 0 30px rgba(245,158,11,.08) !important;
}

body.home-page .country-panel {
  display: grid !important;
  grid-template-columns: minmax(240px,.82fr) minmax(0,1.28fr) !important;
  gap: clamp(28px, 4vw, 58px) !important;
  align-items: center !important;
  padding: clamp(28px, 4vw, 44px) !important;
  border-radius: 28px !important;
  overflow: hidden !important;
}

body.home-page .country-panel-copy h2 {
  margin: 16px 0 10px !important;
  color: #fff !important;
  font-size: clamp(30px, 3.2vw, 44px) !important;
  line-height: 1.04 !important;
}

body.home-page .country-panel-copy p {
  max-width: 430px !important;
  margin: 0 !important;
  color: rgba(228,228,231,.72) !important;
  line-height: 1.65 !important;
}

body.home-page .country-text-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
  gap: 8px 22px !important;
}

body.home-page .country-text-list a,
body.home-page .country-text-list button {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 100% !important;
  min-height: 58px !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 8px 10px !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: inherit !important;
  font: inherit !important;
  text-align: left !important;
  cursor: pointer !important;
  transition:
    transform .32s cubic-bezier(.16,1,.3,1),
    border-color .32s cubic-bezier(.16,1,.3,1),
    background .32s cubic-bezier(.16,1,.3,1),
    box-shadow .32s cubic-bezier(.16,1,.3,1),
    opacity .32s cubic-bezier(.16,1,.3,1),
    filter .32s cubic-bezier(.16,1,.3,1) !important;
}

body.home-page .country-text-list span {
  width: auto !important;
  height: auto !important;
  display: block !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(125,211,252,.68) !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  letter-spacing: .10em !important;
  box-shadow: none !important;
}

body.home-page .country-text-list strong {
  color: rgba(255,255,255,.90) !important;
  font-size: 16px !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

body.home-page .country-text-list em {
  color: rgba(228,228,231,.55) !important;
  font-size: 12px !important;
  font-style: normal !important;
  white-space: nowrap !important;
}

body.home-page .country-text-list .is-preview {
  opacity: .50 !important;
  filter: saturate(.55) brightness(.82) !important;
}

body.home-page .country-text-list .is-preview em {
  opacity: 0 !important;
  transform: translateX(-4px) !important;
  transition: opacity .28s cubic-bezier(.16,1,.3,1), transform .28s cubic-bezier(.16,1,.3,1) !important;
}

body.home-page .country-text-list .is-preview:hover {
  opacity: .74 !important;
  filter: saturate(.78) brightness(.94) !important;
}

body.home-page .country-text-list .is-preview:hover em {
  opacity: 1 !important;
  transform: translateX(0) !important;
}

body.home-page .category-chip-row a,
body.home-page .holiday-card,
body.home-page .collection-card,
body.home-page .guide-card,
body.home-page .article-list a,
body.home-page .country-text-list a,
body.home-page .country-text-list button,
body.home-page .button,
body.home-page .card-cta,
body.home-page .section-head.compact a,
body.home-page .faq-list details {
  transition:
    transform .32s cubic-bezier(.16,1,.3,1),
    border-color .32s cubic-bezier(.16,1,.3,1),
    box-shadow .32s cubic-bezier(.16,1,.3,1),
    background .32s cubic-bezier(.16,1,.3,1),
    filter .32s cubic-bezier(.16,1,.3,1) !important;
}

body.home-page .category-chip-row a:hover,
body.home-page .holiday-card:hover,
body.home-page .collection-card:hover,
body.home-page .guide-card:hover,
body.home-page .article-list a:hover,
body.home-page .country-text-list a:hover,
body.home-page .country-text-list button:hover,
body.home-page .button:hover,
body.home-page .card-cta:hover,
body.home-page .section-head.compact a:hover,
body.home-page .faq-list details:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(255,255,255,.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 20px 52px rgba(0,0,0,.30),
    0 0 28px rgba(56,189,248,.08),
    0 0 24px rgba(245,158,11,.055) !important;
}

body.home-page .country-text-list a:hover,
body.home-page .country-text-list button:hover {
  background: rgba(255,255,255,.045) !important;
}

body.home-page .country-text-list a:hover span,
body.home-page .country-text-list button:hover span {
  color: rgba(125,211,252,.96) !important;
}

@media (max-width: 980px) {
  body.home-page .country-panel {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  body.home-page .country-text-list {
    grid-template-columns: 1fr !important;
  }
}

/* Canvas 3D depth background. Homepage only; holiday landing pages are untouched. */
html {
  background: #02040a;
}

body.home-page {
  background: transparent !important;
}

#home-space-canvas {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
  pointer-events: none;
  display: block;
  background: #02040a;
}

body:not(.home-page) #home-space-canvas {
  display: none;
}

body.home-page::before,
body.home-page::after {
  opacity: .16 !important;
  mix-blend-mode: screen !important;
}

/* UI-FIX-01: light theme text contrast regression safeguards. */
body.holiday-hub-page .hub-faq .faq-list details,
body.holiday-hub-page .directory-empty-state,
body.holiday-hub-page .holiday-directory-section,
body.countries-page .countries-faq details,
body.countries-page .seo-card article,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .guides-faq details,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .featured-guide-card,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .category-grid article,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .hub-grid a,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .subguide-grid a,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .latest-guides-panel,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .countdown-links-panel {
  background-color: #fff !important;
  border-color: #dde1e8 !important;
  color: #171a2b !important;
  box-shadow: 0 8px 24px rgba(23, 26, 43, .06) !important;
}

body.holiday-hub-page .hub-faq .faq-list summary,
body.holiday-hub-page .directory-empty-state h2,
body.holiday-hub-page .directory-empty-state h3,
body.countries-page .countries-faq summary,
body.countries-page .seo-card h2,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .guides-faq summary,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .featured-guide-card strong,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .category-grid span,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .hub-grid strong,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .subguide-grid strong,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .latest-list a strong,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .section-title h2 {
  color: #171a2b !important;
}

body.holiday-hub-page .hub-faq .faq-list p,
body.holiday-hub-page .directory-empty-state p,
body.holiday-hub-page .holiday-directory-section p,
body.countries-page .countries-faq p,
body.countries-page .seo-card p,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .guides-faq p,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .featured-guide-card p,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .category-grid p,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .hub-copy p,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .hub-grid span,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .subguide-grid span,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .latest-list a em {
  color: #62677a !important;
}

body.holiday-hub-page .hub-faq summary::marker,
body.countries-page .countries-faq summary::marker,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .guides-faq summary::marker,
body.holiday-hub-page .hub-faq a,
body.countries-page .countries-faq a,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .hub-countdown-link,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .latest-list a > span {
  color: #6d28d9 !important;
}

body.holiday-hub-page .hub-faq summary:focus-visible,
body.countries-page .countries-faq summary:focus-visible,
body.guides-page:not(.generated-guide-page):not(.christmas-guide-page) .guides-faq summary:focus-visible {
  outline: 3px solid rgba(109, 40, 217, .34) !important;
  outline-offset: 3px;
}
