@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fuentes/archivo-400.woff2) format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fuentes/archivo-500.woff2) format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fuentes/archivo-600.woff2) format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fuentes/archivo-700.woff2) format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:900;font-display:swap;src:url(/assets/fuentes/archivo-900.woff2) format('woff2');}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fuentes/plexmono-400.woff2) format('woff2');}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fuentes/plexmono-500.woff2) format('woff2');}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fuentes/plexmono-600.woff2) format('woff2');}
:root{
  --acero:#1E2A33; --acero2:#2B3A46; --naranja:#F26522; --naranja-txt:#B8410F; --crudo:#F0F1EE;
  --gris:#5E6B75; --tostado:#8A5A2B; --linea:#D8DAD4; --tenue:#8A8F94;
  --blanco:#FFFFFF; --a:'Archivo',sans-serif; --m:'IBM Plex Mono',monospace;
  --nav:64px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--crudo);color:var(--acero);font-family:var(--a);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}

/* ---------- utilidades ---------- */
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.sec{padding:80px 0;border-bottom:1px solid var(--linea)}
.sec.osc{background:var(--acero);color:var(--crudo);border-bottom-color:#33414D}
.sec.osc .lead,.sec.osc .p{color:#B6C2CB}
.kick{font-family:var(--m);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--naranja-txt);margin-bottom:14px;display:block}
.sec.osc .kick,.hero .kick{color:var(--naranja)}
h1{font-size:clamp(38px,6.4vw,74px);font-weight:900;letter-spacing:-.038em;line-height:.98}
h2{font-size:clamp(27px,3.6vw,42px);font-weight:900;letter-spacing:-.03em;line-height:1.04;margin-bottom:14px}
h3{font-size:19px;font-weight:700;letter-spacing:-.012em;margin-bottom:7px}
.lead{font-size:18px;color:var(--gris);max-width:64ch;line-height:1.6}
.p{font-size:16px;color:var(--gris);max-width:68ch}
.p+.p{margin-top:14px}

/* franja de seguridad — elemento firma */
.franja{height:12px;background:repeating-linear-gradient(45deg,var(--naranja) 0 14px,#D4541A 14px 28px)}
.regla{height:5px;background:var(--naranja);width:78px;margin-bottom:22px}

/* ---------- nav ---------- */
header{position:sticky;top:0;z-index:60;background:rgba(30,42,51,.97);backdrop-filter:blur(10px);border-bottom:1px solid #33414D}
.nav{height:var(--nav);display:flex;align-items:center;gap:26px;max-width:1120px;margin:0 auto;padding:0 24px}
.marca{display:flex;align-items:center;gap:11px;flex:0 0 auto}
.marca span{font-weight:900;font-size:20px;letter-spacing:-.03em;color:var(--crudo)}
.menu{display:flex;gap:20px;margin-left:auto;align-items:center}
.menu a{font-size:14px;font-weight:500;color:#B6C2CB;padding:6px 0;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}
.menu a:hover{color:var(--crudo)}
.menu a.on{color:var(--crudo);border-bottom-color:var(--naranja)}
.wa{background:var(--naranja);color:#fff!important;padding:10px 18px;font-family:var(--m);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border:none!important;transition:background .15s}
.wa:hover{background:#D4541A}
.burger{display:none;margin-left:auto;background:none;border:1px solid #4A5A66;color:var(--crudo);padding:8px 12px;font-family:var(--m);font-size:12px;cursor:pointer}

/* ---------- hero ---------- */
.hero{background:var(--acero);color:var(--crudo);padding:88px 0 0;position:relative;overflow:hidden}
.hero h1{max-width:16ch}
.hero .lead{color:#B6C2CB;margin-top:22px;font-size:19px}
.cta{display:inline-flex;align-items:center;gap:10px;background:var(--naranja);color:#fff;padding:16px 28px;font-family:var(--m);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-top:30px;transition:background .15s}
.cta:hover{background:#D4541A}
.cta.ghost{background:transparent;border:1.5px solid #4A5A66;color:var(--crudo)}
.cta.ghost:hover{background:#33414D}
.datos{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #33414D;margin-top:64px}
.datos div{padding:26px 22px;border-right:1px solid #33414D}
.datos div:last-child{border-right:none}
.datos .t{font-family:var(--m);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--naranja);margin-bottom:6px}
.datos .g{font-size:32px;font-weight:900;letter-spacing:-.03em;line-height:1}
.datos .s{font-size:12.5px;color:#8FA0AC;margin-top:4px}

/* ---------- rejillas ---------- */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

.card{background:var(--blanco);border:1px solid var(--linea);padding:26px;display:flex;flex-direction:column;gap:9px;transition:border-color .15s,transform .15s}
.card:hover{border-color:var(--acero);transform:translateY(-2px)}
.card .n{font-family:var(--m);font-size:10.5px;letter-spacing:.15em;color:var(--naranja-txt);text-transform:uppercase}
.card .pr{font-family:var(--m);font-size:15px;font-weight:600;margin-top:auto;padding-top:14px;border-top:1px solid var(--linea)}
.card .pr b{color:var(--naranja-txt)}

.placa{background:var(--acero);color:var(--crudo);padding:22px}
.placa .t{font-family:var(--m);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--naranja);margin-bottom:7px}
.placa .g{font-size:30px;font-weight:900;letter-spacing:-.03em;line-height:1}
.placa .d{font-size:13px;color:#B6C2CB;margin-top:6px;line-height:1.45}

/* ---------- tablas ---------- */
table{width:100%;border-collapse:collapse;margin-top:8px}
th{font-family:var(--m);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--gris);font-weight:500;text-align:left;padding:11px 12px;border-bottom:1.5px solid var(--acero)}
td{padding:13px 12px;border-bottom:1px solid var(--linea);font-size:15.5px;vertical-align:middle}
td.n{font-family:var(--m);font-size:15px;font-weight:600;text-align:right;white-space:nowrap}
tr.d td{background:#FDEEE5}
.sec.osc th{color:#8FA0AC;border-bottom-color:var(--crudo)}
.sec.osc td{border-bottom-color:#33414D}
.sec.osc tr.d td{background:#33414D}

/* ---------- listas ---------- */
ul.chk{list-style:none}
ul.chk li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid var(--linea);font-size:15.5px;line-height:1.5}
ul.chk li:last-child{border-bottom:none}
ul.chk li::before{content:'';position:absolute;left:0;top:21px;width:14px;height:3px;background:var(--naranja-txt)}
.sec.osc ul.chk li::before{background:var(--naranja)}
ul.chk li span{display:block;font-size:13.5px;color:var(--gris);margin-top:3px}
.sec.osc ul.chk li{border-bottom-color:#33414D}
.sec.osc ul.chk li span{color:#B6C2CB}

ol.pasos{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
ol.pasos li{counter-increment:s;padding-top:18px;border-top:3px solid var(--acero)}
ol.pasos li::before{content:'0' counter(s);font-family:var(--m);font-size:12px;font-weight:600;color:var(--naranja);display:block;margin-bottom:8px}
.sec:not(.osc) ol.pasos li::before{color:var(--naranja-txt)}
ol.pasos li b{display:block;font-size:17px;font-weight:700;margin-bottom:5px}
ol.pasos li em{font-style:normal;font-size:14px;color:var(--gris);line-height:1.45}


/* ---------- portada carrusel ---------- */
.port{position:relative;width:100%;height:calc(100vh - var(--nav));height:calc(100svh - var(--nav));min-height:480px;overflow:hidden;
      background:#1E2A33;transition:background-color 600ms cubic-bezier(.4,0,.2,1)}
.port-grano{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:30;opacity:.35;
      background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/></filter><rect width='160' height='160' filter='url(%23n)' opacity='0.07'/></svg>");background-size:160px 160px}
.port-foto{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;overflow:hidden}
.port-foto img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;
      transition:opacity 420ms ease}
.port-velo{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2;pointer-events:none;
      background:linear-gradient(to top,rgba(10,15,20,.94) 0%,rgba(10,15,20,.74) 34%,rgba(10,15,20,.34) 62%,rgba(10,15,20,.52) 100%)}
.port-ghost{position:absolute;top:10%;left:0;right:0;text-align:center;z-index:5;
      font-size:14vw;font-weight:900;line-height:1;letter-spacing:-.04em;text-transform:uppercase;
      color:#fff;opacity:.96;white-space:nowrap;pointer-events:none;
      text-shadow:0 3px 26px rgba(6,10,14,.75);transition:opacity 280ms ease}
.port-pie{position:absolute;left:0;right:0;bottom:0;z-index:35;padding:56px 92px calc(24px + env(safe-area-inset-bottom)) 20px}
.port-dato{font-family:var(--m);font-size:10.5px;letter-spacing:.16em;color:#FFD2B4;margin-bottom:7px;
      text-shadow:0 1px 10px rgba(6,10,14,.85);transition:opacity 280ms ease}
.port-tit{font-size:24px;font-weight:900;letter-spacing:-.02em;line-height:1.1;margin-bottom:8px;color:#fff;
      text-shadow:0 2px 16px rgba(6,10,14,.8);transition:opacity 280ms ease}
.port-txt{font-size:13.5px;line-height:1.55;color:#fff;opacity:.93;margin-bottom:18px;
      text-shadow:0 1px 12px rgba(6,10,14,.85);transition:opacity 280ms ease}
.port-wa{display:inline-flex;align-items:center;gap:9px;background:#25D366;color:#fff;text-decoration:none;
      font-family:var(--m);font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
      padding:15px 22px;border-radius:3px;transition:background-color .15s}
.port-wa:active,.port-wa:hover{background:#1DA851}
.port-pt{display:flex;gap:5px;margin-bottom:14px}
.port-pt span{width:20px;height:3px;background:rgba(255,255,255,.32);transition:background-color 380ms}
.port-pt span.on{background:var(--naranja)}
@media (max-height:690px){
  .port-ghost{top:7%;font-size:12vw}
  .port-txt{display:none}
  .port-pie{padding-top:36px}
  .port-tit{font-size:20px}
}
@media (min-width:900px){
  .port-ghost{top:13%;font-size:clamp(60px,9vw,150px)}
  .port-pie{padding:96px 44px 52px;max-width:660px}
  .port-tit{font-size:30px}.port-txt{font-size:14.5px}

}


/* ---------- media real ---------- */
figure{margin:0;position:relative;overflow:hidden;background:#141C23}
figure img,figure video{display:block;width:100%;height:100%;object-fit:cover;
  transition:transform .6s cubic-bezier(.2,.7,.3,1);will-change:transform}
figure:hover img,figure:hover video{transform:scale(1.035)}
figcaption{position:absolute;left:0;right:0;bottom:0;padding:34px 16px 13px;
  background:linear-gradient(to top,rgba(12,18,23,.93) 0%,rgba(12,18,23,.72) 45%,transparent 100%);
  color:#F0F1EE;font-family:var(--m);font-size:10.5px;letter-spacing:.06em;line-height:1.5}
figcaption b{display:block;font-family:var(--a);font-weight:700;font-size:14px;letter-spacing:-.01em;
  margin-bottom:3px;text-transform:none}
figcaption::before{content:'';position:absolute;left:16px;top:22px;width:22px;height:3px;background:var(--naranja)}
.media{display:grid;grid-template-columns:0.86fr 1.14fr;gap:16px;align-items:stretch}
.media .reel{aspect-ratio:9/16}
.stack{display:grid;grid-template-rows:1fr 1fr;gap:16px}
.stack figure{min-height:0}
.vivo{position:absolute;top:13px;left:13px;z-index:2;display:flex;align-items:center;gap:6px;
  background:rgba(12,18,23,.72);padding:5px 10px;font-family:var(--m);font-size:9.5px;
  letter-spacing:.17em;text-transform:uppercase;color:#F0F1EE}
.vivo i{width:6px;height:6px;border-radius:50%;background:var(--naranja);display:block;
  animation:lat 1.8s ease-in-out infinite}
@keyframes lat{0%,100%{opacity:1}50%{opacity:.25}}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.duo figure{aspect-ratio:4/3}

/* ---------- foto marcador ---------- */
.foto{background:#DFE1DC;border:1.5px dashed #A9AEA6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:26px;text-align:center;min-height:230px}
.foto .ic{font-family:var(--m);font-size:11px;letter-spacing:.16em;color:var(--naranja-txt);text-transform:uppercase}
.foto .tx{font-size:14px;color:#4E534B;max-width:34ch;line-height:1.45}
.foto.alta{min-height:340px}

/* ---------- comparación ---------- */
.vs{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--linea)}
.vs>div{padding:32px}
.vs .mal{background:#E7E8E3}
.vs .bien{background:var(--naranja);color:#fff}
.vs .t{font-family:var(--m);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:16px;color:var(--tenue)}
.vs .bien .t{color:#fff}
.vs ul{list-style:none}
.vs li{padding:9px 0;border-bottom:1px solid rgba(30,42,51,.12);font-size:15.5px}
.vs .bien li{border-bottom-color:rgba(255,255,255,.25)}
.vs li:last-child{border-bottom:none}

/* ---------- nota ---------- */
.nota{border-left:3px solid var(--naranja);padding:12px 0 12px 18px;font-size:15px;color:var(--gris);line-height:1.55;max-width:68ch}
.sec.osc .nota{color:#B6C2CB}

/* ---------- footer ---------- */
footer{background:var(--acero);color:var(--crudo);padding:60px 0 26px}
footer a{color:#B6C2CB}
footer a:hover{color:var(--crudo)}
.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px;margin-bottom:40px}
.fgrid h4{font-family:var(--m);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--naranja);margin-bottom:14px;font-weight:500}
.fgrid li{list-style:none;padding:5px 0;font-size:14.5px;color:#B6C2CB}
.fbot{border-top:1px solid #33414D;padding-top:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--m);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#8FA0AC}

/* ---------- botón flotante ---------- */
.flota{position:fixed;right:20px;bottom:20px;z-index:70;background:#25D366;color:#fff;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.28);transition:transform .15s}
.flota:hover{transform:scale(1.07)}

/* ---------- páginas ---------- */
.pagina{display:none}
.pagina.activa{display:block;animation:ent .35s ease both}
@keyframes ent{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .g2,.vs,.media,.duo{grid-template-columns:1fr}
  .media .reel{aspect-ratio:3/4;max-height:520px}
  .stack{grid-template-rows:auto auto}
  .stack figure{aspect-ratio:4/3}
  .g3,.g4,.datos,ol.pasos{grid-template-columns:repeat(2,1fr)}
  .datos div{border-bottom:1px solid #33414D}
  .fgrid{grid-template-columns:1fr}
  .menu{display:none;position:absolute;top:var(--nav);left:0;right:0;background:var(--acero);flex-direction:column;padding:16px 24px;gap:2px;border-bottom:1px solid #33414D}
  .menu.abierto{display:flex;align-items:stretch}
  .menu a{padding:12px 0;border-bottom:1px solid #33414D}
  .burger{display:block}
  .wa{text-align:center;margin-top:10px}
}
@media (max-width:560px){
  .g3,.g4,.datos,ol.pasos{grid-template-columns:1fr}
  .sec{padding:56px 0}
  .hero{padding-top:56px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.solo-lectores{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.port-pt span{cursor:pointer}

picture{display:contents}


/* ---------- faq ---------- */
.faq{margin-top:30px;border-top:1px solid var(--linea)}
.sec.osc .faq{border-top-color:#33414D}
.faq-i{border-bottom:1px solid var(--linea)}
.sec.osc .faq-i{border-bottom-color:#33414D}
.faq-i summary{list-style:none;cursor:pointer;padding:20px 44px 20px 0;position:relative;
  font-size:17.5px;font-weight:700;letter-spacing:-.012em;line-height:1.35}
.faq-i summary::-webkit-details-marker{display:none}
.faq-i summary::after{content:"";position:absolute;right:8px;top:50%;width:12px;height:12px;
  border-right:2.5px solid var(--naranja);border-bottom:2.5px solid var(--naranja);
  transform:translateY(-70%) rotate(45deg);transition:transform .22s ease}
.faq-i[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq-i summary:hover{color:var(--naranja-txt)}
.sec.osc .faq-i summary:hover{color:var(--naranja)}
.faq-r{padding:0 44px 22px 0}
.faq-r p{font-size:16px;color:var(--gris);max-width:68ch;line-height:1.62}
.sec.osc .faq-r p{color:#B6C2CB}
.faq-r a{color:var(--naranja-txt);text-decoration:underline}
.sec.osc .faq-r a{color:var(--naranja)}
@media(max-width:640px){
  .faq-i summary{font-size:16.5px;padding:17px 36px 17px 0}
  .faq-r{padding:0 0 19px 0}
}
/* ---------- fin faq ---------- */
