:root{
  --navy:#0b1f3a; --navy-d:#07142a; --navy-m:#13315a;
  --orange:#ff7a1a; --orange-d:#e66a0d; --orange-l:#fff1e6;
  --ink:#0f1c2e; --muted:#586577; --bg:#fff; --alt:#f2f5f9; --line:#dfe6ee;
  --wa:#1fa855; --r:16px; --max:1120px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{hyphens:none;-webkit-hyphens:none;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:6px}
.wrap{width:min(var(--max),100% - 40px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--orange);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--orange);z-index:60}

/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--orange);color:#fff;text-decoration:none;font-weight:700;padding:14px 26px;border-radius:999px;border:2px solid var(--orange);cursor:pointer;font-size:1rem;font-family:inherit;transition:.2s}
.btn:hover{background:var(--orange-d);border-color:var(--orange-d);transform:translateY(-2px)}
.btn--ghost{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}
.btn--ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn--sm{padding:9px 20px;font-size:.92rem}
.btn--wa{background:var(--wa);border-color:var(--wa)}
.btn--wa:hover{background:#178f48;border-color:#178f48}
.btn svg{width:22px;height:22px;fill:#fff}

/* nav (blanca: el logo lleva azul y rojo) */
.nav{position:fixed;inset:0 0 auto 0;z-index:50;background:#fff;box-shadow:0 1px 0 var(--line);transition:box-shadow .3s}
.nav.solid{box-shadow:0 4px 24px rgba(11,31,58,.14)}
.nav__in{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{flex:none}
.brand img{height:40px;width:auto}
.menu{display:flex;align-items:center;gap:24px}
.menu a{white-space:nowrap;color:var(--navy);text-decoration:none;font-weight:600;font-size:.94rem;padding:4px 0;border-bottom:2px solid transparent}
.menu a:hover,.menu a.on{border-color:var(--orange)}
.menu a.btn{color:#fff;padding:11px 28px;border:2px solid var(--orange);font-size:.95rem}
.menu a.btn:hover{border-color:var(--orange-d,var(--orange))}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;flex-direction:column;justify-content:center;align-items:flex-end;gap:6px}
.burger span{display:block;width:26px;height:3px;background:var(--navy);border-radius:2px;transition:.25s}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(9px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}

/* hero */
.hero{position:relative;color:#fff;padding:150px 0 140px;overflow:hidden;background:var(--navy-d);isolation:isolate}
.hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(7,20,42,.95) 0%,rgba(11,31,58,.88) 50%,rgba(11,31,58,.6) 100%)}
.hero__in{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.eyebrow{color:var(--orange-d);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;margin-bottom:14px}
.hero .eyebrow,.eyebrow--lt{color:#ff9a4d}
h1{font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.1;font-weight:800;letter-spacing:-.02em}
.accent{color:var(--orange)}
.lead{font-size:1.15rem;color:#d3deec;max-width:620px;margin:22px 0 30px}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px}
.wave{position:absolute;left:0;bottom:-1px;width:100%;height:80px;z-index:0}

.route{background:rgba(7,20,42,.72);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:20px 22px;backdrop-filter:blur(6px);box-shadow:0 24px 60px rgba(0,0,0,.35)}
.route__head{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;font-size:.95rem}
.route__head b{white-space:nowrap}
.route__head small{margin-left:auto;color:#9fb2c9;font-size:.72rem}
.dot{width:10px;height:10px;border-radius:50%;background:#32d074;animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(50,208,116,0)}0%{box-shadow:0 0 0 0 rgba(50,208,116,.6)}}
.route__svg{width:100%;height:auto;margin:6px 0 8px;overflow:visible}
.truck{offset-path:path("M30 110 C 110 110, 120 40, 210 40 S 320 110, 390 50");offset-rotate:0deg;animation:drive 8s linear infinite}
@keyframes drive{from{offset-distance:0%}to{offset-distance:100%}}
.route__steps{list-style:none;display:flex;justify-content:space-between;gap:4px;font-size:.7rem;color:#8ea3bc}
.route__steps li{flex:1;text-align:center;padding-top:8px;border-top:3px solid rgba(255,255,255,.15);transition:.4s}
.route__steps li.on{color:#fff;border-color:var(--orange);font-weight:700}

/* franja de confianza */
.trust{padding:4px 0 0}
.trust__in{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.trust li{border-left:3px solid var(--orange);padding:6px 0 6px 16px;display:flex;flex-direction:column}
.trust b{color:var(--navy);font-size:1rem}
.trust span{color:var(--muted);font-size:.88rem}

/* secciones */
.sec{padding:90px 0}
.sec--alt{background:var(--alt)}
.sec--navy{background:linear-gradient(160deg,var(--navy),var(--navy-d));color:#fff}
h2{font-size:clamp(1.8rem,3.6vw,2.6rem);line-height:1.15;letter-spacing:-.015em;font-weight:800;color:var(--navy)}
.sec--navy h2,.cta h2{color:#fff}
.sec__lead{color:var(--muted);font-size:1.08rem;max-width:660px;margin-top:12px}
.sec--navy .sec__lead,.cta .sec__lead{color:#c3d0e0}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}
.card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px 26px;transition:.25s;overflow:hidden}
.card::before{content:"";position:absolute;left:0;top:0;height:4px;width:0;background:var(--orange);transition:width .35s}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(11,31,58,.14);border-color:transparent}
.card:hover::before{width:100%}
.card--wide{grid-column:span 2}
.num{position:absolute;right:20px;top:16px;font-weight:800;font-size:1.6rem;color:#e8edf3}
.ico{width:52px;height:52px;border-radius:14px;background:var(--orange-l);display:grid;place-items:center;margin-bottom:18px}
.ico svg{width:26px;height:26px;fill:none;stroke:var(--orange-d);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.card h3{font-size:1.12rem;color:var(--navy);margin-bottom:8px}
.card p{color:var(--muted);font-size:.96rem}

/* texto justificado */
.just,.card p,details p,.notice p{text-align:justify;hyphens:none;-webkit-hyphens:none;text-wrap:pretty}
.mb-0{margin-bottom:0}
.lead + .lead{margin-top:14px}
.lead.mb-0 + .actions{margin-top:28px}
.wa-link{color:#25d366;text-decoration:none}
.wa-link:hover{text-decoration:underline}

/* flujo de operación */
.flow{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:48px;position:relative;counter-reset:f}
.flow::before{content:"";position:absolute;left:5%;right:5%;top:22px;border-top:2px dashed rgba(255,122,26,.55)}
.flow li{position:relative}
.flow__n{width:46px;height:46px;border-radius:50%;background:var(--orange);color:#fff;font-weight:800;display:grid;place-items:center;margin-bottom:16px;box-shadow:0 0 0 6px var(--navy)}
.flow h3{font-size:1.05rem;margin-bottom:4px}
.flow p{color:#c3d0e0;font-size:.92rem}

.split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.notice{display:flex;gap:14px;align-items:flex-start;background:var(--orange-l);border-left:4px solid var(--orange);border-radius:0 12px 12px 0;padding:16px 20px;margin:28px 0 24px}
.notice svg{flex:none;width:26px;height:26px;fill:none;stroke:var(--orange-d);stroke-width:1.8;stroke-linecap:round}
.kyc{list-style:none;display:grid;gap:18px}
.kyc li{display:flex;gap:16px;align-items:flex-start;background:var(--alt);border-radius:var(--r);padding:20px 22px}
.n{flex:none;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800;display:grid;place-items:center}
.kyc h3{color:var(--navy);margin-bottom:2px}
.kyc p{color:var(--muted);font-size:.95rem}

.checks{list-style:none;margin-top:24px;display:grid;gap:10px}
.checks li{padding-left:30px;position:relative}
.checks li::before{content:"✓";position:absolute;left:0;color:var(--orange-d);font-weight:800}
.photo{border-radius:20px;overflow:hidden;box-shadow:0 24px 60px rgba(11,31,58,.25);position:relative}
.photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.photo figcaption{position:absolute;left:14px;bottom:14px;background:rgba(7,20,42,.82);color:#fff;font-size:.8rem;padding:5px 12px;border-radius:999px}

.faq{width:min(820px,100% - 40px);margin-left:max(20px,calc((100% - var(--max))/2))}
details{background:#fff;border:1px solid var(--line);border-radius:12px;margin-top:14px;padding:0 22px}
summary{cursor:pointer;font-weight:700;color:var(--navy);padding:18px 0;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--orange-d);font-size:1.4rem;line-height:1;transition:.2s}
details[open] summary::after{transform:rotate(45deg)}
details p{color:var(--muted);padding-bottom:18px}

.cta{background:linear-gradient(160deg,var(--navy-m),var(--navy-d));color:#fff}
.fine{margin-top:16px;color:#9fb2c9;font-size:.86rem}
.contact{list-style:none;display:grid;gap:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:30px}
.contact li{display:flex;flex-direction:column}
.contact span{color:#9fb2c9;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}
.contact b{font-size:1.1rem}

.foot{background:var(--navy-d);color:#9fb2c9;padding:26px 0;font-size:.9rem}
.foot__in{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.foot__logo{background:#fff;border-radius:10px;padding:6px 12px}
.foot__logo img{height:28px;width:auto}
.foot a{color:#fff;text-decoration:none;font-weight:700}
.cur{color:var(--orange);animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}

.modal{border:0;border-radius:20px;padding:30px;max-width:min(440px,100% - 40px);margin:auto;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.modal::backdrop{background:rgba(7,20,42,.7)}
.modal h3{color:var(--navy);margin-bottom:10px}
.modal p{color:var(--muted);margin-bottom:12px}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}

@media (max-width:1000px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .split,.hero__in{grid-template-columns:1fr}
  .route{max-width:520px}
  .trust__in{grid-template-columns:repeat(2,1fr)}
  .flow{grid-template-columns:1fr;gap:26px}
  .flow::before{left:22px;right:auto;top:0;bottom:0;border-top:0;border-left:2px dashed rgba(255,122,26,.55)}
  .flow li{padding-left:70px}
  .flow__n{position:absolute;left:0;top:0;margin:0}
  .hero{padding:130px 0 120px}
}
@media (max-width:1020px){
  .burger{display:flex}
  .menu{position:fixed;inset:72px 0 auto 0;background:#fff;box-shadow:0 20px 30px rgba(11,31,58,.18);flex-direction:column;align-items:flex-start;padding:22px 20px 28px;gap:16px;transform:translateY(-130%);transition:transform .3s;visibility:hidden}
  .menu.open{transform:none;visibility:visible}
  .menu a{font-size:1.05rem}
}
@media (max-width:720px){
  .brand img{height:32px}
  .cards{grid-template-columns:1fr}
  .card--wide{grid-column:auto}
  .sec{padding:64px 0}
  .faq{margin-left:20px}
  .hero{padding:112px 0 100px}
  .actions .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}

/* página legal */
.nav__back{color:var(--navy);text-decoration:none;font-weight:700;font-size:.95rem;border-bottom:2px solid var(--orange);padding:4px 0}
.legal{padding:130px 0 70px}
.legal__in{width:min(820px,100% - 40px);margin-left:max(20px,calc((100% - var(--max))/2))}
.legal h1{color:var(--navy);font-size:clamp(1.8rem,4vw,2.5rem);margin-bottom:6px}
.legal .upd{color:var(--muted);font-size:.9rem;margin-bottom:28px}
.legal h2{font-size:1.2rem;margin:30px 0 8px}
.legal p,.legal li{color:var(--ink);text-align:justify;hyphens:none;text-wrap:pretty;margin-bottom:10px}
.legal ul{padding-left:22px}
.legal a{color:var(--orange-d);font-weight:600}
.foot a + span,.foot__in a{margin:0}
.legal h3{font-size:1.02rem;margin:22px 0 6px;color:var(--navy)}
.legal__toc{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 10px}
.legal__toc a{background:#f3f6fa;border:1px solid var(--line);border-radius:999px;padding:9px 18px;text-decoration:none;color:var(--navy);font-weight:700;font-size:.92rem}
.legal__toc a:hover{border-color:var(--orange)}
.legal__doc{margin-top:46px;padding-top:30px;border-top:1px solid var(--line);scroll-margin-top:90px}
.legal__doc>h2{font-size:1.7rem;color:var(--navy);margin-bottom:6px}
.legal__doc>.upd{margin-bottom:18px}
