:root{--ink:#14161d;--ink2:#2a2d38;--paper:#ffffff;--paper2:#f4f5f8;--red:#ed1e27;--red-d:#c4141b;--gray:#707278;--line:#e6e8ee;--max:1180px;
--serif:ui-serif,"New York","Iowan Old Style","Palatino Linotype",Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:19px/1.62 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(20px,4vw,36px)}.narrow{max-width:800px}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:var(--ink);padding:12px 16px;border-radius:8px;z-index:100}.skip:focus{left:8px}
:focus-visible{outline:3px solid #7fb2ff;outline-offset:3px;border-radius:6px}
/* cabecera oscura */
.top{position:sticky;top:0;z-index:50;background:rgba(20,22,29,.92);backdrop-filter:saturate(1.3) blur(12px);-webkit-backdrop-filter:saturate(1.3) blur(12px);border-bottom:1px solid rgba(255,255,255,.06);transition:border-color .25s,box-shadow .25s}
.top.scrolled{border-color:rgba(255,255,255,.12);box-shadow:0 10px 30px rgba(0,0,0,.25)}
.bar{display:flex;align-items:center;gap:20px;min-height:76px}
.logo img{width:176px;height:auto}.nav{display:flex;gap:30px;margin-left:auto}.nav a{text-decoration:none;font-weight:600;font-size:16px;color:#d9dce4;padding:8px 2px;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.nav a:hover{color:#fff;border-color:var(--red)}
.tools{display:flex;align-items:center;gap:14px}
.lang{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;font-size:15px;border:1.5px solid rgba(255,255,255,.35);border-radius:999px;padding:9px 14px;min-height:44px;color:#9aa0ad}
.lang .on{color:#fff;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:5px;text-decoration-thickness:2.5px}.lang i{width:1px;height:14px;background:rgba(255,255,255,.25)}
/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:58px;padding:14px 30px;border-radius:999px;background:var(--red);color:#fff;font-weight:800;font-size:19px;text-decoration:none;border:0;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s;box-shadow:0 10px 26px rgba(237,30,39,.35)}
.btn:hover{background:#ff2e37;transform:translateY(-2px);box-shadow:0 14px 32px rgba(237,30,39,.45)}.btn-sm{min-height:46px;padding:10px 22px;font-size:16px}.btn-lg{width:100%;margin-top:14px;font-size:21px;min-height:64px}
.link-light{color:#fff;font-weight:700;text-decoration:none;border-bottom:2px solid rgba(255,255,255,.4);padding:6px 0}.link-light:hover{border-color:#fff}
/* hero: carrusel de fotos limpias (sin filtro) + bloque de texto debajo */
.hero-car{position:relative;background:#eef0f4}
.slides{position:relative;height:clamp(320px,66vh,680px);overflow:hidden}
.slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s ease}.slide.on{opacity:1;z-index:1}
.slide img{width:100%;height:100%;object-fit:cover;object-position:center 38%}.slide.on img{animation:kb 4s ease-out forwards}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.045)}}
.hero-text{background:var(--paper);padding:clamp(48px,6.5vw,92px) 0 clamp(52px,7vw,96px)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,6vw,90px);align-items:start}
.kicker{margin:0 0 20px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:14px;color:var(--red-d);display:flex;align-items:center;gap:12px}
h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:-.015em;line-height:1.05;margin:0}
h1{font-size:clamp(3rem,7vw,5.8rem);line-height:.98;color:var(--ink)}h1 em{font-style:italic;color:var(--red-d)}
.lede{font-size:clamp(1.15rem,2.1vw,1.38rem);line-height:1.55;color:var(--ink2);max-width:40ch;margin:0}
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin:30px 0 0}
.link-dark{color:var(--ink);font-weight:700;text-decoration:none;border-bottom:2px solid var(--line);padding:6px 0;transition:border-color .2s}.link-dark:hover{border-color:var(--red)}
.chips-row{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;margin:28px 0 0;padding:0;color:var(--ink2);font-size:16px;font-weight:600}.chips-row li{display:flex;align-items:center;gap:10px}.chips-row li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--red)}
.hero-note{margin:20px 0 0;font-size:15.5px;color:#5d606b;max-width:46ch}
/* franja de intereses */
.band{background:var(--red-d);color:#fff;overflow:hidden;border-block:3px solid var(--ink);white-space:nowrap}
.band-track{display:inline-flex;align-items:center;gap:0;animation:marq 48s linear infinite;padding:18px 0}
.band span{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(1.4rem,3.4vw,2.6rem);padding:0 clamp(18px,3vw,38px)}
.band i{width:12px;height:12px;border-radius:50%;background:#fff;flex:none}
@keyframes marq{to{transform:translateX(-25%)}}
/* secciones */
.sec{padding:clamp(72px,10vw,132px) 0}h2{font-size:clamp(2.2rem,5vw,3.8rem);max-width:19ch}.intro{font-size:clamp(1.12rem,1.9vw,1.3rem);max-width:58ch;color:var(--ink2);margin:22px 0 0}
.eyebrow{margin:0 0 16px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:13.5px;color:var(--red-d)}.eyebrow.light{color:#ff8a8f}
.panels{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}
.wp{border-radius:28px;padding:34px 30px 38px;min-height:340px;display:flex;flex-direction:column;color:#fff;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}
.wp:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(20,22,29,.28)}
.wp1{background:var(--ink)}.wp2{background:var(--red-d)}.wp3{background:#4a4e5a}
.wn{font-family:var(--serif);font-size:1.3rem;opacity:.7;margin-bottom:auto}.wp h3{font-size:clamp(1.9rem,3vw,2.5rem);margin-top:60px}.wp p{margin:14px 0 0;color:#eceef3;font-size:1.05rem}
.fineprint{margin:36px 0 0;font-size:16px;color:#5d606b;max-width:70ch;border-left:3px solid var(--red);padding-left:16px}.fineprint.light{color:#b9bcc6}
.aside{margin:22px 0 0;max-width:64ch;font-weight:600}.aside.light{color:#fff}
.acct{background:var(--paper2)}.acct-in{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,6vw,80px);align-items:start}.acct h2{max-width:14ch;font-size:clamp(2.4rem,5.6vw,4.4rem)}.acct h2 em{font-style:italic;color:var(--red-d)}.acct .intro{margin-top:6px}
/* escenario de producto */
.stagesec{background:var(--ink);color:#fff;position:relative;overflow:hidden}.stagesec h2{max-width:20ch}.stagesec .intro{color:#d6d9e0}
.stage{margin-top:48px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,4vw,52px);align-items:start}
.dev-fig{margin:0;text-align:center}.dev-card{background:#fff;border-radius:30px;aspect-ratio:1/1.12;display:grid;place-items:center;padding:clamp(18px,3vw,34px);box-shadow:0 30px 60px rgba(0,0,0,.45),inset 0 -14px 30px rgba(20,22,29,.05)}
.dev-card img{max-height:100%;width:auto;max-width:100%;object-fit:contain}
.dev-fig figcaption{margin-top:20px;font-family:var(--serif);font-size:1.35rem;font-weight:600;color:#fff}
.two{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-top:46px;border-top:1px solid rgba(255,255,255,.2)}
.col{padding:30px 32px 34px 0}.col+.col{padding-left:32px;border-left:1px solid rgba(255,255,255,.15)}.big{font-family:var(--serif);font-size:clamp(3.4rem,8vw,5.6rem);line-height:1;color:#ff6b70;font-weight:600}.col p{margin:14px 0 0;color:#d6d9e0}
/* pasos */
.steps{list-style:none;margin:54px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:44px}
.steps li{position:relative;padding-top:26px;border-top:3px solid var(--ink)}.steps li::before{content:"";position:absolute;left:0;top:-3px;height:3px;width:0;background:var(--red);transition:width 1.1s .2s ease}.steps li.in::before{width:100%}
.n{display:block;font-family:var(--serif);font-size:clamp(4.6rem,9vw,7rem);line-height:.9;color:transparent;-webkit-text-stroke:2px var(--red-d);font-weight:600;margin-bottom:18px}.steps h3{font-size:1.7rem}.steps p{margin:12px 0 0;color:var(--ink2)}
/* por qué */
.red{background:var(--red-d);color:#fff}.red h2{color:#fff}.red .eyebrow{color:#ffd1d3}
.four{display:grid;grid-template-columns:repeat(2,1fr);gap:8px clamp(24px,6vw,80px);margin-top:46px}
.y{border-top:2px solid rgba(255,255,255,.55);padding:26px 0 34px}.y h3{font-size:clamp(1.8rem,3vw,2.4rem)}.y p{margin:12px 0 0;color:#fde8e9;font-size:1.1rem;max-width:40ch}
/* FAQ */
details{border-bottom:1px solid var(--line);padding:4px 0}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:68px;font-weight:700;font-size:1.18rem;padding:12px 0}
summary::-webkit-details-marker{display:none}summary::after{content:"+";font-size:2rem;line-height:1;color:var(--red-d);font-weight:400;transition:transform .25s}details[open] summary::after{transform:rotate(45deg)}details p{margin:0 0 22px;color:var(--ink2);max-width:62ch}
/* contacto */
.dark{background:var(--ink);color:#fff;position:relative;overflow:hidden}.dark .intro{color:#d6d9e0}.dark h2{max-width:20ch}
.contact-in{position:relative;z-index:1}.contact-arcs{position:absolute;right:-30%;top:-8%;width:70%;opacity:.14;z-index:-1;pointer-events:none}.contact-arcs .a{stroke:#fff;stroke-width:16}.contact-arcs .dot{fill:#fff}
.helper{margin-top:36px;background:#1d2029;border:1px solid #343949;border-radius:26px;padding:clamp(22px,4vw,38px);box-shadow:0 24px 60px rgba(0,0,0,.35)}
fieldset{border:0;margin:0 0 24px;padding:0}legend{font-weight:700;font-size:1.12rem;margin-bottom:12px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:10px}.chip{position:relative}.chip input{position:absolute;opacity:0;inset:0;cursor:pointer;width:100%;height:100%;margin:0}
.chip span{display:inline-flex;align-items:center;min-height:50px;padding:10px 20px;border:1.5px solid #4a5062;border-radius:999px;font-weight:600;font-size:17px;color:#e8eaf0;transition:all .15s}
.chip:hover span{border-color:#fff}.chip input:checked+span{background:#fff;color:var(--ink);border-color:#fff}.chip input:focus-visible+span{outline:3px solid #7fb2ff;outline-offset:2px}
.or{margin:28px 0 0;color:#d6d9e0}.or a{color:#fff;font-weight:800;font-size:1.3rem;text-underline-offset:5px;white-space:nowrap}
/* pie y flotante */
.foot{background:#0d0e13;color:#b9bcc6;padding:48px 0 96px;font-size:15.5px}.foot img{margin-bottom:18px}.foot p{max-width:70ch;margin:8px 0}.foot a{color:#fff}.foot .small{color:#8c90a0}
.float{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:60;display:inline-flex;align-items:center;gap:10px;min-height:58px;padding:0 24px 0 20px;border-radius:999px;background:#25d366;color:#0b2a14;font-weight:800;text-decoration:none;font-size:17px;box-shadow:0 12px 30px rgba(0,0,0,.35);opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .3s,transform .3s}
.float.show{opacity:1;transform:none;pointer-events:auto}
/* pendiente (solo prueba) */
.pending{background:#fff3b0;color:#14161d;border-bottom:2px dashed #b88a00;padding:0 3px;border-radius:3px}
.pending::after{content:"To confirm";display:inline-block;margin-left:6px;font:700 10.5px/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;background:#b88a00;color:#fff;padding:3px 6px;border-radius:5px;vertical-align:middle}
/* movimiento */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.in{opacity:1;transform:none}
.panels .reveal:nth-child(2){transition-delay:.1s}.panels .reveal:nth-child(3){transition-delay:.2s}.steps .reveal:nth-child(2){transition-delay:.12s}.steps .reveal:nth-child(3){transition-delay:.24s}
@media (prefers-reduced-motion:reduce){.slide.on img{animation:none}.slide{transition:none}html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.arcs .a{animation:none;stroke-dashoffset:0}.arcs .dot,.d,.band-track{animation:none}.btn,.float,.wp{transition:none}.steps li::before{width:100%;transition:none}.band{white-space:normal}.band-track{flex-wrap:wrap;justify-content:center}}
/* documento (privacidad) */
.doc{padding:56px 20px 80px}.doc h1{font-size:clamp(2.2rem,5vw,3.2rem);margin-bottom:22px;color:var(--ink)}.doc p{max-width:62ch}.link-dark{font-weight:700;text-underline-offset:4px}
/* móvil */
@media (max-width:900px){.nav{display:none}.bar{justify-content:space-between}
.slides{height:max(240px,64vw)}.hero-grid{grid-template-columns:1fr;gap:26px}
.panels{grid-template-columns:1fr}.wp{min-height:250px}.wp h3{margin-top:36px}.acct-in{grid-template-columns:1fr}.steps,.four{grid-template-columns:1fr;gap:34px}.four{gap:6px}.two{grid-template-columns:1fr}.col,.col+.col{padding:24px 0;border-left:0}.col+.col{border-top:1px solid rgba(255,255,255,.15)}
.contact-arcs{width:120%;right:-50%}}
@media (max-width:560px){body{font-size:18px}.logo img{width:138px}.btn{width:100%}.cta-row{flex-direction:column;align-items:stretch;gap:16px}.link-light{align-self:flex-start}.float span{display:none}.float{padding:0 18px;min-width:58px;justify-content:center}.lang{padding:8px 11px}.btn-sm{display:none}.stage{grid-template-columns:1fr 1fr;padding:24px 14px 18px}.dev-fig figcaption{font-size:1.02rem;margin-top:14px}.dev-card{border-radius:22px}.band-track{padding:14px 0}}

/* dispositivos justo debajo del título (fondo blanco de las fotos = fondo de la página) */
.hd-fig{margin:0;text-align:center}
.ht-devs{display:grid;grid-template-columns:1fr 1fr;gap:clamp(8px,3vw,28px);margin-top:clamp(24px,4vw,44px);max-width:600px}
.hd-fig img{width:100%;max-width:300px;aspect-ratio:1/1;object-fit:contain;margin:0 auto;background:#fff}
.hd-fig figcaption{margin-top:10px;font-family:var(--serif);font-size:clamp(.95rem,1.6vw,1.2rem);line-height:1.25;font-weight:600;color:var(--ink)}
/* sección de dispositivos en claro */
.stagesec{background:var(--paper2);color:var(--ink)}.stagesec .intro{color:var(--ink2)}
.stagesec .eyebrow.light{color:var(--red-d)}.stagesec .aside.light{color:var(--ink)}.stagesec .fineprint.light{color:#5d606b}
.stagesec .two{border-top-color:var(--line)}.stagesec .col+.col{border-left-color:var(--line)}.stagesec .big{color:var(--red-d)}.stagesec .col p{color:var(--ink2)}

/* cifras del servicio */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;margin-top:46px;border-top:2px solid var(--ink)}
.st{padding:26px 14px 10px 0;min-width:0}.st+.st{padding-left:clamp(14px,2.2vw,26px);border-left:1px solid var(--line)}
.st b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(1.9rem,4.1vw,3.6rem);line-height:1.05;color:var(--red-d);white-space:nowrap;letter-spacing:-.02em}
.st span{display:block;margin-top:10px;font-weight:700;font-size:clamp(.9rem,1.3vw,1.08rem);color:var(--ink2);line-height:1.35}
.pending-block{position:relative;outline:2px dashed #b88a00;outline-offset:10px;border-radius:8px;margin-top:62px}.pending-block .stats{margin-top:0}
.pb-tag{position:absolute;top:-34px;left:0;background:#b88a00;color:#fff;font:700 10.5px/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;padding:4px 8px;border-radius:5px}
.wp .pending{background:rgba(255,243,176,.16);color:inherit;border-bottom-color:#ffd24a}.wp .pending::after{display:none}
@media (max-width:900px){.stats{grid-template-columns:1fr 1fr}.st b{font-size:clamp(2.2rem,9vw,3.4rem)}.st:nth-child(3){padding-left:0;border-left:0}.st:nth-child(n+3){border-top:1px solid var(--line);margin-top:12px;padding-top:22px}}

/* contacto simple */
.contact-in .btn-lg{max-width:480px;margin-top:34px;font-size:22px}

/* portada de la primera sección */
.watch-head{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,6vw,96px);align-items:end}
#watch h2{max-width:none;font-size:clamp(2.5rem,5.2vw,4.7rem);line-height:1.03;letter-spacing:-.02em;text-wrap:balance}
#watch h2 em{display:block;margin-top:.14em;font-style:italic;font-weight:500;color:var(--red-d)}
.wh-r{border-top:3px solid var(--red);padding-top:24px;max-width:460px}
.wh-r .intro{margin:0;font-size:clamp(1.12rem,1.8vw,1.28rem);line-height:1.6;max-width:none}
.watch-close{margin:22px 0 0;font-family:var(--serif);font-style:italic;font-weight:600;font-size:clamp(1.25rem,2.3vw,1.7rem);line-height:1.3;color:var(--ink)}
.stats{margin-top:clamp(44px,6vw,72px)}
@media (max-width:900px){.watch-head{grid-template-columns:1fr;gap:26px}.wh-r{max-width:none}}
.hero-text h1{font-size:clamp(2.1rem,4.3vw,3.9rem);line-height:1.06;letter-spacing:-.02em;text-wrap:balance;font-weight:600}
.hero-text h1 em{display:block;font-weight:500;margin-top:.08em}
#watch h2{font-size:clamp(2.1rem,4.3vw,3.9rem);line-height:1.06;font-weight:600}
#watch h2 em{font-weight:500}
/* piezas de eventos del carrusel (las publica el agente editorial) */
.slide.ev{background:radial-gradient(120% 140% at 85% 0%,#4a1015 0%,#14161d 62%);color:#fff;display:flex;align-items:center}
.ev-in{padding:0 clamp(24px,9vw,140px);max-width:980px}
.ev-k{margin:0 0 14px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:clamp(12px,1.6vw,15px);color:#ff8b90}
.ev-t{margin:0;font-size:clamp(2rem,5.4vw,4.4rem);line-height:1.04;font-weight:600;letter-spacing:-.02em;text-wrap:balance;color:#fff}
.ev-d{margin:18px 0 26px;font-size:clamp(1rem,2vw,1.35rem);color:#e9eaee}
.ev-art{position:absolute;right:clamp(12px,6vw,110px);top:50%;transform:translateY(-50%);height:82%;width:auto;max-width:44%;object-fit:contain;pointer-events:none}
.ev-in{position:relative;z-index:1}
@media (max-width:760px){.ev-art{top:auto;bottom:-6%;transform:none;height:62%;max-width:70%;opacity:.28;right:-6%}}
.slide.ev img.ev-art,.slide.ev.on img.ev-art{width:auto;height:82%;max-width:44%;object-fit:contain;object-position:center;animation:none}
@media (max-width:760px){.slide.ev img.ev-art,.slide.ev.on img.ev-art{height:62%;max-width:70%}}
.slide.ev img.ev-art,.slide.ev.on img.ev-art{height:68%;max-width:40%}
@media (max-width:760px){.slide.ev img.ev-art,.slide.ev.on img.ev-art{height:56%;max-width:70%}}
/* piezas de eventos con imagen de fondo subida por el dueño */
.slide.ev img.ev-bg,.slide.ev.on img.ev-bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
.ev-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,9,12,.78) 0%,rgba(8,9,12,.46) 42%,rgba(8,9,12,.05) 80%)}
.ev-cap{position:absolute;right:14px;bottom:10px;z-index:2;font-size:12px;letter-spacing:.04em;color:#fff;opacity:.85;text-shadow:0 1px 3px #000a}
@media (max-width:760px){.ev-shade{background:linear-gradient(180deg,rgba(8,9,12,.74) 0%,rgba(8,9,12,.5) 60%,rgba(8,9,12,.3) 100%)}}
