/* ========================================= */
/* RESET */
/* ========================================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

:root{

  --white:#FFFFFF;

  --text:#090B16;

  --cyan:#71C9EE;
  --violet:#813EF6;
  --deep:#4A39AE;

  --gray:#697285;

}

html{
  scroll-behavior:smooth;
}

body{

  font-family:'Plus Jakarta Sans',sans-serif;

  background:#fff;

  color:var(--text);

  overflow-x:hidden;

  -webkit-font-smoothing:antialiased;

}

img{
  width:100%;
  display:block;
}

a{
  text-decoration:none;
  color:inherit;
}

button{
  font-family:inherit;
  border:none;
  background:none;
  cursor:pointer;
}

.container{

  width:min(92%,1440px);

  margin:auto;

}

/* ========================================= */
/* NAV */
/* ========================================= */

.nav{

  position:fixed;

  top:0;
  left:0;

  width:100%;

  z-index:999;

  background:rgba(255,255,255,.78);

  backdrop-filter:blur(18px);

}

.nav-inner{

  height:92px;

  display:flex;
  align-items:center;
  justify-content:space-between;

}

.nav-logo img{

  width:180px;

}

.nav-menu{

  display:flex;
  align-items:center;

  gap:54px;

}

.nav-menu a{

  font-size:.92rem;

  font-weight:500;

  transition:.3s ease;

}

.nav-menu a:hover{

  color:var(--violet);

}

.nav-right{

  display:flex;
  align-items:center;

  gap:22px;

}

.lang-btn{

  font-size:.92rem;

  font-weight:600;

}

.menu-btn{

  font-size:1.4rem;

}
.menu-btn{
  display:none;
}

/* ========================================= */
/* LANGUAGE SWITCH */
/* ========================================= */

.lang-switch{
  display:flex;
  align-items:center;
  gap:.6rem;
}

.lang-switch span{
  color:#999;
}

.lang-link{
  text-decoration:none;
  font-size:1rem;
  font-weight:600;
  color:#999;
  transition:.3s;
}

.lang-link:hover{
  color:#6D28D9;
}

.lang-link.active{
  color:#6D28D9;
  font-weight:800;
}

/* ========================================= */
/* HERO */
/* ========================================= */

.hero{

  padding-top:160px;

}

.hero-grid{

  display:grid;
  grid-template-columns:1fr 1fr;

  gap:80px;

  align-items:center;

}

/* ========================================= */
/* HERO LEFT */
/* ========================================= */

.hero-left{

  overflow:visible;

}

.hero-slides{

  position:relative;

  min-height:380px;

  width:100%;

  overflow:visible;

}

.hero-slide{

  position:absolute;

  width:100%;

  opacity:0;

  transform:translateY(12px);

  transition:
  opacity .8s ease,
  transform .8s ease;

  overflow:visible;

}

.hero-slide.active{

  opacity:1;

  transform:translateY(0);

}

.hero-title{

  font-size:clamp(5rem,10vw,8.8rem);

  line-height:.9;

  letter-spacing:-.045em;

  font-weight:800;

  padding-right:.08em;

}

.hero-title span{

  display:inline-block;

  padding-right:.12em;

  background:
  linear-gradient(
    135deg,
    var(--cyan),
    var(--violet)
  );

  background-clip:text;
  -webkit-background-clip:text;

  color:transparent;
  -webkit-text-fill-color:transparent;

}

.hero-description{

  margin-top:34px;

  max-width:520px;

  font-size:1.22rem;

  line-height:1.8;

  color:#586174;

}

/* ========================================= */
/* HERO ACTIONS */
/* ========================================= */

.hero-actions,
.hero-buttons{

  display:flex;
  align-items:center;

  gap:30px;

  margin-top:54px;

}

.btn-primary{

  height:58px;

  padding:0 34px;

  border-radius:999px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:
  linear-gradient(
    135deg,
    #5EBEFF,
    var(--violet)
  );

  color:#fff;

  font-weight:600;

  box-shadow:
  0 16px 40px rgba(129,62,246,.16);

}

.btn-link{

  height:58px;

  padding:0 34px;

  border-radius:999px;

  display:flex;
  align-items:center;
  justify-content:center;

  text-decoration:none;

}

.btn-link:hover{

  transform:translateY(-2px);

  background:#fff;

}

/* ========================================= */
/* HERO MINI */
/* ========================================= */

.hero-mini{

  display:flex;
  align-items:flex-start;

  gap:18px;

  margin-top:90px;

}

.hero-mini-line{

  width:4px;
  height:62px;

  border-radius:999px;

  background:
  linear-gradient(
    180deg,
    var(--cyan),
    var(--violet)
  );

}

.hero-mini h4{

  font-size:1.9rem;

  line-height:1.1;

  font-weight:600;

}

.hero-mini span{

  color:var(--violet);

}

/* ========================================= */
/* HERO RIGHT */
/* ========================================= */

.hero-right{

  position:relative;

  height:640px;

}

/* ========================================= */
/* PARALLAX */
/* ========================================= */

.hero-parallax{

  position:absolute;

  width:520px;
  height:520px;

  top:20px;
  right:0;

  border-radius:42% 58% 63% 37% / 42% 34% 66% 58%;

  background:
  radial-gradient(
    circle at top right,
    rgba(129,62,246,.26),
    rgba(113,201,238,.12),
    transparent 70%
  );

  filter:blur(12px);

}

/* ========================================= */
/* HERO SHAPE */
/* ========================================= */

.hero-shape{

  position:absolute;

  width:620px;
  height:520px;

  right:20px;
  top:0;

  border-radius:
  41% 59% 53% 47% /
  35% 33% 67% 65%;

  overflow:hidden;

  background:#EDEEF5;

  border:
  2px solid rgba(113,201,238,.38);

}

/* ========================================= */
/* IMAGE CONTAINER */
/* ========================================= */

.hero-image-container{

  position:relative;

  width:100%;
  height:100%;

}

.hero-image{

  position:absolute;

  inset:0;

  background-size:cover;
  background-position:center;

  opacity:0;

  transition:opacity .8s ease;

}

.hero-image.active{

  opacity:1;

}

/* HERO IMAGES */

.hero-image-1{

  background-image:
  url('assets/images/foto-hero-authentic.webp');

}

.hero-image-2{

  background-image:
  url('assets/images/foto-hero-abroad.webp');

}

.hero-image-3{

  background-image:
  url('assets/images/foto-hero-selected.webp');

}

/* ========================================= */
/* FLOAT */
/* ========================================= */

.hero-float-circle{

  position:absolute;

  width:88px;
  height:88px;

  right:0;
  bottom:40px;

  border-radius:50%;

  background:
  linear-gradient(
    135deg,
    var(--cyan),
    var(--violet)
  );

  filter:blur(.2px);

}

/* ========================================= */
/* SERVICES */
/* ========================================= */

.services{

  padding:180px 0 140px;

}

.services-layout{

  position:relative;

  min-height:900px;

}

/* ========================================= */
/* CARD */
/* ========================================= */

.service-card{

  position:absolute;

}

.abroad-card{

  left:0;
  top:80px;

}

.selected-card{

  left:32%;
  top:0;

}

.alliance-card{

  right:0;
  top:90px;

}

/* ========================================= */
/* COPY */
/* ========================================= */

.service-copy{

  position:relative;

  z-index:5;

}

.service-number{

  font-size:2rem;

  font-weight:700;

  color:var(--cyan);

}

.service-number.purple{

  color:var(--violet);

}
/* ========================================= */
/* SERVICE TITLE */
/* ========================================= */

.service-copy h2{

  margin-top:8px;

  font-size:4.8rem;

  line-height:.86;

  letter-spacing:-.045em;

  font-weight:800;

}
.service-black{

  color:var(--text);

}

.service-gradient{

  display:inline-block;

  background:
  linear-gradient(
    135deg,
    var(--cyan),
    var(--violet)
  );

  background-clip:text;
  -webkit-background-clip:text;

  color:transparent;
  -webkit-text-fill-color:transparent;

}

.service-line{

  width:40px;
  height:3px;

  border-radius:999px;

  margin:18px 0;

  background:var(--cyan);

}

.service-line.purple{

  background:var(--violet);

}

.service-card p{

  max-width:240px;

  line-height:1.7;

  color:#5E6678;

}

/* ========================================= */
/* SERVICE IMAGES */
/* ========================================= */

.shape-image{

  position:absolute;

  inset:0;

  width:100%;
  height:100%;

  background-size:cover;

  background-position:center;

  background-repeat:no-repeat;

}

/* ABROAD */

.abroad-image{

  background-image:
  url('assets/images/foto-servicio-abroad.webp');

}

/* SELECTED */

.selected-image{

  background-image:
  url('assets/images/foto-servicio-selected.webp');

}

/* CONNECTED */

.connected-image{

  background-image:
  url('assets/images/foto-servicio-connected.webp');

}

/* ========================================= */
/* BUTTON */
/* ========================================= */

.service-btn{

  width:58px;
  height:58px;

  border-radius:50%;

  display:flex;
  align-items:center;
  justify-content:center;

  margin-top:26px;

  border:
  1px solid rgba(113,201,238,.35);

  color:var(--cyan);

  font-size:1.5rem;

}

.service-btn.purple{

  color:var(--violet);

  border:
  1px solid rgba(129,62,246,.35);

}

/* ========================================= */
/* SHAPES */
/* ========================================= */

.service-shape{

  position:relative;

  overflow:hidden;

}

.shape-left{

  width:340px;
  height:250px;

  margin-top:30px;

  border-radius:
  54% 46% 63% 37% /
  41% 35% 65% 59%;

}

.shape-center{

  width:420px;
  height:320px;

  margin-bottom:24px;

  border-radius:
  41% 59% 56% 44% /
  45% 33% 67% 55%;

}

.shape-right{

  width:320px;
  height:240px;

  margin-top:30px;

  border-radius:
  52% 48% 39% 61% /
  54% 37% 63% 46%;

}


/* ========================================= */
/* PARALLAX */
/* ========================================= */

.service-parallax{

  position:absolute;

  inset:-20px;

  z-index:1;

  filter:blur(18px);

}

.service-parallax.cyan{

  background:
  radial-gradient(
    circle,
    rgba(113,201,238,.22),
    transparent 70%
  );

}

.service-parallax.violet{

  background:
  radial-gradient(
    circle,
    rgba(129,62,246,.18),
    transparent 70%
  );

}

.service-parallax.blue{

  background:
  radial-gradient(
    circle,
    rgba(74,57,174,.18),
    transparent 70%
  );

}

/* ========================================= */
/* CLIENTS */
/* ========================================= */

.clients{

  overflow:hidden;

  padding:10px 0;

  background:#FAFAFD;

}

/* ROW */

.clients-row{

  position:relative;

  width:100%;

  overflow:hidden;

  margin:35px 0;

}

/* TRACK */

.clients-track{

  display:flex;
  align-items:center;

  gap:90px;

  width:max-content;

}

/* LOGOS */

.clients-track img{

  height:30px;

  width:auto;

  opacity: 100;;

  transition:
  opacity .35s ease,
  transform .35s ease;

  will-change:transform;

  transform:translateZ(0);

}

.clients-track img:hover{

  opacity:1;

  transform:scale(1.02);

}

/* LEFT */

.clients-track.left{

  animation:
  clientsLeft 38s linear infinite;

}

/* RIGHT */

.clients-track.right{

  animation:
  clientsRight 42s linear infinite;

}

/* ========================================= */
/* ANIMATIONS */
/* ========================================= */

@keyframes clientsLeft{

  from{
    transform:translateX(0);
  }

  to{
    transform:translateX(-50%);
  }

}

@keyframes clientsRight{

  from{
    transform:translateX(-50%);
  }

  to{
    transform:translateX(0);
  }

}

/* ========================================= */
/* PARTNERS */
/* ========================================= */

.partners{

  padding:90px 0;

}

.partners-grid{

  display:grid;
  grid-template-columns:.7fr 1fr 1fr 1fr;

  gap:22px;

}

.partners-title{

  font-size:3rem;

  line-height:1;

  font-weight:700;

}

.partner-card{

  height:140px;

  border-radius:24px;

  background:#F8F8FC;

  display:flex;
  align-items:center;
  justify-content:center;

}

.partner-card img{

  height:40px;
  width:auto;

}

/* ========================================= */
/* METRICS */
/* ========================================= */

.metrics{

  padding:120px 0;

}

.metrics-layout{

  display:grid;

  grid-template-columns:
  minmax(320px,1.3fr)
  repeat(5,minmax(160px,1fr));

  gap:42px;

  align-items:start;

}

.metrics-intro{

  font-size:3rem;

  line-height:1;

  font-weight:700;

}

.metrics-intro span{

  color:var(--violet);

}

/* ========================================= */
/* METRIC NUMBER */
/* ========================================= */

.metric-number{

  display:flex;

  align-items:flex-start;

  overflow:visible;

  min-height:120px;

}

/* NUMBER */

.counter{

  display:block;

  font-size:clamp(4rem,6vw,6rem);

  line-height:1;

  letter-spacing:-.10em;

  font-weight:800;

  padding-right:14px;

  padding-bottom:14px;

  overflow:visible;

  background:
  linear-gradient(
    135deg,
    var(--cyan),
    var(--violet)
  );

  background-clip:text;
  -webkit-background-clip:text;

  -webkit-text-fill-color:transparent;

}

/* SYMBOL */

.metric-symbol{

  margin-top:18px;

  font-size:2rem;

  font-weight:700;

  color:var(--violet);

}

/* TEXT */

.metric-card p{

  max-width:180px;

  line-height:1.6;

  font-size:.95rem;

  color:#5B6377;

}

/* ========================================= */
/* PROCESS */
/* ========================================= */

.process{

  padding:140px 0;

}

.process-header h2{

  font-size:4rem;

  line-height:.95;

}

.process-header span{

  color:var(--violet);

}

.process-flow{

  position:relative;

  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:40px;

  margin-top:80px;

}

.flow-line{

  position:absolute;

  top:12px;
  left:0;

  width:100%;
  height:2px;

  background:#E4E7F2;

}

.flow-step{

  position:relative;

  z-index:5;

}

.flow-dot{

  width:24px;
  height:24px;

  border-radius:50%;

  display:flex;
  align-items:center;
  justify-content:center;

  background:var(--cyan);

  color:#fff;

  font-size:.75rem;

  font-weight:700;

}

.flow-dot.purple{

  background:var(--violet);

}

.flow-icon{

  width:82px;
  height:82px;

  border-radius:50%;

  margin-top:24px;

  background:
  linear-gradient(
    135deg,
    rgba(113,201,238,.12),
    rgba(129,62,246,.12)
  );

  border:
  1px solid rgba(129,62,246,.12);

  backdrop-filter:blur(10px);

  display:flex;
  align-items:center;
  justify-content:center;

}

/* ICON */

.flow-icon i{

  font-size:1.5rem;

  background:
  linear-gradient(
    135deg,
    var(--cyan),
    var(--violet)
  );

  background-clip:text;
  -webkit-background-clip:text;

  color:transparent;
  -webkit-text-fill-color:transparent;

}

.flow-step p{

  margin-top:22px;

  max-width:180px;

  line-height:1.6;

}

/* ========================================= */
/* COLOMBIA */
/* ========================================= */

.colombia{

  padding:120px 0;

}

.colombia-layout{

  display:grid;
  grid-template-columns:.7fr 1fr .8fr;

  gap:40px;

  align-items:center;

}

.colombia-copy h2{

  font-size:4rem;

  line-height:.9;

}

.colombia-copy span{

  color:var(--violet);

}

.colombia-copy p{

  margin-top:20px;

  font-size:1.2rem;

  color:#5B6377;

}

.benefits-grid{

  display:flex;
  flex-direction:column;

  gap:22px;

}

.benefit-card{

  display:flex;

  gap:18px;

}

.benefit-icon{

  width:72px;
  height:72px;

  border-radius:22px;

  background:
  linear-gradient(
    135deg,
    rgba(113,201,238,.12),
    rgba(129,62,246,.12)
  );

  border:
  1px solid rgba(129,62,246,.12);

  display:flex;
  align-items:center;
  justify-content:center;

  flex-shrink:0;

}

/* ICON */

.benefit-icon i{

  font-size:1.9rem;

  background:
  linear-gradient(
    135deg,
    var(--cyan),
    var(--violet)
  );

  background-clip:text;
  -webkit-background-clip:text;

  color:transparent;
  -webkit-text-fill-color:transparent;

}

.benefit-card h3{

  font-size:1.25rem;

  line-height:1.2;

}

.benefit-card p{

  margin-top:10px;

  line-height:1.6;

  color:#5B6377;

}
.colombia-image{

  background-image:
  url('assets/images/foto-colombia.webp');

}
.colombia-image-wrap{

  position:relative;

}

.colombia-parallax{

  position:absolute;

  inset:-20px;

  background:
  radial-gradient(
    circle,
    rgba(129,62,246,.18),
    transparent 70%
  );

  filter:blur(18px);

}

.colombia-shape{

  position:relative;

  width:100%;
  height:260px;

  overflow:hidden;

  border-radius:
  56% 44% 52% 48% /
  40% 34% 66% 60%;

}

/* ========================================= */
/* CTA */
/* ========================================= */

.cta{

  padding:120px 0;

}

.cta-layout{

  padding:54px;

  border-radius:34px;

  background:
  linear-gradient(
    135deg,
    #5DBDFF,
    var(--violet)
  );

  display:grid;
  grid-template-columns:.5fr 1fr .8fr;

  gap:40px;

  align-items:center;

  color:#fff;

}

.cta-symbol{

  display:flex;
  align-items:center;

}

.cta-symbol img{

  width:240px;

  height:auto;

}

.cta-copy h2{

  font-size:3rem;

  line-height:1;

}

.cta-copy h3{

  margin-top:14px;

  font-size:4rem;

  line-height:.9;

}

.cta-copy span{

  opacity:.9;

}

.cta-buttons{

  display:flex;

  gap:16px;

}

.btn-white{

  height:56px;

  padding:0 30px;

  border-radius:999px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:#fff;

  color:var(--deep);

  font-weight:600;

}

.btn-outline{

  height:56px;

  padding:0 30px;

  border-radius:999px;

  display:flex;
  align-items:center;
  justify-content:center;

  border:1px solid rgba(255,255,255,.4);

}
/* ========================================= */
/* BUTTON HOVERS */
/* ========================================= */

.btn-primary,
.btn-white,
.btn-outline,
.btn-link{

  transition:
  transform .35s ease,
  box-shadow .35s ease,
  background .35s ease,
  color .35s ease,
  opacity .35s ease;

}

/* PRIMARY */

.btn-primary:hover{

  transform:translateY(-3px);

  box-shadow:
  0 24px 60px rgba(129,62,246,.22);

}

/* WHITE */

.btn-white:hover{

  transform:translateY(-3px);

  box-shadow:
  0 18px 40px rgba(255,255,255,.24);

}

/* OUTLINE */

.btn-outline:hover{

  transform:translateY(-3px);

  background:
  rgba(255,255,255,.12);

  border-color:
  rgba(255,255,255,.7);

}

/* LINK */

.btn-link:hover{

  color:var(--violet);

  transform:translateX(4px);

}

/* ========================================= */
/* FOOTER */
/* ========================================= */

.footer{

  padding:80px 0;

}

.footer-layout{

  display:grid;
  grid-template-columns:1fr 1fr 1fr .5fr;

  gap:40px;

  align-items:start;

}
.footer-brand{

  display:flex;

  flex-direction:column;

  align-items:flex-start;
  gap:0;

}
.footer-brand img{

  width:260px;

}

/* ========================================= */
/* FOOTER TAGLINE */
/* ========================================= */

.footer-tagline{

  margin-top:12px;

  padding-left:0;

  font-size:.78rem;

  font-weight:500;

  letter-spacing:.14em;

  color:var(--text);

  display:block;

}

.footer-links,
.footer-contact{

  display:flex;
  flex-direction:column;

  gap:14px;

}

.footer-social{

  display:flex;

  gap:12px;

}

.footer-social a{

  width:44px;
  height:44px;

  border-radius:50%;

  background:#F6F6FA;

  display:flex;
  align-items:center;
  justify-content:center;

}

/* ========================================= */
/* RESPONSIVE */
/* ========================================= */
/* ========================================= */
/* LARGE TABLET / SMALL DESKTOP */
/* ========================================= */

@media (max-width:1400px){

  /* HERO */

  .hero-grid{
    gap:40px;
  }

  .hero-title{
    font-size:6rem;
  }

  .hero-shape{
    width:520px;
    height:440px;
  }

  .hero-right{
    height:520px;
  }

 .shape-center{

    width:340px;

    height:260px;

  }

}
/* ========================================= */
/* TABLET */
/* ========================================= */

@media (max-width:1024px){

  .hero-grid{
    grid-template-columns:1fr;
    gap:60px;
  }

  .partners-grid{
    grid-template-columns:1fr 1fr;
  }

  .metrics-layout{
    grid-template-columns:1fr 1fr;
  }

  .process-flow{
    grid-template-columns:1fr 1fr;
  }

  .colombia-layout{
    grid-template-columns:1fr;
  }

  .cta-layout{
    grid-template-columns:1fr;
  }

  .footer-layout{
    grid-template-columns:1fr 1fr;
  }

  .services-layout{
    display:flex;
    flex-direction:column;
    gap:100px;
    min-height:auto;
  }

  .service-card{
    position:relative;
    inset:auto !important;
  }

}

/* ========================================= */
/* MOBILE */
/* ========================================= */

@media (max-width:768px){

  /* ========================= */
  /* GENERAL
  /* ========================= */

  .container{
    width:92%;
  }

  /* ========================= */
  /* NAV
  /* ========================= */

  .nav-inner{

    height:80px;

    display:flex;
    align-items:center;
    justify-content:space-between;

  }

  .nav-menu{
    display:none;
  }

  .nav-logo img{
    width:100px;
  }

  .nav-right{

    display:flex;
    align-items:center;

    gap:10px;

    flex-shrink:0;

  }

  .lang-switch{

    display:flex;
    align-items:center;

    gap:.35rem;

  }

  .lang-link{
    font-size:.85rem;
  }

  .menu-btn{

  display:flex;

  align-items:center;

  justify-content:center;

  width:40px;

  height:40px;

  font-size:1.3rem;

}

.mobile-menu{

  position:fixed;

  top:80px;

  left:0;

  width:100%;

  background:#fff;

  display:none;

  flex-direction:column;

  padding:20px;

  box-shadow:0 12px 30px rgba(0,0,0,.08);

  z-index:998;

}

.mobile-menu.active{

  display:flex;

}

.mobile-menu a{

  padding:14px 0;

  border-bottom:1px solid #eee;

  font-weight:600;

}

  /* ========================= */
  /* HERO
  /* ========================= */

  .hero{
    padding-top:120px;
  }

  .hero-grid{
    grid-template-columns:1fr;
    gap:0;
  }

  .hero-right{
    display:none;
  }

  .hero-left{
    overflow:hidden;
  }

  .hero-slides{

    min-height:220px;

    overflow:hidden;

  }

  .hero-title{
    font-size:3.8rem;
  }

  .hero-description{
    margin-top:24px;
  }

  .hero-actions{

    display:flex;

    flex-direction:row;

    align-items:center;

    gap:18px;

    margin-top:60px;

    flex-wrap:wrap;

  }

  .hero-mini{
    margin-top:50px;
  }

  /* ========================= */
/* SERVICES
/* ========================= */

.services{

  padding:60px 0 80px;

}
.service-header{

  position:relative;

  display:block;

}

.service-header h2{

  margin:0;

}

.service-btn{

  position:absolute;

  top:0;
  right:0;

  width:52px;
  height:52px;

  margin:0;



}
.services-layout{

  display:flex;
  flex-direction:column;

  gap:60px;

  min-height:auto;

  overflow:hidden;

}

.service-card{

  position:relative;

  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;

  inset:auto !important;

}

.service-copy{

  display:grid;

  grid-template-columns:1fr auto;

  align-items:start;

  column-gap:16px;

}

.service-copy h2{

  font-size:3.6rem;

  line-height:.9;

}

.service-line,
.service-card p{

  grid-column:1 / -1;

}

.service-btn{

  width:48px;
  height:48px;

  margin-top:20px;

  font-size:1.2rem;

  align-self:start;

}

.shape-left,
.shape-center,
.shape-right{

  display:none;

}
.service-parallax{
  display:none;
}
  /* ========================= */
  /* CLIENTS
  /* ========================= */

  .clients-track{
    gap:50px;
  }

  .clients-track img{
    height:24px;
  }

  /* ========================= */
  /* PARTNERS
  /* ========================= */

  .partners-grid{
    grid-template-columns:1fr;
  }

  /* ========================= */
  /* METRICS
  /* ========================= */

  /* ========================= */
/* METRICS */
/* ========================= */

.metrics{

  padding:20px 0;

}

.metrics-layout{

  display:grid;

  grid-template-columns:1fr 1fr;

  gap:24px;

}

.metrics-intro{

  grid-column:1 / -1;

  font-size:2.2rem;

  line-height:.95;

}

.metric-card{

  min-width:0;

}

.metric-number{

  display:flex;

  align-items:flex-start;

  gap:4px;

  min-height:auto;

}

.counter{

  font-size:3.5rem;

  letter-spacing:-.04em;

  padding:0;

}

.metric-symbol{

  margin-top:6px;

  font-size:1.6rem;

  line-height:1;

}

.metric-card p{

  max-width:none;

  font-size:.95rem;

  line-height:1.45;

}

.metric-card:last-child{

  grid-column:1 / -1;

}

/* ========================= */
/* PROCESS MOBILE */
/* ========================= */

.process{

  padding:50px 0;

}

.process-header h2{

  font-size:3rem;

  line-height:.9;

}

.process-flow{

  display:flex;

  flex-direction:column;

  gap:36px;

  margin-top:40px;

}

.flow-line{

  display:none;

}

.flow-step{

  position:relative;

  padding-left:70px;

}

.flow-step::before{

  content:"";

  position:absolute;

  left:11px;
  top:24px;

  width:2px;
  height:calc(100% + 36px);

  background:#E4E7F2;

}

.flow-step:last-child::before{

  display:none;

}

.flow-dot{

  position:absolute;

  left:0;
  top:0;

}

.flow-icon{

  width:64px;
  height:64px;

  margin-top:18px;

}

.flow-icon i{

  font-size:1.2rem;

}

.flow-step p{

  margin-top:16px;

  max-width:none;

  font-size:1rem;

  line-height:1.5;

}

  /* ========================= */
  /* COLOMBIA
  /* ========================= */

.colombia{

  padding:50px 0;

}
  .colombia-layout{
    grid-template-columns:1fr;
  }

  .colombia-image-wrap{
    overflow:hidden;
  }

  /* ========================= */
/* CTA */
/* ========================= */

.cta{

  padding:30px 0 40px;

}

.cta-layout{

  grid-template-columns:1fr;

  padding:28px 20px;

  gap:24px;

  border-radius:28px;

}

.cta-symbol{

  justify-content:center;

}

.cta-symbol img{

  width:120px;

}

.cta-copy{

  text-align:center;

}

.cta-copy h2{

  font-size:2.2rem;

  line-height:.95;

}

.cta-copy h3{

  margin-top:8px;

  font-size:3rem;

  line-height:.9;

}

.cta-buttons{

  flex-direction:column;

  align-items:stretch;

  gap:12px;

}

.btn-white,
.btn-outline{

  height:52px;

  font-size:1rem;

}

/* ========================= */
/* FOOTER */
/* ========================= */

.footer{

  padding:40px 0 100px;

}

.footer-layout{

  display:grid;

  grid-template-columns:1fr;

  gap:28px;

  text-align:center;

}

.footer-brand{

  align-items:center;

}

.footer-brand img{

  width:170px;

}

.footer-tagline{

  margin-top:10px;

  font-size:.95rem;

  letter-spacing:.03em;

  color:#697285;

}

/* ocultamos navegación */

.footer-links{

  display:none;

}

/* contacto */

.footer-contact{

  display:flex;

  flex-direction:column;

  gap:12px;

  width:100%;

}

.footer-contact a{

  display:flex;

  align-items:center;

  justify-content:center;

  min-height:54px;

  padding:0 18px;

  border-radius:999px;

  background:#F5F7FB;

  font-size:1rem;

  font-weight:500;

  color:var(--text);

  transition:.3s ease;

}

.footer-contact a:hover{

  background:#EEF2FF;

}

/* redes */

.footer-social{

  justify-content:center;

  gap:10px;

}

.footer-social a{

  width:44px;

  height:44px;

  border-radius:50%;

  background:#F5F7FB;

  display:flex;

  align-items:center;

  justify-content:center;

}

/* copyright */

.footer-copy{

  margin-top:8px;

  font-size:.85rem;

  color:#697285;

}
}