/* ==========================================================================
   SCH · Portada (depende de base.css: tokens, .sch-section, .sch-grid, .sch-btn, .sch-chip, .sch-leaders, .sch-door)
   ========================================================================== */

/* 1. Hero en rojo con el modelo destacado */
.sch-hero {
  padding-block: var(--sch-s-6) var(--sch-s-7);
  background: var(--sch-rojo);
  color: var(--sch-on-rojo);
  --sch-focus: #fff;
}
.sch-hero__grid { display: grid; gap: var(--sch-s-6); }
.sch-hero__kicker {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: var(--sch-s-3);
  color: inherit;
}
.sch-hero__title {
  max-width: 16ch;
  font-size: clamp(2.75rem, 11.5vw, 6.25rem);
  font-stretch: 62%;
  font-weight: 900;
  line-height: 0.92;
  letter-spacing: -0.005em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}
.sch-hero__lead {
  margin-top: var(--sch-s-4);
  max-width: 42ch;
  font-size: var(--sch-fs-18);
  line-height: 1.4;
}
.sch-hero__actions {
  display: grid;
  gap: var(--sch-s-4);
  margin-top: var(--sch-s-5);
}
.sch-hero__cta {
  border-color: var(--sch-paper);
  background: var(--sch-paper);
  color: var(--sch-ink);
}
.sch-hero__cta:hover {
  border-color: var(--sch-ink);
  background: var(--sch-ink);
  color: var(--sch-on-ink);
}
.sch-hero__link { justify-self: start; color: inherit; }

.sch-featured {
  display: grid;
  border: var(--sch-rule);
  background: var(--sch-paper);
  color: var(--sch-ink);
  --sch-focus: var(--sch-ink);
}
.sch-featured__media {
  display: block;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-bottom: var(--sch-rule);
  background: var(--sch-photo);
}
.sch-featured__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--sch-slow) var(--sch-ease);
}
.sch-featured:hover .sch-featured__img { transform: scale(1.03); }
.sch-featured__body {
  display: grid;
  align-content: start;
  gap: var(--sch-s-4);
  padding: var(--sch-s-4);
}
.sch-featured__kicker {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 0;
}
.sch-featured__name {
  font-size: clamp(1.875rem, 7vw, 2.75rem);
  font-stretch: 62%;
  font-weight: 900;
  line-height: 0.95;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}
.sch-featured__link { color: inherit; text-decoration: none; }
.sch-featured__link:hover { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 4px; }
.sch-featured .sch-price__amount { font-size: clamp(1.875rem, 9vw, 2.75rem); }
.sch-featured__label { margin-bottom: calc(-1 * var(--sch-s-2)); color: var(--sch-gray-700); }
.sch-featured__size {
  min-width: var(--sch-tap);
  min-height: var(--sch-tap);
  justify-content: center;
  text-decoration: none;
}

/* 2. Últimos ingresos */
.sch-novedades__all { white-space: nowrap; }

/* 3. Accesos: filas enormes por género + chips */
.sch-entries { border-top: var(--sch-rule); }
.sch-entries__item { border-bottom: var(--sch-rule); }
.sch-entry {
  display: flex;
  align-items: baseline;
  gap: 12px;
  padding: 12px 0 8px;
  color: inherit;
  text-decoration: none;
  transition: background var(--sch-fast) var(--sch-ease), padding var(--sch-fast) var(--sch-ease), color var(--sch-fast) var(--sch-ease);
}
.sch-entry__name {
  font-size: clamp(3.25rem, 16vw, 8rem);
  font-stretch: 62%;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.sch-entry__n {
  margin-left: auto;
  font-size: var(--sch-fs-14);
  font-weight: 600;
  white-space: nowrap;
}
.sch-entry__arrow { align-self: center; width: 28px; height: 28px; }
.sch-entry:hover,
.sch-entry:focus-visible {
  padding-inline: 12px;
  background: var(--sch-ink);
  color: var(--sch-on-ink);
}
.sch-accesos__chips {
  display: grid;
  gap: var(--sch-s-5);
  margin-top: var(--sch-s-6);
}
.sch-accesos__chip { min-height: var(--sch-tap); text-decoration: none; }

/* 4. Cómo comprar */
.sch-steps { display: grid; gap: var(--sch-s-4); }
.sch-steps__item {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: var(--sch-s-3);
  padding-top: var(--sch-s-4);
  border-top: var(--sch-rule);
  color: var(--sch-gray-700);
}
.sch-steps__n {
  font-size: 3.5rem;
  font-stretch: 62%;
  font-weight: 900;
  line-height: 0.8;
  color: var(--sch-ink);
}
.sch-steps__title {
  margin-bottom: var(--sch-s-2);
  color: var(--sch-ink);
  font-size: var(--sch-fs-18);
  font-weight: 800;
  line-height: 1.2;
}
.sch-steps__body p { font-size: var(--sch-fs-14); line-height: 1.45; }
.sch-steps__body strong { color: var(--sch-ink); }
.sch-how__table {
  margin-top: var(--sch-s-6);
  padding: var(--sch-s-4);
  border: var(--sch-rule);
  background: var(--sch-paper);
}
.sch-how__subtitle {
  margin-bottom: var(--sch-s-3);
  font-size: var(--sch-fs-11);
  font-stretch: 125%;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.sch-how__leaders dd,
.sch-hours dd { margin: 0; text-align: right; }
.sch-how__sellos { margin-top: var(--sch-s-4); padding-top: var(--sch-s-3); border-top: 1px solid var(--sch-line); }
.sch-how__links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sch-s-3) var(--sch-s-5);
  margin-top: var(--sch-s-5);
}

/* 5. El local */
.sch-local__grid { display: grid; gap: var(--sch-s-6); }
.sch-local__photos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  align-items: start;
}
.sch-local__photo {
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: var(--sch-photo);
}
.sch-local__photo--b { margin-top: var(--sch-s-6); }
.sch-local__img { width: 100%; height: 100%; object-fit: cover; }
.sch-local__lead { margin-top: var(--sch-s-3); max-width: 46ch; color: var(--sch-gray-700); }
.sch-local__door { margin-top: var(--sch-s-4); }
.sch-hours {
  margin-top: var(--sch-s-4);
  max-width: 460px;
  padding-block: var(--sch-s-3);
  border-block: var(--sch-hair);
}
.sch-local__actions { display: grid; gap: 8px; margin-top: var(--sch-s-5); }
.sch-local__more {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sch-s-3) var(--sch-s-5);
  margin-top: var(--sch-s-4);
}

/* 6. Instagram */
.sch-ig__handle { color: inherit; text-decoration: none; text-transform: none; }
.sch-ig__handle:hover { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 4px; }
.sch-ig__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px;
}
.sch-ig__link {
  display: block;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: var(--sch-photo);
}
.sch-ig__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--sch-slow) var(--sch-ease);
}
.sch-ig__link:hover .sch-ig__img { transform: scale(1.04); }

/* 7. Perchero (indumentaria) */
.sch-rack-wrap { padding-block: 0 var(--sch-s-7); }
.sch-rack { display: grid; background: var(--sch-cream-2); }
.sch-rack__media {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--sch-photo);
}
.sch-rack__img { width: 100%; height: 100%; object-fit: cover; }
.sch-rack__body { padding: var(--sch-s-5) var(--sch-s-4); }
.sch-rack__title { font-size: clamp(2rem, 8.5vw, 3.5rem); }
.sch-rack__lead { margin-top: var(--sch-s-3); max-width: 46ch; color: var(--sch-gray-700); }
.sch-rack__actions { margin-top: var(--sch-s-5); }

/* 8. Mostrador (WhatsApp) */
.sch-counter__grid { display: grid; gap: var(--sch-s-6); }
.sch-counter__lead { margin-top: var(--sch-s-3); max-width: 46ch; color: var(--sch-on-ink-2); }
.sch-counter__cta { margin-top: var(--sch-s-5); }
.sch-counter__list { border-top: 2px solid var(--sch-on-ink); }
.sch-counter__q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sch-s-4);
  min-height: 68px;
  padding-block: 12px;
  border-bottom: 1px solid var(--sch-gray-700);
  color: inherit;
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  transition: background var(--sch-fast) var(--sch-ease), padding var(--sch-fast) var(--sch-ease), color var(--sch-fast) var(--sch-ease);
}
.sch-counter__q:hover,
.sch-counter__q:focus-visible {
  padding-inline: 12px;
  background: var(--sch-paper);
  color: var(--sch-ink);
}
.sch-counter__texto { flex: 1; }
.sch-counter__wa { flex: none; width: 24px; height: 24px; color: var(--sch-wa-marca, var(--sch-wa)); }
.sch-counter__q:hover .sch-counter__wa { color: var(--sch-wa); }

/* ---------- 600 ---------- */
@media (min-width: 600px) {
  .sch-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sch-s-4) var(--sch-s-5); }
  .sch-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sch-s-5); }
  .sch-local__photos { gap: 12px; }
  .sch-local__actions { display: flex; flex-wrap: wrap; }
  .sch-rack { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sch-rack__media { height: 100%; min-height: 320px; aspect-ratio: auto; }
  .sch-rack__body { padding: var(--sch-s-6) var(--sch-s-5); }
  .sch-ig__grid { gap: 8px; }
}

/* ---------- 900 ---------- */
@media (min-width: 900px) {
  .sch-hero { padding-block: var(--sch-s-8); }
  .sch-hero__grid { grid-template-columns: 5fr 7fr; gap: var(--sch-s-8); align-items: center; }
  .sch-hero--solo .sch-hero__grid { grid-template-columns: minmax(0, 1fr); }
  .sch-hero__title { font-size: clamp(3.5rem, 6.5vw, 6.25rem); }
  .sch-featured { grid-template-columns: 44fr 56fr; }
  .sch-featured__media { height: 100%; aspect-ratio: 4 / 5; border-bottom: 0; border-right: var(--sch-rule); }
  .sch-featured__body { padding: var(--sch-s-5); }
  .sch-featured__name { font-size: clamp(2rem, 3vw, 2.75rem); }
  .sch-featured .sch-price__amount { font-size: clamp(1.875rem, 2.6vw, 2.75rem); }
  .sch-entry { align-items: center; }
  .sch-entry__arrow { width: 44px; height: 44px; }
  .sch-accesos__chips { grid-template-columns: 1fr 2fr; gap: var(--sch-s-7); }
  .sch-how__table { padding: var(--sch-s-5) var(--sch-s-6); }
  .sch-how__leaders { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--sch-s-7); }
  .sch-local__grid { grid-template-columns: 6fr 5fr; gap: var(--sch-s-8); align-items: center; }
  .sch-ig__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .sch-rack-wrap { padding-block: 0 var(--sch-s-8); }
  .sch-rack { grid-template-columns: 5fr 7fr; }
  .sch-rack__body { padding: var(--sch-s-7) var(--sch-s-6); }
  .sch-counter__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sch-s-8); align-items: end; }
  .sch-counter__q { min-height: 84px; font-size: var(--sch-fs-24); }
}

/* ---------- 1200 ---------- */
@media (min-width: 1200px) {
  .sch-hero { padding-block: var(--sch-s-9); }
  .sch-featured__body { padding: var(--sch-s-6); }
  .sch-rack-wrap { padding-block: 0 var(--sch-s-9); }
}

@media (prefers-reduced-motion: reduce) {
  .sch-featured__img,
  .sch-ig__img,
  .sch-entry,
  .sch-counter__q { transition: none; }
  .sch-featured:hover .sch-featured__img,
  .sch-ig__link:hover .sch-ig__img { transform: none; }
}
