/* V340: theme-aware surfaces and real editor layouts. Scoped to the storefront. */
html body[class*="site-theme-"] {
  --ct340-paper:var(--ct324-card,#fff);
  --ct340-canvas:var(--ct324-page,#f7f6f2);
  --ct340-ink:var(--ct324-ink,#202720);
  --ct340-muted:var(--ct324-muted,#566157);
  --ct340-soft:var(--ct324-section,#f1f2ed);
  --ct340-edge:color-mix(in srgb,var(--ct340-ink) 16%,transparent);
  --ct340-action:var(--ct-custom-accent-light,#79522a);
  --ct340-on-action:var(--ct-on-accent-light,#fff);
  --ct340-radius:var(--theme-editor-radius,16px);
  --ct339-ink:var(--ct340-ink);--ct339-muted:var(--ct340-muted);
  --ct339-paper:var(--ct340-paper);--ct339-canvas:var(--ct340-canvas);--ct339-line:var(--ct340-edge);
  --ct338-ink:var(--ct340-ink);--ct338-muted:var(--ct340-muted);--ct338-paper:var(--ct340-paper);--ct338-line:var(--ct340-edge);
  color-scheme:light;
}
html body.appearance-dark[class*="site-theme-"] {
  --ct340-action:var(--ct-custom-accent-dark,#e5c898);
  --ct340-on-action:var(--ct-on-accent-dark,#111);
  color-scheme:dark;
}
html body.appearance-light[class*="site-theme-"],html body.appearance-dark[class*="site-theme-"] {
  --ct324-button:var(--ct340-action);--ct324-button-ink:var(--ct340-on-action);
}
html body[class*="site-theme-"] .storefront-home { color:var(--ct340-ink); }
html body[class*="site-theme-"] :is(.storefront-home,.luxury-product-page,.ct-checkout) :is(a,button,input,select,textarea):focus-visible {
  outline-color:var(--ct340-action)!important;outline-offset:4px!important;
}
html body[class*="site-theme-"] .ck-featured-hero {
  color:var(--ct340-ink)!important;background:var(--ct324-hero,var(--ct340-soft))!important;
  padding:0!important;isolation:isolate;min-height:0!important;
}
html body[class*="site-theme-"] .ck-featured-hero__inner {
  width:min(var(--theme-editor-content-width,1400px),100%);max-width:100%;box-sizing:border-box;
  min-height:clamp(420px,43vw,690px)!important;padding:clamp(24px,4.5vw,68px)!important;
  gap:clamp(24px,4vw,60px)!important;align-items:center;
}
html body[class*="site-theme-"] .ck-featured-hero__copy { min-width:0;max-width:600px; }
html body[class*="site-theme-"] .ck-featured-hero h1 {
  font-size:clamp(2.6rem,4.6vw,5.5rem)!important;line-height:1.02!important;
  letter-spacing:-.045em!important;color:var(--ct340-ink)!important;text-wrap:balance;
}
html body[class*="site-theme-"] .ck-featured-hero .sub {
  color:var(--ct340-muted)!important;font-size:clamp(.98rem,1.3vw,1.13rem);line-height:1.75;max-width:46ch;margin-block:20px 28px;
}
html body[class*="site-theme-"] .ck-featured-hero .hero-eyebrow {color:var(--ct340-action)!important;line-height:1.7;letter-spacing:.14em;}
html body[class*="site-theme-"] .ck-featured-hero .btn-primary {
  background:var(--ct340-action)!important;color:var(--ct340-on-action)!important;
  border:1px solid var(--ct340-action)!important;min-height:50px;padding:12px 23px;line-height:1.4;
}
html body[class*="site-theme-"] .ck-featured-hero__products {min-width:0;width:100%;max-width:none;gap:clamp(10px,1.2vw,20px)!important;}
html body[class*="site-theme-"] .ck-featured-card {
  position:relative;box-sizing:border-box;min-width:0;height:auto;margin:0!important;padding:12px!important;
  border:1px solid var(--ct340-edge)!important;border-radius:var(--ct340-radius)!important;
  background:var(--ct340-paper)!important;color:var(--ct340-ink)!important;transform:none;
  box-shadow:0 12px 32px #0000000d;text-decoration:none;
}
html body[class*="site-theme-"] .ck-featured-card__image {
  height:auto!important;aspect-ratio:4/5;overflow:hidden;border-radius:max(0px,calc(var(--ct340-radius) - 6px));
  background:var(--ct340-soft)!important;
}
html body[class*="site-theme-"] .ck-featured-card__image img {
  width:100%;height:100%;object-fit:contain;mix-blend-mode:normal!important;
}
html body[class*="site-theme-"] .ck-featured-card :is(h3,.price) {color:var(--ct340-ink)!important;}
html body[class*="site-theme-"] .ck-featured-card h3 {font-size:.9rem!important;line-height:1.45!important;letter-spacing:0!important;margin:14px 0 8px;}
html body[class*="site-theme-"] .ck-featured-card .price {font-size:.92rem;font-variant-numeric:tabular-nums;}
/* Layout controls apply to all 49 themes, without changing product data or CMS ordering. */
@media(min-width:1001px) {
  html body.theme-hero-layout-split .ck-featured-hero__inner {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;}
  html body.theme-hero-layout-full_bleed .ck-featured-hero {max-width:100%!important;margin:0!important;border-radius:0!important;}
  html body.theme-hero-layout-full_bleed .ck-featured-hero__inner {grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)!important;min-height:clamp(480px,48vw,760px)!important;}
  html body.theme-hero-layout-asymmetric .ck-featured-hero__inner {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;}
  html body.theme-hero-layout-asymmetric .ck-featured-card:nth-child(2) {transform:translateY(-22px)!important;}
  html body.theme-hero-layout-asymmetric .ck-featured-card:nth-child(3) {transform:translateY(20px)!important;}
  html body.theme-hero-layout-centered .ck-featured-hero__inner {grid-template-columns:1fr!important;text-align:center;gap:34px!important;}
  html body.theme-hero-layout-centered .ck-featured-hero__copy {max-width:850px;margin-inline:auto;}
  html body.theme-hero-layout-centered .ck-featured-hero .sub {margin-inline:auto;}
  html body.theme-hero-layout-centered .ck-featured-hero__products {width:min(850px,100%);margin-inline:auto;}
  html body.theme-hero-layout-centered .ck-featured-card__image {aspect-ratio:5/4;}
  html body.theme-hero-layout-collage .ck-featured-hero__inner {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;}
  html body.theme-hero-layout-collage .ck-featured-hero__products {grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)!important;align-items:stretch;}
  html body.theme-hero-layout-collage .ck-featured-card:first-child {grid-row:span 2;align-self:center;}
  html body.theme-hero-layout-collage .ck-featured-card:not(:first-child) .ck-featured-card__image {aspect-ratio:16/9;}
  html body.theme-hero-layout-collage .ck-featured-card:first-child .ck-featured-card__image {aspect-ratio:3/4;}
  html body[class*="site-theme-"] .ck-featured-hero--copy .ck-featured-hero__inner {grid-template-columns:1fr!important;}
}
html body[data-theme-heading-font="serif"] .ck-featured-hero h1 {font-family:Georgia,'Times New Roman',serif;font-weight:500;}
html body[data-theme-heading-font="sans"] .ck-featured-hero h1 {font-family:Arial,Helvetica,sans-serif;font-weight:750;}
html body[data-theme-heading-font="display"] .ck-featured-hero h1 {font-family:Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-.065em!important;}
html body[data-theme-button-style="square"] .ck-featured-hero .btn-primary {border-radius:3px!important;}
html body[data-theme-button-style="soft"] .ck-featured-hero .btn-primary {border-radius:12px!important;}
html body[data-theme-button-style="pill"] .ck-featured-hero .btn-primary {border-radius:999px!important;}
html body[data-theme-card-style="editorial"] :is(.ck-featured-card,.cr-discovery-card) {box-shadow:none!important;border-radius:3px!important;border-width:0 0 1px!important;}
html body[data-theme-card-style="clean"] :is(.ck-featured-card,.cr-discovery-card) {box-shadow:none!important;}
html body[data-theme-card-style="glass"] :is(.ck-featured-card,.cr-discovery-card) {
  background:color-mix(in srgb,var(--ct340-paper) 88%,transparent)!important;backdrop-filter:blur(12px);
  box-shadow:inset 0 1px #ffffff16,0 14px 36px #00000012;
}
html body[data-theme-shadow-style="none"] :is(.ck-featured-card,.cr-discovery-card) {box-shadow:none!important;}
html body[class*="site-theme-"] .home-experience-rail {background:var(--ct340-canvas)!important;color:var(--ct340-ink)!important;}
html body[class*="site-theme-"] .cr-discovery-card {
  border-color:var(--ct340-edge)!important;border-radius:var(--ct340-radius);color:var(--ct340-ink)!important;
  background:var(--ct340-paper)!important;min-height:190px;
}
html body[class*="site-theme-"] :is(.cr-discovery-card>span:not(.cr-discovery-icon),.cr-sub,.cr-finder-panel p,.cr-benefit span) {color:var(--ct340-muted)!important;}
html body[class*="site-theme-"] :is(.cr-discovery-icon,.cr-discovery-arrow,.cr-eyebrow) {color:var(--ct340-action)!important;}
html body[class*="site-theme-"] .cr-discovery-icon {background:color-mix(in srgb,var(--ct340-action) 12%,transparent);}
html body[class*="site-theme-"] :is(.cr-finder-panel,.cr-finder-benefits) {border:1px solid var(--ct340-edge);background:var(--ct340-soft)!important;color:var(--ct340-ink)!important;}
html body[class*="site-theme-"] .cr-finder-panel .btn-primary {background:var(--ct340-action)!important;color:var(--ct340-on-action)!important;}
html body[class*="site-theme-"] .cr-benefit b {color:var(--ct340-ink)!important;}
/* Product media keeps its original colours in both appearances. */
html body[class*="site-theme-"] .luxury-product-page #main-product-image {mix-blend-mode:normal!important;}
html body[class*="site-theme-"] .luxury-product-page .crp-gallery-stage {background:var(--ct340-soft)!important;border-color:var(--ct340-edge);}
html body[class*="site-theme-"] .luxury-product-page :is(.ct267-decision-panel,.ct-offers-zone,.ct-coins-card,.ct175-experience-hub) {background:var(--ct340-paper);color:var(--ct340-ink);}
html body[class*="site-theme-"] .ct-checkout {color:var(--ct340-ink);margin-inline:auto;}
html body[class*="site-theme-"] .ct-checkout .ct-check-card {background:var(--ct340-paper);color:var(--ct340-ink);border-color:var(--ct340-edge);}
html body[class*="site-theme-"] .ct-checkout :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) {
  background:var(--ct340-paper);color:var(--ct340-ink);border-color:var(--ct340-edge);
}
html body[class*="site-theme-"] .ct-checkout :is(input[type=checkbox],input[type=radio]) {
  appearance:auto!important;width:18px!important;height:18px!important;min-height:18px!important;
  padding:0!important;margin:3px 0;flex:0 0 18px;accent-color:var(--ct340-action);
}
html body[class*="site-theme-"] .ct-checkout label:has(>input:is([type=checkbox],[type=radio])) {display:flex;align-items:flex-start;gap:10px;}
html body[class*="site-theme-"] :is(button:disabled,input:disabled,select:disabled) {cursor:not-allowed;opacity:.65;}
/* Festival backgrounds use existing real layers, without intercepting taps or covering copy. */
html body[class*="site-theme-"] .ct-festival-atmosphere {opacity:.48!important;}
html body[class*="site-theme-"] .ct-fa-powder {
  font-size:0;width:clamp(48px,7vw,110px);height:clamp(40px,6vw,90px);border-radius:50%;
  background:radial-gradient(ellipse,currentColor,transparent 68%);filter:blur(8px);opacity:.28;
}
html body[class*="site-theme-"] .ct-fa-diya {text-shadow:0 0 16px #ffb743;}
html body.theme-reduced-motion-on .ct-festival-atmosphere *,
html body[data-theme-reduced-motion="1"] .ct-festival-atmosphere * {animation:none!important;}
html body.ct340-page-hidden .ct-festival-atmosphere * {animation-play-state:paused!important;}
@media(max-width:1000px) {
  html body[class*="site-theme-"] .ck-featured-hero__inner {grid-template-columns:1fr!important;min-height:0!important;padding:30px!important;gap:28px!important;}
  html body[class*="site-theme-"] .ck-featured-hero__copy {max-width:740px;}
  html body[class*="site-theme-"] .ck-featured-hero__products {grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:760px;}
  html body[class*="site-theme-"] .ck-featured-card {grid-row:auto!important;transform:none!important;}
  html body[class*="site-theme-"] .ck-featured-card__image {aspect-ratio:4/5!important;}
  html body[class*="site-theme-"] .ck-featured-hero h1 {font-size:clamp(2.3rem,6.8vw,4.4rem)!important;}
}
@media(max-width:580px) {
  html body[class*="site-theme-"] {background-attachment:scroll!important;}
  html body[class*="site-theme-"] .ck-featured-hero {max-width:100%!important;margin:0!important;border-radius:0!important;outline:none;}
  html body[class*="site-theme-"] .ck-featured-hero__inner {padding:28px 18px!important;}
  html body[class*="site-theme-"] .ck-featured-hero h1 {font-size:clamp(2.1rem,9.8vw,3.5rem)!important;}
  html body[class*="site-theme-"] .ck-featured-hero__products {
    display:grid!important;grid-template-columns:none!important;grid-auto-columns:72%;grid-auto-flow:column;
    overflow-x:auto;padding:8px 4px 18px;scroll-snap-type:x proximity;scrollbar-width:thin;overscroll-behavior-x:contain;
  }
  html body[class*="site-theme-"] .ck-featured-card {scroll-snap-align:start;padding:12px!important;}
  html body[class*="site-theme-"] .ck-featured-card__image {aspect-ratio:5/4!important;}
  html body[class*="site-theme-"] .ck-featured-card h3 {font-size:.95rem!important;}
  html body[class*="site-theme-"] .storefront-home .cr-discovery-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  html body[class*="site-theme-"] .cr-discovery-card {padding:16px;min-height:174px;}
  html body[class*="site-theme-"] .cr-discovery-card strong {font-size:.95rem;}
  html body[class*="site-theme-"] .ct-checkout :is(input:not([type=checkbox]):not([type=radio]),select,textarea) {font-size:16px;}
  html body[class*="site-theme-"] .ct-fa-particle:nth-child(n+17) {display:none;}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto;}
  html body[class*="site-theme-"] :is(.ck-featured-card,.ck-featured-card__image img) {transition:none!important;transform:none!important;}
  html body[class*="site-theme-"] .ct-festival-atmosphere * {animation:none!important;}
}

/* Pause the decorative layer and its flames/lights as well as each particle. */
html body.theme-reduced-motion-on .ct-festival-atmosphere,
html body.theme-reduced-motion-on .ct-festival-atmosphere::before,
html body.theme-reduced-motion-on .ct-festival-atmosphere::after,
html body.theme-reduced-motion-on .ct-festival-atmosphere *::before,
html body.theme-reduced-motion-on .ct-festival-atmosphere *::after {animation:none!important;transition:none!important;}
@media(prefers-reduced-motion:reduce) {
  html body[class*="site-theme-"] .ct-festival-atmosphere,
  html body[class*="site-theme-"] .ct-festival-atmosphere::before,
  html body[class*="site-theme-"] .ct-festival-atmosphere::after,
  html body[class*="site-theme-"] .ct-festival-atmosphere *::before,
  html body[class*="site-theme-"] .ct-festival-atmosphere *::after {animation:none!important;transition:none!important;}
}
