/* Stable storefront palette is available before asynchronous seasonal discovery.
   Festival attributes still override it and expire using server-authoritative dates. */
html:not([data-festival-skin]){--ink:#192d44;--paper:#fffcf5;--muted:#646976;--line:#ded8ca}
html:not([data-festival-skin]) :is(.price-tax,.prepaid-note,.welcome-offer .button){background:#f4ecd9;color:var(--ink)}
html:not([data-festival-skin]) .button:hover{background:#a57529}
html:not([data-festival-skin]) :is(.story,.delivery,.newsletter,footer){background:var(--paper)}
html:not([data-festival-skin]) :is(.story-art,.values){background:#f4ecd9}
/* All seasonal rules are scoped. Removing one root attribute restores the normal shop. */
html[data-festival-skin]{--ink:#192d44;--paper:#fffcf5;--muted:#646976;--line:#ded8ca;--festive-accent:#a57529;--festive-light:#f4ecd9;--festive-dark:#192d44;--festive-wash:#eae1cc}
html[data-festival-skin=christmas]{--ink:#193f36;--paper:#faf8ef;--line:#d7dbcc;--festive-accent:#a6473f;--festive-dark:#193f36;--festive-wash:#dce7db;--festive-light:#f4e8cf}
html[data-festival-skin=new-year]{--ink:#232b45;--paper:#fcfaf3;--line:#d9d4c4;--festive-accent:#a58135;--festive-dark:#232b45;--festive-wash:#e5e3ed}
html[data-festival-skin=harvest]{--ink:#38532d;--festive-accent:#b58125;--festive-dark:#38532d;--festive-wash:#e9edcc}
html[data-festival-skin=eid]{--ink:#194b47;--festive-accent:#b58e43;--festive-dark:#194b47;--festive-wash:#daebe4}
html[data-festival-skin=spring]{--ink:#723b4f;--festive-accent:#b6536b;--festive-dark:#723b4f;--festive-wash:#f5e0dc}
html[data-festival-skin=navratri]{--ink:#6c302a;--festive-accent:#b9792b;--festive-dark:#6c302a;--festive-wash:#f4e0bd}
html[data-festival-skin=celebration]{--ink:#454265;--festive-accent:#a27e43;--festive-dark:#454265;--festive-wash:#e9e4ef}
[data-festival-skin] .announcement{background:var(--festive-dark);color:#fff4d9;line-height:1.65;padding:12px 20px}
[data-festival-skin] body>header{border-bottom:3px double var(--festive-accent)}
[data-festival-skin] .hero{background:radial-gradient(ellipse at 0 10%,#f6e4bb55,transparent 65%),var(--paper);min-height:560px}
[data-festival-skin] .hero-copy{padding-top:52px;padding-bottom:30px;justify-content:center}
[data-festival-skin] .hero-copy h1{font:clamp(40px,4.1vw,66px)/1.08 var(--serif);letter-spacing:-2.5px;margin:24px 0;max-width:620px}
[data-festival-skin] .hero-copy h1 em{color:var(--festive-accent);font-weight:400}
[data-festival-skin] .hero-copy>.eyebrow{font-size:9px;letter-spacing:1.8px;color:var(--festive-dark);line-height:1.8}
[data-festival-skin] .hero-copy>p{max-width:360px;font-size:14px;line-height:1.9;color:#6a5d52;margin:0 0 18px}
[data-festival-skin] .hero-copy>.button{background:var(--festive-dark);color:#fff5dc;min-height:48px;padding:16px 22px;font-size:12px}
[data-festival-skin] .hero-foot{margin-top:28px;color:#6a5d52;font-size:9px}
[data-festival-skin] .hero-visual{background:radial-gradient(ellipse at 50% 42%,#fffdf6 8%,var(--festive-wash) 78%)}
[data-festival-skin] .hero-visual:before{content:"";position:absolute;width:64%;aspect-ratio:1;border:1px solid #ad864655;border-radius:50%;left:18%;top:13%;box-shadow:0 0 0 13px #fff4dc77,0 0 0 14px #ad864644,0 0 0 33px #fff4dc22,0 0 0 34px #ad864633;pointer-events:none}
[data-festival-skin] .hero-photo{object-fit:contain;object-position:50% 43%;padding:13% 18% 24%;mix-blend-mode:multiply;z-index:1}
[data-festival-skin] .photo-shade{background:linear-gradient(0deg,var(--festive-wash),transparent 32%);z-index:2;pointer-events:none}
[data-festival-skin] .round-seal{z-index:3;right:28px;top:28px;width:105px;height:105px;transform:rotate(8deg);background:var(--festive-dark);border:1px solid var(--festive-accent);outline:5px solid #fff9e9aa;color:#fff4d9;letter-spacing:1px;gap:4px}
[data-festival-skin] .round-seal strong{font:33px/1 var(--serif);font-weight:400}
[data-festival-skin] .round-seal span{font-size:8px}
[data-festival-skin] .round-seal small{font-size:7px;letter-spacing:.5px}
[data-festival-skin] .hero-caption{z-index:4;color:var(--festive-dark);left:36px;bottom:28px;max-width:240px}
[data-festival-skin] .hero-caption>span{font-size:8px;letter-spacing:1.7px}
[data-festival-skin] .hero-caption p{font:22px/1.35 var(--serif);margin:10px 0 0}
[data-festival-skin] .image-number{display:none}
[data-festival-skin=diwali] .hero-visual:after{content:"";position:absolute;width:178px;height:144px;right:7%;bottom:56px;background:url('/assets/diwali-diya.svg') center/contain no-repeat;z-index:4;pointer-events:none}
[data-festival-skin=christmas] .hero-visual:after,[data-festival-skin=new-year] .hero-visual:after{content:"✧";position:absolute;right:9%;bottom:22px;font:130px/1 Georgia,serif;color:var(--festive-accent);z-index:4;pointer-events:none}
[data-festival-skin] .festival-terms{margin:0 0 22px;max-width:390px;border-left:2px solid var(--festive-accent);padding:0 0 0 14px}
[data-festival-skin] .festival-terms strong{font-size:14px;font-weight:600;display:block;line-height:1.6}
[data-festival-skin] .festival-terms small{display:block;color:#726353;font-size:10px;line-height:1.7;margin-top:6px}
[data-festival-skin] .festival-product-ribbon{border:1px solid var(--line);border-left:3px solid var(--festive-accent);padding:15px 20px;background:var(--festive-light);margin:0 0 24px}
[data-festival-skin] .festival-product-ribbon strong{font:21px var(--serif);display:block;margin-bottom:6px}
[data-festival-skin] .festival-product-ribbon span{font-size:12px;line-height:1.7}
[data-festival-skin] .values{background:var(--festive-light);color:var(--festive-dark)}
@media(max-width:900px){[data-festival-skin] .hero-copy h1{font-size:46px;letter-spacing:-1.8px}[data-festival-skin] .hero-copy{padding-left:10%;padding-right:8%}[data-festival-skin] .hero-visual:after{width:125px;height:110px}[data-festival-skin] .hero-caption{left:22px;max-width:180px}[data-festival-skin] .hero-caption p{font-size:20px}}
@media(max-width:650px){[data-festival-skin] .hero{min-height:0}[data-festival-skin] .hero-copy{padding:32px 6% 28px}[data-festival-skin] .hero-copy h1{font-size:44px;letter-spacing:-1.5px;margin:18px 0}[data-festival-skin] .hero-copy>p{font-size:14px;max-width:100%;margin-bottom:16px}[data-festival-skin] .hero-copy>.button{width:100%;justify-content:space-between}[data-festival-skin] .hero-visual{min-height:360px}[data-festival-skin] .hero-photo{padding:10% 22% 21%}[data-festival-skin] .round-seal{width:88px;height:88px;right:20px;top:20px}[data-festival-skin] .round-seal strong{font-size:29px}[data-festival-skin] .hero-caption{left:22px;bottom:22px;max-width:190px}[data-festival-skin] .hero-caption p{font-size:21px}[data-festival-skin] .hero-visual:after{width:140px;height:110px;right:2%;bottom:10px}[data-festival-skin] .hero-foot{margin-top:20px;font-size:8px}[data-festival-skin] .festival-terms{max-width:100%;margin-bottom:18px}[data-festival-skin] .announcement{font-size:10px;padding:10px 16px}[data-festival-skin] .festival-product-ribbon{padding:12px 14px}}
@media(prefers-reduced-motion:reduce){[data-festival-skin]{scroll-behavior:auto}}

[data-festival-skin] .studio-customer-offer{background:var(--festive-light)!important;border-color:var(--line)!important;color:var(--festive-dark)!important}

/* Deepavali: midnight blue, warm ivory and brass, throughout the customer journey. */
[data-festival-skin] body{color:var(--ink);background:var(--paper)}
[data-festival-skin] :is(p,.account-muted,.order-note,.guide-intro,.guide-disclosure,.support-hours){color:var(--muted)}
[data-festival-skin] :is(h1,h2,h3,h4,.eyebrow,a,label,button){color:inherit}
[data-festival-skin] :is(.button,.guide-launch,.checkout-submit){background:var(--festive-dark);color:#fff8e9;border-color:var(--festive-dark)}
[data-festival-skin] .button:hover,[data-festival-skin] .guide-launch:hover{background:var(--festive-accent);color:white}
[data-festival-skin] :is(input,select,textarea){color:var(--ink);background:#fffefa;border-color:var(--line);font-family:var(--sans)}
[data-festival-skin] :is(.account-overview,.account-breakdown,.account-order-note,.account-status,.saved-address-card,.checkout-address,.account-card,.guide-chips button,.guide-message,.delivery-card,.community-card,.referral-card){color:var(--ink);background:var(--festive-light);border-color:var(--line)}
[data-festival-skin] :is(.account-panel,.account-tabs,.bag-head,.bag,.guide-panel,.guide-head,.address-book,.address-editor,.delivery-timeline,.community-panel){border-color:var(--line);color:var(--ink)}
[data-festival-skin] :is(.story,.delivery,.newsletter,footer,.products,.collection,.product-page){background:var(--paper);color:var(--ink)}
[data-festival-skin] :is(.account-status.is-paid,.account-offer-title,.price,.product-price,.welcome-offer button,.saved-address-card h4){color:var(--ink)}
[data-festival-skin] :is(h1 em,h2 em,.footer-sign em){color:var(--festive-accent)}
[data-festival-skin=diwali] .hero{min-height:570px;background:#192d44;color:#fff6e5}
[data-festival-skin=diwali] .hero-copy{padding-top:45px;padding-bottom:35px}
[data-festival-skin=diwali] .hero-copy h1{font-size:clamp(42px,4.5vw,70px);letter-spacing:-2px}
[data-festival-skin=diwali] .hero-copy h1 em{color:#e9c47e}
[data-festival-skin=diwali] .hero-copy :is(.eyebrow,p,.hero-foot,.festival-terms small){color:#d8d9d6}
[data-festival-skin=diwali] .hero-copy .button{background:#eed4a0;color:#192d44}
[data-festival-skin=diwali] .hero-visual{background:radial-gradient(ellipse at 50% 45%,#33485c,#192d44 72%)}
[data-festival-skin=diwali] .hero-visual:before{width:68%;left:16%;top:11%;border-radius:46% 46% 0 0;border-color:#d7b06b;box-shadow:0 0 0 14px #192d44,0 0 0 15px #d7b06b55}
[data-festival-skin=diwali] .hero-photo{mix-blend-mode:normal;object-fit:contain;padding:17% 23% 25%;filter:drop-shadow(0 20px 28px #080e19aa)}
[data-festival-skin=diwali] .photo-shade{background:linear-gradient(0deg,#192d44,transparent 32%)}
[data-festival-skin=diwali] .round-seal{background:#eed4a0;color:#192d44;outline:0;border:0;transform:none;border-radius:4px;right:30px;top:28px;width:112px;height:95px}
[data-festival-skin=diwali] .hero-caption{color:#f4deb5}
[data-festival-skin=diwali] .hero-visual:after{width:145px;height:135px;bottom:24px;right:5%}
[data-festival-skin=diwali] .hero-caption p{color:#f4deb5}
[data-festival-skin=diwali] .hero-foot{padding-top:16px}
@media(max-width:650px){[data-festival-skin=diwali] .hero{min-height:0}[data-festival-skin=diwali] .hero-copy{padding:32px 6%}[data-festival-skin=diwali] .hero-copy h1{font-size:46px}[data-festival-skin=diwali] .hero-visual{min-height:370px}[data-festival-skin=diwali] .hero-visual:after{width:115px;height:105px}[data-festival-skin=diwali] .hero-caption{max-width:190px}}

.offer-location{display:flex;justify-content:flex-end;margin:12px 0;font-size:12px}
.offer-location label{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:var(--muted)}
.offer-location select{max-width:260px;padding:8px 12px;border:1px solid var(--line);border-radius:4px}
.studio-customer-offer{display:flex;gap:16px;align-items:center;flex-wrap:wrap;background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:18px 20px;margin:18px 0;color:var(--ink)}
.studio-customer-offer h3{font:600 18px/1.4 var(--sans);margin:0;flex:1;min-width:190px}
.studio-customer-offer details{font-size:12px;max-width:540px}
.studio-customer-offer summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.studio-customer-offer details p{line-height:1.7;font-size:12px}
.studio-customer-offer .button{padding:12px 16px;font-size:12px}
@media(max-width:650px){.studio-customer-offer{align-items:flex-start;gap:12px}.studio-customer-offer details{width:100%;order:3}.offer-location{justify-content:flex-start}}
[data-festival-skin=diwali] .hero-visual:before{display:none}
[data-festival-skin=diwali] .hero-photo,[data-festival-skin=diwali] .photo-shade{visibility:hidden}
[data-festival-skin=diwali] .hero-visual:after{inset:0;width:100%;height:100%;background:url('/assets/deepavali-night.svg') center 42%/90% auto no-repeat;z-index:1}
[data-festival-skin=diwali] .hero-caption{bottom:20px;left:10%;max-width:80%;text-align:center;width:80%}
[data-festival-skin=diwali] .hero-caption p{font:18px/1.4 var(--sans)}
[data-festival-skin=diwali] .round-seal{right:7%;top:28px}
[data-festival-skin] :is(.price-offer,.price-tax .price-note,.price-note){color:var(--muted)}
[data-festival-skin] :is(.price-tax,.welcome-offer .button){background:var(--festive-light);color:var(--ink)}
@media(max-width:650px){[data-festival-skin=diwali] .hero-visual:after{background-size:90% auto;background-position:center 10%}[data-festival-skin=diwali] .hero-caption p{font-size:15px}[data-festival-skin=diwali] .round-seal{top:12px;width:86px;height:78px}}

.studio-customer-offer .offer-caption{display:block;font:400 12px/1.6 var(--sans);color:var(--muted);margin-top:4px}
[data-festival-skin] :is(.community-box,.community-alert,.inspiration-image,.price-tax,.checkout-note,.address-remove-confirm){background:var(--festive-light);color:var(--ink);border-color:var(--line)}
[data-festival-skin] .community-inline button{background:var(--festive-dark);color:#fff8e9}
[data-festival-skin] :is(.community-muted,.account-policy-links,.delivery-muted){color:var(--muted)}

.delivery-offer-invite{margin:16px 0 24px;font:400 13px/1.6 var(--sans);color:var(--muted)}
.delivery-offer-invite a{text-decoration:underline;text-underline-offset:4px}
.delivery-offer-invite[hidden]{display:none}

/* Keep pack selection, price and preorder controls aligned at every card width. */
.product-bottom{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:stretch}
.product-bottom>select{display:block;width:100%;max-width:100%;min-width:0;padding:8px 28px 8px 10px;border:1px solid var(--line);border-radius:3px;min-height:42px;background-color:var(--paper)}
.product-bottom>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;min-width:0}
.product-bottom .price{display:block;min-width:0;font-size:15px;line-height:1.4;white-space:normal}
.product-bottom .price small{display:block;font:400 10px/1.5 var(--sans);margin:2px 0 0;color:var(--muted);white-space:normal}
.product-bottom .add{min-height:44px;min-width:44px;flex-shrink:0;align-self:center}
.product-bottom .preorder-add{padding:10px 12px;font-size:12px;border:1px solid var(--line);border-radius:3px}
.preorder-product-note{font-size:12px;line-height:1.65;margin:12px 0 0;color:var(--muted)}
[data-festival-skin] .story-art{background:var(--festive-light);min-width:0}
[data-festival-skin] .story-art img{transform:none;mix-blend-mode:multiply;width:72%;max-width:440px;height:400px}
[data-festival-skin] .story-copy{min-width:0;padding:60px clamp(24px,5vw,80px)}
[data-festival-skin] .story-copy p{color:var(--muted);max-width:58ch;font-size:14px;line-height:1.8}
[data-festival-skin] .story-label{color:var(--ink)}
[data-festival-skin] .story-copy .text-link{border-color:var(--festive-accent)}
@media(max-width:650px){.product-bottom>div{gap:6px}.product-bottom .price{font-size:14px}.product-bottom .price small{font-size:9px}.product-bottom .preorder-add{padding:9px 8px;font-size:11px}[data-festival-skin] .story-art img{height:290px}[data-festival-skin] .story-copy{padding:32px 6%}[data-festival-skin] .story-copy p{font-size:14px}}

/* Seasonal tokens also apply to policy, dispatch and referral surfaces. */
[data-festival-skin] :is(.return-promise,.delivery-returns,.delivery-steps li,.community-box,.community-alert,.inspiration-image,.preorder-notice){background:var(--festive-light);border-color:var(--line);color:var(--ink)}
[data-festival-skin] :is(.delivery-steps li.is-complete,.delivery-steps li[aria-current]){background:var(--festive-wash);color:var(--ink);border-color:var(--festive-accent);outline-color:var(--festive-accent)}
[data-festival-skin] :is(.delivery-history span,.community-muted,.product-cat,.price-note,.checkout-small){color:var(--muted)}
[data-festival-skin] .return-promise{border-radius:6px;padding:24px}
[data-festival-skin] .return-promise h2{margin:8px 0 14px;font-size:clamp(28px,3.6vw,44px)}
[data-festival-skin] .return-promise p{line-height:1.7}

[data-festival-skin] :is(.about-reach,.contact-card:not(.contact-call),.contact-international,.partner-visual,.partner-benefits,.partner-form,.partner-receipt,.partner-metrics>div,#partnerStatus){background:var(--festive-light);border-color:var(--line);color:var(--ink)}
[data-festival-skin] :is(.about-belief,.contact-call){background:var(--festive-dark);border-color:var(--festive-dark);color:#fff7e7}
[data-festival-skin] :is(.about-belief p,.contact-call p,.about-belief .eyebrow,.contact-call .eyebrow){color:#ece4d5}
[data-festival-skin] :is(.about-belief em,.about-page em,.contact-page em){color:var(--festive-accent)}
[data-festival-skin] :is(.about-belief em,.contact-call .contact-action){color:#e9c47e;border-color:#e9c47e}
[data-festival-skin] :is(.about-reach-note,.about-discounts span,.contact-order li>span){color:var(--muted)}
