@font-face{font-family:"Newsreader";src:url(/fonts/newsreader.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"Hanken";src:url(/fonts/hanken.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

:root{
  color-scheme:light dark;
  --ink:#17181A; --paper:#F7F7F8; --white:#FFFFFF;
  --graphite:#5B5E66; --stone:#DADCE0; --mist:#ECECEE;
  --frame:#17181A;
  --serif:"Newsreader","Iowan Old Style","Georgia",serif;
  --sans:"Hanken",-apple-system,"Segoe UI",system-ui,sans-serif;
  --wrap:1120px; --gutter:clamp(20px,4vw,40px);
}
@media (prefers-color-scheme:dark){
  :root{--ink:#F2F2F4;--paper:#101112;--white:#17181A;--graphite:#A3A6AD;--stone:#2E3034;--mist:#1C1D1F;--frame:#2A2B2F}
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.65 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.skip{position:absolute;left:-999px}.skip:focus{left:var(--gutter);top:12px;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:8px;z-index:9}

/* Cabecera */
.top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:26px;padding-bottom:26px}
.logo{font:500 1.6rem/1 var(--serif);letter-spacing:-.01em;text-decoration:none}
.top nav{display:flex;gap:clamp(14px,3vw,30px);font-size:.95rem}
.top nav a{color:var(--graphite);text-decoration:none}
.top nav a:hover{color:var(--ink)}
@media (max-width:620px){.top nav a.opt{display:none}}

/* Titulares */
h1,h2,h3{font-family:var(--serif);font-weight:400;font-optical-sizing:auto;margin:0;text-wrap:balance}
h1{font-size:clamp(3rem,8vw,6.4rem);line-height:.98;letter-spacing:-.03em}
h2{font-size:clamp(2.1rem,4.6vw,3.4rem);line-height:1.05;letter-spacing:-.02em}
h3{font-size:1.5rem;line-height:1.2;letter-spacing:-.01em}
p{margin:0}
.lead{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.55;color:var(--graphite);max-width:34em}

/* Inicio */
.hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,6vw,90px);align-items:end;padding-top:clamp(28px,6vw,72px);padding-bottom:clamp(64px,10vw,130px)}
.hero h1{margin-bottom:32px}
.hero .lead{margin-bottom:40px}
.actions{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.soon{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--paper);padding:15px 26px;border-radius:999px;font-weight:600;font-size:1rem;text-decoration:none}
.soon small{font-weight:400;opacity:.7;font-size:.9rem}
.plain{color:var(--graphite)}
@media (max-width:860px){.hero{grid-template-columns:1fr}.hero .phone{margin-inline:auto}}

/* Móvil con captura */
.phone{width:min(100%,290px);aspect-ratio:600/1300;margin:0;padding:9px;border-radius:46px;background:var(--frame);box-shadow:0 0 0 1px var(--stone)}
.phone div{height:100%;border-radius:38px;overflow:hidden;background:var(--mist)}
.phone img{width:100%;height:100%;object-fit:cover}
.hero .phone{width:min(100%,310px);margin-left:auto;transform:rotate(2.2deg)}
@media (prefers-reduced-motion:reduce){.hero .phone{transform:none}}

/* Funciones */
.feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,8vw,120px);align-items:center;padding:clamp(56px,9vw,110px) 0;border-top:1px solid var(--stone)}
.feature.flip .phone{order:2}
.feature .phone{margin-inline:auto}
.feature h2{margin-bottom:24px}
.feature .lead{margin-bottom:28px;font-size:1.2rem}
.points{list-style:none;margin:0;padding:0;max-width:30em}
.points li{padding:13px 0;border-top:1px solid var(--stone);color:var(--ink)}
.points li:last-child{border-bottom:1px solid var(--stone)}
@media (max-width:860px){.feature{grid-template-columns:1fr}.feature.flip .phone{order:0}.feature .phone{width:min(100%,260px)}}

/* En pareja */
.pair{background:var(--ink);color:var(--paper);padding:clamp(72px,11vw,150px) 0}
.pair h2{max-width:11em;margin-bottom:clamp(40px,6vw,72px)}
.pair-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid color-mix(in srgb,var(--paper) 25%,transparent)}
.pair-cols>div{padding:28px clamp(0px,2.4vw,32px) 0 0}
.pair-cols>div+div{padding-left:clamp(0px,2.4vw,32px);border-left:1px solid color-mix(in srgb,var(--paper) 25%,transparent)}
.pair-cols h3{margin-bottom:10px}
.pair-cols p{color:color-mix(in srgb,var(--paper) 72%,transparent);font-size:1rem}
@media (max-width:860px){.pair-cols{grid-template-columns:1fr}.pair-cols>div,.pair-cols>div+div{padding:24px 0;border-left:0;border-bottom:1px solid color-mix(in srgb,var(--paper) 25%,transparent)}}

/* Y además */
.more{padding-block:clamp(64px,10vw,130px)}
.more h2{margin-bottom:clamp(32px,5vw,56px);max-width:12em}
.more dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(28px,6vw,90px);margin:0}
.more dl>div{padding:20px 0;border-top:1px solid var(--stone)}
.more dt{font:400 1.4rem/1.2 var(--serif);margin-bottom:4px}
.more dd{margin:0;color:var(--graphite);font-size:1rem}
@media (max-width:760px){.more dl{grid-template-columns:1fr}}

/* Datos */
.data{padding-block:clamp(56px,9vw,110px);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,7vw,100px)}
.data h2{margin-bottom:20px}
.data ul{margin:0;padding:0;list-style:none}
.data li{padding:16px 0;border-top:1px solid var(--stone)}
.data li strong{font-weight:600}
.data li span{display:block;color:var(--graphite);font-size:1rem}
@media (max-width:860px){.data{grid-template-columns:1fr}}

/* Preguntas */
.faq{padding-block:clamp(56px,9vw,110px)}
.faq h2{margin-bottom:clamp(28px,5vw,48px)}
details{border-top:1px solid var(--stone)}
details:last-of-type{border-bottom:1px solid var(--stone)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;font:400 1.35rem/1.25 var(--serif)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:300 1.8rem/1 var(--sans);color:var(--graphite);transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 0 24px;max-width:42em;color:var(--graphite)}
@media (prefers-reduced-motion:reduce){summary::after{transition:none}}

/* Cierre y pie */
.closing{padding-block:clamp(72px,12vw,160px)}
.closing h2{max-width:11em;margin-bottom:36px}
.foot{padding-block:28px 48px;color:var(--graphite);font-size:.95rem;display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between}
.foot nav{display:flex;gap:22px;flex-wrap:wrap}
.foot a{text-decoration:none}.foot a:hover{color:var(--ink);text-decoration:underline}

/* Páginas de texto (privacidad, soporte) */
.doc{max-width:46rem;padding-bottom:clamp(56px,9vw,110px)}
.doc h1{font-size:clamp(2.4rem,6vw,4rem);margin:clamp(20px,5vw,56px) 0 16px}
.doc .sub{color:var(--graphite);margin-bottom:36px}
.doc h2{font-size:1.7rem;margin:2.4rem 0 .6rem;letter-spacing:-.01em}
.doc p,.doc li{margin:0 0 .9rem}
.doc ul{padding-left:1.2rem;margin:0 0 1rem}

/* Filetes alineados con el contenido */
.data,.faq,.closing,.foot{position:relative}
.data::before,.faq::before,.closing::before,.foot::before{content:"";position:absolute;top:0;left:var(--gutter);right:var(--gutter);height:1px;background:var(--stone)}
