/* Christmas dresses Tripin: white everyday surfaces, illuminated navy feature panels.
   Decorative assets are original local vectors. No global overlays, image filters or dimming. */
.seasonal-visitor-bar {
  position:relative; display:flex; justify-content:flex-end; align-items:center; min-height:50px;
  padding:3px max(18px,env(safe-area-inset-right)) 3px max(18px,env(safe-area-inset-left));
  border-top:1px solid #e5ecee; background:#fff;
}
.seasonal-visitor-switch {
  position:relative; display:inline-flex; align-items:center; justify-content:center; gap:9px;
  min-height:44px; padding:7px 13px; border:1px solid #c6d7d6; border-radius:30px;
  background:#fff; color:#19394a; font:inherit; font-size:.78rem; font-weight:650; cursor:pointer;
}
.seasonal-visitor-switch>.ui-icon { width:18px; height:18px; flex-basis:18px; color:#9b2440; }
.seasonal-switch-track { display:flex; align-items:center; width:32px; height:19px; padding:2px; border-radius:20px; background:#62717c; }
.seasonal-switch-track>span { width:15px; height:15px; border-radius:50%; background:#fff; transition:transform .18s ease; }
.seasonal-switch-state { min-width:2.2em; font-size:.68rem; letter-spacing:.06em; }
.seasonal-visitor-switch[aria-checked="true"] .seasonal-switch-track { background:#176249; }
.seasonal-visitor-switch[aria-checked="true"] .seasonal-switch-track>span { transform:translateX(13px); background:#fff4ce; }
.seasonal-atmosphere,.winter-decor,.winter-edition { display:none; }

html.christmas-mode { background:#f4f8fb; color-scheme:light; }
.christmas-mode body.product-ui {
  --winter-navy:#102b4a; --winter-evergreen:#155e46; --winter-ruby:#a52140;
  --winter-gold:#ffe4ab; --winter-ink:#152e46; --winter-muted:#516477; --winter-line:#d4e1e5;
  --gd-page:#f4f8fb; --gd-surface:#fff; --gd-surface-alt:#eef6f6; --gd-border:#d4e1e5;
  --gd-ink:#152e46; --gd-navy:#102b4a; --gd-muted:#516477; --gd-cornish-sea:#176650;
  --product-line:#d4e1e5; --product-shadow:0 6px 24px #16364a0c;
  --brand-primary:#176650; --brand-secondary:#174270; --brand-accent:#ffe4ab;
  --brand-button-gradient:linear-gradient(135deg,#196d52,#124c3c); --brand-button-fg:#fff;
  --brand-active-gradient:linear-gradient(135deg,#edf6ef,#f5f9f4); --brand-active-fg:#124c3c;
  color:var(--winter-ink); background:radial-gradient(ellipse at 100% 0,#e5f3f7,transparent 650px),#f4f8fb;
}
/* White behind the existing colourful logo. Crop, size and artwork remain CMS-owned. */
.christmas-mode .product-ui .top-shell { background:#fff; border-color:#dbd0ad; backdrop-filter:none; box-shadow:0 3px 18px #173d4510; }
.christmas-mode .top-shell .brand { isolation:isolate; z-index:2; filter:none; opacity:1; mix-blend-mode:normal; }
.christmas-mode .top-shell .brand-logo { filter:none !important; opacity:1 !important; mix-blend-mode:normal; }
.christmas-mode .seasonal-visitor-bar { background:linear-gradient(90deg,#eff7f2,#fff 65%); border-top-color:#e1ebe6; }
.christmas-mode .seasonal-visitor-bar::before {
  content:""; position:absolute; inset:0 48% 0 0; pointer-events:none;
  background:url('/images/winter/garland.svg') left -9px / 650px auto no-repeat;
  max-width:720px; mask-image:linear-gradient(90deg,#000 72%,transparent);
}
.christmas-mode .seasonal-visitor-switch { border-color:#c8d6c7; box-shadow:0 2px 10px #1d503d0a; }
.christmas-mode .product-ui .desktop-nav .nav-link { color:#19394a !important; }
.christmas-mode .product-ui .desktop-nav .nav-link[aria-current="page"] { color:#125c42 !important; background:#eef6ef; }
.christmas-mode :is(.site-menu>summary,.language-selector-form select,.header-account-icon) { color:#19394a; }
.christmas-mode .site-menu-panel { background:#fff; border-color:#cfddd4; box-shadow:0 12px 40px #102b4a20; }
.christmas-mode .product-ui .site-menu-panel a { color:#18394b; }
.christmas-mode .product-ui .site-menu-panel a:hover { background:#eef6ef; }
.christmas-mode .product-ui .bottom-nav { background:#fffefa; border-color:#d5c59e; box-shadow:0 5px 26px #17374722,inset 0 2px 0 #fff1ce; }
.christmas-mode .product-ui .bottom-nav :is(a,button) { color:#38566a; }
.christmas-mode .product-ui .bottom-nav a.active { background:#eaf4ee; color:#14553e; }
.christmas-mode .product-ui .bottom-nav .add-spot-tab { background:linear-gradient(145deg,#236e53,#104c3a); border-color:#dbbd7d; color:#fff7dc; box-shadow:0 4px 10px #18493620; }
.christmas-mode .product-ui .bottom-nav .add-spot-tab .ui-icon { color:#fff7dc; }
.christmas-mode .product-ui :is(a,button,summary,input,select,textarea):focus-visible { outline:3px solid #247797; outline-offset:3px; }

/* One surface family across discovery, details, planner, profile, membership and sheets.
   Home weather keeps its own dark palette: its text, controls and hourly cards use light ink. */
.christmas-mode .product-ui :is(.premium-spot-card,.premium-event-card,.activity-discovery-card,.content-band,.info-panel,.profile-card,.profile-dashboard-card,.profile-member-card,.profile-section,.trip-card,.trip-save-confirmation,.empty-state,.surprise-origin-panel,.santa-finder-panel,.activity-content-card,.activity-booking-card,.events-filter-panel,.events-location-bar,.events-filter-sheet,.filter-sheet,.action-sheet,.modal-content,.trip-planner-panel,.planner-panel,.trip-form-section,.form-section,.trip-panel,.nearby-panel,.useful-here-panel,.useful-results-group,.pricing-card,.membership-card,.premium-plan-card,.plan-card,.event-stay-card,.feature-tile,.home-origin-panel,.community-section,.charter-strip,.notice,.profile-membership-card,.membership-plan-plus,.discovery-sheet,.nearby-category-sheet) {
  background:linear-gradient(150deg,#fff 65%,#f4f9f7); color:var(--winter-ink); border-color:var(--winter-line);
  box-shadow:inset 0 1px 0 #fff,var(--product-shadow);
}
.christmas-mode .product-ui :is(.page-header,.events-browse-header,.section-heading,.events-result-heading,.trip-planner-header,.profile-dashboard-section) :is(h1,h2,h3) { color:var(--winter-navy); }
.christmas-mode .product-ui :is(.page-header,.events-browse-header,.trip-planner-header)>p,
.christmas-mode .product-ui :is(.home-origin-line,.search-meta,.events-result-heading,.discovery-meta,.loading-state,.loading-status,.discovery-status,.results-status,.footer-note) { color:var(--winter-muted); }
.christmas-mode .product-ui :is(.page-header,.events-browse-header,.trip-planner-header,.profile-dashboard-header,.membership-sales-header) { border-top:2px solid #dbc899; padding-top:20px; }
.christmas-mode .product-ui .page-shell :is(.primary-button,.seasonal-cta),
.christmas-mode .product-ui :is(.action-sheet,.modal-content,.anonymous-wisp-gate,dialog) .primary-button:not(:disabled) {
  background:linear-gradient(135deg,#196d52,#124c3c); color:#fff !important; border:1px solid #14573f;
  box-shadow:inset 0 1px 0 #ffffff25,0 3px 9px #18493612;
}
.christmas-mode .product-ui .page-shell :is(.secondary-button,.ghost-button,.icon-text-button) { background:#fff; color:#194c43; border-color:#c4d8d0; }
.christmas-mode .product-ui .page-shell :is(.primary-button,.secondary-button,.ghost-button):hover { box-shadow:0 4px 15px #1849361a; }
.christmas-mode .product-ui :is(.primary-button,.secondary-button):disabled { background:#dbe3e6 !important; border-color:#c9d4d8; color:#596874 !important; }
.christmas-mode .product-ui :is(.form-control,.form-select,textarea,select) { color:#19354b; background-color:#fff; border-color:#b6ccd0; }
.christmas-mode .product-ui input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]) { color:#19354b; background-color:#fff; border-color:#b6ccd0; }
.christmas-mode .product-ui :is(input,textarea)::placeholder { color:#5b6b77; opacity:1; }
.christmas-mode .product-ui :is(.filter-chip,.events-period-row a) { color:#244e48; background:#fff; border-color:#c7d8d1; }
.christmas-mode .product-ui :is(.filter-chip.is-selected,.filter-chip.is-active,.events-period-row a[aria-current="page"],.segmented-toggle .active) { color:#fff; background:#155e46; border-color:#155e46; }
.christmas-mode .product-ui .events-period-row .events-filter-action { background:#155e46; border-color:#155e46; color:#fff !important; }
.christmas-mode .product-ui .footer-note { border-top:1px solid #d6c698; color:#516477; }
.christmas-mode .footer-note a { color:#176650; }
.christmas-mode .product-ui :is(.premium-spot-card,.premium-event-card,.trip-card) { border:1px solid #d4e1e5; box-shadow:0 6px 24px #16364a0c; }
.christmas-mode .product-ui :is(.premium-card-body,.event-card-body) { border-top:2px solid #e5d4aa; }
.christmas-mode .product-ui .place-detail-header { background:#fff; border:1px solid #d4e1e5; border-bottom:3px solid #d8bd7e; }
.christmas-mode .product-ui .place-hero-content { background-image:url('/images/winter/bough.svg'); background-position:right bottom; background-size:48px; background-repeat:no-repeat; }
.christmas-mode .product-ui .event-place-detail .place-hero-content { border-top:3px solid #d9c899; }
.christmas-mode .product-ui .event-place-detail .spot-detail-gallery-fallback { background:url('/images/winter/garland.svg') top / auto 80px no-repeat,linear-gradient(125deg,#102b4a,#174e5c); }
.christmas-mode .product-ui :is(.place-report-link,.place-add-photo-link) { color:#195d48 !important; }

/* The atmosphere lives INSIDE a feature panel. Never fixed, never on a map. */
.christmas-mode :is(.cms-hero,.seasonal-landing) .seasonal-atmosphere {
  display:block; position:absolute; inset:0; z-index:1; overflow:hidden; contain:strict;
  pointer-events:none !important; mask-image:linear-gradient(90deg,#0008,transparent 42%,#000 78%);
}
.seasonal-atmosphere canvas { display:block; width:100%; height:100%; pointer-events:none !important; }
.christmas-mode .winter-edition { display:inline; }
.christmas-mode .cms-hero .winter-decor,.seasonal-landing.seasonal-theme-christmas .winter-decor {
  display:block; position:absolute; inset:0; z-index:0; pointer-events:none !important; overflow:hidden;
  background:radial-gradient(ellipse at 80% 40%,#5183a52b,transparent 48%),radial-gradient(ellipse at 93% 5%,#ffe2a631,transparent 42%);
}
.winter-bough { position:absolute; top:0; width:290px; height:290px; background:url('/images/winter/bough.svg') 0 0 / contain no-repeat; transform-origin:top left; }
.winter-bough-left { left:0; }
.winter-bough-right { right:0; width:370px; height:370px; transform:scaleX(-1); transform-origin:center top; }
.winter-ornaments { position:absolute; right:4%; top:30px; width:300px; height:300px; background:url('/images/winter/ornaments.svg') center / contain no-repeat; transform-origin:top center; }
.winter-light { position:absolute; width:8px; height:8px; border-radius:50%; background:#fff6ce; box-shadow:0 0 10px 3px #ffe5a46b,0 0 30px 10px #ffd69524; }
.winter-light-one { top:33px; left:12%; }
.winter-light-two { top:70px; right:17%; }
.winter-light-three { top:260px; right:31px; }
.christmas-mode .product-ui .cms-hero,.seasonal-landing.seasonal-theme-christmas {
  isolation:isolate; position:relative; overflow:hidden; border:1px solid #d8c796; border-radius:24px;
  background:radial-gradient(ellipse at 92% 60%,#2a617b 0,transparent 48%),linear-gradient(115deg,#102a4a 25%,#123956 70%,#285967);
  box-shadow:inset 0 0 0 5px #ffffff08,0 12px 32px #173a5312; color:#fff;
}
.christmas-mode .product-ui .cms-hero { margin-top:0; min-height:450px; padding:70px clamp(30px,5vw,64px) 44px; align-items:center; }
/* Replace the hero's photographic backdrop with the Christmas composition; photos elsewhere are untouched. */
.christmas-mode .cms-hero>:is(picture,.cms-hero-media,.cms-hero-video,.cms-hero-overlay) { display:none; }
.christmas-mode .product-ui .cms-hero-content { position:relative; z-index:2; max-width:62%; gap:18px; text-shadow:none; }
.christmas-mode .product-ui .cms-hero h1 { color:#fff; font-size:clamp(2.7rem,5.1vw,4.4rem); }
.christmas-mode .product-ui .cms-hero .eyebrow { display:block; color:#ffe5b1; letter-spacing:.16em; font-size:.72rem; }
.christmas-mode .product-ui .cms-hero :is(.hero-subtitle,.hero-support) { color:#e5f1f7; opacity:1; }
.christmas-mode .product-ui .cms-hero .hero-support { font-size:.86rem; color:#d7e8f2; }
.christmas-mode .product-ui .cms-hero .home-hero-actions>.primary-button,
.seasonal-landing .hero-actions .seasonal-cta,.seasonal-home-band .seasonal-home-cta,
.christmas-mode .product-ui .seasonal-landing .hero-actions .seasonal-cta {
  color:#243348 !important; background:linear-gradient(120deg,#fff3d1,#ffe2a1 60%,#ffedc2);
  border:1px solid #fff4d2; box-shadow:inset 0 1px 0 #fff,0 4px 20px #ffc75b21;
}
.christmas-mode .product-ui .cms-hero .home-hero-actions>:is(.home-bored-button,.home-surprise-button,.secondary-button) { background:#143956; color:#fff; border-color:#86a5b9; }
.christmas-mode .product-ui .cms-hero .home-weather-tile { background:#fff; border:1px solid #e6d2a2; color:#1b4157; box-shadow:0 6px 24px #08213b25; }
.christmas-mode .product-ui .cms-hero .home-weather-widget { z-index:3; }

/* Explore stays a fast bright workspace, with an unmistakably festive frame. */
.christmas-mode .product-ui .discovery-topbar { background:#fff; border:1px solid #cbded3; border-top:3px solid #1e624b; border-radius:16px; box-shadow:0 5px 18px #173d4510; }
.christmas-mode .product-ui .discovery-search-submit { background:#155e46; color:#fff; }
.christmas-mode .product-ui .explore-discovery-categories { padding:12px; background:#fff; border:1px solid #dbe4de; border-bottom:2px solid #d9c999; border-radius:18px; }
.christmas-mode .product-ui :is(.visual-shortcut,.destination-tile) { border:1px solid #e9d7ab; box-shadow:0 3px 10px #173e4110; }
.christmas-mode .product-ui .explore-category[aria-pressed="true"] { outline:3px solid #216d52; outline-offset:2px; }
.christmas-mode .product-ui .seasonal-discovery-links { padding:9px 12px; border:1px solid #d7dfd0; border-radius:14px; background:url('/images/winter/bough.svg') right top / 74px no-repeat,#fffdf6; }
.christmas-mode .seasonal-discovery-links button { background:#fffdf6; border-color:#d7d1b3; }
.christmas-mode .product-ui :is(.discovery-list-header,.events-discovery-header) { color:#183b4d; border-bottom:1px solid #ddcfaa; padding-bottom:10px; }
.christmas-mode .product-ui :is(.explore-back-location,.destination-discovery-heading) { color:#195340; background:#f0f7f1; border-color:#c6d8cb; }
.christmas-mode .product-ui :is(.explore-data-credits,.discovery-meta>strong) { color:#516477; }
.christmas-mode .discovery-shell>.seasonal-subtype-switcher button:is(.is-active,[aria-pressed="true"]) { background:#155e46; border-color:#cbb982; color:#fff; }
/* No transforms, filters, touch handlers or decorative layers on map surfaces. */
.christmas-mode :is(.leaflet-container,.maplibregl-map) { color:#19354b; color-scheme:light; }
.christmas-mode :is(.leaflet-control,.leaflet-popup-content-wrapper) { --gd-muted:#516477; --gd-ink:#152e46; --gd-surface:#fff; }

/* Campaign navigation remains available with the visual preference OFF. */
.seasonal-component-sparkles,.seasonal-sparkle,.seasonal-map-burst { display:none !important; }
.seasonal-theme-christmas { --seasonal-deep:#102b4a; --seasonal-panel:#155e46; --seasonal-accent:#ffe4ab; --seasonal-accent-soft:#ffebc4; --seasonal-muted:#dfecf3; }
.seasonal-home-band.seasonal-theme-christmas { padding:28px 30px; border:1px solid #c9b780; background:radial-gradient(ellipse at 85% 0,#387859,transparent 55%),#124736; box-shadow:0 8px 28px #173e4112; }
.seasonal-home-band::after { content:""; position:absolute; pointer-events:none; width:115px; height:115px; top:0; right:0; background:url('/images/winter/bough.svg') left top / contain no-repeat; transform:scaleX(-1); opacity:1; }
.seasonal-home-band .seasonal-kicker { display:flex; align-items:center; gap:8px; font-weight:600; letter-spacing:.12em; }
.seasonal-kicker .ui-icon,.seasonal-home-chips .ui-icon { width:17px; height:17px; flex-basis:17px; }
.seasonal-home-band .seasonal-home-chips a { min-height:44px; font-weight:550; color:#fff; border-color:#7aa18d; background:#174e3c; }
.seasonal-home-band .seasonal-home-cta { min-height:46px; border-radius:12px; font-weight:650; }
.seasonal-home-band .seasonal-home-count { color:#e1f0e7; font-weight:450; }
.seasonal-landing.seasonal-theme-christmas { min-height:440px; padding:70px clamp(28px,5vw,64px) 44px; }
.seasonal-landing .seasonal-landing-copy { position:relative; z-index:2; max-width:66%; }
.seasonal-landing .seasonal-kicker { display:block; margin-bottom:22px; font-size:.72rem; font-weight:600; letter-spacing:.16em; }
.seasonal-landing h1 { max-width:14ch; font-size:clamp(2.6rem,5vw,4.5rem); letter-spacing:-.045em; line-height:1.04; text-wrap:balance; }
.seasonal-landing p { max-width:48ch; color:#e5f1f7; font-size:1rem; line-height:1.65; }
.seasonal-landing .hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.seasonal-landing .hero-actions>a { min-height:46px; border-radius:12px; font-size:.84rem; }
.seasonal-landing .hero-actions .seasonal-cta { order:-1; }
.seasonal-landing .ghost-button,.christmas-mode .product-ui .seasonal-landing .ghost-button { background:#143956; color:#fff !important; border-color:#91acbe; }
.seasonal-landing .secondary-button { background:#fffaf0; color:#243348; border-color:#fff1d0; }
.seasonal-category-chips.seasonal-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:visible; gap:14px; }
.seasonal-category-grid>a { position:relative; display:flex; align-items:flex-start; flex-direction:column; justify-content:space-between; min-height:155px; padding:22px; border:1px solid #d8e3de; border-radius:18px; background:radial-gradient(ellipse at 0 0,#e6f1eb,transparent 75%),#fff; color:#1a463a; white-space:normal; text-decoration:none; box-shadow:0 5px 18px #173e410a; }
.seasonal-category-grid>a:nth-child(3n+2) { background:radial-gradient(ellipse at 0 0,#fff0d4,transparent 75%),#fff; border-color:#e6d6b3; color:#745223; }
.seasonal-category-grid>a:nth-child(3n) { background:radial-gradient(ellipse at 0 0,#fce9ec,transparent 75%),#fff; border-color:#ead2d6; color:#9b2542; }
.seasonal-category-grid>a .ui-icon { width:38px; height:38px; flex-basis:38px; stroke-width:1.25; }
.seasonal-category-grid>a strong { font-size:.94rem; font-weight:650; color:#19394b; }
.seasonal-category-arrow { position:absolute; right:20px; top:20px; font-size:1rem; }
.seasonal-events-entry { display:flex; align-items:center; gap:12px; padding:16px 20px; margin-bottom:24px; border:1px solid #d5c69e; border-radius:16px; background:url('/images/winter/bough.svg') right top / 42px no-repeat,#fffaf0; color:#194c3c; font-weight:650; text-decoration:none; }
.seasonal-events-entry>span:last-child { margin-left:auto; }
.seasonal-events-entry .ui-icon { flex-shrink:0; color:#a12a42; }
/* Preserve the standard Event card; verified seasonal metadata supplies its festive accent. */
.product-ui .seasonal-event-card { background:#fff !important; color:#19394b; border-color:#d9c594 !important; }
.product-ui .seasonal-event-card::before { background:#b7354d; width:3px; }
.product-ui .seasonal-event-card .event-card-media::after { display:none; }
.product-ui .seasonal-event-card h2 { color:#19394b !important; }
.product-ui .seasonal-event-card p { color:#516477 !important; }
.product-ui .seasonal-event-card .seasonal-event-date { color:#175e47 !important; }
.product-ui .seasonal-event-card .event-tag-row span { color:#205441; background:#edf6ef; border-color:#d2e3d6; }
.product-ui .seasonal-event-card .event-image-credit { color:#516477; }
.product-ui .seasonal-event-card .event-image-credit a { color:#1a6351; }
/* Historical Halloween records retain neutral presentation. */
.seasonal-theme-halloween { --seasonal-accent:#c9dfe5; --seasonal-accent-soft:#eaf4f7; --seasonal-deep:#19394b; --seasonal-panel:#315568; --seasonal-text:#fff; --seasonal-muted:#e0edf1; }
.christmas-drop-tease.is-live { animation:none; }
@keyframes winter-branch-breathe { 50% { transform:rotate(.6deg); } }
@keyframes winter-glass-sway { 50% { transform:rotate(.7deg); } }
@keyframes winter-light-breathe { 50% { opacity:.55; transform:scale(.8); } }
@media (prefers-reduced-motion:no-preference) {
  .christmas-mode[data-winter-motion="full"] .winter-in-view .winter-bough-left { animation:winter-branch-breathe 12s ease-in-out infinite; }
  .christmas-mode[data-winter-motion="full"] .winter-in-view .winter-ornaments { animation:winter-glass-sway 14s ease-in-out infinite; }
  .christmas-mode[data-winter-motion="full"] .winter-in-view .winter-light { animation:winter-light-breathe 5s ease-in-out infinite; }
  .winter-light-two { animation-delay:-2s !important; }
  .winter-light-three { animation-delay:-3.5s !important; }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .seasonal-category-grid>a { transition:transform .2s ease,box-shadow .2s ease; }
  .seasonal-category-grid>a:hover { transform:translateY(-3px); box-shadow:0 10px 24px #173e4112; }
}
@media (max-width:760px) {
  html[data-christmas-available="true"] .product-ui .mobile-top-bar .site-menu-panel { top:calc(var(--header-top-band-height,0px) + 128px); }
  .seasonal-visitor-bar { padding-inline:12px; }
  .seasonal-visitor-switch { gap:7px; font-size:.74rem; padding-inline:10px; }
  .christmas-mode .seasonal-visitor-bar::before { right:58%; background-position:-150px -5px; background-size:570px auto; }
  .christmas-mode .product-ui .cms-hero { min-height:0; padding:82px 24px 28px; border-radius:20px; }
  .christmas-mode .product-ui .cms-hero-content { max-width:100%; gap:16px; }
  .christmas-mode .product-ui .cms-hero h1 { font-size:clamp(2.45rem,10vw,3.65rem); }
  .christmas-mode .product-ui .cms-hero .hero-subtitle { font-size:1rem; }
  .christmas-mode .product-ui .cms-hero .eyebrow { font-size:.65rem; letter-spacing:.12em; }
  .winter-bough { width:140px; height:140px; }
  .winter-bough-right { width:180px; height:180px; }
  .winter-ornaments { width:116px; height:116px; top:-10px; right:23%; }
  .winter-light-one { top:26px; left:12%; width:5px; height:5px; }
  .winter-light-two { top:42px; right:10%; width:5px; height:5px; }
  .winter-light-three { top:auto; bottom:14px; right:21px; width:5px; height:5px; }
  .christmas-mode :is(.cms-hero,.seasonal-landing) .seasonal-atmosphere { mask-image:linear-gradient(90deg,#000,transparent 23%,transparent 77%,#000); }
  .seasonal-landing.seasonal-theme-christmas { min-height:0; padding:100px 24px 28px; }
  .seasonal-landing .seasonal-landing-copy { max-width:100%; }
  .seasonal-landing .seasonal-kicker { margin-bottom:18px; font-size:.65rem; }
  .seasonal-landing h1 { font-size:clamp(2.45rem,9.4vw,3.8rem); }
  .seasonal-landing .hero-actions { display:grid; grid-template-columns:1fr 1fr; }
  .seasonal-landing .hero-actions .seasonal-cta { grid-column:1/-1; }
  .seasonal-landing .hero-actions>a { padding:10px; line-height:1.35; }
  .seasonal-home-band.seasonal-theme-christmas { padding:24px 20px; }
  .seasonal-category-chips.seasonal-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .seasonal-category-grid>a { min-height:140px; padding:18px; }
  .seasonal-category-band .section-heading { display:flex; flex-wrap:nowrap; align-items:start; justify-content:space-between; gap:14px; }
  .seasonal-category-band .section-heading h2 { margin:0; font-size:1.15rem; }
  .seasonal-category-band .section-heading>a { max-width:10ch; font-size:.8rem; text-align:right; flex-shrink:0; }
  .christmas-mode .product-ui .explore-discovery-categories { padding:8px; }
  .christmas-mode .product-ui .seasonal-discovery-links { padding:5px 8px; background-size:62px; }
}
@media (max-width:359px) {
  .seasonal-visitor-bar { padding-inline:8px; }
  .seasonal-visitor-switch { gap:5px; padding-inline:8px; }
  .seasonal-visitor-switch>.ui-icon { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .seasonal-switch-track>span,.seasonal-category-grid>a { transition:none !important; transform:none !important; }
  .winter-decor>span { animation:none !important; }
  .seasonal-atmosphere canvas { display:none !important; }
}

/* Outrank the shared product link colour on this dark Christmas surface. */
.christmas-mode .product-ui .seasonal-home-band .seasonal-home-chips a,
.christmas-mode .product-ui .seasonal-home-band .seasonal-home-chips a:visited { color:#fff !important; background:#174e3c; min-height:44px; }
.christmas-mode .product-ui .seasonal-home-band .seasonal-home-chips a:hover,
.christmas-mode .product-ui .seasonal-home-band .seasonal-home-chips a:active { color:#fff !important; background:#103d2f; }
.christmas-mode .product-ui .seasonal-home-band .seasonal-home-chips a:focus-visible { outline:3px solid #ffe3a2; outline-offset:2px; color:#fff !important; }
.christmas-mode .product-ui .seasonal-home-band .seasonal-home-chips .ui-icon { color:inherit; }
