/* ==========================================================================
   AITANA TOUR · INSCRIPCIONES (rediseño 2027)
   Componentes comunes (cabecera, títulos, rejillas, CTA): base-v4.css.
   ========================================================================== */

/* ---------- Tramos de precio ---------- */
.in-tramos {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    border-top: 3px solid var(--ai-negro);
    counter-reset: tramo;
}
@media (min-width: 640px)  { .in-tramos { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .in-tramos { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1280px) { .in-tramos { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.in-tramo {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px 20px 28px;
    border-bottom: 1px solid var(--ai-gris-linea);
    border-right: 1px solid var(--ai-gris-linea);
}
@media (max-width: 639px) { .in-tramo { border-right: 0; padding-left: 0; padding-right: 0; } }
@media (min-width: 1280px) { .in-tramo:last-child { border-right: 0; } }
.in-tramo__nombre {
    font-family: var(--ai-f-mono);
    font-size: 12px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #555555;
}
.in-tramo__precio {
    font-family: var(--ai-f-display) !important;
    font-weight: 800;
    font-size: clamp(56px, 6vw, 76px);
    line-height: .9;
    color: var(--ai-negro);
}
.in-tramo__desc {
    font-family: var(--ai-f-display) !important;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.1;
    text-transform: uppercase;
}
.in-tramo__periodo {
    margin-top: auto !important;
    padding-top: 12px;
    border-top: 1px solid var(--ai-gris-linea);
    font-size: 15px;
    line-height: 1.45;
    color: var(--ai-gris-texto);
}
.in-tramo:first-child { background: var(--ai-negro); color: var(--ai-blanco); }
.in-tramo:first-child .in-tramo__precio { color: var(--ai-blanco); }
.in-tramo:first-child .in-tramo__nombre,
.in-tramo:first-child .in-tramo__periodo { color: #cfcfcf; border-color: var(--ai-gris-oscuro); }
@media (max-width: 639px) { .in-tramo:first-child { padding-left: 20px; padding-right: 20px; } }
.in-tramo--espera .in-tramo__precio { color: var(--ai-rojo); }

.in-precios-pie { display: grid; gap: 24px; margin-top: clamp(32px, 4vw, 48px); align-items: stretch; }
@media (min-width: 960px) { .in-precios-pie { grid-template-columns: 7fr 5fr; } }
.in-grupos {
    background: var(--ai-rojo);
    color: var(--ai-blanco);
    padding: clamp(24px, 3vw, 36px);
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.in-grupos .gc-etq { color: var(--ai-blanco); }
.in-grupos .in-grupos__dto {
    font-family: var(--ai-f-display) !important;
    font-weight: 800;
    font-size: clamp(34px, 4vw, 52px);
    line-height: .95;
    text-transform: uppercase;
}
.in-grupos p { font-size: 16px; line-height: 1.55; }
.in-grupos .ai-btn { margin-top: 8px; }
.in-grupos .ai-btn--negro:hover { background: var(--ai-blanco); color: var(--ai-negro); border-color: var(--ai-blanco); }

/* ---------- Servicios incluidos (fondo negro) ---------- */
.in-incluidos {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    column-gap: 32px;
    border-top: 1px solid var(--ai-gris-oscuro);
}
@media (min-width: 700px)  { .in-incluidos { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .in-incluidos { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.in-incluido { padding: 20px 0; border-bottom: 1px solid var(--ai-gris-oscuro); }
.in-incluido__cab { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; margin-bottom: 6px; }
.in-incluido__n { font-family: var(--ai-f-display); font-weight: 800; font-size: 18px; color: var(--ai-rojo); }
.in-incluido h3 {
    font-family: var(--ai-f-display) !important;
    font-weight: 700 !important;
    font-size: 22px !important;
    line-height: 1.1 !important;
    text-transform: uppercase;
}
.in-incluido p { font-size: 15px; line-height: 1.55; color: #cfcfcf; padding-left: 30px; }
.in-incluido .ai-etiqueta { font-size: 11px; padding: 4px 8px; }

.in-extras { margin-top: clamp(32px, 4vw, 48px); }
.in-extras__lista { display: flex; flex-wrap: wrap; gap: 8px; }
.in-extras__lista li {
    padding: 10px 16px;
    border: 1px solid var(--ai-blanco);
    font-family: var(--ai-f-display);
    font-weight: 700;
    font-size: 17px;
    letter-spacing: .02em;
    text-transform: uppercase;
}

/* ---------- Servicios opcionales ---------- */
@media (min-width: 1100px) { .in-opcionales { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.in-opcional__cab { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.in-opcional--vip { background: var(--ai-negro); color: var(--ai-blanco); }
.in-opcional--vip .gc-texto { color: #cfcfcf; }
.in-opcional--vip .gc-card__n { color: var(--ai-blanco); }
.in-opcional--vip .ai-etiqueta { border-color: var(--ai-blanco); }
