/* ============================================================
   BIOWELLNESS · info.css
   Estilos del centro de información de terapias (info/).
   Sin @layer a propósito: le gana al sistema, como toda página
   propia. Reutiliza tokens de tokens.css.
   ============================================================ */

/* ---- Cabecera propia de las páginas de info ----
   Igual criterio que founding/reserva: header simple que se ve
   siempre, sin el nav-links que se esconde en celular. */
.info-cab{border-bottom:1px solid var(--ink-3)}
.info-cab-inner{
  max-width:var(--maxw);margin-inline:auto;padding:1.05rem var(--pad);
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
}
.info-volver{
  font-family:var(--ff-mono);font-weight:var(--fw-tech);font-size:.75rem;letter-spacing:.08em;
  color:var(--tx-l-mut);white-space:nowrap;transition:color var(--t-fast);
}
.info-volver:hover{color:var(--tx-l)}
.info-cab .brand small{white-space:nowrap}

/* En pantallas chicas, la marca completa junto a un enlace largo
   ("← Todas las terapias") desborda y aparece scroll horizontal —el
   pecado capital en móvil—. Se libera espacio ocultando el subtítulo de
   la marca (BIOWELLNESS solo ya identifica) y dejando que el bloque de
   marca pueda encogerse. */
@media (max-width:460px){
  .info-cab .brand small{display:none}
  .info-cab .brand{min-width:0}
  .info-cab .brand b{font-size:.95rem}
  .info-volver{font-size:.7rem}
}

/* ---- Hub: grilla de terapias ---- */
.info-hero{padding-block:clamp(3rem,7vh,5rem) clamp(1.5rem,4vh,2.5rem)}
.info-hero .display{font-size:clamp(2.4rem,5.4vw,4rem);margin-top:1rem}
.info-hero .lead{margin-top:1.2rem;max-width:58ch;color:var(--tx-l-mut);font-size:1.08rem}

/* Pestañas del hub: dos anclas, Terapias y Servicios. */
.info-tabs{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.6rem}
.info-tabs a{
  font-family:var(--ff-mono);font-weight:var(--fw-tech);font-size:.72rem;letter-spacing:.08em;
  text-transform:uppercase;color:var(--tx-l);
  border:1px solid var(--ink-3);border-radius:var(--r-pill);
  padding:.5rem 1.1rem;transition:border-color var(--t-fast),color var(--t-fast);
}
.info-tabs a:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--ink-3));color:var(--tx-l)}

/* ---- Hub: bloque destacado que abre la guía ----
   Ancho completo y con el filo del espectro a la izquierda: es el marco
   de todo lo que viene abajo, no una tarjeta más. Si alguna vez hay un
   segundo destacado, conviene volver a discutirlo —dos "esto primero"
   no son ninguno—. */
.info-destacado{
  display:flex;flex-wrap:wrap;gap:1rem 2rem;
  align-items:flex-end;justify-content:space-between;
  background:var(--ink-2);border:1px solid var(--ink-3);
  border-left:3px solid var(--accent);
  border-radius:0 var(--r-lg) var(--r-lg) 0;
  padding:1.6rem 1.7rem;margin-bottom:clamp(2rem,5vh,3rem);
  color:inherit;transition:background var(--t-fast),border-color var(--t-fast);
}
.info-destacado:hover{background:color-mix(in srgb,var(--accent) 7%,var(--ink-2));border-left-color:var(--accent-strong)}
.info-destacado .k{
  font-family:var(--ff-mono);font-size:.66rem;font-weight:var(--fw-tech);
  letter-spacing:.12em;text-transform:uppercase;color:var(--accent-strong);
}
.info-destacado h2{
  font-family:var(--ff-display);font-weight:var(--fw-title);font-size:clamp(1.5rem,3.4vw,2rem);
  margin:.5rem 0 .6rem;
}
.info-destacado p{color:var(--tx-l-mut);font-size:.96rem;line-height:1.65;max-width:62ch}
.info-destacado .mas{font-size:.88rem;font-weight:600;color:var(--accent);white-space:nowrap}

/* ---- Hub: sección Servicios (paquetes / combos / membresías) ---- */
.info-servicios{
  border-top:1px solid var(--ink-3);
  padding-top:clamp(2.4rem,6vh,3.6rem);
  scroll-margin-top:1.5rem;
}
.info-servicios .display{font-size:clamp(1.9rem,4.5vw,2.8rem);margin-top:1rem}
.info-servicios .lead{
  margin:1.1rem 0 clamp(1.6rem,4vh,2.4rem);max-width:58ch;
  color:var(--tx-l-mut);font-size:1.05rem;
}
#terapias{scroll-margin-top:1.5rem}

.info-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;
  padding-bottom:clamp(3rem,7vh,5rem);
}
.info-card{
  position:relative;display:flex;flex-direction:column;
  background:var(--ink-2);border:1px solid var(--ink-3);
  border-radius:var(--r-lg);padding:1.6rem 1.5rem;
  color:inherit;transition:transform var(--t-med) var(--ease),border-color var(--t-med) var(--ease);
}
.info-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--accent) 45%,var(--ink-3))}
.info-card::before{
  content:"";position:absolute;top:0;left:1.5rem;right:1.5rem;height:2px;
  background:var(--metal);transform:scaleX(0);transform-origin:left;
  transition:transform .5s var(--ease);
}
.info-card:hover::before{transform:scaleX(1)}
.info-card h3{font-family:var(--ff-display);font-weight:var(--fw-title);font-size:1.5rem;margin-bottom:.3rem}
.info-card .spec{font-family:var(--ff-mono);font-weight:var(--fw-tech);font-size:.68rem;letter-spacing:.08em;color:var(--tx-l-mut);text-transform:uppercase;margin-bottom:.9rem}
.info-card p{font-size:.94rem;color:var(--tx-l-mut);flex:1}
/* Segunda línea de respaldo: el dato que da autoridad pero no sirve como
   titular. Va en cursiva de la display para que se lea como una cita al
   pie y no compita con el párrafo que explica de qué se trata. flex:none
   para que no se reparta el alto sobrante con el párrafo principal. */
.info-card .respaldo{
  flex:none;margin-top:.8rem;padding-top:.8rem;
  border-top:1px solid var(--ink-3);
  font-family:var(--ff-body);font-weight:500;
  font-size:.88rem;line-height:1.45;color:var(--tx-l-mut);
}
.info-card .mas{margin-top:1.1rem;font-size:.85rem;font-weight:600;color:var(--accent)}
.info-card .tag{
  align-self:flex-start;margin-top:1rem;font-family:var(--ff-mono);font-weight:var(--fw-tech);
  font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--tx-l-mut);border:1px solid var(--ink-3);border-radius:var(--r-pill);
  padding:.25rem .6rem;
}

@media (max-width:900px){ .info-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:600px){ .info-grid{grid-template-columns:1fr} }

/* ---- Página de terapia ---- */
.terapia{max-width:820px;margin-inline:auto;padding-inline:var(--pad)}
.terapia-hero{padding-block:clamp(2.5rem,6vh,4rem) clamp(1.5rem,3vh,2rem)}
.terapia-hero .eyebrow{color:var(--accent-strong)}
.terapia-hero h1{font-family:var(--ff-display);font-weight:var(--fw-title);font-size:clamp(2.4rem,6vw,3.6rem);margin-top:.8rem;line-height:1.05}
.terapia-hero .spec{
  font-family:var(--ff-mono);font-weight:var(--fw-tech);font-size:.8rem;letter-spacing:.08em;
  color:var(--tx-l-mut);margin-top:1rem;
}
.terapia-hero .intro{margin-top:1.4rem;font-size:1.12rem;line-height:1.6;color:var(--tx-l)}

.terapia h2{
  font-family:var(--ff-display);font-weight:var(--fw-title);font-size:1.7rem;
  margin:clamp(2.4rem,5vh,3.2rem) 0 1rem;
}
.terapia p{color:var(--tx-l-mut);line-height:1.7;margin-bottom:1rem}
.terapia .como li{color:var(--tx-l-mut);line-height:1.7;margin:.5rem 0 .5rem 1.2rem}

/* Para quién sí / para quién no — dos columnas que se leen de un vistazo */
.quien{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:1rem}
.quien-col{border:1px solid var(--ink-3);border-radius:var(--r-md);padding:1.3rem 1.4rem;background:var(--ink-2)}
.quien-col h3{display:flex;align-items:center;gap:.6rem;font-size:1.05rem;margin-bottom:.9rem}
.quien-col.si h3{color:var(--oxy)}
.quien-col.no h3{color:var(--danger)}
.quien-col ul{list-style:none}
.quien-col li{position:relative;padding-left:1.5rem;margin:.6rem 0;color:var(--tx-l-mut);font-size:.94rem;line-height:1.5}
.quien-col.si li::before{content:"✓";position:absolute;left:0;color:var(--oxy);font-weight:700}
.quien-col.no li::before{content:"✕";position:absolute;left:0;color:var(--danger);font-weight:700}
@media (max-width:600px){ .quien{grid-template-columns:1fr} }

/* ---- Desvío a la guía de la sesión ----
   La ficha de terapia le habla al que está DECIDIENDO. El que ya reservó
   llega igual acá por costumbre, y lo que necesita está en /guia/<slug>/.
   Va arriba de todo y no al pie: si estuviera abajo tendría que leer la
   página de decisión entera para encontrar lo que busca. Verde oxígeno y
   no rojo: es una ayuda, no una advertencia. */
.terapia-guia{
  display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;
  align-items:center;justify-content:space-between;
  border:1px solid color-mix(in srgb,var(--oxy) 30%,var(--ink-3));
  background:color-mix(in srgb,var(--oxy) 7%,var(--ink-2));
  border-radius:var(--r-md);padding:1rem 1.2rem;margin-top:1.6rem;
  color:inherit;transition:border-color var(--t-fast);
}
.terapia-guia:hover{border-color:color-mix(in srgb,var(--oxy) 55%,var(--ink-3))}
.terapia-guia span:first-child{font-size:.95rem;line-height:1.5;color:var(--tx-l-mut)}
.terapia-guia b{color:var(--tx-l)}
.terapia-guia .mas{font-size:.88rem;font-weight:600;color:var(--oxy);white-space:nowrap}

/* Bloque de precaución / disclaimer */
.precaucion{
  display:flex;gap:.9rem;align-items:flex-start;
  border:1px solid color-mix(in srgb,var(--danger) 35%,var(--ink-3));
  background:color-mix(in srgb,var(--danger) 7%,var(--ink-2));
  border-radius:var(--r-md);padding:1.1rem 1.3rem;margin:1rem 0;
  font-size:.94rem;color:var(--tx-l);line-height:1.6;
}
.precaucion svg{flex:none;margin-top:2px;color:var(--danger)}
.precaucion b{color:#fff}

/* Aviso médico al pie de cada página */
.aviso-medico{
  font-family:var(--ff-mono);font-size:.74rem;line-height:1.7;
  color:var(--tx-l-mut);border-top:1px solid var(--ink-3);
  margin-top:clamp(3rem,6vh,4rem);padding:1.4rem 0 0;
}

/* Marca de borrador — visible hasta la validación del equipo médico.
   Se saca (o se pone .validado en el body) cuando el contenido está aprobado. */
.borrador-medico{
  position:sticky;top:0;z-index:40;
  background:var(--warn);color:#3A2600;
  font-family:var(--ff-mono);font-size:.72rem;letter-spacing:.04em;
  text-align:center;padding:.55rem 1rem;font-weight:500;
}
body.validado .borrador-medico{display:none}

/* CTA de cierre a la evaluación */
.terapia-cta{
  margin:clamp(2.6rem,6vh,3.6rem) 0 clamp(3rem,6vh,4rem);
  border:1px solid var(--ink-3);border-radius:var(--r-lg);
  padding:1.8rem;text-align:center;background:var(--ink-2);
}
.terapia-cta h3{font-family:var(--ff-display);font-weight:var(--fw-title);font-size:1.5rem;margin-bottom:1.1rem}

.info-pie{padding-block:1.4rem;border-top:1px solid var(--ink-3);margin-top:2rem}
.info-pie-inner{
  max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);
  display:flex;flex-wrap:wrap;gap:.8rem;justify-content:space-between;align-items:center;
  font-family:var(--ff-mono);font-weight:var(--fw-tech);font-size:.66rem;letter-spacing:.08em;color:var(--tx-l-mut);
}
/* Sello de la AAIP (Registro Nacional de Bases de Datos, Ley 25.326).
   El código lo da la AAIP y la imagen se sirve desde argentina.gob.ar.
   Va sobre una placa blanca porque el isologo está pensado para fondo
   claro: sobre el pie oscuro se perdería. */
.aaip{display:inline-flex;align-items:center;background:#fff;border-radius:6px;padding:4px;line-height:0;flex:none}
.aaip img{display:block;height:auto}
.aaip:focus-visible{outline-offset:3px}

/* Cómo se paga (27-oct-2026): las tres formas de pago, en el orden en que
   las ofrece el mensaje de pago —transferencia, efectivo en Recepción,
   tarjeta—. Lo usan sólo las páginas de precios; los datos de la cuenta van
   únicamente en las que no se publican en el sitio. */
.fp{
  border:1px solid var(--ink-3);border-radius:var(--r-lg);background:var(--ink-2);
  padding:1.3rem 1.4rem;margin-top:clamp(2.4rem,5.5vh,3.2rem);
}
.fp h2{
  font-family:var(--ff-display);font-weight:var(--fw-title);
  font-size:clamp(1.35rem,3.4vw,1.7rem);margin:0 0 .4rem;
}
.fp > p{font-size:.93rem;color:var(--tx-l-mut);line-height:1.6;margin-top:.6rem}
.fp b{color:var(--tx-l)}
.fp ol{list-style:none;counter-reset:fp;display:grid;gap:.9rem;margin:1rem 0 0;padding:0}
.fp li{
  counter-increment:fp;position:relative;padding-left:2.4rem;
  font-size:.95rem;color:var(--tx-l-mut);line-height:1.55;
}
.fp li::before{
  content:"0" counter(fp);position:absolute;left:0;top:0;
  width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  border:1px solid var(--ink-3);color:var(--accent);
  font-family:var(--ff-mono);font-size:.64rem;
}
.fp-datos{
  display:grid;gap:.35rem;margin-top:.6rem;padding:.8rem 1rem;
  border:1px dashed var(--ink-3);border-radius:var(--r-md);
}
.fp-datos div{display:flex;flex-wrap:wrap;gap:.2rem .7rem;align-items:baseline}
.fp-datos span{
  font-family:var(--ff-mono);font-size:.6rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--tx-l-mut);min-width:6.5rem;
}
.fp-datos b{font-size:.95rem;word-break:break-all}
