/* Local-calendar colours, automatic presentation, and edge-only decoration.
   Product photography, shade samples and transactional screens are untouched. */
html[data-atmosphere-active="true"]{
  --cream:var(--atmosphere-background,#fbf8f1);
  --plum:var(--atmosphere-ink,#432137);
  --line:var(--atmosphere-border,#e2ddd4);
  --muted:var(--atmosphere-ink,#554454);
  background:var(--atmosphere-background,#fbf8f1);
}
html[data-atmosphere-active="true"] body{
  background:var(--atmosphere-background,#fbf8f1);
  background-image:radial-gradient(ellipse at 0 8%,var(--atmosphere-wash,#f6eadb),transparent 58%),radial-gradient(ellipse at 100% 72%,var(--atmosphere-wash,#f6eadb),transparent 62%);
  color:var(--atmosphere-ink,#432137);
}
html[data-atmosphere-active="true"] body header.site-header-v29,
html[data-atmosphere-active="true"] body header.site-header-v29.luxury-header-v32,
html[data-atmosphere-active="true"] body>header{
  background:var(--atmosphere-header,#faf7f0);
  color:var(--atmosphere-ink,#432137);
  border-bottom-color:var(--atmosphere-border,#d6cabb);
}
html[data-atmosphere-active="true"] body footer.footer-v19,
html[data-atmosphere-active="true"] body #footerLuxury{
  --footer-ink:var(--atmosphere-ink,#402f31);
  --footer-soft:var(--atmosphere-ink,#705d55);
  --footer-rule:var(--atmosphere-border,#d5c8b9);
  background:var(--atmosphere-footer,#f3eee5);
  color:var(--atmosphere-ink,#402f31);
  border-color:var(--atmosphere-border,#d5c8b9);
}
html[data-atmosphere-active="true"] :is(.brand-strip,.atelier-edits,.discovery,.guide-section,.faq,.story-teaser,.collection-intro,.pdp-story,.official-crosslink,.beauty-v12-next){
  background-color:var(--atmosphere-background,#fbf8f1);
  border-color:var(--atmosphere-border,#d5c8b9);
}
html[data-atmosphere-active="true"] :is(.feature,.rituals,.atelier-edit,.bv29-category,.bv29-product,.seasonal-local-product-v61,.seasonal-featured-product-v60){
  background-color:var(--atmosphere-surface,#fffaf5);
  border-color:var(--atmosphere-border,#d5c8b9);
}
html[data-atmosphere-active="true"] :is(.feature-copy,.rituals,.atelier-edit-heading,.collection-intro,.pdp-story,.story-teaser){color:var(--atmosphere-ink,#432137)}
html[data-atmosphere-active="true"] :is(.brand-strip,.atelier-edits,.discovery,.guide-section,.faq,.story-teaser,.collection-intro,.pdp-story){
  background-image:linear-gradient(115deg,color-mix(in srgb,var(--atmosphere-wash,#f6eadb) 52%,transparent),transparent 68%);
}
html[data-atmosphere-active="true"] .atelier-edit-heading p{color:var(--atmosphere-ink,#432137)}
html[data-atmosphere-active="true"] .atelier-edit-heading h2 em{color:var(--atmosphere-accent,#633b4b)}
/* These named light surfaces previously fixed their own background colours.
   Scope them explicitly: dark promotions, product stages and shade swatches
   retain their original presentation. */
html[data-atmosphere-active="true"] body main :is(.hero-shopping,.journey-links,.discovery.section,.beauty-v17-studio,.beauty-v12-atlas,.official-catalogue.official-home,#shop,.nutrition-v7,.kit-builder,#beauty-lab,.pp-v29,.lifestyle-edits-v29){
  background:linear-gradient(115deg,color-mix(in srgb,var(--atmosphere-wash,#f6eadb) 36%,var(--atmosphere-background,#fbf8f1)),var(--atmosphere-background,#fbf8f1) 72%)!important;
  border-color:var(--atmosphere-border,#d5c8b9)!important;
}
html[data-atmosphere-active="true"] body main :is(.le-v29-set,.le-v29-preferences,.bv29-form,.bv29-category,.bv29-product,.pp-v29-step){
  background-color:var(--atmosphere-surface,#fffaf5)!important;
  border-color:var(--atmosphere-border,#d5c8b9)!important;
}
html[data-atmosphere-active="true"] body .lifestyle-edits-v29{--le-ink:var(--atmosphere-ink,#49352d);--le-muted:var(--atmosphere-ink,#786659);--le-rule:var(--atmosphere-border,#e5dacb)}
html[data-atmosphere-active="true"] .hero-universe{
  border-color:var(--atmosphere-border,#d5c8b9);
  box-shadow:0 0 0 1px var(--atmosphere-border,#d5c8b9),0 12px 32px color-mix(in srgb,var(--atmosphere-wash,#f6eadb) 65%,transparent);
}
html[data-atmosphere-active="true"] :is(.button.dark,.btn-primary){background:var(--atmosphere-accent,#633b4b);border-color:var(--atmosphere-accent,#633b4b);color:#fff}
html[data-atmosphere-active="true"] :is(a,button,input,select,summary,textarea):focus-visible{outline-color:var(--atmosphere-accent,#633b4b)}
html[data-atmosphere-active="true"] .seasonal-wash-v60,
html[data-atmosphere-active="true"] .seasonal-v47-layer{display:none!important}

/* Public themes have no banner, festival label or preview selector. Controls
   live quietly with the footer preferences; the selected shopping market leads. */
.global-atmosphere-settings{grid-column:1/-1;justify-self:end;position:relative;margin:16px 0 0;max-width:100%;font:400 12px/1.5 'DM Sans',Arial,sans-serif;color:var(--atmosphere-ink,#432137)}
.global-atmosphere-settings>summary{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-height:44px;padding:8px 0;cursor:pointer;list-style:none;color:inherit}
.global-atmosphere-settings>summary::-webkit-details-marker{display:none}
.global-atmosphere-settings>summary:after{content:'+';font-size:17px;font-weight:300}
.global-atmosphere-settings[open]>summary:after{content:'−'}
.global-atmosphere-settings-panel{display:flex;align-items:flex-start;flex-wrap:wrap;gap:14px 22px;padding:12px 0 8px;max-width:620px;border-top:1px solid var(--atmosphere-border,#d5c8b9)}
.global-atmosphere-effects,.global-atmosphere-sound{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 12px;border:1px solid var(--atmosphere-border,#d5c8b9);border-radius:24px;background:var(--atmosphere-surface,#fffaf5);color:var(--atmosphere-ink,#432137);font:500 12px/1.4 'DM Sans',Arial,sans-serif;cursor:pointer}
.global-atmosphere-effects:before,.global-atmosphere-sound:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--atmosphere-accent,#633b4b)}
.global-atmosphere-effects[aria-pressed="false"]:before,.global-atmosphere-sound[aria-pressed="false"]:before{background:transparent;border:1px solid currentColor}
.global-atmosphere-effects:disabled,.global-atmosphere-sound:disabled{cursor:default}
.global-atmosphere-region{display:flex;align-items:center;gap:10px;font-size:12px;color:inherit}
.global-atmosphere-region[hidden]{display:none}
.global-atmosphere-region select{max-width:200px;min-height:44px;padding:8px 26px 8px 12px;border:1px solid var(--atmosphere-border,#d5c8b9);border-radius:10px;background:var(--atmosphere-surface,#fffaf5);color:inherit;font:inherit}
.global-atmosphere-weather{display:block;flex:1 1 100%;font-size:11px;color:inherit}
.global-atmosphere-weather[hidden]{display:none}
.global-atmosphere-weather a{color:inherit;text-decoration:underline}
/* Preserve local discovery and approved campaign links inside footer settings. */
html[data-atmosphere-active="true"] #seasonalExperience{flex:1 1 100%;min-width:0;min-height:0;width:100%;display:flex;flex-wrap:wrap;gap:8px 14px;margin:0;padding:0;border:0;box-shadow:none;background:transparent;color:var(--atmosphere-ink,#432137)}
html[data-atmosphere-active="true"] #seasonalExperience>.seasonal-symbol-v62,
html[data-atmosphere-active="true"] #seasonalExperience>.seasonal-copy-v60,
html[data-atmosphere-active="true"] #seasonalExperience>.seasonal-effects-v62{display:none}
html[data-atmosphere-active="true"] #seasonalExperience .seasonal-cta-v60{margin:0;min-height:44px;padding:8px 10px;font-size:11px;color:inherit;border-color:var(--atmosphere-border,#d5c8b9);background:transparent}
html[data-atmosphere-active="true"] #seasonalExperience .seasonal-local-v61>summary{color:var(--atmosphere-ink,#432137)}
/* One light layer follows the viewport. Decoration is edge-clipped, sparse,
   pointer-transparent, and paused for forms/dialogs and reduced motion. */
.global-atmosphere-edge{position:fixed;inset:0;z-index:12;pointer-events:none!important;user-select:none;overflow:hidden;contain:strict;mask-image:linear-gradient(to right,#000 0 36px,transparent 86px,transparent calc(100% - 86px),#000 calc(100% - 36px));-webkit-mask-image:linear-gradient(to right,#000 0 36px,transparent 86px,transparent calc(100% - 86px),#000 calc(100% - 36px))}
.global-atmosphere-particle{position:absolute;display:block;width:10px;height:15px;pointer-events:none!important;opacity:0;background:var(--atmosphere-particle,#b97d3f);animation:atmosphere-drift 11s ease-in-out var(--atmo-delay,0s) 1 both;transform-origin:center}
.global-atmosphere-leaf{border-radius:90% 0 90% 0;background:linear-gradient(125deg,#d49b48,#aa642f)}
.global-atmosphere-leaf:after{content:'';position:absolute;left:48%;top:12%;height:80%;border-left:1px solid #fff5da80;transform:rotate(24deg)}
.global-atmosphere-snow{width:15px;height:15px;background:transparent;color:#f7fcff;filter:drop-shadow(0 0 1px #547e99)}
.global-atmosphere-snow:before{content:'❄';font:16px/1 Georgia,serif}
.global-atmosphere-rain{width:1px;height:25px;border-radius:50%;background:linear-gradient(transparent,var(--atmosphere-particle,#6d9eaa));animation-name:atmosphere-rain}
.global-atmosphere-rain:after{content:'';position:absolute;bottom:0;left:-1px;width:3px;height:5px;border-radius:50%;background:var(--atmosphere-particle,#6d9eaa)}
.global-atmosphere-petal{width:9px;height:13px;border-radius:80% 5% 70% 40%;background:linear-gradient(135deg,#fff0f5,#e1a3bb);box-shadow:inset 1px 1px #fff6fa}
.global-atmosphere-glint,.global-atmosphere-spark{width:5px;height:5px;border-radius:50%;box-shadow:0 0 8px var(--atmosphere-particle,#b88c38);animation-name:atmosphere-glow}
.global-atmosphere-lantern{width:10px;height:14px;border-radius:4px;box-shadow:inset 2px 0 #ffffff50,inset -2px 0 #ffffff50;animation-name:atmosphere-glow}
.global-atmosphere-diya{width:15px;height:7px;border-radius:3px 3px 12px 12px;background:#a95e33;box-shadow:0 -4px 14px #efc77775;animation-name:atmosphere-glow}
.global-atmosphere-diya:before{content:'';position:absolute;left:6px;bottom:5px;width:5px;height:10px;border-radius:80% 20% 70% 30%;background:linear-gradient(#ffe7a0,#e9a644);transform:rotate(12deg)}
.global-atmosphere-confetti{width:8px;height:12px;border-radius:75% 15% 75% 30%;background:var(--atmo-tint,#dc829e)}
.global-atmosphere-santa{width:12px;height:12px;border-radius:80% 20% 0 0;border-bottom:3px solid #fff9f1;background:#b53648;animation-name:atmosphere-drift}
.global-atmosphere-santa:before{content:'';position:absolute;left:0;bottom:-11px;width:12px;height:9px;border-radius:2px 2px 65% 65%;background:linear-gradient(to bottom,#edc6af 0 28%,#fff9f1 29%);box-shadow:0 0 1px #9d7c78}
.global-atmosphere-santa:after{content:'';position:absolute;right:-2px;top:-1px;width:5px;height:5px;border-radius:50%;background:#fff9f1}
html[data-atmosphere-theme="holi"] body{background-image:radial-gradient(ellipse at 0 12%,#f0c5d64d,transparent 54%),radial-gradient(ellipse at 100% 38%,#f3dba84d,transparent 55%),radial-gradient(ellipse at 0 78%,#c2dfcd4d,transparent 50%)}
/* A New Year entrance is a single soft sparkle at the edges, never a flash. */
.global-atmosphere-opening-spark{width:12px;height:12px;background:var(--atmosphere-particle,#b69a55);clip-path:polygon(50% 0,60% 38%,100% 50%,60% 62%,50% 100%,40% 62%,0 50%,40% 38%);animation:atmosphere-opening 2.2s ease-out 1 both}
@keyframes atmosphere-opening{0%{opacity:0;transform:translateY(10px) scale(.45) rotate(0deg)}35%{opacity:.7}100%{opacity:0;transform:translateY(-22px) scale(1.15) rotate(var(--atmo-turn,18deg))}}
@keyframes atmosphere-drift{0%{opacity:0;transform:translate(0,-36px) rotate(0deg)}18%{opacity:.53}75%{opacity:.42}100%{opacity:0;transform:translate(8px,130px) rotate(var(--atmo-turn,30deg))}}
@keyframes atmosphere-rain{0%{opacity:0;transform:translateY(-42px) rotate(7deg)}20%,70%{opacity:.4}100%{opacity:0;transform:translateY(190px) rotate(7deg)}}
@keyframes atmosphere-glow{0%,100%{opacity:0;transform:translateY(18px)}25%,65%{opacity:.62}90%{transform:translateY(-24px)}}
@media(max-width:699px){
 .global-atmosphere-settings{justify-self:start;width:100%;margin-top:10px}
 .global-atmosphere-settings>summary{justify-content:flex-start}
 .global-atmosphere-settings-panel{gap:12px}
 .global-atmosphere-region{align-items:flex-start;flex-direction:column;gap:5px}
 .global-atmosphere-edge{mask-image:linear-gradient(to right,#000 0 10px,transparent 24px,transparent calc(100% - 24px),#000 calc(100% - 10px));-webkit-mask-image:linear-gradient(to right,#000 0 10px,transparent 24px,transparent calc(100% - 24px),#000 calc(100% - 10px))}
 .global-atmosphere-particle{scale:.85}
}
@media(prefers-reduced-motion:reduce){.global-atmosphere-particle{animation:none!important;display:none!important}.global-atmosphere-edge{display:none!important}}
@media print{.global-atmosphere-settings,.global-atmosphere-edge{display:none!important}html[data-atmosphere-active="true"] body{background:#fff!important}}
