/* OSP Seasons — additions only. Original navigation colors and product pages are untouched. */
[data-osp-season]{--osp-season-bg:#241735;--osp-season-accent:#ffc27c;--osp-season-soft:#ecd9ee;--osp-season-glow:#df68b3}
[data-osp-season="christmas"]{--osp-season-bg:#10372e;--osp-season-accent:#f4d28a;--osp-season-soft:#e3eee5;--osp-season-glow:#e8bd63}
[data-osp-season="newyear"]{--osp-season-bg:#131d39;--osp-season-accent:#ffe1a0;--osp-season-soft:#e6e8f4;--osp-season-glow:#e8bd63}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-welcome{grid-template-columns:minmax(0,1.8fr) minmax(190px,1fr);gap:16px;padding:clamp(24px,4vw,46px);background:var(--osp-season-bg);background:radial-gradient(ellipse at 90% 95%,color-mix(in srgb,var(--osp-season-accent) 20%,transparent),transparent 58%),var(--osp-season-bg);border-color:var(--osp-season-glow);box-shadow:0 0 0 3px #efc89b20,0 0 20px color-mix(in srgb,var(--osp-season-glow) 42%,transparent);padding-bottom:48px}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-welcome h2{color:#fff6e9;font-size:clamp(28px,3.1vw,44px)}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-welcome h2 span{color:var(--osp-season-accent)}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-welcome p,#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-trust{color:var(--osp-season-soft)}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-eyebrow{color:var(--osp-season-accent)}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-mascot{width:100%;height:auto;min-width:0;align-self:center;isolation:isolate}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-mascot img{width:100%;height:auto;max-width:380px;max-height:none;filter:drop-shadow(0 12px 20px #0005);animation:ospSeasonFloat 6s ease-in-out infinite}
#osp-home-links-v3 .osp-season-mascot-button{display:block;background:none;border:0;box-shadow:none;padding:0;margin:0;width:100%;min-height:0;line-height:1;cursor:pointer;border-radius:50%;text-transform:none;opacity:1}
#osp-home-links-v3 .osp-season-mascot-button:focus-visible,#osp-home-links-v3 .osp-season-pause:focus-visible{outline:3px solid #ffc27c;outline-offset:5px}
#osp-home-links-v3 .osp-season-mascot-button:disabled{cursor:default;opacity:1}
#osp-home-links-v3 .osp-season-nav-icon{display:none}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-updates .osp-home-button-symbol>em,#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-updates .osp-home-button-symbol>i{display:none}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-season-nav-icon{display:block;width:49px;height:49px;max-width:none;object-fit:contain;animation:ospSeasonFloat 4.7s ease-in-out infinite;filter:drop-shadow(0 3px 4px #0005)}
.osp-season-atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:inherit;z-index:0}
.osp-season-web{position:absolute;width:74px;height:74px;top:-7px;right:-7px;opacity:.27;transform:rotate(8deg)}
.osp-season-bat{position:absolute;width:35px;height:35px;right:17%;top:7%;opacity:0;animation:ospSeasonBat 22s ease-in-out infinite}
.osp-season-atmosphere>i{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffd69b;box-shadow:0 0 10px #ffca73;left:calc(8% + var(--osp-i)*10%);top:calc(9% + var(--osp-i)*6%);animation:ospSeasonTwinkle 5s ease-in-out infinite;animation-delay:calc(var(--osp-i)*-.8s)}
[data-osp-season="christmas"] .osp-season-web,[data-osp-season="christmas"] .osp-season-bat,[data-osp-season="newyear"] .osp-season-web,[data-osp-season="newyear"] .osp-season-bat{display:none}
[data-osp-season="christmas"] .osp-season-atmosphere>i{width:5px;height:5px;background:#fff3d5;animation:ospSeasonSnow 13s linear infinite;animation-delay:calc(var(--osp-i)*-1.6s)}
[data-osp-season="newyear"] .osp-season-atmosphere>i{width:5px;height:5px;transform:rotate(45deg);border-radius:0}
#osp-home-links-v3 .osp-season-pause{position:absolute;bottom:12px;left:26px;margin:0;padding:4px 8px;min-height:24px;font-family:inherit;font-weight:600;font-size:11px;line-height:1.4;letter-spacing:0;text-transform:none;color:#fff3db;background:#ffffff12;border:1px solid #ffffff30;border-radius:20px;box-shadow:none;z-index:4}
[data-osp-season="off"] .osp-season-atmosphere,[data-osp-season="off"] .osp-season-pause,[data-osp-season="off"]>.osp-season-countdown-heading,.osp-season-ornament[data-osp-season="off"],.osp-season-picks[hidden]{display:none!important}
.osp-season-burst{position:absolute;inset:0;pointer-events:none;display:grid;place-items:center;z-index:5}
.osp-season-burst i{position:absolute;color:#ffe1a0;font-size:22px;font-style:normal;animation:ospSeasonBurst 1s ease-out forwards;filter:drop-shadow(0 0 4px #ffb84e)}
.ospb-shelf,.ospb-sale-section,.ospb-spotlight,.osps-intro{position:relative}
.osp-season-ornament{position:absolute;right:12px;top:3px;width:48px;height:48px;pointer-events:none;z-index:2}
.osp-season-ornament img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 4px #301a1255)}
.ospb-shelf>.osp-season-ornament{right:104px;top:2px;width:40px;height:40px}
.ospb-spotlight>.osp-season-ornament{right:12px;top:8px}
.osps-intro>.osp-season-ornament{right:20px;top:18px;width:55px;height:55px}
.osp-season-picks{max-width:1240px;margin:24px auto}
.osp-season-countdown-heading{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:16px;align-items:center;text-align:left;max-width:780px;margin:0 auto 10px}
.osp-season-kicker{display:block;color:var(--osp-season-soft);font:700 10px/1.4 sans-serif;letter-spacing:.14em;margin-bottom:8px}
.osp-season-sale-title{display:block;color:#fff7e9;font-size:clamp(20px,2.8vw,32px);font-weight:800;line-height:1.15}
.osp-season-promo{display:block;color:var(--osp-season-accent);font-size:clamp(27px,3.5vw,42px);font-weight:850;line-height:1.15;margin-top:7px}
.osp-season-countdown-art{display:block;width:150px;height:150px;object-fit:contain;margin:-10px 0;filter:drop-shadow(0 6px 10px #0004)}
.osp-countdown[data-osp-season]:not([data-osp-season="off"]){color:#fff7e9!important;background:radial-gradient(ellipse at 90% 10%,#ffffff0e,transparent 50%),var(--osp-season-bg)!important;border-color:var(--osp-season-accent)!important;padding:24px clamp(14px,4vw,34px)!important;--osp-timer-color:var(--osp-season-accent)!important;--osp-timer-bg:#ffffff0e!important;--osp-timer-border:#ffffff38!important;--osp-urgency-color:var(--osp-season-glow)!important}
.osp-countdown[data-osp-season]:not([data-osp-season="off"]) .osp-countdown-message{font-size:clamp(16px,2vw,23px);line-height:1.6}
.osp-countdown[data-osp-season]:not([data-osp-season="off"]) .osp-countdown-unit{color:var(--osp-season-accent)!important;background:#ffffff0c!important;border-color:#ffffff38!important}
.osp-countdown[data-osp-season]:not([data-osp-season="off"]) .osp-countdown-cta{margin-top:14px}
.osp-season-paused [data-osp-season]:not([data-osp-season="off"]) *,.osp-season-paused [data-osp-season]:not([data-osp-season="off"]) *::before,.osp-season-paused [data-osp-season]:not([data-osp-season="off"]) *::after{animation-play-state:paused!important}
@keyframes ospSeasonFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(1deg)}}
@keyframes ospSeasonTwinkle{0%,100%{opacity:.2}50%{opacity:.75}}
@keyframes ospSeasonBat{0%,76%,100%{opacity:0;transform:translate(45px,8px) rotate(-8deg)}80%,91%{opacity:.6}96%{opacity:0;transform:translate(-180px,-20px) rotate(10deg)}}
@keyframes ospSeasonSnow{0%{transform:translateY(-30px);opacity:0}15%,75%{opacity:.45}100%{transform:translate(20px,320px);opacity:0}}
@keyframes ospSeasonBurst{0%{opacity:1;transform:rotate(var(--osp-angle)) translateY(10px) scale(.3)}100%{opacity:0;transform:rotate(var(--osp-angle)) translateY(-95px) scale(1.1)}}
@media(max-width:640px){
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-welcome{grid-template-columns:1fr;padding:25px 23px 40px;gap:0}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-welcome h2{font-size:clamp(28px,7.3vw,38px)}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-mascot{width:min(230px,75%);margin:8px 0 -16px;justify-self:end}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-trust{max-width:none}
.osp-season-countdown-heading{grid-template-columns:minmax(0,1fr) 104px;gap:4px;margin-bottom:15px}
.osp-season-countdown-art{width:104px;height:118px;margin:0}
.osp-season-sale-title{font-size:20px}.osp-season-promo{font-size:29px}.osp-season-kicker{font-size:8px;letter-spacing:.08em}
.osp-countdown[data-osp-season]:not([data-osp-season="off"]) .osp-countdown-timer{display:flex;justify-content:center;gap:4px;max-width:100%;margin:10px auto 0!important;flex-wrap:wrap}
.osp-countdown[data-osp-season]:not([data-osp-season="off"]) .osp-countdown-unit{min-width:0;gap:3px;padding:7px 5px;font-size:20px}
.osp-countdown[data-osp-season]:not([data-osp-season="off"]) .osp-countdown-unit small{font-size:10px}
.osps-intro>.osp-season-ornament{right:12px;top:8px;width:34px;height:34px}
}
@media(prefers-reduced-motion:reduce){[data-osp-season]:not([data-osp-season="off"]) *,[data-osp-season]:not([data-osp-season="off"]) *::before,[data-osp-season]:not([data-osp-season="off"]) *::after{animation:none!important;transition:none!important}.osp-season-bat{display:none}}

.osp-countdown[data-osp-season]:not([data-osp-season="off"]) .osp-countdown-timer{background:#ffffff08;color:var(--osp-season-accent)}
@media(max-width:640px){.osp-season-promo{font-size:clamp(20px,6.5vw,26px)}.ospb-shelf>.osp-season-ornament{right:6px;top:43px;width:23px;height:23px;opacity:.9}}
@media(max-width:640px){
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-welcome{display:grid}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-mascot{position:relative;right:auto;bottom:auto}
#osp-home-links-v3[data-osp-season]:not([data-osp-season="off"]) .osp-home-trust{padding-right:0}
}

.osp-countdown[data-osp-season]:not([data-osp-season="off"]) .osp-countdown-style-plain .osp-countdown-unit{background:transparent!important;border:0!important;padding:0 .1em}
