/* Evaluación del divorcio exprés · pantalla completa, sin scroll de página, una pregunta por pantalla (v10, 22-oct-2026).
   Mismo sistema del sitio (DESIGN.md): azul noche, dorado, Newsreader + DM Sans. */
:root{
  --navy:#081525;--navy2:#10213a;--navy3:#18304f;--ink:#121a28;--paper:#f6f3ec;
  --gold:#c7a55b;--gold-l:#e7d4a2;--txt:#e9edf4;--soft:#aeb8c8;--line:rgba(231,212,162,.22);--err:#ffb4a6;
  --serif:"Newsreader",Georgia,serif;--sans:"DM Sans",system-ui,sans-serif;--ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--navy);color:var(--txt);font:400 17px/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden;overscroll-behavior:none}
::selection{background:var(--gold-l);color:var(--navy)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;line-height:1.1;margin:0;text-wrap:balance;color:#fff}
em{font-style:normal;color:var(--gold-l)}
svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Estructura: la página nunca se desplaza; solo el contenido del paso, si el teclado lo exige */
.app{height:100vh;height:100dvh;display:flex}
.lado{display:none}
.panel{flex:1;min-width:0;height:100%;display:grid;grid-template-rows:auto auto 1fr auto;padding:0 max(20px,env(safe-area-inset-left)) 0 max(20px,env(safe-area-inset-right))}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;height:64px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;min-height:48px}
.marca img{height:30px;width:auto}
.marca span{display:grid;line-height:1.1}
.marca b{font:400 19px var(--serif);color:#fff}
.marca small{font-size:12.5px;color:var(--gold-l)}
.paso{margin:0;font-size:14px;font-weight:500;color:var(--soft);white-space:nowrap}
.prog{height:4px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden}
.prog i{display:block;height:100%;width:0;background:var(--gold);border-radius:99px;transition:width .3s var(--ease)}

form{display:contents}
.step{grid-row:3;align-self:center;width:100%;max-width:560px;margin:0 auto;padding:20px 0;max-height:100%;overflow-y:auto;scrollbar-width:none}
.step::-webkit-scrollbar{display:none}
.step[hidden]{display:none}
.step.entra{animation:entra .28s var(--ease)}
.step.vuelve{animation:vuelve .28s var(--ease)}
@keyframes entra{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@keyframes vuelve{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}

/* Bienvenida */
.pre{font-size:14px;font-weight:600;letter-spacing:.03em;color:var(--gold);margin:0 0 14px}
.intro h1{font-size:clamp(38px,10.5vw,60px)}
.txt{font-size:18px;color:var(--txt);margin:18px 0 0;max-width:30em}
.chips{list-style:none;margin:22px 0 30px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips li{font-size:14.5px;font-weight:500;padding:7px 13px;border-radius:99px;background:rgba(231,212,162,.12);color:var(--gold-l)}

/* Preguntas */
.step h2{font-size:clamp(28px,7.6vw,40px);margin-bottom:22px}
.ayuda{font-size:15px;color:var(--soft);margin:-8px 0 18px}
.opts{display:grid;gap:10px}
.opt{display:block;cursor:pointer}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt span{display:flex;align-items:center;gap:14px;min-height:62px;padding:12px 16px;border-radius:14px;background:var(--navy2);border:1.5px solid rgba(255,255,255,.08);font-size:17.5px;font-weight:500;color:#fff;line-height:1.35;transition:background .15s var(--ease),border-color .15s var(--ease),transform .1s var(--ease)}
.opt:hover span{border-color:var(--gold)}
.opt span:active{transform:scale(.98)}
.opt input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
.opt input:checked+span{background:var(--gold);border-color:var(--gold);color:var(--navy)}
kbd{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:8px;border:1.5px solid rgba(231,212,162,.4);font:600 13px var(--sans);color:var(--gold-l)}
.opt input:checked+span kbd{border-color:var(--navy);color:var(--navy)}

/* Datos */
.campo{display:block;margin-bottom:14px}
.campo span{display:block;font-size:14.5px;font-weight:600;color:var(--soft);margin-bottom:7px}
.campo input{display:block;width:100%;height:56px;padding:0 16px;border-radius:12px;border:1.5px solid transparent;background:#fff;color:var(--ink);font:500 17px var(--sans)}
.campo input:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 4px rgba(199,165,91,.3)}
.campo input::placeholder{color:#8a93a3}
.campo input[aria-invalid="true"]{border-color:var(--err);box-shadow:0 0 0 3px rgba(255,180,166,.25)}
.acepto{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--soft);margin:4px 0 16px;cursor:pointer;line-height:1.45}
.acepto input{width:22px;height:22px;flex:none;margin:0;accent-color:var(--gold)}
.acepto a{color:var(--gold-l)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.err{color:var(--err);font-weight:600;font-size:15px;margin:0 0 12px}
.err:empty{display:none}

/* Botones */
.btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:58px;padding:0 24px;border:0;border-radius:999px;font:600 17.5px var(--sans);text-decoration:none;cursor:pointer;transition:background .15s var(--ease),transform .1s var(--ease)}
.btn:active{transform:scale(.97)}
.btn.oro{background:var(--gold);color:var(--navy)}
.btn.oro:hover{background:#d6b86f}
.btn[disabled]{opacity:.7;cursor:wait}
.btn svg{transition:transform .15s var(--ease)}
.btn:hover svg{transform:translateX(3px)}

/* Resultado */
.result:focus{outline:0}
.result h2{margin-bottom:10px}
.r-price{font:400 54px/1 var(--serif);color:var(--gold-l);margin:6px 0 4px;letter-spacing:-.02em}
.r-price:empty{display:none}
.result .txt{margin:12px 0 22px;color:var(--txt)}
.r-docs{font-size:15px;color:var(--soft);margin:16px 0 0}
.r-docs:empty{display:none}
.r-mail{font-size:14px;color:var(--soft);margin:10px 0 0}

/* Pie fijo: atrás y ayuda */
.bot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding-bottom:env(safe-area-inset-bottom)}
.atras,.ayuda-wa{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 6px;background:none;border:0;font:500 15.5px var(--sans);color:var(--soft);text-decoration:none;cursor:pointer}
.atras:hover,.ayuda-wa:hover{color:#fff}
.atras[hidden]{display:none}
.ayuda-wa{margin-left:auto}

/* Celulares bajos (SE, teclados abiertos) */
@media (max-height:640px){
  .top{height:56px}
  .step h2{font-size:26px;margin-bottom:14px}
  .opt span{min-height:52px;font-size:16.5px}
  .intro h1{font-size:34px}
  .chips{margin:14px 0 20px}
  .txt{font-size:16.5px}
  .bot{min-height:52px}
}

/* Escritorio: foto de la abogada a la izquierda, evaluación a la derecha */
@media (min-width:900px){
  .lado{display:block;position:relative;flex:0 0 42%;max-width:640px;overflow:hidden}
  .lado img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
  .lado:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,21,37,.92),rgba(8,21,37,.1) 55%)}
  .lado-txt{position:absolute;left:44px;right:44px;bottom:44px;z-index:1}
  .lado-txt p{margin:0;font-size:15px;color:var(--gold-l)}
  .lado-txt strong{display:block;font:400 54px/1.1 var(--serif);color:#fff;margin:6px 0 10px}
  .lado-txt span{font-size:15px;color:var(--soft)}
  .panel{padding:0 56px}
  .top{height:84px}
  .step{max-width:600px}
  .btn{width:auto;min-width:240px}
  .datos .btn,.result .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Qué es el divorcio express (4-nov-2026): contenido para Google y para quien quiere leer antes de empezar */
.info{margin-top:22px;border-top:1px solid rgba(255,255,255,.12);padding-top:14px;font-size:15.5px;color:var(--soft)}
.info summary{cursor:pointer;color:var(--gold-l,#dec48a);font-weight:600;list-style:none;display:flex;align-items:center;gap:8px;min-height:44px}
.info summary::-webkit-details-marker{display:none}
.info summary::after{content:"+";font-size:20px;line-height:1}
.info[open] summary::after{content:"–"}
.info h2{font-family:var(--sans);font-size:15px!important;font-weight:600;color:#fff;margin:16px 0 4px!important}
.info p,.info ul{margin:0 0 8px}
.info ul{padding-left:18px}
.info a{color:var(--gold-l,#dec48a)}
