:root{
  --blue:#0b4d86;
  --blue2:#1185d5;
  --cyan:#76d5ff;
  --navy:#06111d;
  --ink:#0a0e14;
  --panel:#151b23;
  --line:rgba(255,255,255,.14);
  --muted:#aab7c5;
  --text:#f6f9fc;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#070b10;color:var(--text);font-family:Arial,Helvetica,sans-serif}
a{text-decoration:none;color:inherit}
.container{width:min(1240px,calc(100% - 56px));margin:0 auto}
.topbar{
  height:96px;position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 44px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(7,10,14,.78) 45%,rgba(7,10,14,.9));
  backdrop-filter:blur(22px);border-bottom:1px solid var(--line)
}
.brand{height:66px;display:flex;align-items:center}
.brand img{height:62px;width:auto;display:block;filter:drop-shadow(0 0 18px rgba(118,213,255,.18))}
.desktop-nav{display:flex;align-items:center;gap:25px;color:#d7dde6;font-size:14px;font-weight:800}
.desktop-nav a:hover{color:#fff}
.nav-cta{padding:13px 18px;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--blue2));color:white!important;box-shadow:0 16px 38px rgba(17,133,213,.35)}
.hero{min-height:790px;position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,rgba(8,13,19,.95) 18%,#090e15 100%)}
.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 28%,rgba(17,133,213,.32),transparent 32%),radial-gradient(circle at 10% 92%,rgba(118,213,255,.13),transparent 28%)}
.mesh{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:52px 52px}
.flight-lines span{position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.45;transform:rotate(-18deg)}
.flight-lines span:nth-child(1){width:58%;right:-10%;top:34%}.flight-lines span:nth-child(2){width:42%;right:6%;top:52%}.flight-lines span:nth-child(3){width:34%;left:-4%;bottom:14%}
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .78fr;gap:70px;align-items:center;min-height:790px;padding:78px 0}
.kicker{color:#84cffc;text-transform:uppercase;letter-spacing:2.9px;font-size:12px;font-weight:900;margin-bottom:20px}
h1{font-size:clamp(60px,7.4vw,104px);line-height:.9;letter-spacing:-4.7px;margin:0 0 30px}
.hero-copy p,.lead{font-size:22px;line-height:1.52;color:#d8e0ea;max-width:790px}
.primary-btn{display:inline-flex;margin-top:34px;min-height:56px;align-items:center;justify-content:center;padding:0 25px;border-radius:14px;font-weight:900;background:linear-gradient(135deg,var(--blue),var(--blue2));box-shadow:0 18px 44px rgba(17,133,213,.35)}
.mission-panel{border:1px solid rgba(255,255,255,.18);border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045));box-shadow:0 34px 90px rgba(0,0,0,.44);padding:30px;backdrop-filter:blur(20px)}
.panel-label{font-weight:900;color:#e5eef7;letter-spacing:.4px;margin-bottom:20px}
.route-map{display:grid;gap:11px;position:relative}
.route-map:before{content:"";position:absolute;left:24px;top:25px;bottom:25px;width:1px;background:linear-gradient(var(--cyan),transparent)}
.route-node{position:relative;display:grid;grid-template-columns:48px 1fr;align-items:center;padding:14px 15px;border-radius:16px;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.13);font-weight:800}
.route-node b{color:#75c4ff}.route-node.active{background:linear-gradient(135deg,rgba(11,77,134,.72),rgba(17,133,213,.45))}
.section{padding:105px 0;background:#0b1016;border-top:1px solid var(--line);position:relative;overflow:hidden}
.section-count{color:#75c4ff;font-size:14px;font-weight:900;letter-spacing:2px;margin-bottom:16px}
h2{font-size:clamp(42px,5vw,72px);line-height:.98;letter-spacing:-3px;margin:0;color:#fff}
p{color:#c8d2df;font-size:20px;line-height:1.55}
.belief{background:radial-gradient(circle at 85% 10%,rgba(17,133,213,.15),transparent 25%),#090d13}
.belief-layout{display:grid;grid-template-columns:90px 1fr;gap:26px}.belief h2{max-width:1090px}.belief p{max-width:820px}
.solution{background:linear-gradient(135deg,#101721,#080c12)}.solution-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}.section-head{display:grid;grid-template-columns:90px 1fr;gap:26px;margin-bottom:42px}.section-head p{max-width:860px}
.system-orbit{height:520px;border:1px solid rgba(255,255,255,.14);border-radius:34px;background:radial-gradient(circle at center,rgba(17,133,213,.22),transparent 32%),rgba(255,255,255,.045);position:relative}
.center-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:120px;width:120px;border-radius:34px;background:linear-gradient(135deg,var(--blue),var(--blue2));display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:900;box-shadow:0 0 80px rgba(17,133,213,.4)}
.orbit-item{position:absolute;padding:14px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#111923;font-weight:900;color:#eaf4fb}
.i1{left:7%;top:12%}.i2{right:9%;top:14%}.i3{left:6%;bottom:17%}.i4{right:6%;bottom:18%}.i5{left:50%;top:8%;transform:translateX(-50%)}.i6{left:50%;bottom:8%;transform:translateX(-50%)}
.comparison{background:#0a0f15}.table-shell{overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.15);box-shadow:0 28px 90px rgba(0,0,0,.32)}table{width:100%;border-collapse:separate;border-spacing:0;background:#111820}th{background:#123b63;color:#fff;text-align:center;padding:18px 16px;font-size:15px}th:first-child{text-align:left;padding-left:24px}th:last-child{background:#0e6cad}td{padding:17px 16px;text-align:center;border-bottom:1px solid rgba(255,255,255,.08);border-right:1px solid rgba(255,255,255,.06);color:#d6dee9}td:first-child{text-align:left;font-weight:900;color:#fff;padding-left:24px}td:last-child{background:rgba(14,108,173,.16);color:#8bd0ff;font-weight:900}tr:last-child td{border-bottom:0}.muted{color:#6f7d8c!important}
.positioning,.choose-grid,.compliance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.positioning{margin-top:26px}.positioning div,.choose-grid div,.compliance-grid article,.process-grid article{border:1px solid rgba(255,255,255,.13);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.038));padding:24px;font-weight:900}
.program{background:#101720}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process-grid article{min-height:190px;position:relative}.process-grid article:after{content:"";position:absolute;inset:auto 24px 18px 24px;height:1px;background:linear-gradient(90deg,var(--cyan),transparent);opacity:.35}.process-grid .wide{grid-column:span 2}.process-grid .accent{background:linear-gradient(135deg,rgba(11,77,134,.6),rgba(17,133,213,.25))}.process-grid span{color:#75c4ff;font-weight:900;letter-spacing:1.4px}.process-grid h3,.compliance-grid h3,.choose-grid h3{font-size:20px;line-height:1.15;color:#fff;margin:18px 0 10px}.process-grid p,.choose-grid p{font-size:15px;line-height:1.45;color:#b9c5d2;margin:0}

/* ==========================================================================
   SECCIÓN DE BENEFICIOS (BENTO GRID REFINADO)
   ========================================================================== */
.benefits {
  background: #070b11;
  position: relative;
}
.bento {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 180px;
  gap: 20px;
  margin-top: 48px;
}
.bento-card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 32px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(21, 27, 35, 0.4), rgba(10, 14, 20, 0.6));
  backdrop-filter: blur(12px);
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  font-weight: 600;
}
.bento-card:hover {
  transform: translateY(-5px);
  border-color: rgba(17, 133, 213, 0.4);
  box-shadow: 0 20px 40px rgba(7, 11, 17, 0.5), 0 0 30px rgba(17, 133, 213, 0.05);
}
.bento-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 100% 0%, rgba(17, 133, 213, 0.08), transparent 50%);
  opacity: 0;
  transition: opacity 0.4s ease;
}
.bento-card:hover::before {
  opacity: 1;
}
.bento-card h3 {
  font-size: 18px;
  line-height: 1.3;
  font-weight: 600;
  color: #ffffff;
  margin: 0;
  z-index: 2;
  letter-spacing: -0.3px;
}
.icon {
  position: absolute;
  top: 32px;
  left: 32px;
  color: var(--cyan);
  font-size: 28px;
  font-family: inherit;
  z-index: 2;
  opacity: 0.8;
  transition: transform 0.4s ease, color 0.4s ease;
}
.bento-card:hover .icon {
  transform: scale(1.1);
  color: #ffffff;
  opacity: 1;
}
.bento-card.large {
  grid-column: span 2;
  background: linear-gradient(145deg, rgba(21, 27, 35, 0.7), rgba(10, 14, 20, 0.9));
}
.health::before {
  background: radial-gradient(circle at 0% 100%, rgba(11, 77, 134, 0.15), transparent 60%);
  opacity: 1;
}
.housing::before {
  background: radial-gradient(circle at 100% 100%, rgba(17, 133, 213, 0.15), transparent 60%);
  opacity: 1;
}

.compliance{background:#0d131b}
ul{margin:0;padding-left:18px;color:#ccd6e2;line-height:1.65}
.why{background:linear-gradient(135deg,#162231,#090d13)}
.contact{padding:110px 0;background:radial-gradient(circle at 15% 10%,rgba(117,196,255,.24),transparent 28%),linear-gradient(135deg,#082845,#0b4d86)}.contact-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:62px;align-items:center}.contact p{color:#dcecff}
form{display:grid;grid-template-columns:1fr 1fr;gap:14px;background:rgba(255,255,255,.96);border-radius:28px;padding:30px;box-shadow:0 36px 90px rgba(0,0,0,.28)}
input,textarea,button{font:inherit;border:1px solid #d5dde7;border-radius:14px;padding:16px}
textarea{grid-column:1/-1;min-height:132px;resize:vertical}
button{grid-column:1/-1;background:#101820;color:white;font-weight:900;cursor:pointer}
footer{padding:34px 0;background:#05080c;border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;align-items:center;color:#aab6c3}.footer-inner img{height:64px;width:auto}
@media(max-width:1050px){
  .desktop-nav{display:none}.topbar{padding:0 20px}.brand img{height:48px}
  .hero-inner,.solution-layout,.contact-inner,.belief-layout,.section-head{grid-template-columns:1fr}
  .process-grid,.bento,.benefit-grid,.compliance-grid,.choose-grid,.positioning{grid-template-columns:1fr}.process-grid .wide,.bento-card.large{grid-column:span 1}
  .table-shell{overflow-x:auto}table{min-width:820px}
  form{grid-template-columns:1fr}h1{letter-spacing:-2.5px}.footer-inner{flex-direction:column;align-items:flex-start;gap:18px}.system-orbit{height:auto;padding:24px}
}