
/* IsyPisy · Landing (Frappe 16) — isypisy/public/css/isypisy_landing.css
   Medidas basadas en el diseño de 1692 px: 1 unidad de diseño = var(--u). */

.isy {
  --pink: #EA4681;
  --pink-cta: #ED4882;
  --blush: #FFF1F8;
  --rose: #F4C2DB;
  --lime: #D6D66B;
  --wine: #922932;
  --snow: #FAFAFA;
  --gray: #9D9D9E;
  --blue: #1A91BE;
  --u: clamp(0.62px, calc(100vw / 1692), 1px);
  --gutter: max(16px, calc(64 * var(--u)));
  --ease-out: cubic-bezier(.22, 1, .36, 1);
  --ease-pop: cubic-bezier(.34, 1.56, .64, 1);
  --display: "Fredoka", "Nunito", "Trebuchet MS", system-ui, sans-serif;
  --text: "Public Sans", "Helvetica Neue", Arial, system-ui, sans-serif;

  background: var(--blush);
  color: var(--pink);
  font-family: var(--text);
  font-size: max(15px, calc(19 * var(--u)));
  line-height: 1.35;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
}
.isy *, .isy *::before, .isy *::after { box-sizing: border-box; }
.isy :where(img) { display: block; max-width: 100%; height: auto; }
.isy :where(a) { color: inherit; text-decoration: none; }
.isy :where(a):hover { color: inherit; text-decoration: none; }
.isy :where(ul) { list-style: none; margin: 0; padding: 0; }
.isy :where(h2, p) { margin: 0; }
.isy :where(button) { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
.isy :focus-visible { outline: 3px solid var(--wine); outline-offset: 3px; border-radius: 8px; }
.isy [hidden] { display: none !important; }
.isy-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.isy-ico { display: inline-flex; }
.isy-ico svg { width: 1em; height: 1em; }

.isy-wrap { width: 100%; max-width: calc(1584px + 2 * var(--gutter)); margin-inline: auto; padding-inline: var(--gutter); }
.isy-section { margin-top: calc(78 * var(--u)); }
.isy-h2 {
  font-family: var(--display); font-weight: 600; color: var(--pink);
  font-size: max(24px, calc(46 * var(--u))); line-height: 1.1; letter-spacing: -0.005em;
  margin-bottom: calc(18 * var(--u));
}

/* Botones */
.isy-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .45em;
  font-family: var(--display); font-weight: 500; border-radius: 999px; white-space: nowrap;
  transition: transform .15s ease, filter .15s ease;
}
.isy-btn:hover { filter: brightness(1.04); transform: translateY(-1px); }
.isy-btn--lime { background: var(--lime); color: var(--pink-cta) !important; }

/* ---------- Barra superior ---------- */
.isy-topbar { background: var(--pink); color: #fff; }
.isy-topbar__list {
  display: flex; justify-content: center; align-items: center;
  min-height: calc(68 * var(--u)); padding: 8px var(--gutter);
  font-size: max(13px, calc(19 * var(--u)));
}
.isy-topbar__list li { display: flex; align-items: center; gap: 8px; padding-inline: calc(20 * var(--u)); }
.isy-topbar__list li + li { border-left: 1px solid rgba(255, 255, 255, .85); padding-left: calc(28 * var(--u)); margin-left: calc(8 * var(--u)); }
.isy-topbar__truck { display: inline-flex; color: var(--blush); }
.isy-topbar__truck svg { width: max(20px, calc(40 * var(--u))); height: auto; }

/* ---------- Encabezado ---------- */
.isy-header {
  display: grid;
  grid-template-columns: calc(320 * var(--u)) minmax(0, 1fr) auto;
  grid-template-areas: "logo search actions" "logo nav .";
  column-gap: calc(58 * var(--u));
  align-items: center;
  max-width: 1692px; margin-inline: auto;
  padding: calc(30 * var(--u)) var(--gutter) calc(8 * var(--u)) calc(41 * var(--u));
}
.isy-header__logo { grid-area: logo; align-self: center; }
.isy-header__logo img { width: 100%; height: auto; }

.isy-search { grid-area: search; position: relative; max-width: 870px; width: 100%; }
.isy-search input {
  width: 100%; height: max(44px, calc(64 * var(--u)));
  border: 1px solid var(--pink); border-radius: 999px; background: var(--snow);
  padding: 0 calc(76 * var(--u)) 0 calc(22 * var(--u));
  font: inherit; color: #3c2a33; font-size: max(15px, calc(19 * var(--u)));
  -webkit-appearance: none; appearance: none;
}
.isy-search input::placeholder { color: var(--gray); }
.isy-search input:focus { outline: none; box-shadow: 0 0 0 3px rgba(234, 70, 129, .25); }
.isy-search__btn {
  position: absolute; right: calc(9 * var(--u)); top: 50%; transform: translateY(-50%);
  width: max(34px, calc(47 * var(--u))); aspect-ratio: 1; border-radius: 50%;
  background: var(--pink) !important; color: #fff !important; display: grid; place-items: center;
}
.isy-search__btn svg { width: 55%; height: 55%; }

.isy-actions { grid-area: actions; display: flex; align-items: center; gap: calc(32 * var(--u)); padding-left: calc(80 * var(--u)); }
.isy-actions a { position: relative; display: block; width: max(28px, calc(49 * var(--u))); }
.isy-actions img { width: 100%; height: auto; }
.isy-actions__count {
  position: absolute; top: -6px; right: -8px; min-width: 18px; height: 18px; padding: 0 5px;
  border-radius: 9px; background: var(--wine); color: #fff; font-size: 11px; font-weight: 700;
  display: grid; place-items: center;
}

.isy-nav {
  grid-area: nav; display: flex; flex-wrap: wrap; gap: 0 calc(70 * var(--u));
  padding: calc(22 * var(--u)) 0 0 calc(16 * var(--u));
  font-size: max(14px, calc(19 * var(--u)));
}
.isy-nav a { color: var(--pink); padding-block: 2px; border-bottom: 2px solid transparent; }
.isy-nav a:hover { border-bottom-color: var(--pink); }

/* ---------- Carrusel ---------- */
.isy-hero { position: relative; margin-top: calc(45 * var(--u)); }
.isy-hero__track {
  display: grid; overflow: hidden; border-radius: calc(18 * var(--u));
  aspect-ratio: 1584 / 624; position: relative;
  background: linear-gradient(100deg, #FFD0E7 30%, #FFE6F2 50%, #FFD0E7 70%) 0 0 / 300% 100%;
  animation: isy-shimmer 1.6s linear infinite;
}
.isy-hero__track.is-loaded { animation: none; background: #FFD0E7; }
.isy-hero__slide {
  grid-area: 1 / 1; opacity: 0; transform: translateX(40px); pointer-events: none;
  transition: opacity .8s var(--ease-out), transform .8s var(--ease-out);
}
.isy-hero__slide.is-active { opacity: 1; transform: none; pointer-events: auto; z-index: 1; }
.isy-hero__slide { display: block; cursor: pointer; -webkit-user-drag: none; user-select: none; }
.isy-hero__track { touch-action: pan-y; }
.isy-hero__slide.is-leaving { opacity: 0; transform: translateX(-40px); }
.isy-hero__slide img { width: 100%; height: 100%; object-fit: cover; }
.isy-hero__dots { position: absolute; left: 0; right: 0; bottom: calc(41 * var(--u)); display: flex; justify-content: center; gap: 8px; }
.isy-hero__dots { z-index: 2; }
.isy-hero__dots button {
  width: max(10px, calc(16 * var(--u))); height: max(10px, calc(16 * var(--u))); border-radius: 999px;
  background: #fff; opacity: .55; transition: width .45s var(--ease-out), opacity .3s;
}
.isy-hero__dots button[aria-current="true"] { opacity: 1; width: max(28px, calc(44 * var(--u))); }
/* barra de progreso dentro del punto activo: muestra que el carrusel avanza solo */
.isy-hero__dots button { position: relative; overflow: hidden; }
.isy-hero__dots button::after {
  content: ""; position: absolute; inset: 0; border-radius: inherit;
  background: rgba(234, 70, 129, .6); transform: scaleX(0); transform-origin: left;
}
.isy-hero.is-playing .isy-hero__dots button[aria-current="true"]::after {
  animation: isy-progress var(--isy-delay, 6s) linear forwards;
}
@keyframes isy-progress { to { transform: scaleX(1); } }
.isy-hero__fallback { width: 100%; height: 100%; display: grid; place-items: center; background: linear-gradient(120deg, #EA4681, #F4C2DB); color: #fff; font-family: var(--display); font-size: max(18px, calc(40 * var(--u))); font-weight: 600; text-align: center; padding: 1em; }

/* ---------- Categorías ---------- */
.isy-cats { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: calc(20 * var(--u)); margin-top: calc(48 * var(--u)); }
.isy-cat {
  aspect-ratio: 209 / 208; background: var(--pink); border-radius: calc(16 * var(--u));
  display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
  padding: calc(18 * var(--u)) 6px calc(20 * var(--u)); color: var(--blush) !important;
  transition: transform .15s ease;
}
.isy-cat:hover { transform: translateY(-3px); }
.isy-cat__img { flex: 1; display: flex; align-items: flex-end; justify-content: center; min-height: 0; width: 100%; padding-bottom: calc(10 * var(--u)); }
.isy-cat__img img { max-height: 100%; max-width: 70%; object-fit: contain; }
.isy-cat__label { font-family: var(--display); font-weight: 600; font-size: max(14px, calc(30 * var(--u))); line-height: 1; }

/* ---------- Marcas ---------- */
.isy-brands { position: relative; display: flex; align-items: center; gap: calc(14 * var(--u)); }
.isy-brands__viewport { flex: 1; min-width: 0; }
.isy-brands__rail { display: flex; gap: calc(14 * var(--u)); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.isy-brands__prev { display: none; }
.isy-brands__rail::-webkit-scrollbar { display: none; }
.isy-brand {
  flex: 0 0 calc((100% - 6 * 14 * var(--u)) / 6.6); min-width: 128px; aspect-ratio: 202 / 85;
  background: #fff; border-radius: calc(10 * var(--u)); scroll-snap-align: start;
  display: grid; place-items: center; padding: calc(14 * var(--u)) calc(18 * var(--u));
}
.isy-brand img { max-height: 100%; max-width: 100%; object-fit: contain; }
.isy-brands__next {
  flex: 0 0 auto; width: max(36px, calc(46 * var(--u))); aspect-ratio: 1; border-radius: 50%;
  background: #fff !important; color: var(--pink) !important; display: grid; place-items: center;
  box-shadow: 0 2px 8px rgba(234, 70, 129, .15);
}
.isy-brands__next svg { width: 52%; height: 52%; }

/* ---------- Lo más top ---------- */
.isy-top {
  display: grid; gap: calc(20 * var(--u)) calc(20 * var(--u));
  grid-template-columns: 734fr 402fr 402fr;
  grid-template-rows: auto auto;
  grid-template-areas: "a b b" "a c d";
}
.isy-tile { position: relative; overflow: hidden; border-radius: calc(18 * var(--u)); display: block; isolation: isolate; }
.isy-tile__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -1; transition: transform .5s ease; }
.isy-tile:hover .isy-tile__img { transform: scale(1.03); }
.isy-tile__body { display: flex; flex-direction: column; align-items: flex-start; height: 100%; }
.isy-tile__title { font-family: var(--display); font-weight: 600; line-height: 1; letter-spacing: -0.01em; }
.isy-tile__text { font-size: max(13px, calc(23 * var(--u))); line-height: 1.2; margin-top: calc(10 * var(--u)); }
.isy-tile__btn {
  display: inline-flex; align-items: center; gap: .55em; margin-top: calc(16 * var(--u));
  height: max(30px, calc(41 * var(--u))); padding-inline: calc(26 * var(--u)) calc(20 * var(--u));
  border-radius: 999px; font-family: var(--display); font-weight: 500; font-size: max(13px, calc(19 * var(--u)));
  color: var(--blush);
}
.isy-tile__btn svg { width: 1.2em; height: 1.2em; }

.isy-tile--hidratacion { grid-area: a; aspect-ratio: 734 / 663; color: var(--blush) !important; }
.isy-tile--hidratacion .isy-tile__body { padding: calc(166 * var(--u)) 0 0 calc(51 * var(--u)); max-width: 52%; }
.isy-tile--hidratacion .isy-tile__title { font-size: max(22px, calc(44 * var(--u))); max-width: 6.2em; }
.isy-tile--hidratacion .isy-tile__btn { background: var(--blue); }

.isy-tile--proteccion { grid-area: b; aspect-ratio: 830 / 320; color: var(--pink) !important; }
.isy-tile--proteccion .isy-tile__body { padding: calc(60 * var(--u)) 0 0 calc(27 * var(--u)); }
.isy-tile--proteccion .isy-tile__title { font-size: max(20px, calc(42 * var(--u))); max-width: 7em; }
.isy-tile--proteccion .isy-tile__text { max-width: 13em; }
.isy-tile--proteccion .isy-tile__btn { background: var(--pink); }

.isy-tile--glow, .isy-tile--limpia { aspect-ratio: 402 / 320; }
.isy-tile--glow .isy-tile__body, .isy-tile--limpia .isy-tile__body { padding: calc(50 * var(--u)) 0 0 calc(28 * var(--u)); }
.isy-tile--glow .isy-tile__title, .isy-tile--limpia .isy-tile__title { font-size: max(20px, calc(40 * var(--u))); max-width: 5.5em; }
.isy-tile--glow .isy-tile__text, .isy-tile--limpia .isy-tile__text { font-size: max(12px, calc(20 * var(--u))); max-width: 9em; }
.isy-tile--glow .isy-tile__btn, .isy-tile--limpia .isy-tile__btn { height: max(24px, calc(27 * var(--u))); padding-inline: calc(12 * var(--u)) calc(10 * var(--u)); font-size: max(11px, calc(14 * var(--u))); }
.isy-tile--glow { grid-area: c; color: #6C1333 !important; }
.isy-tile--glow .isy-tile__btn { background: #5C2337; }
.isy-tile--limpia { grid-area: d; color: #4D6347 !important; }
.isy-tile--limpia .isy-tile__btn { background: #486E4B; }

/* ---------- Encabezado de sección con "Ver todos" ---------- */
.isy-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: calc(24 * var(--u)); }
.isy-head .isy-h2 { margin-bottom: 0; }
.isy-seeall {
  display: inline-flex; align-items: center; gap: .4em; flex: 0 0 auto;
  font-family: var(--display); font-weight: 600; font-size: max(16px, calc(29 * var(--u))); color: var(--wine) !important;
}
.isy-seeall svg { width: 2em; height: 1.35em; }
.isy-seeall--light { color: var(--blush) !important; }

/* Rieles horizontales (productos) */
.isy-rail {
  display: flex; gap: calc(18 * var(--u)); overflow-x: auto; scroll-snap-type: x proximity;
  padding-bottom: 6px; scrollbar-width: none;
}
.isy-rail::-webkit-scrollbar { display: none; }
.isy-wrap--rail {
  padding-left: max(var(--gutter), calc((100% - 1584px) / 2));
  padding-right: var(--gutter); scroll-padding-left: max(var(--gutter), calc((100% - 1584px) / 2));
}

/* ---------- Recién llegados ---------- */
.isy-new { margin-top: calc(70 * var(--u)); }
.isy-card {
  position: relative; flex: 0 0 max(172px, calc(277 * var(--u))); aspect-ratio: 277 / 389;
  background: #fff; border-radius: calc(16 * var(--u)); scroll-snap-align: start;
  display: flex; flex-direction: column; padding: calc(9 * var(--u)) calc(21 * var(--u)) calc(16 * var(--u));
}
.isy-badge {
  align-self: flex-start; background: var(--lime); color: var(--pink); border-radius: 999px;
  font-size: max(11px, calc(13 * var(--u))); font-weight: 500; line-height: 1; padding: .45em .8em;
}
.isy-badge--lg { font-family: var(--display); font-weight: 600; font-size: max(13px, calc(19 * var(--u))); padding: .2em .85em; }
.isy-fav { position: absolute; top: calc(9 * var(--u)); right: calc(21 * var(--u)); width: max(24px, calc(32 * var(--u))); }
.isy-fav--lg { top: calc(15 * var(--u)); right: calc(22 * var(--u)); width: max(28px, calc(40 * var(--u))); }
.isy-fav img { width: 100%; height: auto; transition: transform .2s; }
.isy-fav[aria-pressed="true"] img { transform: scale(1.1); }
.isy-card__img { flex: 1; min-height: 0; display: grid; place-items: center; padding: calc(12 * var(--u)) 0 calc(14 * var(--u)); }
.isy-card__img { position: relative; }
.isy-card__img img, .isy-pcard__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.isy-card__info { display: flex; flex-direction: column; padding-right: calc(44 * var(--u)); color: var(--pink) !important; }
.isy-card__brand { font-weight: 700; font-size: max(12px, calc(15 * var(--u))); }
.isy-card__name { font-size: max(11.5px, calc(14 * var(--u))); line-height: 1.25; margin-top: 2px; }
.isy-card__price { font-weight: 700; font-size: max(11.5px, calc(14 * var(--u))); margin-top: calc(10 * var(--u)); }
.isy-add {
  position: absolute; right: calc(21 * var(--u)); bottom: calc(16 * var(--u));
  width: max(30px, calc(40 * var(--u))); aspect-ratio: 1; border-radius: 50%;
  background: var(--wine) !important; color: #fff !important; display: grid; place-items: center;
  transition: transform .15s ease;
}
.isy-add:hover { transform: scale(1.08); }
.isy-add:active { transform: scale(.94); }
.isy-add svg { width: 52%; height: 52%; }

/* ---------- Promociones ---------- */
.isy-promo {
  position: relative; overflow: hidden; isolation: isolate;
  margin-top: calc(48 * var(--u)); background: var(--pink);
  border-radius: calc(30 * var(--u)); padding: calc(30 * var(--u)) 0 calc(64 * var(--u));
  max-width: 1692px; margin-inline: auto;
}
.isy-promo__blob { position: absolute; z-index: -1; width: calc(396 * var(--u)); height: auto; }
.isy-promo__blob--l { left: calc(-170 * var(--u)); top: calc(213 * var(--u)); }
.isy-promo__blob--r { right: calc(-200 * var(--u)); top: calc(-110 * var(--u)); transform: rotate(89deg); }
.isy-head--promo { position: relative; justify-content: center; margin-bottom: calc(34 * var(--u)); }
.isy-promo__title { display: flex; align-items: center; gap: calc(26 * var(--u)); color: var(--blush); }
.isy-promo__title img { width: max(30px, calc(57 * var(--u))); height: auto; position: relative; top: -.25em; }
.isy-head--promo .isy-seeall { position: absolute; right: var(--gutter); }

.isy-pcard {
  position: relative; flex: 0 0 max(220px, calc(355 * var(--u))); aspect-ratio: 355 / 545;
  background: #fff; border-radius: calc(24 * var(--u)); scroll-snap-align: start;
  display: flex; flex-direction: column; align-items: center; text-align: center;
  padding: calc(15 * var(--u)) calc(22 * var(--u)) calc(30 * var(--u));
}
.isy-pcard .isy-badge { align-self: flex-start; }
.isy-pcard__img { flex: 1; min-height: 0; width: 100%; display: grid; place-items: center; padding: calc(10 * var(--u)) 0 calc(6 * var(--u)); }
.isy-pcard__img { position: relative; }
.isy-pcard__info { display: flex; flex-direction: column; align-items: center; color: var(--pink) !important; }
.isy-pcard__brand { font-family: var(--display); font-weight: 600; font-size: max(17px, calc(33 * var(--u))); line-height: 1.05; }
.isy-pcard__name { font-size: max(13px, calc(26 * var(--u))); line-height: 1.15; margin-top: 2px; min-height: 2.3em; }
.isy-price {
  display: inline-flex; align-items: stretch; margin-top: calc(14 * var(--u));
  background: var(--rose); border-radius: 999px; overflow: hidden;
  font-family: var(--display); font-size: max(13px, calc(24 * var(--u))); line-height: 1; color: var(--pink);
}
.isy-price s { padding: .42em .55em .42em .7em; opacity: .9; text-decoration-thickness: 1.5px; }
.isy-price strong { background: var(--lime); border-radius: 999px; padding: .42em .6em; font-weight: 500; }

/* ---------- Ayuda WhatsApp ---------- */
.isy-help {
  position: relative; overflow: hidden; margin-top: calc(58 * var(--u));
  background: var(--rose); border-radius: calc(24 * var(--u));
  min-height: calc(354 * var(--u)); display: grid; place-items: center; text-align: center;
  padding: calc(56 * var(--u)) 20px;
}
.isy-help__decor { position: absolute; width: calc(var(--w) * 1.12 * var(--u)); height: auto; transform: rotate(var(--r)); pointer-events: none; }
.isy-help__body { position: relative; display: flex; flex-direction: column; align-items: center; }
.isy-help__title { font-family: var(--display); font-weight: 600; font-size: max(26px, calc(62 * var(--u))); line-height: 1.05; color: var(--pink); }
.isy-help__text { font-size: max(15px, calc(31 * var(--u))); line-height: 1.12; max-width: 17em; margin-top: calc(8 * var(--u)); }
.isy-help__btn { margin-top: calc(26 * var(--u)); height: max(42px, calc(51 * var(--u))); padding-inline: calc(22 * var(--u)); font-size: max(16px, calc(31 * var(--u))); font-weight: 500; }

/* ---------- Beneficios ---------- */
.isy-benefits {
  display: grid; grid-template-columns: repeat(4, 1fr); margin-top: calc(57 * var(--u));
  background: var(--pink); border-radius: calc(28 * var(--u)); color: var(--blush);
  padding: calc(42 * var(--u)) calc(30 * var(--u)) calc(38 * var(--u));
}
.isy-benefits li {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  font-size: max(14px, calc(27 * var(--u))); line-height: 1.18; padding-inline: calc(30 * var(--u));
}
.isy-benefits li + li { border-left: 1.5px solid var(--wine); }
.isy-benefits li > span:last-child { max-width: 9em; }
.isy-benefits__icon { height: calc(86 * var(--u)); min-height: 44px; display: flex; align-items: flex-end; margin-bottom: calc(26 * var(--u)); }
.isy-benefits__icon svg { height: 100%; width: auto; }
.isy-benefits__icon--headset svg, .isy-benefits__icon--gift svg { height: 96%; }

/* ---------- Footer ---------- */
.isy-footer {
  position: relative; margin-top: calc(95 * var(--u)); background: var(--pink); color: var(--snow);
  display: flex; flex-direction: column; align-items: center; text-align: center;
  padding: calc(120 * var(--u)) var(--gutter) calc(56 * var(--u));
}
.isy-footer__badge {
  position: absolute; top: 0; left: 50%; transform: translate(-50%, -38%);
  width: max(110px, calc(170 * var(--u))); aspect-ratio: 1; border-radius: 50%;
  background: var(--pink); border: max(5px, calc(8 * var(--u))) solid var(--rose);
  display: grid; place-items: center;
}
.isy-footer__badge img { width: 62%; height: auto; }
.isy-footer__text { font-size: max(15px, calc(27 * var(--u))); line-height: 1.12; max-width: 21em; }
.isy-footer__ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px calc(100 * var(--u)); margin-top: calc(32 * var(--u)); }
.isy-footer__btn {
  display: grid; place-items: center; width: max(230px, calc(365 * var(--u))); height: max(52px, calc(80 * var(--u)));
  background: #fff; border-radius: calc(16 * var(--u)); color: var(--pink) !important;
  font-family: var(--display); font-weight: 500; font-size: max(15px, calc(23 * var(--u)));
  transition: transform .15s ease;
}
.isy-footer__btn:hover { transform: translateY(-2px); }
.isy-footer__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px calc(44 * var(--u)); margin-top: calc(30 * var(--u)); font-family: var(--display); font-size: max(14px, calc(22 * var(--u))); }
.isy-footer__links a:hover { text-decoration: underline; text-underline-offset: 3px; }
.isy-footer__social { display: flex; gap: calc(14 * var(--u)); margin-top: calc(14 * var(--u)); }
.isy-footer__social a { display: block; width: max(36px, calc(56 * var(--u))); }

/* Toast */
.isy-toast {
  position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 20px); opacity: 0; pointer-events: none;
  background: var(--wine); color: #fff; font-weight: 500; padding: 12px 20px; border-radius: 999px;
  box-shadow: 0 6px 20px rgba(146, 41, 50, .3); transition: opacity .25s, transform .25s; z-index: 1000; max-width: calc(100vw - 32px);
}
.isy-toast.is-visible { opacity: 1; transform: translate(-50%, 0); }


/* =====================================================================
   TRANSICIONES
   ===================================================================== */

@keyframes isy-shimmer { to { background-position: -300% 0; } }

/* 1 · Entrada del hero (único momento automático) */
@keyframes isy-hero-in { from { transform: scale(1.04); opacity: .4; } to { transform: none; opacity: 1; } }
@keyframes isy-rise-pop {
  0% { opacity: 0; transform: translateY(24px) scale(.96); }
  70% { opacity: 1; transform: translateY(-4px) scale(1.02); }
  100% { opacity: 1; transform: none; }
}
.isy-hero__slide img { opacity: 0; }
.isy-hero__slide img.is-loaded { opacity: 1; }
.isy-hero__slide.is-first img.is-loaded { animation: isy-hero-in 1.1s var(--ease-out) both; }

/* 2 · Header que se compacta */
.isy-masthead { position: sticky; top: 0; z-index: 60; background: var(--blush); transition: box-shadow .3s; }
.isy-topbar { overflow: hidden; max-height: 120px; transition: max-height .35s var(--ease-out); }
.isy-header { transition: padding .35s var(--ease-out); }
.isy-header__logo { transition: width .35s var(--ease-out); width: calc(320 * var(--u)); }
.isy-nav { transition: padding .35s var(--ease-out); }
.isy-masthead.is-compact { box-shadow: 0 6px 18px rgba(234, 70, 129, .12); }
.isy-masthead.is-compact .isy-topbar { max-height: 0; }
.isy-masthead.is-compact .isy-header { padding-top: 10px; padding-bottom: 6px; }
.isy-masthead.is-compact .isy-header__logo { width: calc(200 * var(--u)); }
.isy-masthead.is-compact .isy-nav { padding-top: 6px; }

/* 3 · Hover en tarjetas: la tarjeta sube, solo la imagen crece */
.isy-cat__img img, .isy-card__img img, .isy-pcard__img img { transition: transform .45s var(--ease-out); }
.isy-cat, .isy-card, .isy-pcard { transition: transform .3s var(--ease-out), box-shadow .3s; }
@media (hover: hover) {
  .isy-cat:hover { transform: translateY(-4px); }
  .isy-cat:hover .isy-cat__img img { transform: scale(1.06) rotate(-3deg); }
  .isy-card:hover, .isy-pcard:hover { transform: translateY(-4px); box-shadow: 0 12px 24px rgba(146, 41, 50, .12); }
  .isy-card:hover .isy-card__img img, .isy-pcard:hover .isy-pcard__img img { transform: scale(1.05); }
}

/* 4 · Agregar al carrito: + gira y se vuelve ✓ */
.isy-add { overflow: hidden; }
.isy-add > span { grid-area: 1 / 1; display: grid; place-items: center; width: 100%; height: 100%;
  transition: transform .45s var(--ease-pop), opacity .25s; }
.isy-add > span svg { width: 52%; height: 52%; }
.isy-add__check { opacity: 0; transform: scale(.3) rotate(-45deg); }
.isy-add.is-done { background: var(--pink) !important; }
.isy-add.is-done .isy-add__plus { opacity: 0; transform: rotate(90deg) scale(.4); }
.isy-add.is-done .isy-add__check { opacity: 1; transform: none; }

@keyframes isy-bump { 0%, 100% { transform: scale(1); } 40% { transform: scale(1.35); } 70% { transform: scale(.9); } }
.isy-actions__cart.is-bump img { animation: isy-bump .5s var(--ease-out); }
.isy-actions__count.is-bump { animation: isy-bump .5s var(--ease-out); }
.isy-fly {
  position: fixed; z-index: 2000; pointer-events: none; border-radius: 12px; object-fit: contain;
  background: #fff; box-shadow: 0 8px 24px rgba(146, 41, 50, .25);
}

/* 5 · Favoritos: pop + chispas */
@keyframes isy-pop { 0% { transform: scale(1); } 35% { transform: scale(1.35); } 65% { transform: scale(.9); } 100% { transform: scale(1); } }
.isy-fav { overflow: visible; }
.isy-fav img { transition: none; }
.isy-fav.is-pop img { animation: isy-pop .5s var(--ease-out); }
.isy-fav[aria-pressed="true"] img { transform: none; }
.isy-spark {
  position: absolute; left: 50%; top: 50%; width: 7px; height: 7px; border-radius: 50%;
  margin: -3.5px 0 0 -3.5px; pointer-events: none;
  animation: isy-spark .6s var(--ease-out) forwards;
}
@keyframes isy-spark {
  from { transform: translate(0, 0) scale(1); opacity: 1; }
  to { transform: translate(var(--dx), var(--dy)) scale(.2); opacity: 0; }
}

/* 6 · Marcas en movimiento continuo
   Se desplazan solas; al posarse encima se detienen y aparecen las flechas
   para recorrerlas a mano. Al salir, siguen solas. */
.isy-brands.is-marquee { position: relative; display: block; }
.isy-brands.is-marquee .isy-brands__viewport {
  overflow: hidden; touch-action: pan-y; cursor: grab;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
          mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
}
.isy-brands.is-marquee .isy-brands__viewport.is-dragging { cursor: grabbing; }
.isy-brands.is-marquee .isy-brands__rail {
  overflow: visible; scroll-snap-type: none; width: max-content; will-change: transform;
}
.isy-brands.is-marquee .isy-brand { flex: 0 0 auto; width: max(128px, calc(202 * var(--u))); }
.isy-brands.is-marquee .isy-brands__next,
.isy-brands.is-marquee .isy-brands__prev {
  display: grid; position: absolute; top: 50%; z-index: 3;
  transition: opacity .3s var(--ease-out), transform .3s var(--ease-pop), box-shadow .3s;
}
.isy-brands.is-marquee .isy-brands__next { right: calc(-4 * var(--u)); transform: translateY(-50%); }
.isy-brands.is-marquee .isy-brands__prev {
  display: grid; flex: 0 0 auto; width: max(36px, calc(46 * var(--u))); aspect-ratio: 1; border-radius: 50%;
  background: #fff !important; color: var(--pink) !important; place-items: center;
  box-shadow: 0 2px 8px rgba(234, 70, 129, .15);
  left: calc(-4 * var(--u)); opacity: 0; pointer-events: none;
  transform: translateY(-50%) translateX(8px) scale(.85);
}
.isy-brands__prev svg { width: 52%; height: 52%; transform: rotate(180deg); }
/* al posarse: el riel se detiene y las flechas se destacan */
.isy-brands.is-marquee.is-hover .isy-brands__next { transform: translateY(-50%) scale(1.12); box-shadow: 0 6px 16px rgba(234, 70, 129, .3); }
.isy-brands.is-marquee.is-hover .isy-brands__prev { opacity: 1; pointer-events: auto; transform: translateY(-50%) scale(1); }
.isy-brands__next:active, .isy-brands__prev:active { scale: .92; }
.isy-brand img { transition: transform .3s var(--ease-out); }
.isy-brand:hover img { transform: none; }

/* 7 · Animaciones ligadas al scroll (CSS nativo; sin soporte quedan quietas) */
@supports (animation-timeline: view()) {
  @keyframes isy-star-spin { from { transform: rotate(-25deg) scale(.85); } to { transform: rotate(30deg) scale(1.1); } }
  .isy-promo__title img { animation: isy-star-spin linear both; animation-timeline: view(); }
  .isy-promo__title img:last-child { animation-direction: reverse; }

  @keyframes isy-float { from { translate: 0 28px; } to { translate: 0 -28px; } }
  .isy-help__decor { animation: isy-float linear both; animation-timeline: view(); }
  .isy-help__decor:nth-child(even) { animation-direction: reverse; }

  @keyframes isy-blob-drift { from { translate: 0 -40px; } to { translate: 0 40px; } }
  .isy-promo__blob { animation: isy-blob-drift linear both; animation-timeline: view(); }
}

/* ---------- Tablet ---------- */
@media (max-width: 1100px) {
  .isy-header { grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "logo search actions" "nav nav nav"; column-gap: 20px; padding-left: var(--gutter); }
  .isy-header__logo { width: 180px; }
  .isy-masthead.is-compact .isy-header__logo { width: 130px; }
  .isy-actions { padding-left: 0; gap: 18px; }
  .isy-nav { justify-content: center; padding-left: 0; gap: 0 28px; }
  .isy-cats { grid-template-columns: repeat(7, 128px); overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; }
  .isy-cats::-webkit-scrollbar { display: none; }
}

/* ---------- Móvil ---------- */
@media (max-width: 760px) {
  .isy-topbar__list li:not(:first-child) { display: none; }
  .isy-header { grid-template-columns: 1fr auto; grid-template-areas: "logo actions" "search search" "nav nav"; row-gap: 12px; padding-top: 14px; }
  .isy-header__logo { width: 150px; }
  .isy-masthead.is-compact .isy-header__logo { width: 110px; }
  .isy-masthead.is-compact .isy-nav { display: none; }
  .isy-nav { flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start; gap: 22px; padding-top: 2px; scrollbar-width: none; }
  .isy-nav::-webkit-scrollbar { display: none; }
  .isy-nav a { white-space: nowrap; }
  .isy-hero { margin-top: 18px; }
  .isy-hero__track { border-radius: 14px; }
  .isy-hero__dots { position: static; margin-top: 10px; }
  .isy-hero__dots button { background: var(--pink); }
  .isy-hero__dots button::after { background: var(--wine); }
  .isy-cats { grid-template-columns: repeat(7, 104px); gap: 10px; margin-top: 24px; }
  .isy-cat { border-radius: 12px; }
  .isy-section, .isy-new { margin-top: 36px; }
  .isy-top { grid-template-columns: 1fr 1fr; grid-template-areas: "a a" "b b" "c d"; gap: 10px; }
  .isy-tile { border-radius: 14px; }
  .isy-tile--hidratacion .isy-tile__body { padding: 0 0 0 20px; max-width: 58%; }
  .isy-tile--glow .isy-tile__body, .isy-tile--limpia .isy-tile__body { padding: 18px 0 0 14px; }
  .isy-tile--glow .isy-tile__title, .isy-tile--limpia .isy-tile__title { font-size: 18px; }
  .isy-tile--glow .isy-tile__text, .isy-tile--limpia .isy-tile__text { display: none; }
  .isy-tile--proteccion .isy-tile__body { padding: 18px 0 0 16px; }
  .isy-tile--proteccion .isy-tile__text { font-size: 12px; }
  .isy-tile--proteccion { aspect-ratio: 830 / 440; }
  .isy-tile--proteccion .isy-tile__img { object-position: 70% center; }
  .isy-promo { border-radius: 22px; padding: 22px 0 32px; margin-top: 32px; }
  .isy-head--promo { flex-direction: column; gap: 6px; }
  .isy-head--promo .isy-seeall { position: static; }
  .isy-promo__title { font-size: 22px; gap: 10px; }
  .isy-promo__title img { width: 24px; }
  .isy-help { border-radius: 18px; min-height: 260px; }
  .isy-help__decor { opacity: .55; }
  .isy-benefits { grid-template-columns: 1fr 1fr; row-gap: 24px; border-radius: 18px; padding: 24px 8px; }
  .isy-benefits li { padding-inline: 10px; }
  .isy-benefits li + li { border-left: 0; }
  .isy-benefits li:nth-child(even) { border-left: 1.5px solid var(--wine); }
  .isy-footer { padding-top: 84px; margin-top: 80px; }
  .isy-footer__btn { width: 100%; max-width: 320px; }
  .isy-footer__ctas { width: 100%; flex-direction: column; align-items: center; }
}

@media (prefers-reduced-motion: reduce) {
  .isy *, .isy *::before, .isy *::after { transition: none !important; animation: none !important; }
}


/* Landing overrides: mobile posters and existing product cards */
.isy-landing .isy-hero__slide picture, .isy-landing .isy-tile picture { display: block; width: 100%; height: 100%; }
.isy-landing .isy-hero__slide picture img { width: 100%; height: 100%; object-fit: cover; }
.isy-landing .isy-tile picture { position: absolute; inset: 0; z-index: -1; }
.isy-landing .isy-tile__img { position: static; width: 100%; height: 100%; object-fit: cover; }
.isy-landing .isy-tile:hover .isy-tile__img { transform: scale(1.03); }
.isy-landing .isy-brand:hover img { transform: none !important; }
.isy-landing .isy-new-products { display: flex; overflow-x: auto; gap: 18px; padding: 3px 2px 16px; scroll-snap-type: x mandatory; }
.isy-landing .isy-new-products .product-card { flex: 0 0 230px; scroll-snap-align: start; color: #922932; }
.isy-landing .isy-new-products .product-card .product-image { cursor: pointer; }
.isy-landing .isy-benefit-icon { font-size: 48px; line-height: 1; }
.isy-landing .isy-new-products .product-card .isy-variant-selector {z-index: 30;}

/* El reset .isy :where(button) ocultaba el fondo del + compartido. */
.isy-landing .isy-new-products .product-card .add-btn {
  background: var(--brown-text, #8B3A3A);
  color: transparent; border-radius: 50%; flex-shrink: 0;
}

@media (max-width: 760px) {
 .isy-landing .isy-hero__track {aspect-ratio: 1080 / 1200;}
 .isy-landing .isy-hero__slide img {width: 100%;height:100%;object-fit: cover;}
 .isy-landing .isy-top {grid-template-areas: 'a a' 'b b' 'c d';grid-template-columns: 1fr 1fr;}
 .isy-landing .isy-tile--hidratacion, .isy-landing .isy-tile--proteccion { aspect-ratio: 16 / 9; }
 .isy-landing .isy-tile--glow, .isy-landing .isy-tile--limpia {aspect-ratio: 3 / 4;}
 .isy-landing .isy-tile--hidratacion .isy-tile__body {padding: 5% 0 0 5%;max-width: 54%;}
 .isy-landing .isy-new-products .product-card {flex-basis: min(67vw, 240px);}
 .isy-landing .isy-benefit-icon {font-size: 34px;}
}

/* WebP originales/recreados pueden traer título y CTA dentro de la fotografía. */
@media (min-width: 761px) {
  .isy-landing .isy-text-in-desktop .isy-tile__body {display:none;}
}
@media (max-width: 760px) {
  .isy-landing .isy-text-in-mobile .isy-tile__body {display:none;}
}
.isy-landing .isy-top .isy-tile {min-width:0;}
.isy-landing .isy-top .isy-tile:focus-visible {outline-offset: 3px;}

.isy-landing .isy-benefits__icon img { display: block; height: 100%; width: auto; max-width: 100%; object-fit: contain; filter: brightness(0) invert(1); }


/* v3: responsive móvil, sin afectar al catálogo ni al shell compartido */
@media (max-width: 760px) {
  .isy-landing { --gutter: 12px; }
  .isy-landing .isy-wrap { padding-inline: 12px; }
  .isy-landing .isy-hero { margin-top: 14px; }
  .isy-landing .isy-hero__track { border-radius: 12px; }
  .isy-landing .isy-cats { grid-template-columns: repeat(7, 84px); gap: 8px; }
  .isy-landing .isy-cat__label {
    font-size: clamp(10px, 2.8vw, 12px);
    letter-spacing: -.15px;
    white-space: nowrap;
    max-width: 100%;
    text-align: center;
  }
  .isy-landing .isy-h2 { font-size: clamp(22px, 5.4vw, 29px); }
  .isy-landing .isy-new-products {
    display: flex; gap: 8px; padding: 3px 0 10px;
    width: 100%; overflow-x: auto; scroll-snap-type: x mandatory;
    scroll-padding-left: 0; overscroll-behavior-inline: contain;
  }
  .isy-landing .isy-new-products .product-card {
    flex: 0 0 calc((100% - 8px) / 2); min-width: 0;
    max-width: calc((100% - 8px) / 2); padding: 8px;
    scroll-snap-align: start; box-sizing: border-box;
  }
  .isy-landing .isy-new-products .product-card .product-image { width: 100%; height: 135px; object-fit: contain; }
  .isy-landing .isy-new-products .product-card .brand-stock-row { gap: 3px; }
  .isy-landing .isy-new-products .product-card .product-brand { font-size: 11px; min-width: 0; }
  .isy-landing .isy-new-products .product-card .stock-pill { font-size: 8px; padding: 2px 3px; }
  .isy-landing .isy-new-products .product-card .product-name { font-size: 11px; }
  .isy-landing .isy-new-products .product-card .price-container { flex-wrap: wrap; gap: 3px; }
  .isy-landing .isy-new-products .product-card .discount-price { font-size: 11px; max-width: 100%; }
  .isy-landing .isy-new-products .product-card .add-btn { width: 30px; height: 30px; }
  .isy-landing .isy-help { margin-top: 24px; min-height: 188px; padding: 16px 18px 18px; }
  .isy-landing .isy-help__decor { width: auto; height: 40px; max-width: 34px; opacity: .28; object-fit: contain; animation: none; translate: none; }
  /* Seis ilustraciones originales: tres en cada lado. */
  
  /* Seis ilustraciones originales: cuatro cosméticos y dos estrellas */
  .isy-landing .isy-help__decor {
    display: none;
    width: auto;
    height: auto;
    max-width: none;
    opacity: 1;
    animation: none;
    translate: none;
  }

  .isy-landing .isy-help__decor:nth-of-type(1),
  .isy-landing .isy-help__decor:nth-of-type(3),
  .isy-landing .isy-help__decor:nth-of-type(5),
  .isy-landing .isy-help__decor:nth-of-type(6),
  .isy-landing .isy-help__decor:nth-of-type(7),
  .isy-landing .isy-help__decor:nth-of-type(8),
  .isy-landing .isy-help__decor:nth-of-type(9) {
    display: block;
  }

  /* Cosmético superior izquierdo */
  .isy-landing .isy-help__decor:nth-of-type(1) {
    left: 4% !important;
    right: auto !important;
    top: 12% !important;
    bottom: auto !important;
    height: 60px;
  }

  /* Cosmético inferior izquierdo */
  .isy-landing .isy-help__decor:nth-of-type(3) {
    left: 2% !important;
    right: auto !important;
    top: 54% !important;
    bottom: auto !important;
    height: 55px;
  }

  /* Estrella encima del título */
  .isy-landing .isy-help__decor:nth-of-type(5) {
    left: 28% !important;
    right: auto !important;
    top: 2% !important;
    bottom: auto !important;
    height: 23px;
  }

  /* Cosmético superior derecho */
  .isy-landing .isy-help__decor:nth-of-type(6) {
    left: auto !important;
    right: 2% !important;
    top: 10% !important;
    bottom: auto !important;
    height: 60px;
  }

  /* Estrella debajo del botón */
  .isy-landing .isy-help__decor:nth-of-type(7) {
    left: 70% !important;
    right: auto !important;
    top: 82% !important;
    bottom: auto !important;
    height: 25px;
  }

  /* Nuevo cosmético en la posición anterior de la estrella */
  .isy-landing .isy-help__decor:nth-of-type(8) {
  left: auto !important;
  right: 77% !important;
  top: auto !important;
  bottom: 3% !important;
  height: 49px;
}

  /* Cosmético inferior derecho */
  .isy-landing .isy-help__decor:nth-of-type(9) {
    left: auto !important;
    right: 3% !important;
    top: auto !important;
    bottom: 7% !important;
    height: 67px;
  }

  /* Íconos de beneficios: conservar sin modificaciones */
  .isy-landing .isy-benefits__icon img {
    width: 42px;
    height: 42px;
  }

  .isy-landing .isy-help__body { max-width: 83%; z-index: 1; }
  .isy-landing .isy-help__title { font-size: 24px; line-height: 1.08; }
  .isy-landing .isy-help__text { font-size: 13px; line-height: 1.3; margin-top: 7px; max-width: 240px; }
  .isy-landing .isy-help__btn { font-size: 13px; height: 36px; margin-top: 12px; padding-inline: 15px; }
  .isy-landing .isy-benefits { margin-top: 24px; margin-bottom: 32px; padding: 24px 12px 28px; row-gap: 22px; }
  .isy-landing .isy-benefits li { gap: 6px; padding-inline: 8px; }
  .isy-landing .isy-benefits__icon { min-height: 40px; height: 44px; margin-bottom: 0; align-items: center; }
  .isy-landing .isy-benefits__icon svg { display: block; width: 42px; height: 42px; }
  .isy-landing .isy-benefits li > span:last-child { font-size: 12px; }
  .isy-landing .isy-brands.is-marquee .isy-brand { min-width: 112px; width: 112px; }
  .isy-landing .isy-brands__rail { gap: 9px; }
}
/* Estos iconos blancos siguen visibles sobre el fondo rosa original. */
.isy-landing .isy-benefits__icon { color: #fff; }
.isy-landing .isy-benefits__icon svg { display: block; width: 64px; height: 64px; }
@media (max-width: 760px) {
  .isy-landing .isy-benefits__icon svg { width: 42px; height: 42px; }
}
/* Separación de la landing antes del footer existente, incluidos móviles. */
.isy-landing main { padding-bottom: 24px; }
.isy-landing .isy-brand:hover img { transform: none !important; }


/* Categorías: giro y zoom al hover, foco y toque. */
.isy-landing .isy-cat__img img {
  transform: rotate(0deg) scale(1);
  transform-origin: center center;
  transition: transform .45s cubic-bezier(.22, 1, .36, 1);
}

@media (hover: hover) and (pointer: fine) {
  .isy-landing .isy-cat:hover .isy-cat__img img {
    transform: rotate(-10deg) scale(1.10);
  }
}

.isy-landing .isy-cat:focus-visible .isy-cat__img img,
.isy-landing .isy-cat:active .isy-cat__img img {
  transform: rotate(-10deg) scale(1.10);
}

@media (prefers-reduced-motion: reduce) {
  .isy-landing .isy-cat__img img {
    transition: none;
  }
}

/* Página de todas las marcas: mismo estilo y footer compartidos. */
.isy-all-brands { padding-block: clamp(24px, 4vw, 64px) 72px; min-height: 60vh; }
.isy-all-brands__back { display: inline-flex; align-items: center; gap: 8px; color: var(--wine) !important; font-weight: 600; margin-bottom: 22px; }
.isy-all-brands__lead { max-width: 620px; margin: 4px 0 30px !important; color: var(--wine); font-size: 15px; }
.isy-all-brands__index { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.isy-all-brands__index a { display: inline-grid; place-items: center; min-width: 33px; height: 33px; border-radius: 9px; background: #fff; font: 600 14px var(--display); }
.isy-all-brands__index a:hover { background: var(--pink); color: #fff !important; }
.isy-all-brands__group { margin: 30px 0 34px; scroll-margin-top: 90px; }
.isy-all-brands__letter { font: 600 clamp(21px, 3vw, 30px) var(--display); color: var(--pink); margin-bottom: 12px; }
.isy-all-brands__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(155px, 1fr)); gap: 16px; }
.isy-all-brands__card { display: flex; flex-direction: column; align-items: center; gap: 12px; min-width: 0; padding: 16px 12px 13px; border-radius: 16px; background: #fff; transition: transform .2s ease, box-shadow .2s ease; }
.isy-all-brands__card:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(146,41,50,.1); }
.isy-all-brands__card img { width: 100%; height: 88px; object-fit: contain; }
.isy-all-brands__card-name { font-family: var(--display); font-weight: 500; font-size: 15px; color: var(--wine); text-align: center; overflow-wrap: anywhere; }
.isy-all-brands__empty { color: var(--wine); padding: 16px 0; }
@media (max-width: 760px) {
  .isy-all-brands { padding: 22px 12px 100px; }
  .isy-all-brands__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .isy-all-brands__card { padding: 12px 8px; border-radius: 12px; }
  .isy-all-brands__card img { height: 70px; }
}

/* v3.2: conservar lista de marcas ERP visible si S3 no permite descubrir logos. */
.isy-brand__name { display: block; color: #922932; font: 500 clamp(12px, 1.1vw, 16px) var(--display); text-align: center; line-height: 1.1; overflow-wrap: anywhere; }
.isy-all-brands__placeholder { min-height: 70px; display: grid; place-items: center; color: #922932; font: 600 15px/1.2 var(--display); text-align: center; overflow-wrap: anywhere; }
