.seasonal-store,.seasonal-promo,.seasonal-index{--season-accent:#185b43;--season-bg:#f4f1e7;color:#20392f;font-family:inherit}
.seasonal-store{background:var(--season-bg);border-radius:24px;overflow:hidden;margin:18px auto 48px;max-width:1320px;scroll-margin-top:90px}
.seasonal-store a,.seasonal-index a,.seasonal-promo a{color:inherit}.seasonal-kicker{font-size:.7rem;font-weight:750;letter-spacing:.18em;line-height:1.7;text-transform:uppercase;color:var(--season-accent,#185b43)}
.seasonal-hero{display:grid;grid-template-columns:1fr 1fr;min-height:600px;position:relative}
.seasonal-hero-copy{padding:50px 56px;align-self:center;position:relative;z-index:1}.seasonal-back{display:inline-block;font-size:.78rem;text-decoration:none;margin-bottom:32px}.seasonal-mark{display:block;color:var(--season-accent);font-size:2.8rem;line-height:1;margin:18px 0}
.seasonal-hero h1,.seasonal-index h1,.seasonal-empty h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.8rem,4.3vw,4.6rem);font-weight:400;line-height:1.05;letter-spacing:-.045em;margin:20px 0 24px;text-wrap:balance}
.seasonal-lead{font-size:1.05rem;line-height:1.8;max-width:420px;color:#496054}.seasonal-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--season-accent,#185b43);color:#fff!important;padding:16px 25px;border:1px solid transparent;border-radius:6px;font:600 .88rem/1.3 inherit;text-decoration:none;cursor:pointer;margin:12px 0}.seasonal-button:hover{filter:brightness(.88)}.seasonal-button:disabled{opacity:.55;cursor:wait}
.seasonal-fine{font-size:.76rem;line-height:1.7;color:#546359}.seasonal-hero-image{margin:0;position:relative;background:#e9e8df;min-width:0}.seasonal-hero-image img{display:block;width:100%;height:100%;max-height:740px;object-fit:contain;padding:20px 24px 72px;box-sizing:border-box}.seasonal-hero-image figcaption{position:absolute;left:24px;right:24px;bottom:20px;font-size:.78rem;color:#1e4031;background:#ffffffdf;padding:12px 16px;border-radius:5px;text-align:center;backdrop-filter:blur(8px)}
.theme-christmas .seasonal-hero-copy{background-image:radial-gradient(circle at 4% 12%,#b9904124 0 3px,transparent 4px),radial-gradient(circle at 91% 80%,#b9904129 0 5px,transparent 6px),radial-gradient(circle at 80% 20%,#b9904126 0 2px,transparent 3px);background-size:180px 220px}.theme-christmas .seasonal-mark{color:#b18b43}.theme-christmas .seasonal-closing{background:#164c3b;color:#fff5d8}.theme-halloween{color:#35262a}.theme-halloween .seasonal-closing{background:#382932;color:#fff0d5}.theme-halloween .seasonal-mark{font-size:3rem}
.seasonal-service-strip{display:flex;justify-content:space-around;gap:16px;padding:20px 30px;border-top:1px solid #20392f14;border-bottom:1px solid #20392f14;font-size:.73rem;color:#526054}
.seasonal-collection{padding:70px 56px 30px;scroll-margin-top:90px}.seasonal-section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}.seasonal-section-heading h2,.seasonal-buy h2,.seasonal-closing h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,3vw,3rem);font-weight:400;line-height:1.15;letter-spacing:-.025em;margin:12px 0}.seasonal-section-heading>p{font-size:.8rem}
.seasonal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:24px}.seasonal-card{background:#ffffffa8;border:1px solid #20392f12;border-radius:12px;overflow:hidden;max-width:520px}.seasonal-card-image{display:block;overflow:hidden}.seasonal-card-image img{width:100%;aspect-ratio:1;object-fit:cover;height:auto;display:block;transition:transform .25s}.seasonal-card-image:hover img{transform:scale(1.025)}.seasonal-card-copy{padding:24px}.seasonal-card h3{font-size:1.15rem;margin:10px 0}.seasonal-card h3 a{text-decoration:none}.seasonal-card-copy>p:not(.seasonal-kicker){font-size:.85rem;line-height:1.65;min-height:2.8em;color:#59645d}.seasonal-card-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:22px;font-size:.82rem}.seasonal-card-bottom a{text-underline-offset:4px}
.seasonal-detail{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:70px 56px;scroll-margin-top:90px}.seasonal-gallery{min-width:0}.seasonal-gallery>img{width:100%;height:auto;max-height:650px;object-fit:contain;background:#ecece4;border-radius:12px;margin-top:24px}.seasonal-gallery video{display:block;width:100%;max-height:640px;background:#16261f;border-radius:12px;object-fit:contain}.seasonal-credit{font-size:.7rem;color:#5d655f;line-height:1.6;margin-top:15px}.seasonal-credit summary{cursor:pointer}.seasonal-description{line-height:1.85;color:#405349;white-space:pre-line}.seasonal-size{padding:14px 0;border-block:1px solid #20392f1a;font-size:.83rem}.seasonal-price{font-size:1.7rem;display:block;margin-top:25px}.seasonal-buy label{display:flex;flex-direction:column;gap:8px;font-size:.8rem;font-weight:600;margin:20px 0 8px}.seasonal-buy select,.seasonal-buy input{font:inherit;padding:12px;border:1px solid #7d8c7e;border-radius:5px;background:#fff;max-width:100%;color:#20392f}.seasonal-buy select{width:100px}.seasonal-total{display:flex;justify-content:space-between;gap:16px;font-size:.82rem;border-top:1px solid #20392f28;padding-top:22px;margin:24px 0 8px}.seasonal-buy>.seasonal-button{width:100%}.seasonal-error{color:#9c2330;font-size:.9rem}
.seasonal-closing{padding:60px 30px;text-align:center;border-top:1px solid #20392f14}.seasonal-closing>span{font-size:2rem}.seasonal-closing p{font-size:.9rem;opacity:.85}.seasonal-closing a{display:inline-block;margin-top:12px}.seasonal-empty,.seasonal-index{padding:65px 24px 90px;max-width:1180px;margin:auto}.seasonal-empty{text-align:center}
.seasonal-banner{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;background:var(--season-accent,#185b43);color:#fff8e9;padding:12px 22px;font-size:.77rem;text-align:center}.seasonal-banner a{color:inherit;text-decoration:none}.seasonal-banner strong{margin-left:16px}.seasonal-banner>a+a{text-decoration:underline;text-underline-offset:4px}
.seasonal-banner-preview{padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:750;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.seasonal-banner-preview:focus-visible{outline:3px solid #fff8e9;outline-offset:4px}
@media(max-width:850px){.seasonal-hero-copy{padding:35px}.seasonal-hero{min-height:480px}.seasonal-detail{gap:32px;padding:48px 30px}.seasonal-collection{padding:48px 30px 16px}.seasonal-hero h1{font-size:3rem}.seasonal-service-strip{font-size:.68rem}}
@media(max-width:600px){.seasonal-store{margin:12px 0 32px;border-radius:14px}.seasonal-hero{grid-template-columns:1fr}.seasonal-hero-copy{padding:30px 26px}.seasonal-back{margin-bottom:16px}.seasonal-hero h1{font-size:3rem;max-width:400px}.seasonal-hero-image{max-height:480px}.seasonal-hero-image img{aspect-ratio:1.1;height:100%;max-height:480px}.seasonal-service-strip{flex-direction:column;gap:8px;text-align:center}.seasonal-detail{grid-template-columns:1fr;padding:36px 22px;gap:32px}.seasonal-collection{padding:38px 22px 8px}.seasonal-section-heading{align-items:start;flex-direction:column;gap:4px}.seasonal-section-heading>p{margin-top:0}.seasonal-gallery video{max-height:540px}.seasonal-closing{padding:40px 24px}.seasonal-banner strong{display:block;margin:4px 0 0}.seasonal-index h1{font-size:3rem}}
@media(prefers-reduced-motion:reduce){.seasonal-card-image img{transition:none}}

/* Shared catalog: every available design is visible in its own holiday collection. */
.seasonal-index{max-width:1280px;padding-top:48px}
.seasonal-index-intro{text-align:center;margin:0 auto 46px;max-width:740px}
.seasonal-index-intro>p:not(.seasonal-kicker){color:#667168;line-height:1.7}
.seasonal-index-count{display:inline-block;margin-top:12px;font-size:.76rem;color:#617165;letter-spacing:.035em}
.seasonal-showcase{--season-ink:var(--season-accent);--season-spark:var(--season-bg);background:var(--season-bg);border:1px solid color-mix(in srgb,var(--season-accent) 16%,transparent);border-radius:20px;overflow:hidden;margin-bottom:32px;color:var(--season-accent)}
.seasonal-showcase-heading{display:flex;align-items:center;gap:22px;position:relative;isolation:isolate;overflow:hidden;background:var(--season-ink);color:var(--season-bg);padding:28px 32px}
.seasonal-showcase-heading::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.18;background-image:radial-gradient(circle,var(--season-spark) 1px,transparent 1.6px);background-size:24px 24px;mask-image:linear-gradient(90deg,transparent 45%,#000)}
.seasonal-showcase-symbol{font-size:3rem;line-height:1.2;color:var(--season-spark);flex-shrink:0}
.seasonal-showcase-heading .seasonal-kicker{color:inherit;opacity:.75;font-size:.6rem;margin:0 0 5px}
.seasonal-showcase-heading h2,.seasonal-showcase-heading h3{font-family:Georgia,serif;font-weight:400;font-size:2.5rem;letter-spacing:-.025em;line-height:1.1;margin:0}
.seasonal-showcase-description{font-size:.83rem;line-height:1.65;max-width:600px;margin:10px 0 0;opacity:.85}
.seasonal-design-count{white-space:nowrap;border:1px solid currentColor;border-radius:30px;padding:7px 12px;font-size:.72rem;margin-left:auto;flex-shrink:0}
.seasonal-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,225px),1fr));gap:20px;padding:28px 28px 0}
.seasonal-product-tile{display:flex;flex-direction:column;min-width:0;max-width:370px;text-decoration:none;border:1px solid color-mix(in srgb,var(--season-accent) 12%,transparent);border-radius:12px;overflow:hidden;background:#fffc;transition:transform .18s,box-shadow .18s}
.seasonal-product-tile:hover{transform:translateY(-3px);box-shadow:0 9px 22px #0000000f}
.seasonal-product-photo{background:#fff;overflow:hidden}
.seasonal-product-photo img{display:block;width:100%;height:auto;aspect-ratio:1.12;object-fit:contain;mix-blend-mode:multiply}
.seasonal-product-info{padding:18px;display:flex;flex-direction:column;flex:1}
.seasonal-product-info :is(h3,h4){font-size:1rem;line-height:1.4;margin:0;font-weight:750;color:var(--season-accent)}
.seasonal-product-info>p{font-size:.76rem;line-height:1.6;color:#657066;margin:8px 0 18px}
.seasonal-product-price{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;font-size:.83rem;padding-top:12px}
.seasonal-product-price>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid color-mix(in srgb,var(--season-accent) 25%,transparent);border-radius:50%;font-size:1rem}
.seasonal-collection-link{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 30px;font-size:.8rem;font-weight:700;text-decoration:none}
.seasonal-collection-link:hover{text-decoration:underline;text-underline-offset:4px}
.seasonal-showcase.theme-christmas{--season-ink:#164c3b;--season-spark:#dfbe73}
.seasonal-showcase.theme-halloween{--season-ink:#382332;--season-spark:#ffaf62}
.seasonal-showcase.theme-valentines-day,.seasonal-showcase.theme-mothers-day{--season-spark:#ffcddd}
.seasonal-showcase.theme-hanukkah{--season-spark:#d8e6ff}
.seasonal-showcase.theme-new-year,.seasonal-showcase.theme-black-friday,.seasonal-showcase.theme-graduation{--season-ink:#292332;--season-spark:#edd28d}
/* A single-product collection gets a deliberate landscape feature card. */
.seasonal-product-tile:only-child{max-width:none;display:grid;grid-template-columns:minmax(180px,30%) 1fr}
.seasonal-product-tile:only-child .seasonal-product-info{justify-content:center;padding:28px}
.seasonal-product-tile:only-child .seasonal-product-price{margin-top:8px}
.seasonal-promo{padding:0;border:0;border-radius:20px;width:min(1060px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 48px);overflow:hidden;background:var(--season-bg);box-shadow:0 25px 100px #0004}
.seasonal-promo[open]{display:flex;flex-direction:column}
.seasonal-promo::backdrop{background:#17251ed1;backdrop-filter:blur(5px)}
.seasonal-promo-header{position:relative;padding:25px 64px 20px 30px;flex-shrink:0;border-bottom:1px solid #20392f18}
.seasonal-promo-header .seasonal-kicker{margin:0 0 8px;font-size:.62rem}
.seasonal-promo-header h2{font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,2.6rem);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0;color:var(--season-accent)}
.seasonal-promo-header .seasonal-fine{margin:10px 0 0}
.seasonal-close{position:absolute;z-index:2;right:16px;top:16px;width:38px;height:38px;border:1px solid #20392f30;border-radius:50%;background:#fffffff0;color:#20392f;font-size:1.5rem;cursor:pointer}
.seasonal-promo-collections{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:20px;scrollbar-gutter:stable}
.seasonal-promo-collections>.seasonal-showcase:last-child{margin-bottom:0}
.is-compact{border-radius:12px;margin-bottom:20px}
.is-compact .seasonal-showcase-heading{padding:17px 22px;gap:14px}
.is-compact .seasonal-showcase-symbol{font-size:2rem}
.is-compact .seasonal-showcase-heading h3{font-size:1.7rem}
.is-compact .seasonal-showcase-heading .seasonal-kicker,.is-compact .seasonal-showcase-description{display:none}
.is-compact .seasonal-product-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr));gap:14px;padding:18px 18px 0}
.is-compact .seasonal-product-info{padding:13px}
.is-compact .seasonal-product-info :is(h3,h4){font-size:.86rem}
.is-compact .seasonal-product-info>p{font-size:.7rem;margin-bottom:8px}
.is-compact .seasonal-product-price{font-size:.77rem;padding-top:8px}
.is-compact .seasonal-collection-link{padding:17px 20px;font-size:.75rem}
.is-compact .seasonal-product-tile:only-child{max-width:none;grid-template-columns:180px 1fr}
.seasonal-promo a:focus-visible,.seasonal-promo button:focus-visible,.seasonal-promo-collections:focus-visible,.seasonal-index a:focus-visible,.seasonal-store a:focus-visible,.seasonal-store button:focus-visible{outline:3px solid #c9963e;outline-offset:3px}
.site-nav nav a.nav-holiday{display:inline-flex;align-items:center;gap:7px;background:var(--season-accent);color:var(--season-bg);border:1px solid transparent;border-radius:20px;font-weight:750;padding:9px 13px;box-shadow:inset 0 0 0 2px #ffffff0c}
.site-nav nav a.nav-holiday.theme-halloween{background:#382332;color:#ffc180;border-color:#b36e33}
.site-nav nav a.nav-holiday.theme-christmas{background:#164c3b;color:#ffe8aa;border-color:#b9934e}
.site-nav nav a.nav-holiday.theme-new-year,.site-nav nav a.nav-holiday.theme-black-friday,.site-nav nav a.nav-holiday.theme-graduation{background:#292332;color:#edd28d;border-color:#b9934e}
.site-nav nav a.nav-holiday:hover,.site-nav nav a.nav-holiday.active{box-shadow:inset 0 0 0 2px currentColor}
@media(max-width:600px){
 .seasonal-index{padding:32px 12px 50px}.seasonal-index-intro{margin-bottom:30px}.seasonal-index h1{font-size:2.7rem}
 .seasonal-showcase{border-radius:14px}.seasonal-showcase-heading{padding:22px 18px;gap:12px;flex-wrap:wrap}.seasonal-showcase-heading>div{flex:1;min-width:0}.seasonal-showcase-heading h2{font-size:2rem}.seasonal-showcase-symbol{font-size:2rem}.seasonal-design-count{font-size:.64rem;padding:5px 8px}.seasonal-showcase-description{font-size:.75rem}
 .seasonal-product-grid,.is-compact .seasonal-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px 12px 0}
 .seasonal-product-info,.is-compact .seasonal-product-info{padding:11px}.seasonal-product-info :is(h3,h4){font-size:.86rem}.seasonal-product-info>p{font-size:.71rem}.seasonal-product-price{font-size:.75rem}.seasonal-product-price>span{width:23px;height:23px;flex-shrink:0}
 .seasonal-product-tile:only-child,.is-compact .seasonal-product-tile:only-child{grid-column:1/-1;grid-template-columns:42% 1fr;max-width:none}.seasonal-product-tile:only-child .seasonal-product-info{padding:15px}.seasonal-product-tile:only-child .seasonal-product-photo{display:flex;align-items:center}
 .seasonal-collection-link{padding:18px}.seasonal-promo{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:15px}.seasonal-promo-header{padding:22px 55px 16px 18px}.seasonal-promo-header h2{font-size:1.8rem}.seasonal-promo-header .seasonal-fine{font-size:.67rem}.seasonal-close{right:10px;top:12px}
 .seasonal-promo-collections{padding:10px;scrollbar-gutter:auto}.is-compact .seasonal-showcase-heading{padding:14px;gap:9px}.is-compact .seasonal-showcase-heading h3{font-size:1.5rem}.is-compact .seasonal-product-info>p{display:none}.is-compact .seasonal-product-info :is(h3,h4){font-size:.8rem}.is-compact .seasonal-product-price{font-size:.69rem;gap:4px}.is-compact .seasonal-product-price>span{width:20px;height:20px}
}
@media(prefers-reduced-motion:reduce){.seasonal-product-tile{transition:none}}

.seasonal-index-intro h1{color:var(--season-accent);font-size:clamp(2.5rem,4vw,3.5rem);margin:14px 0 18px}
.seasonal-showcase{scroll-margin-top:110px}
.seasonal-collection-jumps{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px}
.seasonal-collection-jumps a{display:inline-flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--season-accent) 25%,transparent);border-radius:30px;padding:9px 16px;background:var(--season-bg);color:var(--season-accent);font-size:.8rem;font-weight:650;text-decoration:none}
.seasonal-collection-jumps a:hover{outline:1px solid currentColor}
