/* Glowtto | Banner único, sin coordenadas ni modos PC/Android.
   El contenedor, no el dispositivo, decide la composición. */
#homeHero.glow-banner{
  --banner-paper:var(--theme-surface,#fffaf7);
  --banner-tint:var(--theme-surface-soft,#f7e8f4);
  --banner-ink:var(--theme-hero-ink,#443041);
  --banner-muted:var(--theme-hero-muted,#756674);
  --banner-accent:var(--theme-accent-strong,#87457c);
  box-sizing:border-box;
  position:relative;
  isolation:isolate;
  width:100%;
  min-width:0;
  margin-block:clamp(10px,2vw,22px) clamp(18px,3vw,38px);
  overflow:hidden;
  touch-action:pan-y;
  overscroll-behavior-x:contain;
  container-type:inline-size;
  background:var(--theme-editorial-gradient,linear-gradient(115deg,#fffaf7,#f7e8f4));
  border-radius:clamp(14px,2vw,25px);
  border:1px solid var(--theme-border,#f0dce8);
}
#homeHero .glow-banner__viewport{
  display:block;
  width:100%;
  overflow:hidden;
}
#homeHero .glow-banner__track{
  display:flex;
  flex-wrap:nowrap;
  align-items:flex-start;
  width:100%;
  gap:0;
  transform:translate3d(0,0,0);
  will-change:transform;
}
.glow-banner__slide{
  --slide-gap:clamp(14px,2.6cqi,44px);
  position:relative;
  box-sizing:border-box;
  display:grid;
  flex:0 0 100%;
  width:100%;
  min-width:0;
  grid-template-columns:minmax(0,1fr);
  grid-template-areas:"copy" "media";
  gap:var(--slide-gap);
  padding:clamp(18px,3.2cqi,54px);
  background:linear-gradient(110deg,var(--banner-paper,#fffaf7),var(--banner-tint,#f7e8f4));
  color:var(--banner-ink,#443041);
  cursor:pointer;
}
.glow-banner__track>.glow-banner__slide{pointer-events:none}
.glow-banner__track>.glow-banner__slide.is-active{pointer-events:auto}
.glow-banner__slide.glow-carousel-clone,
.glow-banner__slide.glow-carousel-clone *{pointer-events:none}
.glow-banner__copy{
  grid-area:copy;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  text-align:left;
  min-width:0;
  max-width:100%;
  gap:clamp(8px,1.3cqi,16px);
  overflow-wrap:anywhere;
}
.glow-banner__eyebrow{
  font-size:clamp(10px,.9cqi,13px);
  font-weight:750;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:var(--banner-accent,#87457c);
}
.glow-banner__copy h1,
.glow-banner__copy h2{
  font-family:Poppins,system-ui,sans-serif;
  font-size:clamp(27px,4.25cqi,65px);
  font-weight:800;
  letter-spacing:-.047em;
  line-height:1.12;
  margin:0;
  color:var(--banner-ink,#443041);
  text-wrap:balance;
}
.glow-banner__copy h1 em,
.glow-banner__copy h2 em{color:var(--theme-accent,#ac5b9c);font-style:normal}
.glow-banner__description{
  max-width:52ch;
  margin:0;
  color:var(--banner-muted,#756674);
  font-size:clamp(12px,1.25cqi,16px);
  line-height:1.65;
  white-space:pre-line;
}
.glow-banner__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:clamp(3px,1cqi,13px)}
.glow-banner__cta{
  display:inline-flex;justify-content:center;align-items:center;gap:8px;
  padding:clamp(10px,1.1cqi,14px) clamp(17px,2cqi,26px);
  min-height:42px;
  font:700 clamp(12px,1cqi,14px)/1.2 Poppins,system-ui,sans-serif;
  border:0;border-radius:999px;
  color:white;
  background:var(--theme-accent-gradient,var(--theme-accent-strong,#87457c));
  cursor:pointer;
}
.glow-banner__price{font-weight:800;font-size:clamp(12px,1.2cqi,17px);color:var(--banner-accent,#87457c)}
.glow-banner__media{
  grid-area:media;
  position:relative;
  isolation:isolate;
  width:100%;
  min-width:0;
  aspect-ratio:16 / 10;
  overflow:hidden;
  border-radius:clamp(12px,1.6cqi,21px);
  background:color-mix(in srgb,var(--banner-tint,#f7e8f4) 77%,white);
}
.glow-banner__image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:var(--media-position,center);
  mix-blend-mode:multiply;
}
.glow-banner__slide[data-fit="contain"] .glow-banner__image{
  object-fit:contain;
  mix-blend-mode:normal;
}
.glow-banner__slide[data-fade="soft"] .glow-banner__media::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,var(--banner-paper,#fffaf7),transparent 31%);
  opacity:.65;
}
.glow-banner__fallback{width:100%;height:100%;display:grid;place-items:center}
.glow-banner__fallback .hero-art-action{display:grid;place-items:center;width:100%;height:100%;border:0;background:none;cursor:pointer}
.glow-banner__fallback .hero-art-product{width:min(90%,360px);height:100%;min-height:210px;display:grid;place-items:center;position:relative}
.glow-banner__fallback .hero-art-photo{width:100%;height:82%;display:grid;place-items:center}
.glow-banner__fallback .hero-art-photo img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain}
.glow-banner__fallback .hero-art-halo{position:absolute;inset:8%;z-index:-1;border-radius:50%;background:var(--banner-tint,#f7e8f4)}
.glow-banner__fallback .hero-art-caption{display:none}
.glow-banner__fallback .hero-deco{display:grid;place-items:center;width:100%;height:100%;position:relative}
.glow-banner__fallback .hero-deco-symbol{font-size:clamp(72px,12cqi,170px);color:var(--theme-accent,#ac5b9c)}
.glow-banner__fallback .hero-deco-halo{position:absolute;inset:20%;border-radius:50%;background:var(--banner-tint,#f7e8f4)}
.glow-banner__fallback .hero-deco-twinkle{position:absolute;top:10%;right:12%;color:var(--theme-accent,#ac5b9c)}
.glow-banner__controls{
  position:relative;
  display:flex;justify-content:flex-end;align-items:center;
  gap:clamp(8px,1.5cqi,15px);
  padding:7px clamp(14px,3cqi,44px) clamp(12px,1.7cqi,22px);
}
.glow-banner__arrow{
  display:grid;place-items:center;
  min-width:36px;min-height:36px;padding:0;
  background:var(--banner-paper,#fffaf7);
  border:1px solid var(--theme-border,#f0dce8);
  border-radius:50%;
  color:var(--banner-accent,#87457c);
  cursor:pointer;
}
.glow-banner__dots{display:flex;gap:7px;align-items:center}
.glow-banner__dots button{
  width:9px;height:9px;padding:0;border:0;border-radius:99px;
  background:var(--theme-border,#e5d7e6);
  cursor:pointer;
  transition:width .25s ease,background-color .25s ease;
}
.glow-banner__dots button.is-active{width:24px;background:var(--theme-accent,#ac5b9c)}
.glow-banner__count{font-size:11px;color:var(--banner-muted,#756674)}
.glow-banner__slide button:focus-visible,
.glow-banner__controls button:focus-visible{outline:2px solid var(--theme-accent,#ac5b9c);outline-offset:3px}
@container (min-width:760px){
  .glow-banner__slide{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    grid-template-areas:"copy media";
    align-items:center;
    min-height:clamp(325px,32cqi,515px);
  }
  .glow-banner__slide[data-align="right"]{
    grid-template-areas:"media copy";
  }
  .glow-banner__slide[data-align="right"] .glow-banner__copy{
    justify-self:end;
  }
  .glow-banner__media{aspect-ratio:4 / 3;max-height:520px}
  .glow-banner__slide[data-fade="soft"] .glow-banner__media::after{
    background:linear-gradient(90deg,var(--banner-paper,#fffaf7),transparent 35%);
  }
  .glow-banner__slide[data-align="right"][data-fade="soft"] .glow-banner__media::after{
    background:linear-gradient(270deg,var(--banner-paper,#fffaf7),transparent 35%);
  }
}
@container (max-width:759px){
  .glow-banner__slide{gap:clamp(12px,3cqi,24px)}
  .glow-banner__media{aspect-ratio:16 / 10}
  .glow-banner__copy h1,.glow-banner__copy h2{font-size:clamp(27px,7.2cqi,44px)}
  .glow-banner__description{font-size:clamp(12px,3cqi,15px)}
  .glow-banner__controls{justify-content:center}
  .glow-banner__count{display:none}
}
/* La vista previa del administrador usa EXACTAMENTE el mismo layout. */
.glow-banner-preview{
  --banner-paper:var(--theme-surface,#fffaf7);
  --banner-tint:var(--theme-surface-soft,#f7e8f4);
  --banner-ink:var(--theme-hero-ink,#443041);
  --banner-muted:var(--theme-hero-muted,#756674);
  --banner-accent:var(--theme-accent-strong,#87457c);
  width:100%;min-width:0;container-type:inline-size;
  border:1px solid var(--theme-border,#efdfeb);border-radius:17px;
  overflow:hidden;
}
.glow-banner-preview .glow-banner__slide{cursor:default}
.glow-banner-preview .glow-banner__cta{pointer-events:none}
.glow-banner-preview[data-preview="mobile"]{max-width:390px;margin-inline:auto}
@media(prefers-reduced-motion:reduce){
 .glow-banner__dots button{transition:none}
 #homeHero .glow-banner__track{will-change:auto}
}
