:root{
  --navy:#07172f;
  --blue:#0b5cff;
  --blue2:#1048b8;
  --text:#0b1833;
  --muted:#5b6680;
  --line:#e7ecf5;
  --soft:#f6f8fc;
  --white:#fff;
  --red:#ef233c;
  --shadow:0 18px 50px rgba(7,23,47,.08);
  --shadow2:0 10px 30px rgba(7,23,47,.07);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 78% 8%, rgba(11,92,255,.08), transparent 34%),
    linear-gradient(180deg,#fff 0%,#f8fbff 48%,#fff 100%);
}
a{color:inherit;text-decoration:none}
.mn-wrap{width:90%;max-width:none;margin:0 auto}
.mn-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.84);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(231,236,245,.9);
}
.mn-header-inner{
  height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
.mn-logo{
  display:inline-flex;
  align-items:baseline;
  gap:0;
  font-size:30px;
  font-weight:900;
  letter-spacing:-1.4px;
  color:#06132a;
}
.mn-logo strong{color:var(--red)}
.mn-nav{
  display:flex;
  align-items:center;
  gap:30px;
  font-size:14px;
  font-weight:700;
  color:#12203b;
}
.mn-nav a{opacity:.88}
.mn-nav a:hover,.mn-nav a.active{color:var(--blue);opacity:1}
.mn-actions{display:flex;align-items:center;gap:10px}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:44px;
  padding:0 18px;
  border-radius:10px;
  font-weight:800;
  font-size:14px;
  border:1px solid transparent;
}
.btn.dark{background:#07172f;color:white;box-shadow:0 10px 22px rgba(7,23,47,.18)}
.btn.ghost{background:white;border-color:var(--line);color:#0d1b34}
.btn.light{background:white;color:#07172f}
.btn.outline-light{color:white;border-color:rgba(255,255,255,.45)}
.btn.inline{margin-top:16px}
.mn-menu-btn{display:none;border:0;background:#07172f;color:white;border-radius:10px;width:44px;height:44px;font-size:20px}
.mn-mobile-menu{display:none}

.mn-hero{padding:30px 0 18px}
.hero-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  min-height:410px;
  align-items:center;
  gap:20px;
}
.pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border:1px solid #d9e3f4;
  background:rgba(255,255,255,.8);
  border-radius:999px;
  color:#0d3d91;
  font-size:13px;
  font-weight:900;
  letter-spacing:.2px;
  box-shadow:0 8px 24px rgba(11,92,255,.06);
}
.hero-copy h1{
  margin:22px 0 16px;
  max-width:650px;
  font-size:clamp(40px,5vw,68px);
  line-height:.98;
  letter-spacing:-3.6px;
  color:#081733;
}
.hero-copy p{
  margin:0;
  max-width:580px;
  color:#42506c;
  line-height:1.75;
  font-size:18px;
  font-weight:500;
}
.hero-mini{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:28px;
  max-width:620px;
}
.hero-mini span{
  display:grid;
  grid-template-columns:22px 1fr;
  column-gap:9px;
  align-items:start;
  font-size:12px;
  font-weight:800;
  color:#16233d;
}
.hero-mini small{color:#69748b;font-weight:700}
svg{width:22px;height:22px;fill:currentColor}
.hero-visual{
  position:relative;
  min-height:410px;
  overflow:hidden;
}
.latam-map{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 52% 52%, rgba(11,92,255,.12), transparent 27%),
    repeating-radial-gradient(circle at 55% 46%, rgba(11,92,255,.12) 0 2px, transparent 2px 9px);
  clip-path:polygon(40% 0,85% 4%,95% 23%,74% 38%,78% 60%,64% 73%,67% 100%,45% 92%,42% 72%,31% 60%,34% 43%,21% 31%,29% 13%);
  opacity:.9;
}
.hero-visual:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 55%, transparent 0 88px, rgba(11,92,255,.2) 89px 90px, transparent 91px 150px, rgba(11,92,255,.12) 151px 152px, transparent 153px),
    linear-gradient(105deg, transparent 0 20%, rgba(11,92,255,.08) 20.2%, transparent 21% 100%);
  opacity:.75;
}
.peru-dot{
  position:absolute;
  left:38%;
  top:45%;
  width:42px;
  height:42px;
  background:var(--red);
  clip-path:polygon(25% 0,73% 10%,100% 40%,72% 100%,20% 82%,0 35%);
  box-shadow:0 0 0 16px rgba(239,35,60,.1);
}
.map-m{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:118px;
  height:118px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.82);
  box-shadow:0 20px 50px rgba(7,23,47,.1);
  border:1px solid rgba(225,232,245,.9);
  font-size:58px;
  font-weight:950;
  color:#07172f;
}
.map-m span{color:var(--red)}
.float-card{
  position:absolute;
  background:rgba(255,255,255,.9);
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow2);
  padding:18px;
  min-width:170px;
  display:grid;
  gap:5px;
}
.float-card strong{font-size:18px}
.float-card span{font-size:12px;color:#647089;font-weight:700}
.fc1{left:6%;top:20%}
.fc2{left:10%;bottom:16%}
.fc3{right:1%;top:45%}

.metrics-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  background:rgba(255,255,255,.9);
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.metrics-row div{
  display:grid;
  grid-template-columns:45px 1fr;
  align-items:center;
  gap:13px;
  padding:24px 26px;
  border-right:1px solid var(--line);
}
.metrics-row div:last-child{border-right:0}
.metrics-row svg{width:34px;height:34px;color:#07172f}
.metrics-row strong{font-size:24px;font-weight:950}
.metrics-row span{font-size:13px;font-weight:850}
.metrics-row small{color:#69748b}

.mn-section{padding:24px 0}
.mn-section.compact{padding:14px 0}
.section-title{
  margin:0 0 18px;
  font-size:24px;
  letter-spacing:-.8px;
  display:flex;
  align-items:center;
  gap:12px;
}
.section-title:before{
  content:"";
  width:22px;
  height:3px;
  border-radius:99px;
  background:var(--blue);
}
.platform-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.platform-grid .platform-card:nth-child(n+5){
  grid-column:span 1;
}
.platform-card{
  min-height:205px;
  background:rgba(255,255,255,.88);
  border:1px solid var(--line);
  border-radius:17px;
  box-shadow:var(--shadow2);
  padding:28px 22px;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  transition:.2s ease;
}
.platform-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(7,23,47,.11)}
.platform-logo{
  min-height:43px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:12px;
  font-size:28px;
  letter-spacing:-1.5px;
  font-weight:950;
  color:var(--accent);
}
.platform-logo strong{font-size:24px}
.platform-card p{
  margin:0 auto 13px;
  max-width:260px;
  color:#3e4b66;
  line-height:1.45;
  font-size:14px;
  font-weight:650;
}
.platform-card ul{
  list-style:none;
  padding:0;
  margin:4px 0 18px;
  text-align:left;
  width:100%;
  max-width:230px;
}
.platform-card li{
  color:#1c2a45;
  font-size:12.5px;
  font-weight:700;
  margin:7px 0;
}
.platform-card li:before{content:"✓";margin-right:9px;color:#07172f;font-weight:900}
.card-btn{
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:38px;
  padding:0 18px;
  border:1px solid #dbe3ef;
  border-radius:10px;
  font-weight:900;
  font-size:13px;
  color:#07172f;
  background:#fff;
}
.card-btn:hover{border-color:var(--accent);color:var(--accent)}
.platform-card.big{min-height:300px}

.flow{
  background:rgba(255,255,255,.75);
  border:1px solid var(--line);
  border-radius:20px;
  padding:26px;
  display:grid;
  grid-template-columns:1fr 35px 1fr 35px 1fr 35px 1.25fr 35px 1fr 35px 1fr 35px 1fr;
  align-items:center;
  box-shadow:0 8px 28px rgba(7,23,47,.05);
}
.flow div{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:7px;
}
.flow div svg{
  width:42px;height:42px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:50%;
  color:#07172f;
  background:#fff;
}
.flow strong{font-size:13px}
.flow span{font-size:12px;line-height:1.35;color:#546178;font-weight:650}
.flow i{height:2px;background:linear-gradient(90deg,rgba(11,92,255,.15),rgba(11,92,255,.65),rgba(11,92,255,.15))}
.flow-center b{
  width:94px;height:94px;border-radius:50%;
  background:#07172f;color:#fff;
  display:grid;place-items:center;
  font-size:50px;line-height:1;font-weight:950;
  box-shadow:0 14px 35px rgba(7,23,47,.18);
}
.flow-center b span{color:var(--red);font-size:50px}
.flow-center strong{font-size:16px;margin-top:4px}

.trust-grid,.use-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.trust-grid div,.use-grid div{
  background:rgba(255,255,255,.82);
  border:1px solid var(--line);
  border-radius:15px;
  box-shadow:0 8px 25px rgba(7,23,47,.05);
  padding:22px;
  display:grid;
  grid-template-columns:48px 1fr;
  column-gap:16px;
  align-items:center;
}
.trust-grid svg,.use-grid svg{
  width:48px;height:48px;
  padding:12px;
  border-radius:50%;
  background:#f4f7fc;
  color:#07172f;
}
.trust-grid strong,.use-grid strong{font-size:14px}
.trust-grid span,.use-grid span{font-size:12.5px;color:#5b6680;line-height:1.45;font-weight:650}

.prose-card{
  background:rgba(255,255,255,.85);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow2);
  padding:42px;
}
.prose-card h2{font-size:34px;letter-spacing:-1.3px;margin:0 0 12px}
.prose{font-size:16px;line-height:1.8;color:#3d4a65}
.prose p:first-child{margin-top:0}
.eyebrow{font-size:12px;font-weight:950;color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}

.page-top{
  padding:70px 0 34px;
  background:
    radial-gradient(circle at 70% 20%, rgba(11,92,255,.08), transparent 36%),
    linear-gradient(180deg,#fff,#f8fbff);
}
.page-top h1{
  max-width:850px;
  margin:20px 0 12px;
  font-size:clamp(42px,5vw,66px);
  line-height:1;
  letter-spacing:-3px;
}
.page-top p{
  max-width:720px;
  font-size:18px;
  line-height:1.7;
  color:#4d5a75;
  font-weight:600;
}

.cta-band{
  margin-top:22px;
  margin-bottom:0;
  background:
    radial-gradient(circle at 92% 40%, rgba(255,255,255,.16), transparent 24%),
    linear-gradient(135deg,#0b2d78,#07172f);
  border-radius:18px;
  color:#fff;
  padding:36px 42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  overflow:hidden;
}
.cta-band h2{font-size:28px;margin:0 0 8px}
.cta-band p{max-width:650px;margin:0;color:#dbe6ff;line-height:1.6}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap}

.mn-footer{
  margin-top:0;
  background:#07172f;
  color:#dce7ff;
  padding:46px 0 20px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.35fr 1.5fr 1fr 1fr;
  gap:42px;
}
.footer-logo{font-size:26px;color:white}
.mn-footer p{color:#b9c5dd;line-height:1.7}
.mn-footer .made{margin-top:24px}
.mn-footer h4{margin:0 0 12px;color:#fff}
.mn-footer a{
  display:block;
  color:#c6d2e8;
  margin:9px 0;
  font-size:14px;
}
.mn-footer a:hover{color:#fff}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);
  margin-top:34px;
  padding-top:18px;
  color:#9fb0cc;
  font-size:13px;
}

@media(max-width:1050px){
  .hero-grid{grid-template-columns:1fr}
  .hero-visual{min-height:320px}
  .platform-grid{grid-template-columns:repeat(2,1fr)}
  .metrics-row{grid-template-columns:repeat(2,1fr)}
  .metrics-row div:nth-child(2){border-right:0}
  .flow{grid-template-columns:repeat(2,1fr);gap:16px}
  .flow i{display:none}
  .trust-grid,.use-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  .mn-nav,.mn-actions{display:none}
  .mn-menu-btn{display:block}
  .mn-mobile-menu.open{
    display:grid;
    gap:8px;
    padding:0 5% 18px;
  }
  .mn-mobile-menu a{
    padding:13px 14px;
    background:#f6f8fc;
    border:1px solid var(--line);
    border-radius:12px;
    font-weight:800;
  }
  .hero-copy h1,.page-top h1{letter-spacing:-2px}
  .hero-mini{grid-template-columns:repeat(2,1fr)}
  .platform-grid{grid-template-columns:1fr}
  .metrics-row{grid-template-columns:1fr}
  .metrics-row div{border-right:0;border-bottom:1px solid var(--line)}
  .metrics-row div:last-child{border-bottom:0}
  .trust-grid,.use-grid{grid-template-columns:1fr}
  .cta-band{align-items:flex-start;flex-direction:column;padding:28px}
  .footer-grid{grid-template-columns:1fr}
  .flow{grid-template-columns:1fr}
}

/* === PATCH: ancho premium 90% real === */
.mn-wrap{
  width:90%;
  max-width:none;
  margin-left:auto;
  margin-right:auto;
}

@media (min-width:1600px){
  .mn-wrap{
    width:90%;
    max-width:1680px;
  }
}

@media (max-width:820px){
  .mn-wrap{
    width:92%;
  }
}

/* === Uploads públicos: logos, imágenes y visual superior === */
.mn-logo img{
  max-height:44px;
  width:auto;
  display:block;
  object-fit:contain;
}

.footer-logo img{
  max-height:38px;
}

.hero-visual.has-image{
  border-radius:28px;
  overflow:hidden;
  min-height:410px;
  border:1px solid rgba(231,236,245,.9);
  box-shadow:0 24px 70px rgba(7,23,47,.08);
  background:#f6f9ff;
}

.hero-bg-image{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.88),rgba(255,255,255,.42),rgba(255,255,255,.78)),
    var(--home-img);
  background-size:cover;
  background-position:center;
  opacity:.9;
}

.platform-image{
  width:100%;
  height:110px;
  border-radius:14px;
  overflow:hidden;
  background:#f5f8fd;
  border:1px solid #e7ecf5;
  margin-bottom:18px;
}

.platform-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.platform-logo img{
  max-height:48px;
  max-width:230px;
  object-fit:contain;
  display:block;
}

.section-image{
  width:100%;
  overflow:hidden;
  border-radius:18px;
  border:1px solid #e7ecf5;
  background:#f6f8fc;
  margin:0 0 22px;
}

.section-image img{
  width:100%;
  max-height:420px;
  object-fit:cover;
  display:block;
}
