/* ============================================================
   TARIFAS 2026 (tarifas.asp)
   Prefijo t26-. Se carga después de buscador2026.css y portada2026.css
   ============================================================ */

.t26-cab { background: var(--b26-texto); color: #fff; padding: 56px 0 120px; }
.t26-cab-in { display: flex; flex-direction: column; gap: 12px; align-items: center; text-align: center; }
.t26-ante { margin: 0; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #BFE0F2; }
.t26-cab h1 { margin: 0; font-size: 48px; line-height: 1.08; font-weight: 800; letter-spacing: -0.03em; max-width: 800px; }
.t26-intro { margin: 0; font-size: 18px; line-height: 1.6; color: #C9D6DF; max-width: 680px; }

/* ---------- Precio ---------- */
.t26-precio-sec { margin-top: -88px; }
.t26-precio { display: grid; grid-template-columns: minmax(0, 560px) minmax(0, 380px); gap: 24px; justify-content: center; align-items: start; }
.t26-tarjeta {
  background: #fff; border: 1px solid var(--b26-borde-claro); border-radius: 26px; padding: 32px;
  box-shadow: 0 24px 60px rgba(22,35,46,.14); display: flex; flex-direction: column; gap: 18px;
}
.t26-selector { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; background: var(--b26-fondo); border-radius: 14px; }
.t26-selector label { position: relative; cursor: pointer; }
.t26-selector input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.t26-selector span {
  display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; border-radius: 11px;
  font-size: 15px; font-weight: 700; color: var(--b26-texto-2);
}
.t26-selector em { font-style: normal; font-size: 12px; font-weight: 800; color: #fff; background: #1F7A4D; padding: 3px 7px; border-radius: 999px; }
.t26-selector input:checked + span { background: #fff; color: var(--b26-texto); box-shadow: 0 2px 8px rgba(22,35,46,.1); }
.t26-selector input:focus-visible + span { outline: 3px solid rgba(28,111,154,.45); outline-offset: 2px; }

.t26-opcion { display: flex; flex-direction: column; gap: 6px; min-height: 132px; }
.t26-opcion[hidden] { display: none; }
.t26-oferta-etq { margin: 0; font-size: 13px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: #1F7A4D; }
.t26-cifra { margin: 0; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.t26-cifra strong { font-size: 64px; line-height: 1; font-weight: 800; letter-spacing: -0.04em; }
.t26-cifra span { font-size: 18px; font-weight: 600; color: var(--b26-texto-3); }
.t26-detalle { margin: 0; font-size: 15px; line-height: 1.6; color: var(--b26-texto-2); }
.t26-detalle s { color: var(--b26-texto-3); }

.t26-cta {
  display: flex; align-items: center; justify-content: center; min-height: 56px; border-radius: 14px;
  background: var(--b26-azul); font-size: 17px; font-weight: 700; text-decoration: none;
}
.b26 a.t26-cta { color: #fff; }
.b26 a.t26-cta:hover { background: var(--b26-azul-osc); color: #fff; }
.t26-nota-cta { margin: -8px 0 0; text-align: center; font-size: 13px; color: var(--b26-texto-3); }

.t26-incluye { list-style: none; margin: 4px 0 0; padding: 18px 0 0; border-top: 1px solid var(--b26-borde-claro); display: flex; flex-direction: column; gap: 12px; }
.t26-incluye li { position: relative; padding-left: 32px; font-size: 15px; line-height: 1.5; color: var(--b26-texto-2); }
.t26-incluye li::before {
  content: ""; position: absolute; left: 0; top: 1px; width: 22px; height: 22px; border-radius: 50%;
  background: #E7F5EC url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F7A4D' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 13px no-repeat;
}

/* ---------- Oferta ---------- */
.t26-oferta {
  position: relative; overflow: hidden; border-radius: 26px; padding: 32px;
  background: #1F7A4D; color: #fff; display: flex; flex-direction: column; gap: 12px;
  box-shadow: 0 24px 60px rgba(22,35,46,.14);
}
.t26-oferta-pct { font-size: 72px; line-height: 1; font-weight: 800; letter-spacing: -0.04em; color: #D3F2DF; }
.t26-oferta h2 { margin: 0; font-size: 24px; font-weight: 800; letter-spacing: -0.01em; }
.t26-oferta p { margin: 0; font-size: 16px; line-height: 1.6; color: #E3F5EA; }
.t26-oferta-cuenta { font-size: 18px; }
.t26-oferta-cuenta s { opacity: .75; margin-right: 6px; }
.t26-oferta-cuenta strong { font-size: 32px; font-weight: 800; color: #fff; }

/* ---------- Comparación ---------- */
.t26-comparar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; max-width: 960px; }
.t26-plan { border: 1px solid var(--b26-borde-claro); border-radius: 22px; padding: 26px; display: flex; flex-direction: column; gap: 14px; background: #fff; }
.t26-plan-dest { border: 2px solid var(--b26-azul); }
.t26-plan h3 { margin: 0; font-size: 20px; font-weight: 800; }
.t26-plan-precio { margin: 0; font-size: 18px; font-weight: 700; color: var(--b26-azul); }
.t26-plan ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; font-size: 15px; flex: 1; }
.t26-plan li { padding-left: 28px; position: relative; }
.t26-plan li.si::before { content: "\2713"; position: absolute; left: 4px; font-weight: 800; color: #1F7A4D; }
.t26-plan li.no { color: var(--b26-texto-3); text-decoration: line-through; }
.t26-plan li.no::before { content: "\2715"; position: absolute; left: 4px; color: #9AA7B1; }
.t26-plan .a26-btn { align-self: flex-start; }

/* ---------- Preguntas ---------- */
.t26-faq details { max-width: 860px; border-bottom: 1px solid var(--b26-borde-claro); }
.t26-faq summary {
  cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 16px;
  padding: 18px 0; font-size: 17px; font-weight: 700;
}
.t26-faq summary::-webkit-details-marker { display: none; }
.t26-faq summary::after { content: "+"; font-size: 24px; font-weight: 500; color: var(--b26-azul); }
.t26-faq details[open] summary::after { content: "\2212"; }
.t26-faq details p { margin: 0 0 18px; font-size: 16px; line-height: 1.6; color: var(--b26-texto-2); }

@media (max-width: 960px) {
  .t26-precio { grid-template-columns: minmax(0, 560px); }
}
@media (max-width: 640px) {
  .t26-cab { padding: 36px 0 100px; }
  .t26-cab h1 { font-size: 32px; }
  .t26-intro { font-size: 16px; }
  .t26-tarjeta, .t26-oferta { padding: 22px; border-radius: 20px; }
  .t26-cifra strong { font-size: 52px; }
  .t26-comparar { grid-template-columns: minmax(0, 1fr); }
}
