/* Refined seasonal design, promoted from the approved preview. */

.hero .hero-description{max-width:700px}.closing{background:#454b32}.closing .button{color:#454b32}
.holiday-story{background:#532c35;color:#f6f2e9;padding:85px max(5.6vw,24px)}.story-grid{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}.story-grid h2{font-size:clamp(48px,4.5vw,72px);font-weight:400;line-height:1.05;margin:25px 0 30px}.story-grid p:not(.eyebrow){max-width:480px;color:#eadfda;line-height:1.7}.story-grid .button{margin-top:30px;color:#532c35}.story-grid .concept-note{font-size:12px;margin-top:20px;max-width:460px}.holiday-visual{text-align:center}.holiday-portrait{--house-wall:#624c4e;--house-trim:#d0c4a7;--sky:#532c35;--window:#d2b57c;--ground:#63424a;--roof:#463e40;--leaf:#6f805d;transition:background .4s;border-radius:45% 45% 0 0}.holiday-portrait svg{width:100%;display:block}.holiday-portrait .bulb{fill:#fff3cf}.holiday-portrait .bulb-glow{opacity:.28;transition:opacity .4s}.holiday-portrait .glow-soft{opacity:.12;filter:blur(2px)}.story-grid .lighting-caption{max-width:none;font-size:12px;margin-top:12px;color:#d3c5c2}
.year-round-price strong#year-round-total{font-size:clamp(48px,4.5vw,74px);line-height:1.05}.year-season-price{font-size:14px!important;line-height:1.4!important}.year-round-note{max-width:620px}
@media(max-width:760px){.hero .hero-description{max-width:360px}.hero .hero-description br{display:none}.holiday-story{padding:52px 24px}.story-grid{grid-template-columns:1fr;gap:24px}.story-grid h2{font-size:clamp(43px,11vw,66px);margin:22px 0}.story-grid p:not(.eyebrow){font-size:16px}.story-grid .concept-note,.story-grid .lighting-caption{font-size:12px}.story-grid .button{font-size:15px;padding-inline:18px}.year-round-price strong#year-round-total{font-size:52px}.year-season-price{font-size:11px!important}.year-round-levels button{font-size:12px}.hero .hero-description{line-height:1.65}}
@media(prefers-reduced-motion:reduce){.holiday-portrait,.holiday-portrait .bulb-glow{transition:none}}

/* Quiet holiday life: a traveling glimmer and a breeze, with no controls needed. */
.holiday-portrait .glow-inner{animation:holiday-glimmer 8s ease-in-out infinite;animation-delay:var(--glimmer-delay)}
.holiday-portrait .glow-soft{animation:holiday-halo 8s ease-in-out infinite;animation-delay:var(--glimmer-delay)}
.holiday-portrait .holiday-spark{opacity:0;transform-origin:0 0;animation:holiday-sparkle 8s ease-in-out infinite;animation-delay:var(--glimmer-delay)}
.holiday-wreath{transform-box:view-box;animation:holiday-wreath-breeze 7.5s ease-in-out infinite;animation-delay:-2s}
.holiday-sprigs{transform-box:view-box;transform-origin:0 -35px;animation:holiday-greenery-breeze 6.8s ease-in-out infinite;animation-delay:var(--breeze-delay)}
.holiday-portrait .glow-inner,.holiday-portrait .glow-soft,.holiday-portrait .holiday-spark,.holiday-portrait .holiday-wreath,.holiday-portrait .holiday-sprigs{animation-play-state:paused}
.holiday-portrait.is-alive .glow-inner,.holiday-portrait.is-alive .glow-soft,.holiday-portrait.is-alive .holiday-spark,.holiday-portrait.is-alive .holiday-wreath,.holiday-portrait.is-alive .holiday-sprigs{animation-play-state:running}
@keyframes holiday-glimmer{0%,34%,100%{opacity:.22}12%{opacity:.58}22%{opacity:.3}}
@keyframes holiday-halo{0%,34%,100%{opacity:.08}12%{opacity:.22}22%{opacity:.12}}
@keyframes holiday-sparkle{0%,5%,27%,100%{opacity:0;transform:scale(.35) rotate(-12deg)}13%{opacity:.8;transform:scale(1) rotate(0deg)}20%{opacity:.2;transform:scale(.7) rotate(8deg)}}
@keyframes holiday-wreath-breeze{0%,100%{transform:rotate(-1.2deg)}48%{transform:rotate(1.5deg)}72%{transform:rotate(.4deg)}}
@keyframes holiday-greenery-breeze{0%,100%{transform:rotate(-1.7deg)}45%{transform:rotate(2.3deg)}72%{transform:rotate(.3deg)}}
@media(prefers-reduced-motion:reduce){.holiday-portrait .glow-inner,.holiday-portrait .glow-soft,.holiday-portrait .holiday-spark,.holiday-portrait .holiday-wreath,.holiday-portrait .holiday-sprigs{animation:none!important;transform:none!important}.holiday-portrait .holiday-spark{display:none}.holiday-portrait .glow-inner{opacity:.28}.holiday-portrait .glow-soft{opacity:.12}}

.holiday-portrait .holiday-snow{opacity:0;animation:holiday-snow-drift var(--snow-duration) linear infinite;animation-delay:var(--snow-delay);animation-play-state:paused}
.holiday-portrait .holiday-moon-halo{animation:holiday-moon-glow 10s ease-in-out infinite;animation-play-state:paused}
.holiday-portrait.is-alive .holiday-snow,.holiday-portrait.is-alive .holiday-moon-halo{animation-play-state:running}
@keyframes holiday-snow-drift{0%{opacity:0;transform:translate(0,-20px)}18%{opacity:.72}72%{opacity:.55}100%{opacity:0;transform:translate(var(--snow-drift),56px)}}
@keyframes holiday-moon-glow{0%,100%{opacity:.04}50%{opacity:.09}}
@media(prefers-reduced-motion:reduce){.holiday-portrait .holiday-snow{display:none;animation:none!important}.holiday-portrait .holiday-moon-halo{animation:none!important;opacity:.045}}

/* Soft fabric movement anchored at the knot; bulbs retain their original glimmer. */
.holiday-bow{transform-origin:0 0;animation:holiday-bow-lilt 4.2s ease-in-out infinite}
.holiday-ribbon-tail{transform-origin:0 0;animation:holiday-ribbon-flow 3.6s ease-in-out infinite}
.holiday-ribbon-tail--right{animation-name:holiday-ribbon-flow-right;animation-duration:4.1s;animation-delay:-1.3s}
.holiday-flake-turn{transform-origin:0 0;animation:holiday-flake-turn var(--snow-duration) ease-in-out infinite;animation-delay:var(--snow-delay)}
.holiday-portrait .holiday-bow,.holiday-portrait .holiday-ribbon-tail,.holiday-portrait .holiday-flake-turn{animation-play-state:paused}
.holiday-portrait.is-alive .holiday-bow,.holiday-portrait.is-alive .holiday-ribbon-tail,.holiday-portrait.is-alive .holiday-flake-turn{animation-play-state:running}
@keyframes holiday-bow-lilt{0%,100%{transform:rotate(-1.5deg)}50%{transform:rotate(2deg)}}
@keyframes holiday-ribbon-flow{0%,100%{transform:rotate(-5deg) skewX(-3deg)}40%{transform:rotate(7deg) skewX(6deg)}72%{transform:rotate(1deg) skewX(-2deg)}}
@keyframes holiday-ribbon-flow-right{0%,100%{transform:rotate(3deg) skewX(2deg)}45%{transform:rotate(-7deg) skewX(-5deg)}75%{transform:rotate(-1deg) skewX(2deg)}}
@keyframes holiday-flake-turn{from{transform:rotate(0)}to{transform:rotate(var(--flake-turn))}}
@media(prefers-reduced-motion:reduce){.holiday-portrait .holiday-bow,.holiday-portrait .holiday-ribbon-tail,.holiday-portrait .holiday-flake-turn{animation:none!important;transform:none!important}}
