/* Holiday offer testing: preserve the current storefront and product imagery. */
.ts-holiday-preview .ts-holiday-shipping{margin:8px auto 16px;padding:12px 16px;max-width:700px;border:1px solid #b89c63;border-radius:6px;background:#09271e;color:#fff5dc;font-size:14px;line-height:1.5;text-align:center}
.ts-holiday-shipping strong{color:#ffe4a7}
.ts-holiday-preview .ts-launch-sale>.ts-holiday-shipping{max-width:min(700px,calc(100% - 32px))}
.ts-holiday-shipping[hidden]{display:none}
.ts-holiday-countdown{text-align:center;padding:8px 16px 22px;color:#fff5dc}
.ts-holiday-countdown .ts-countdown-label{margin:0 0 10px;font-size:15px;font-weight:700;letter-spacing:.04em}
.ts-countdown-clock{display:flex;justify-content:center;gap:10px}
.ts-countdown-clock[hidden]{display:none}
.ts-countdown-unit{display:flex;flex-direction:column;min-width:70px;padding:10px 12px;background:#09271e;border:1px solid #b89c63;border-radius:6px}
.ts-countdown-unit strong{font-size:30px;line-height:1.1;font-variant-numeric:tabular-nums;color:#ffe4a7}
.ts-countdown-unit span{font-size:11px;margin-top:5px;text-transform:uppercase;letter-spacing:.06em}
.ts-holiday-countdown .ts-countdown-deadline{margin:12px 0 0;font-size:13px;line-height:1.5;color:#fff5dc}
.ts-countdown-status:empty{display:none}
@media(max-width:400px){.ts-countdown-clock{gap:6px}.ts-countdown-unit{min-width:54px;padding:9px 7px}.ts-countdown-unit strong{font-size:25px}}
.ts-holiday-preview .ts-launch-sale{background:#b6102b}
.ts-holiday-preview .ts-launch-sale-inner{max-width:1272px}
.ts-holiday-preview .ts-launch-sale summary{font-size:15px;min-height:52px}
.ts-holiday-preview .ts-launch-offers{padding-top:8px}
.ts-holiday-preview .ts-launch-category strong{font-size:clamp(30px,3vw,42px)}
.ts-holiday-preview .ts-launch-code code{background:#ffffff15}
.ts-holiday-product-offer{border-left:3px solid var(--red);padding:9px 12px;margin:12px 0;color:var(--ink);background:var(--panel);font-size:13px;line-height:1.6}
.ts-holiday-preview .woocommerce-cart .ts-launch-sale,.ts-holiday-preview .woocommerce-checkout .ts-launch-sale{background:#202126}
@media(max-width:760px){
 .ts-holiday-preview .ts-launch-sale summary{font-size:13px;align-items:center}
 .ts-holiday-preview .ts-launch-category strong{font-size:30px}
 .ts-holiday-preview .ts-launch-offers li{grid-template-columns:minmax(0,1fr) auto}
 .ts-holiday-preview .ts-launch-category span{font-size:13px}
 .ts-holiday-preview .ts-launch-code code{font-size:14px}
}
@media(max-width:360px){.ts-holiday-preview .ts-launch-sale summary{flex-wrap:wrap;justify-content:flex-start;gap:5px 12px}}

/* Christmas foreground: decorative layers stay clear of all pointer input. */
.ts-holiday-preview{--holiday-pine:#123b30;--holiday-gold:#efd293}
.ts-holiday-preview .site-header{border-bottom-color:#7e343b}
.ts-holiday-preview .site-header::after{
 content:"";position:absolute;left:0;right:0;bottom:-9px;height:13px;pointer-events:none;
 background:radial-gradient(ellipse at 12px 5px,#ffda83 0 3px,#ffda8320 4px,transparent 8px),radial-gradient(ellipse at 44px 5px,#e85764 0 3px,#e8576420 4px,transparent 8px),radial-gradient(ellipse at 76px 5px,#83c6a0 0 3px,#83c6a020 4px,transparent 8px);
 background-size:96px 13px;border-top:1px solid #718575;
}
.ts-holiday-preview .ts-launch-sale{
 background-color:var(--holiday-pine);
 background-image:radial-gradient(circle at 8% 18%,#ffffff88 0 1px,transparent 2px),radial-gradient(circle at 62% 72%,#ffffff66 0 1px,transparent 2px),radial-gradient(circle at 82% 20%,#ffffff55 0 1.5px,transparent 2.5px),linear-gradient(115deg,#193f32,#0e2a24);
 background-size:160px 90px,230px 120px,320px 180px,100% 100%;border-bottom:2px solid var(--holiday-gold);
}
.ts-holiday-preview .ts-launch-offers li+li{border-color:#ffffff40}
.ts-holiday-preview .ts-launch-category strong{color:#fff5dc}
.ts-holiday-preview .ts-launch-code code{border-color:var(--holiday-gold);color:#fff5dc;background:#08221b80}
.ts-holiday-preview .ts-launch-sale summary{color:#fff7e8}
.home-page.ts-holiday-preview .ts-home-hero{position:relative;isolation:isolate;box-shadow:inset 0 -3px #e6f2ef}
.home-page.ts-holiday-preview .ts-home-hero::before,
.home-page.ts-holiday-preview .ts-home-hero::after{
 content:"";position:absolute;bottom:-1px;z-index:4;width:clamp(90px,12vw,180px);height:clamp(105px,14vw,200px);
 background:url('../images/holiday-snowy-trees.svg') bottom center/contain no-repeat;pointer-events:none;
}
.home-page.ts-holiday-preview .ts-home-hero::before{left:-12px}
.home-page.ts-holiday-preview .ts-home-hero::after{right:-8px;transform:scaleX(-1);width:clamp(110px,15vw,220px);height:clamp(125px,17vw,240px)}
.home-page.ts-holiday-preview .ts-home-hero-media .ts-christmas-hat{
 position:absolute;display:block;left:61%;top:8%;width:clamp(85px,13vw,195px);aspect-ratio:220/160;
 background:url('../images/holiday-santa-hat.svg') center/contain no-repeat;z-index:5;transform:rotate(-13deg);pointer-events:none;
 filter:drop-shadow(0 6px 5px #0005);
}
.home-page.ts-holiday-preview .ts-spin-images .ts-christmas-hat{position:absolute;display:block;left:61%;top:8%;width:clamp(85px,13vw,195px);aspect-ratio:220/160;background:url('../images/holiday-santa-hat.svg') center/contain no-repeat;z-index:2;transform:rotate(-13deg);pointer-events:none;filter:drop-shadow(0 6px 5px #0005)}
.home-page.ts-holiday-preview .ts-spin-images::before,.home-page.ts-holiday-preview .ts-spin-images::after{content:"";position:absolute;bottom:0;z-index:1;width:clamp(85px,12vw,175px);height:clamp(100px,14vw,200px);background:url('../images/holiday-snowy-trees.svg') bottom center/contain no-repeat;pointer-events:none}
.home-page.ts-holiday-preview .ts-spin-images::before{left:-12px}
.home-page.ts-holiday-preview .ts-spin-images::after{right:-8px;transform:scaleX(-1)}
.home-page.ts-holiday-preview .ts-spin-eyebrow{border-color:var(--holiday-gold);color:#fff1d2}
.ts-holiday-product-offer{border-left-color:var(--holiday-gold);background:#15372e;color:#f4eee0}
.ts-christmas-snow{position:fixed;inset:0;overflow:hidden;pointer-events:none!important;z-index:45;contain:strict}
.ts-christmas-snow i{
 position:absolute;left:var(--snow-x);top:-12px;width:var(--snow-size);height:var(--snow-size);
 border-radius:50%;background:#fff;opacity:.6;box-shadow:0 0 4px #ffffff40;
 animation:ts-christmas-fall var(--snow-time) var(--snow-delay) linear infinite;
}
@keyframes ts-christmas-fall{from{transform:translate3d(-16px,-20px,0)}to{transform:translate3d(24px,calc(100vh + 30px),0)}}
@media(max-width:900px){
 .home-page.ts-holiday-preview .ts-home-hero-media .ts-christmas-hat{left:61%;top:10%;width:23%;max-width:170px}
 .home-page.ts-holiday-preview .ts-spin-images .ts-christmas-hat{left:61%;top:10%;width:23%;max-width:170px}
 .home-page.ts-holiday-preview .ts-spin-images::before,.home-page.ts-holiday-preview .ts-spin-images::after{width:80px;height:95px}
 .home-page.ts-holiday-preview .ts-home-hero::before{width:85px;height:100px}
 .home-page.ts-holiday-preview .ts-home-hero::after{width:110px;height:125px}
 .ts-christmas-snow i:nth-child(2n){display:none}
}
@media(prefers-reduced-motion:reduce){
 .ts-christmas-snow i{animation:none;display:none}
 .ts-christmas-snow i:nth-child(8n){display:block;top:calc(var(--snow-x) * .8);opacity:.35}
}
@media print{.ts-christmas-snow,.ts-christmas-hat,.ts-holiday-preview .site-header::after{display:none!important}.home-page.ts-holiday-preview .ts-home-hero::before,.home-page.ts-holiday-preview .ts-home-hero::after{content:none}}

/* Full Christmas storefront, with the checkout kept focused on the order. */
.ts-holiday-preview .ts-spin-images .ts-christmas-hat{visibility:hidden}
.ts-holiday-preview .site-header{background:#102c24}
.ts-holiday-preview .site-header::after{height:67px;bottom:-57px;background:url('../images/holiday-garland.svg') top center/280px 66.5px repeat-x;border:0}
.ts-holiday-preview .ts-launch-sale{padding-top:46px;background-color:#173d2e}
.ts-holiday-preview .ts-launch-sale summary{font-family:var(--font-display);font-size:20px;letter-spacing:.02em}
.ts-holiday-preview .ts-launch-offers{padding:12px 0 4px}
.ts-holiday-preview .ts-launch-offers li{position:relative}
.ts-holiday-preview .ts-launch-code code{background:#a21e32;border-color:#f4dca2;box-shadow:0 2px 0 #071b14}
.ts-holiday-preview .ts-launch-sale details[open]{padding-bottom:25px}
.ts-holiday-preview .ts-spin-cta{background:#b41f38;border:1px solid #efbc89;box-shadow:0 4px 0 #751426}
.ts-holiday-preview .ts-spin-cta:hover{background:#d02943}
.ts-holiday-preview .ts-spin-copy h1{color:#fff8e7;text-shadow:0 3px 20px #0008}
.ts-holiday-preview .ts-spin-images::before,.ts-holiday-preview .ts-spin-images::after{filter:drop-shadow(0 -2px 3px #f5ffff20)}
.home-page.ts-holiday-preview .ts-spin-images::before{width:clamp(110px,16vw,245px);height:clamp(130px,19vw,285px)}
.home-page.ts-holiday-preview .ts-spin-images::after{width:clamp(95px,13vw,195px);height:clamp(110px,16vw,240px)}
.ts-holiday-preview .ts-home-finder{background:linear-gradient(180deg,#e2eeea 0 3px,#18382c 3px,#0c0d0f 100%)}
.ts-holiday-preview .ts-model-grid{border-color:#7c8059}
.ts-holiday-preview .ts-model-grid article{background:linear-gradient(140deg,#17342b70,transparent)}
.ts-holiday-preview .ts-model-grid h3{color:#f4dbab}
.ts-holiday-preview ul.products li.product{border-color:#355345;box-shadow:0 -3px 0 #d9e9e2}
.ts-holiday-preview .product-info{background:linear-gradient(145deg,#19382d66,transparent)}
.ts-holiday-preview .ts-holiday-product-offer{border:1px solid #ad915b;border-left:4px solid #d5b76f;border-radius:3px;background:#153d2c;color:#fff2d7}
.ts-holiday-preview .site-footer{position:relative;background:#102b23;border-top:5px solid #e0ece7;padding-top:65px}
.ts-holiday-preview .site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:62px;background:url('../images/holiday-garland.svg') top center/260px 61.75px repeat-x;pointer-events:none}
.ts-christmas-greeting{padding:24px 30px;text-align:center;background:#8b1e30;color:#fff0ce;font-family:var(--font-display);font-size:20px;border-top:1px solid #d7bb7f}
.ts-christmas-greeting span{display:inline-block;padding:0 14px;color:#f6d184}
@media(max-width:760px){
 .ts-holiday-preview .ts-launch-sale summary{font-size:16px;flex-wrap:wrap;justify-content:center;gap:6px 16px;text-align:center}
 .ts-holiday-preview .ts-launch-sale summary>span:first-child{flex-basis:100%}
 .ts-holiday-preview .site-header::after{height:53px;bottom:-45px;background-size:220px 52.25px}
 .ts-holiday-preview .ts-spin-copy h1{font-size:clamp(38px,10vw,58px)}
 .ts-holiday-preview .ts-spin-copy{background:radial-gradient(ellipse at top left,#193c2e,#0b0d0f 75%)}
 .home-page.ts-holiday-preview .ts-spin-images::before{width:110px;height:130px}
 .home-page.ts-holiday-preview .ts-spin-images::after{width:90px;height:110px}
 .ts-christmas-greeting{font-size:17px;padding:22px 18px}
 .ts-christmas-greeting span{padding:0 5px}
}

/* Photographic holiday tree in the open studio background; original product frames stay intact. */
.home-page.ts-holiday-preview .ts-spin-images::before,
.home-page.ts-holiday-preview .ts-home-hero::before,
.home-page.ts-holiday-preview .ts-home-hero::after{content:none}
.home-page.ts-holiday-preview .ts-spin-images::after{
 content:"";position:absolute;left:auto;right:0;top:2%;bottom:auto;
 width:18%;height:50%;z-index:1;transform:none;filter:none;
 background:url('../images/holiday-christmas-tree.png') center bottom/contain no-repeat;
 pointer-events:none;
}
.home-page.ts-holiday-preview .ts-christmas-hat{display:none!important}
@media(max-width:760px){
 .home-page.ts-holiday-preview .ts-spin-images::after{right:0;top:1%;width:20%;height:43%}
 .home-page.ts-holiday-preview .ts-spin-copy h1{font-size:clamp(34px,9vw,54px)}
}
@media print{.home-page.ts-holiday-preview .ts-spin-images::after{display:none}}

/* Christmas scenery is now baked into each approved product photograph. */
.ts-holiday-preview .ts-launch-sale [hidden],
.ts-holiday-preview .ts-holiday-product-offer[hidden]{display:none!important}
.ts-holiday-announcement{font-weight:700;max-width:900px;margin:0 auto 16px;line-height:1.5}
.home-page.ts-holiday-preview .ts-spin-images::before,
.home-page.ts-holiday-preview .ts-spin-images::after{content:none!important;display:none!important}
