/* Estilos de la sección para terapeutas. Compartidos por las tres páginas. */

  :root{
    --blanco:#FFFFFF;
    --tinta:#3A2740;
    --suave:#776B80;
    --linea:#E5DDEC;
    --nube:#F6F1F8;
    --papel:#FDFBFA;
    --uva:#5C4467;
    --lila-marca:#8A6E96;
    --malva:#CBB9DE;
    --bruma:#DDD2E6;
    --rosa:#D9A5AE;

    --terracota:#B5644A;
    --salvia:#8B9A7A;
    --cielo:#7A8AA0;
    --ambar:#C1974E;
    --lila:#96849E;

    --display:'Cormorant Garamond',Georgia,'Times New Roman',serif;
    --texto:'DM Sans','Helvetica Neue',Arial,sans-serif;
  }

  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{background:var(--papel);color:var(--tinta);font-family:var(--texto);font-weight:300;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
  a{color:inherit;text-decoration:none}
  button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
  input,textarea{font:inherit;color:inherit}
  :focus-visible{outline:2px solid var(--terracota);outline-offset:3px;border-radius:4px}

  .contenido{width:100%;max-width:1060px;margin:0 auto;padding:0 24px}
  .angosto{max-width:680px}

  .mono{font-family:var(--display);font-weight:500;text-transform:uppercase;letter-spacing:.1em;text-indent:.1em}
  .etiqueta{font-size:10px;font-weight:400;letter-spacing:.4em;text-indent:.4em;text-transform:uppercase;color:var(--suave)}

  .boton{display:inline-block;font-weight:400;font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:13px 26px;border-radius:999px;border:1px solid transparent;transition:background .25s,color .25s,border-color .25s}
  .boton-lleno{background:var(--uva);color:#fff}
  .boton-lleno:hover{background:#46344F}
  .boton-linea{border-color:var(--linea);color:var(--tinta)}
  .boton-linea:hover{border-color:var(--tinta)}
  .boton-ancho{width:100%;text-align:center}
  .boton[disabled]{opacity:.5;cursor:default}

  /* ---------- barra ---------- */
  .barra{border-bottom:1px solid var(--linea)}
  .barra-fila{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0}
  .barra .mono{font-size:19px}
  .barra a.volver{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--suave);transition:color .2s}
  .barra a.volver:hover{color:var(--tinta)}

  /* ---------- portada ---------- */
  .portada{padding:96px 0 84px;text-align:center}
  .portada h1{font-family:var(--display);font-weight:500;font-size:clamp(32px,6.4vw,58px);line-height:1.15;margin-top:22px}
  .portada .entrada{margin:30px auto 0;color:var(--suave);max-width:600px}

  /* ---------- secciones ---------- */
  section{padding:72px 0;border-top:1px solid var(--linea)}
  h2{font-family:var(--display);font-weight:500;font-size:clamp(25px,4.2vw,36px);line-height:1.25}
  h2 .cita{font-style:italic;color:var(--suave)}
  .parrafo{margin-top:22px;color:var(--suave)}
  .parrafo + .parrafo{margin-top:16px}
  .destacado{font-family:var(--display);font-size:clamp(19px,3vw,24px);line-height:1.45;color:var(--tinta);margin-top:26px}

  /* ---------- tríos y rejillas ---------- */
  .rejilla{display:grid;gap:34px;margin-top:44px}
  @media(min-width:720px){ .rejilla.tres{grid-template-columns:repeat(3,1fr)} .rejilla.dos{grid-template-columns:repeat(2,1fr)} }
  .celda .num{font-family:var(--display);font-style:italic;font-size:17px;color:var(--suave)}
  .celda h3{font-family:var(--display);font-weight:500;font-size:20px;margin-top:6px;display:flex;align-items:center;gap:9px}
  .celda p{margin-top:9px;font-size:15px;color:var(--suave)}

  .punto{width:7px;height:7px;border-radius:50%;flex:none}

  /* ---------- lista de criterios ---------- */
  .criterios{margin-top:38px;border-top:1px solid var(--linea)}
  .criterio{padding:20px 0;border-bottom:1px solid var(--linea)}
  .criterio b{font-weight:400;font-family:var(--display);font-size:19px}
  .criterio span{display:block;margin-top:5px;font-size:15px;color:var(--suave)}

  /* ---------- condiciones ---------- */
  .opciones{display:grid;gap:20px;margin-top:40px}
  @media(min-width:720px){ .opciones{grid-template-columns:repeat(2,1fr)} }
  .opcion{border:1px solid var(--linea);border-radius:14px;padding:30px}
  .opcion .etiqueta{margin-bottom:12px}
  .opcion .precio{font-family:var(--display);font-size:31px;line-height:1.2}
  .opcion .nota{font-size:12px;color:var(--suave);letter-spacing:.04em}
  .opcion p{margin-top:14px;font-size:15px;color:var(--suave)}

  .fundador{margin-top:34px;background:var(--nube);border-radius:14px;padding:30px}
  .fundador h3{font-family:var(--display);font-weight:500;font-size:21px}
  .fundador ul{margin-top:16px;list-style:none;display:grid;gap:14px}
  .fundador li{font-size:15px;color:var(--suave);padding-left:18px;position:relative}
  .fundador li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:var(--ambar)}
  .fundador li b{color:var(--tinta);font-weight:400}
  .fundador .caduca{margin-top:20px;font-size:13px;color:var(--suave);font-style:italic}

  /* ---------- cierre ---------- */
  .cierre{background:var(--nube);border-top:1px solid var(--linea)}
  .cierre .caja{max-width:620px;margin:0 auto;text-align:center}
  .cierre h2{margin-bottom:8px}

  form{margin-top:36px;text-align:left}
  .campo{margin-bottom:18px}
  .campo label{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--suave);margin-bottom:7px}
  .campo input,.campo textarea{width:100%;background:var(--blanco);border:1px solid var(--linea);border-radius:9px;padding:13px 15px;font-weight:300}
  .campo textarea{min-height:104px;resize:vertical}
  .campo input:focus,.campo textarea:focus{border-color:var(--suave);outline:none}
  .par{display:grid;gap:18px}
  @media(min-width:600px){ .par{grid-template-columns:1fr 1fr} }
  .aviso{margin-top:16px;font-size:12.5px;color:var(--suave);text-align:center}
  .error{margin-top:14px;font-size:14px;color:var(--terracota);text-align:center;min-height:20px}

  .gracias{display:none;text-align:center}
  .gracias.si{display:block}
  .gracias h2{margin-bottom:14px}
  .gracias p{color:var(--suave)}
  .gracias .boton{margin-top:26px}
  form.oculto{display:none}

  /* ---------- pie ---------- */
  footer{border-top:1px solid var(--linea);padding:52px 0;text-align:center}
  footer .frase{font-family:var(--display);font-style:italic;font-size:17px;color:var(--suave)}
  footer .legal{margin-top:14px;font-size:12px;color:var(--suave);line-height:1.8}

/* ---------- navegación de la sección ---------- */
.nav-circulo{border-bottom:1px solid var(--linea);background:var(--nube)}
.nav-circulo .fila{display:flex;gap:4px;justify-content:center;flex-wrap:wrap;padding:0}
.nav-circulo a{font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--suave);padding:15px 16px;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.nav-circulo a:hover{color:var(--tinta)}
.nav-circulo a.actual{color:var(--tinta);border-bottom-color:var(--terracota)}

/* ---------- mapa de cobertura ---------- */
.donde-sea{padding:76px 0;background:var(--nube);border-top:1px solid var(--linea);
  border-bottom:1px solid var(--linea);text-align:center}
.donde-sea h2{font-family:var(--display);font-weight:500;font-size:clamp(25px,4.2vw,36px);line-height:1.25}
.donde-sea p{color:var(--suave);max-width:560px;margin:20px auto 0}
.donde-sea .ciudades{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:30px}
.donde-sea .ciudad{border:1px solid var(--linea);border-radius:999px;padding:8px 16px;
  font-size:12.5px;color:var(--suave);background:#fff}

/* ---------- tabla de condiciones ---------- */
.tabla-cond{width:100%;border-collapse:collapse;margin-top:34px;font-size:15px}
.tabla-cond th,.tabla-cond td{padding:16px 14px;text-align:left;border-bottom:1px solid var(--linea)}
.tabla-cond th{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--suave);font-weight:400}
.tabla-cond td:first-child{font-family:var(--display);font-size:17px}
.tabla-cond .destaca{color:var(--terracota)}

/* ---------- video de sección ---------- */
.cinta{position:relative;height:44vh;min-height:270px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;text-align:center}
.cinta video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cinta .velo{position:absolute;inset:0;background:rgba(28,24,22,.42)}
.cinta p{position:relative;z-index:2;color:#fff;font-family:var(--display);font-style:italic;
  font-size:clamp(20px,3.2vw,29px);max-width:620px;padding:0 26px;line-height:1.45}
