/**
 * Temas interiores de subcategorías — mismas tarjetas que Paso 0 (104px, columna única).
 */

.rp-subcat-geo-list {
  list-style: none;
  margin: 0;
  padding: 0 0 max(8px, env(safe-area-inset-bottom, 0px));
  width: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

.rp-subcat-geo-list > li {
  min-width: 0;
  display: flex;
}

.rp-subcat-geo-list .rp-subcat-card.ch-geo-card {
  position: relative;
  display: block;
  flex: 1;
  width: 100%;
  min-height: 104px;
  height: 104px;
  padding: 0;
  gap: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  cursor: pointer;
  text-align: left;
  align-items: stretch;
}

.rp-subcat-geo-list .ch-geo-card__thumb {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  flex: none;
  width: clamp(122px, 43%, 152px);
  max-width: none;
  height: 104px;
  min-height: 0;
  border-radius: 14px;
  overflow: hidden;
  background: var(--rp-sub-thumb-bg, #e8eef3);
}

.rp-subcat-geo-list .ch-geo-card__thumb img {
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 14px;
}

.rp-subcat-geo-list .ch-geo-card__body {
  position: relative;
  z-index: 1;
  flex: 1;
  width: 100%;
  min-width: 0;
  min-height: 0;
  height: 104px;
  max-height: 104px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 7px 10px 7px clamp(106px, 37%, 132px);
  box-sizing: border-box;
  border-radius: 14px;
  background: var(--rp-sub-card-body-bg, #fff);
  box-shadow: var(--rp-sub-card-shadow, 0 6px 22px rgba(30, 58, 95, 0.08));
  border: 1px solid var(--rp-sub-card-border, rgba(0, 0, 0, 0.06));
  overflow: hidden;
}

.rp-subcat-geo-list .rp-sector-watermark {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(58%, 176px);
  pointer-events: none;
  z-index: 0;
  opacity: var(--rp-wm-opacity, 0.2);
}

.rp-subcat-geo-list .rp-sector-watermark__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  filter: saturate(1.12) contrast(1.1);
}

.rp-subcat-geo-list .rp-sector-watermark__fade {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    to right,
    var(--rp-sub-card-body-bg, #ffffff) 0%,
    color-mix(in srgb, var(--rp-sub-card-body-bg, #ffffff) 82%, transparent) 16%,
    color-mix(in srgb, var(--rp-sub-card-body-bg, #ffffff) 38%, transparent) 36%,
    color-mix(in srgb, var(--rp-sub-card-body-bg, #ffffff) 8%, transparent) 56%,
    transparent 72%
  );
}

.rp-subcat-geo-list .ch-geo-card__text,
.rp-subcat-geo-list .ch-geo-card__go {
  position: relative;
  z-index: 2;
}

.rp-subcat-geo-list .ch-geo-card__text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 6px;
  text-align: left;
  padding-left: clamp(32px, 9vw, 46px);
  box-sizing: border-box;
}

.rp-subcat-geo-list .ch-geo-card__title {
  margin: 0;
  width: 100%;
  font-size: clamp(12px, 3.2vw, 14px);
  font-weight: 800;
  line-height: 1.16;
  letter-spacing: -0.01em;
  color: var(--rp-sub-card-title, #1e293b);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.rp-subcat-geo-list .ch-geo-card__go {
  flex: 0 0 32px;
  align-self: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  margin: 0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--rp-sub-go-bg, #eceff1);
  color: var(--rp-sub-go-color, #455a64);
  box-shadow: var(--rp-sub-go-shadow, 0 3px 10px rgba(55, 71, 79, 0.18));
}

.rp-subcat-geo-list .ch-geo-card__go svg {
  width: 16px;
  height: 16px;
  display: block;
}

.rp-subcat-geo-list .rp-subcat-card.is-selected .ch-geo-card__body {
  box-shadow: var(--rp-sub-card-shadow-selected, 0 0 0 2px rgba(55, 71, 79, 0.28), 0 8px 24px rgba(30, 58, 95, 0.12));
}

.rp-subcat-geo-list .rp-subcat-card.is-selected .ch-geo-card__title {
  color: var(--rp-sub-card-title-selected, var(--rp-sub-card-title, #1e293b));
}

@media (max-width: 380px) {
  .rp-subcat-geo-list .ch-geo-card__thumb {
    width: clamp(112px, 41%, 136px);
  }

  .rp-subcat-geo-list .ch-geo-card__text {
    padding-left: clamp(26px, 8vw, 38px);
  }

  .rp-subcat-geo-list .ch-geo-card__title {
    font-size: 11px;
  }

  .rp-subcat-geo-list .ch-geo-card__go {
    flex-basis: 30px;
    width: 30px;
    height: 30px;
    min-width: 30px;
  }

  .rp-subcat-geo-list .ch-geo-card__go svg {
    width: 14px;
    height: 14px;
  }
}

/* —— Wrap interior por sector —— */
body.rp-sector-subcats .home-adultos-picker__flashes {
  display: none;
}

body.rp-sector-subcats .rp-adultos-wrap .ch-sector-sparkles {
  display: block;
}

body.rp-sector-subcats .rp-adultos-wrap {
  background: var(--rp-sub-wrap-bg, rgba(255, 255, 255, 0.94));
  border-color: var(--rp-sub-wrap-border, rgba(0, 0, 0, 0.06));
  box-shadow: var(--rp-sub-wrap-shadow, 0 8px 32px rgba(15, 23, 42, 0.08));
}

body.rp-sector-subcats .rp-adultos-sticky-top {
  background: var(--rp-sub-head-bg, linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(248,250,252,0.92) 100%));
}

body.rp-sector-subcats .home-adultos-picker__title {
  color: var(--rp-sub-title, #1e293b);
}

body.rp-sector-subcats .home-adultos-picker__hint {
  color: var(--rp-sub-hint, #64748b);
}

body.rp-sector-subcats.rp-page {
  background: var(--rp-sub-page-bg, #f1f5f9);
}

body.rp-sector-subcats .rp-ambient-flashes {
  opacity: 0.1;
}

/* Bienestar espiritual — sage / arena (no rosa ni morado intenso) */
body.rp-sector-subcats[data-rp-sector="bienestar"] {
  --rp-sub-page-bg: linear-gradient(165deg, #f4f7f2 0%, #eef3ea 45%, #f8f5ef 100%);
  --rp-sub-wrap-bg: rgba(255, 255, 255, 0.97);
  --rp-sub-title: #33691e;
  --rp-sub-hint: #689f38;
  --rp-sub-thumb-bg: #e8f0e4;
  --rp-sub-card-title: #2e5d1f;
  --rp-sub-card-title-selected: #1b5e20;
  --rp-sub-go-bg: #7cb342;
  --rp-sub-go-color: #fff;
  --rp-sub-go-shadow: 0 3px 10px rgba(85, 139, 47, 0.28);
  --rp-sub-card-shadow: 0 6px 18px rgba(51, 105, 30, 0.1);
}

body.rp-sector-subcats[data-rp-sector="bienestar"].rp-page {
  background: linear-gradient(165deg, #f4f7f2 0%, #eef3ea 45%, #f8f5ef 100%);
}

/* Salud — clínico */
body.rp-sector-subcats[data-rp-sector="salud"] {
  --rp-sub-page-bg: linear-gradient(165deg, #f4f8fb 0%, #eef5fc 50%, #e3f2fd 100%);
  --rp-sub-wrap-bg: rgba(255, 255, 255, 0.97);
  --rp-sub-title: #0d47a1;
  --rp-sub-hint: #546e7a;
  --rp-sub-thumb-bg: #e3f2fd;
  --rp-sub-card-title: #1a237e;
  --rp-sub-card-title-selected: #0d47a1;
  --rp-sub-go-bg: #1976d2;
  --rp-sub-go-color: #fff;
  --rp-sub-card-shadow: 0 6px 18px rgba(13, 71, 161, 0.1);
}

body.rp-sector-subcats[data-rp-sector="salud"].rp-page {
  background: linear-gradient(165deg, #f4f8fb 0%, #eef5fc 50%, #e3f2fd 100%);
}

/* Profesionales — corporativo */
body.rp-sector-subcats[data-rp-sector="profesionales"] {
  --rp-sub-page-bg: linear-gradient(165deg, #f5f5f5 0%, #eceff1 55%, #fafafa 100%);
  --rp-sub-wrap-bg: #ffffff;
  --rp-sub-title: #212121;
  --rp-sub-hint: #616161;
  --rp-sub-thumb-bg: #eceff1;
  --rp-sub-card-title: #263238;
  --rp-sub-card-title-selected: #000;
  --rp-sub-go-bg: #37474f;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="profesionales"].rp-page {
  background: linear-gradient(165deg, #f5f5f5 0%, #eceff1 55%, #fafafa 100%);
}

/* Automotriz — acero azul */
body.rp-sector-subcats[data-rp-sector="automotriz"] {
  --rp-sub-page-bg: linear-gradient(165deg, #eceff1 0%, #e3f2fd 50%, #f5f5f5 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #0d47a1;
  --rp-sub-hint: #546e7a;
  --rp-sub-thumb-bg: #cfd8dc;
  --rp-sub-card-title: #1565c0;
  --rp-sub-go-bg: #1976d2;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="automotriz"].rp-page {
  background: linear-gradient(165deg, #eceff1 0%, #e3f2fd 50%, #f5f5f5 100%);
}

/* Hogar — terracota cálido */
body.rp-sector-subcats[data-rp-sector="hogar"] {
  --rp-sub-page-bg: linear-gradient(165deg, #faf6f2 0%, #fbe9e7 50%, #fff8e1 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #bf360c;
  --rp-sub-hint: #8d6e63;
  --rp-sub-thumb-bg: #ffccbc;
  --rp-sub-card-title: #d84315;
  --rp-sub-go-bg: #e64a19;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="hogar"].rp-page {
  background: linear-gradient(165deg, #faf6f2 0%, #fbe9e7 50%, #fff8e1 100%);
}

/* Comercio — retail verde azulado */
body.rp-sector-subcats[data-rp-sector="comercio"] {
  --rp-sub-page-bg: linear-gradient(165deg, #f1f8f6 0%, #e0f2f1 50%, #f9fbe7 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #00695c;
  --rp-sub-hint: #558b2f;
  --rp-sub-thumb-bg: #b2dfdb;
  --rp-sub-card-title: #004d40;
  --rp-sub-go-bg: #00897b;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="comercio"].rp-page {
  background: linear-gradient(165deg, #f1f8f6 0%, #e0f2f1 50%, #f9fbe7 100%);
}

/* Bienes raíces */
body.rp-sector-subcats[data-rp-sector="bienes-raices"] {
  --rp-sub-page-bg: linear-gradient(165deg, #faf8f5 0%, #f5f0eb 50%, #efebe9 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #4e342e;
  --rp-sub-hint: #795548;
  --rp-sub-thumb-bg: #efebe9;
  --rp-sub-card-title: #3e2723;
  --rp-sub-go-bg: #6d4c41;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="bienes-raices"].rp-page {
  background: linear-gradient(165deg, #faf8f5 0%, #f5f0eb 50%, #efebe9 100%);
}

/* Eventos — festivo dorado */
body.rp-sector-subcats[data-rp-sector="eventos"] {
  --rp-sub-page-bg: linear-gradient(165deg, #fff8e1 0%, #fce4ec 40%, #f3e5f5 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #f57f17;
  --rp-sub-hint: #8e24aa;
  --rp-sub-thumb-bg: #ffe082;
  --rp-sub-card-title: #e65100;
  --rp-sub-go-bg: #ff8f00;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="eventos"].rp-page {
  background: linear-gradient(165deg, #fff8e1 0%, #fce4ec 40%, #f3e5f5 100%);
}

/* Transporte — logística */
body.rp-sector-subcats[data-rp-sector="transporte"] {
  --rp-sub-page-bg: linear-gradient(165deg, #eceff1 0%, #e1f5fe 55%, #f5f5f5 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #01579b;
  --rp-sub-hint: #0277bd;
  --rp-sub-thumb-bg: #b3e5fc;
  --rp-sub-card-title: #01579b;
  --rp-sub-go-bg: #0288d1;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="transporte"].rp-page {
  background: linear-gradient(165deg, #eceff1 0%, #e1f5fe 55%, #f5f5f5 100%);
}

/* Industria — acero */
body.rp-sector-subcats[data-rp-sector="industria"] {
  --rp-sub-page-bg: linear-gradient(165deg, #eceff1 0%, #cfd8dc 50%, #fafafa 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #37474f;
  --rp-sub-hint: #607d8b;
  --rp-sub-thumb-bg: #cfd8dc;
  --rp-sub-card-title: #263238;
  --rp-sub-go-bg: #455a64;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="industria"].rp-page {
  background: linear-gradient(165deg, #eceff1 0%, #cfd8dc 50%, #fafafa 100%);
}

/* Tecnología */
body.rp-sector-subcats[data-rp-sector="tecnologia"] {
  --rp-sub-page-bg: linear-gradient(165deg, #e8eaf6 0%, #eef2f7 45%, #e3f2fd 100%);
  --rp-sub-wrap-bg: rgba(255, 255, 255, 0.98);
  --rp-sub-title: #1a237e;
  --rp-sub-hint: #5c6bc0;
  --rp-sub-thumb-bg: #e8eaf6;
  --rp-sub-card-title: #283593;
  --rp-sub-go-bg: #3949ab;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="tecnologia"].rp-page {
  background: linear-gradient(165deg, #e8eaf6 0%, #eef2f7 45%, #e3f2fd 100%);
}

/* Mascotas */
body.rp-sector-subcats[data-rp-sector="mascotas"] {
  --rp-sub-page-bg: linear-gradient(165deg, #f1f8f4 0%, #e8f5e9 55%, #f9fbe7 100%);
  --rp-sub-wrap-bg: rgba(255, 255, 255, 0.96);
  --rp-sub-title: #1b5e20;
  --rp-sub-hint: #558b2f;
  --rp-sub-thumb-bg: #e8f5e9;
  --rp-sub-card-title: #2e7d32;
  --rp-sub-go-bg: #43a047;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="mascotas"].rp-page {
  background: linear-gradient(165deg, #f1f8f4 0%, #e8f5e9 55%, #f9fbe7 100%);
}

/* Educación */
body.rp-sector-subcats[data-rp-sector="educacion"] {
  --rp-sub-page-bg: linear-gradient(165deg, #f3f6fb 0%, #e8eaf6 50%, #ede7f6 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #283593;
  --rp-sub-hint: #5c6bc0;
  --rp-sub-thumb-bg: #e8eaf6;
  --rp-sub-card-title: #1a237e;
  --rp-sub-go-bg: #5c6bc0;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="educacion"].rp-page {
  background: linear-gradient(165deg, #f3f6fb 0%, #e8eaf6 50%, #ede7f6 100%);
}

/* Restaurantes */
body.rp-sector-subcats[data-rp-sector="restaurantes"] {
  --rp-sub-page-bg: linear-gradient(165deg, #fff3e0 0%, #ffe0b2 50%, #ffccbc 100%);
  --rp-sub-wrap-bg: #fff;
  --rp-sub-title: #e65100;
  --rp-sub-hint: #bf360c;
  --rp-sub-thumb-bg: #ffe0b2;
  --rp-sub-card-title: #d84315;
  --rp-sub-go-bg: #f4511e;
  --rp-sub-go-color: #fff;
}

body.rp-sector-subcats[data-rp-sector="restaurantes"].rp-page {
  background: linear-gradient(165deg, #fff3e0 0%, #ffe0b2 50%, #ffccbc 100%);
}

/* Botones volver temáticos */
.rp-btn--corporate {
  background: linear-gradient(180deg, #607d8b 0%, #37474f 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(55, 71, 79, 0.28);
  font-weight: 800;
}

.rp-btn--tech {
  background: linear-gradient(180deg, #5c6bc0 0%, #283593 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(40, 53, 147, 0.3);
  font-weight: 800;
}

.rp-btn--mascotas {
  background: linear-gradient(180deg, #66bb6a 0%, #2e7d32 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(46, 125, 50, 0.28);
  font-weight: 800;
}

.rp-btn--edu {
  background: linear-gradient(180deg, #7986cb 0%, #3949ab 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(57, 73, 171, 0.28);
  font-weight: 800;
}

.rp-btn--wellness {
  background: linear-gradient(180deg, #9ccc65 0%, #558b2f 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(85, 139, 47, 0.28);
  font-weight: 800;
}

.rp-btn--realestate {
  background: linear-gradient(180deg, #8d6e63 0%, #4e342e 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(78, 52, 46, 0.28);
  font-weight: 800;
}

.rp-btn--auto {
  background: linear-gradient(180deg, #42a5f5 0%, #1565c0 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(21, 101, 192, 0.28);
  font-weight: 800;
}

.rp-btn--hogar {
  background: linear-gradient(180deg, #ff7043 0%, #d84315 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(216, 67, 21, 0.28);
  font-weight: 800;
}

.rp-btn--comercio {
  background: linear-gradient(180deg, #26a69a 0%, #00695c 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(0, 105, 92, 0.28);
  font-weight: 800;
}

.rp-btn--eventos {
  background: linear-gradient(180deg, #ffb300 0%, #ef6c00 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(239, 108, 0, 0.28);
  font-weight: 800;
}

.rp-btn--gastronomia {
  background: linear-gradient(180deg, #ffb300 0%, #ef6c00 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(230, 81, 0, 0.32);
  font-weight: 800;
}

.rp-btn--transporte {
  background: linear-gradient(180deg, #29b6f6 0%, #0277bd 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(2, 119, 189, 0.28);
  font-weight: 800;
}

body.rp-sector-subcats[data-rp-sector="restaurantes"] .home-cat-promo-rail__slot--side .ch-slot-dock__mock-bg--estados {
  background: linear-gradient(145deg, #ffb74d 0%, #ef6c00 48%, #e65100 100%);
}

body.rp-sector-subcats[data-rp-sector="restaurantes"] .home-cat-promo-rail__slot--side .ch-slot-dock__banner--rail {
  box-shadow: 0 3px 10px rgba(230, 81, 0, 0.22);
}

.rp-btn--industria {
  background: linear-gradient(180deg, #78909c 0%, #37474f 100%);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(55, 71, 79, 0.28);
  font-weight: 800;
}
