/* Simbelo · estilos comunes (web pública + app).
   Forma: botones en píldora, tarjetas 20px, campos 12px (regla única en todo el sitio).
   Color: marino y verde agua son la marca (el logo); el ÚNICO acento de acción es el cálido #F2B134. */
@font-face{font-family:"Bricolage";src:url(/assets/fonts/bricolage.woff2) format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:"Hanken";src:url(/assets/fonts/hanken.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Hanken";src:url(/assets/fonts/hanken-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}

:root{
  --marino:#17356A; --agua:#1EB8AD; --hueso:#F4F7F6; --acento:#F2B134; --noche:#0E2347;
  --bg:#F4F7F6; --sup:#FFFFFF; --sup-2:#E9EFEE; --tinta:#0F1F3B; --tinta-2:#40506B; --tinta-3:#5F6E86;
  --linea:rgba(23,53,106,.14); --agua-txt:#0E7F77; --error:#B3261E; --ok:#0E7F77;
  --sombra:0 18px 50px -24px rgba(14,35,71,.35);
  --r-tarjeta:20px; --r-campo:12px;
  --display:"Bricolage","Hanken",system-ui,sans-serif; --texto:"Hanken",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
  --max:1240px; --gutter:clamp(16px,4vw,40px);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0A1730; --sup:#10223F; --sup-2:#162B4E; --tinta:#E9EFF6; --tinta-2:#B9C6D8; --tinta-3:#93A3BA;
    --linea:rgba(233,239,246,.14); --agua-txt:#4FD3C9; --error:#FF8A80; --ok:#4FD3C9;
    --sombra:0 18px 50px -24px rgba(0,0,0,.7); color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0A1730; --sup:#10223F; --sup-2:#162B4E; --tinta:#E9EFF6; --tinta-2:#B9C6D8; --tinta-3:#93A3BA;
  --linea:rgba(233,239,246,.14); --agua-txt:#4FD3C9; --error:#FF8A80; --ok:#4FD3C9; color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--tinta);font:400 1.0625rem/1.6 var(--texto);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg,video,canvas{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{text-decoration-color:var(--agua)}
::selection{background:var(--agua);color:#062421}
:focus-visible{outline:2.5px solid var(--acento);outline-offset:3px;border-radius:6px}
html{scrollbar-color:var(--marino) transparent}
h1,h2,h3,h4{font-family:var(--display);font-weight:640;letter-spacing:-.025em;line-height:1.04;margin:0;text-wrap:balance}
p{margin:0 0 1em;text-wrap:pretty}
[hidden]{display:none!important}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.envoltorio{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.num{font-variant-numeric:tabular-nums}

/* ── navegación ── */
.nav{position:fixed;inset:0 0 auto 0;z-index:40;height:68px;display:flex;align-items:center;
  transition:background .4s var(--ease),box-shadow .4s var(--ease),color .4s}
.nav .envoltorio{display:flex;align-items:center;gap:28px}
.nav--oscura{color:#F4F7F6}
.nav--clara,.nav.nav--fija{color:var(--tinta);background:color-mix(in oklab,var(--bg) 86%,transparent);
  backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);box-shadow:0 1px 0 var(--linea)}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;font:700 1.2rem/1 var(--display);letter-spacing:-.02em}
.marca img{width:34px;height:34px}
.nav ul{display:flex;gap:26px;list-style:none;margin:0 0 0 auto;padding:0;font-size:.95rem}
.nav ul a{text-decoration:none;opacity:.86}
.nav ul a:hover{opacity:1}
.nav .boton{margin-left:6px}
.nav__menu{display:none;margin-left:auto;background:none;border:0;color:inherit;padding:10px;cursor:pointer}
@media (max-width:860px){
  .nav ul{display:none}
  .nav .boton--nav{display:none}
  .nav__menu{display:block}
  .nav.abierta{background:var(--noche);color:#F4F7F6;height:auto;min-height:100dvh;align-items:flex-start;padding-top:12px}
  .nav.abierta .envoltorio{flex-wrap:wrap}
  .nav.abierta ul{display:flex;flex-direction:column;width:100%;gap:6px;margin:24px 0 0;font:600 1.9rem/1.25 var(--display)}
  .nav.abierta .boton--nav{display:inline-flex;margin:24px 0 0}
}

/* ── botones ── */
.boton{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;
  font:600 1rem/1 var(--texto);text-decoration:none;cursor:pointer;border:1.5px solid transparent;white-space:nowrap;
  transition:transform .25s var(--ease),background .25s,box-shadow .25s,color .25s}
.boton:active{transform:translateY(1px) scale(.985)}
.boton--accion{background:var(--acento);color:#1A1405;box-shadow:0 10px 30px -12px rgba(242,177,52,.7)}
.boton--accion:hover{background:#F6C153}
.boton--linea{border-color:currentColor;background:transparent;color:inherit}
.boton--linea:hover{background:color-mix(in oklab,currentColor 9%,transparent)}
.boton--suave{background:var(--sup-2);color:var(--tinta)}
.boton[disabled]{opacity:.5;cursor:not-allowed}
.boton svg{width:20px;height:20px;flex:none}

/* ── texto de sección ── */
.titular{font-size:clamp(2.1rem,1.2rem + 3.6vw,4.4rem)}
.titular-m{font-size:clamp(1.7rem,1.1rem + 2.2vw,3rem)}
.entradilla{font-size:clamp(1.08rem,1rem + .45vw,1.32rem);color:var(--tinta-2);max-width:58ch;line-height:1.55}
.seccion{padding-block:clamp(72px,10vw,150px)}

/* ── pie ── */
.pie{background:var(--noche);color:#C9D5E6;padding:72px 0 40px;font-size:.95rem}
.pie a{color:#F4F7F6}
.pie__rejilla{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.pie__marca{display:flex;gap:14px;align-items:flex-start}
.pie__marca img{width:56px;height:56px}
.pie h3{font:600 1rem/1.3 var(--texto);color:#F4F7F6;margin-bottom:12px;letter-spacing:0}
.pie ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pie__legal{margin-top:56px;padding-top:24px;border-top:1px solid rgba(244,247,246,.14);display:flex;flex-wrap:wrap;gap:12px 28px;font-size:.85rem;color:#9FB0C8}
.pie__legal button{background:none;border:0;color:#F4F7F6;font:inherit;text-decoration:underline;text-underline-offset:.22em;cursor:pointer;padding:0}
@media (max-width:760px){.pie__rejilla{grid-template-columns:1fr}}

/* ── consentimiento de cookies ── */
.cookies{position:fixed;z-index:60;left:16px;right:16px;bottom:16px;max-width:560px;margin-left:auto;background:var(--sup);color:var(--tinta);
  border:1px solid var(--linea);border-radius:var(--r-tarjeta);box-shadow:var(--sombra);padding:22px 22px 18px;font-size:.95rem;
  transform:translateY(16px);opacity:0;transition:transform .5s var(--ease),opacity .5s var(--ease)}
.cookies.visible{transform:none;opacity:1}
@media (max-width:560px){.cookies{left:10px;right:10px;bottom:10px;padding:16px 16px 14px;font-size:.88rem}.cookies p{margin-bottom:10px}.cookies__botones .boton{min-height:42px;padding:0 14px;font-size:.9rem}}
.cookies h2{font:650 1.15rem/1.2 var(--display);margin-bottom:8px}
.cookies p{color:var(--tinta-2);margin-bottom:14px}
.cookies__botones{display:flex;flex-wrap:wrap;gap:10px}
.cookies__botones .boton{min-height:44px;padding:0 18px;font-size:.95rem}
.cookies__opciones{display:none;margin:4px 0 16px;gap:10px}
.cookies.config .cookies__opciones{display:grid}
.interruptor{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:var(--r-campo);background:var(--sup-2)}
.interruptor input{width:20px;height:20px;margin-top:2px;accent-color:var(--marino);flex:none}
.interruptor small{display:block;color:var(--tinta-3)}

/* ── instalación iPhone ── */
.hoja{position:fixed;inset:auto 0 0 0;z-index:70;background:var(--sup);color:var(--tinta);border-radius:24px 24px 0 0;padding:26px var(--gutter) 34px;
  box-shadow:0 -20px 60px -20px rgba(0,0,0,.35);transform:translateY(105%);transition:transform .5s var(--ease)}
.hoja.visible{transform:none}
.hoja ol{padding-left:1.2em;margin:12px 0 18px}

/* ── aparición suave (solo si hay movimiento permitido) ── */
@media (prefers-reduced-motion:no-preference){
  .js .aparece{opacity:0;transform:translateY(26px);filter:blur(6px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}
  .js .aparece.dentro{opacity:1;transform:none;filter:none}
}

/* ── páginas de texto (cómo funciona, preguntas, legal) ── */
.documento{padding:calc(68px + clamp(40px,7vw,96px)) 0 clamp(64px,9vw,120px)}
.documento .envoltorio{max-width:860px}
.documento h1{font-size:clamp(2.3rem,1.4rem + 3.6vw,4rem);margin-bottom:20px}
.documento h2{font-size:clamp(1.4rem,1.1rem + 1vw,1.9rem);margin:56px 0 14px}
.documento h3{font:650 1.15rem/1.35 var(--texto);letter-spacing:0;margin:28px 0 8px}
.documento p,.documento li{color:var(--tinta-2);max-width:68ch}
.documento ul,.documento ol{padding-left:1.2em}
.documento li{margin-bottom:6px}
.documento .entradilla{margin-bottom:12px}
.documento table{border-collapse:collapse;width:100%;font-size:.95rem;margin:12px 0 24px}
.documento th,.documento td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--linea);vertical-align:top;color:var(--tinta-2)}
.documento th{color:var(--tinta);font-weight:650}
.documento .tabla{overflow-x:auto}
.documento__fecha{font-size:.9rem;color:var(--tinta-3)}
.linea-tiempo{list-style:none;padding:0!important;margin:40px 0 0;display:grid;gap:0}
.linea-tiempo li{display:grid;grid-template-columns:56px 1fr;gap:20px;padding:0 0 34px;position:relative;max-width:none}
.linea-tiempo li::before{content:"";position:absolute;left:27px;top:52px;bottom:6px;width:2px;background:var(--linea)}
.linea-tiempo li:last-child::before{display:none}
.linea-tiempo .n{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--marino);color:#F4F7F6;font:700 1.3rem/1 var(--display)}
.linea-tiempo li:nth-child(even) .n{background:var(--agua);color:#062421}
.linea-tiempo h2{margin:12px 0 8px}
.quien-hace{display:inline-block;font-size:.88rem;font-weight:600;color:var(--agua-txt);margin-bottom:6px}
.caja-cta{margin-top:48px;padding:32px;border-radius:var(--r-tarjeta);background:var(--sup);border:1px solid var(--linea);display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.caja-cta p{margin:0;font:650 1.3rem/1.3 var(--display);color:var(--tinta)}

/* ── la puerta: formulario corto (portada #empezar y landings) ── */
.puerta{background:var(--sup);color:var(--tinta);border:1px solid var(--linea);border-radius:var(--r-tarjeta);padding:clamp(20px,3vw,32px);box-shadow:var(--sombra);text-align:left}
.puerta__t{font-size:clamp(1.5rem,1.2rem + 1vw,2rem);margin-bottom:8px}
.puerta__sub{color:var(--tinta-2);margin-bottom:18px}
.puerta .campo{display:grid;gap:6px;margin-bottom:14px}
.puerta label{font-weight:620}
.puerta input[type=tel],.puerta input[type=email],.puerta input[type=text]{width:100%;min-height:50px;padding:12px 14px;border-radius:var(--r-campo);border:1.5px solid color-mix(in oklab,var(--tinta) 22%,transparent);background:var(--sup);color:var(--tinta);font:500 1.02rem/1.2 var(--texto)}
.puerta input:focus{outline:none;border-color:var(--marino);box-shadow:0 0 0 4px color-mix(in oklab,var(--agua) 28%,transparent)}
.puerta input::placeholder{color:var(--tinta-3);opacity:1}
.puerta .casilla{display:flex;gap:10px;align-items:flex-start;font-weight:500;color:var(--tinta-2)}
.puerta .casilla input{width:20px;height:20px;margin-top:2px;accent-color:var(--marino);flex:none}
.puerta .mal input{border-color:var(--error)}
.puerta .error{color:var(--error);font-size:.9rem;font-weight:600}
.puerta .boton{width:100%;margin-top:6px}
.puerta .aviso{display:block;padding:12px 14px;border-radius:var(--r-campo);margin-bottom:14px;background:color-mix(in oklab,var(--error) 12%,var(--sup));border:1px solid color-mix(in oklab,var(--error) 40%,transparent)}
.puerta-ok h3{font-size:1.6rem;margin-bottom:10px}
.puerta-ok p{color:var(--tinta-2)}
.puerta-ok .boton{width:auto}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
