/* Seven Seventy Biz — hoja de estilos */
@font-face{font-family:"Inter";src:url(../fonts/inter-latin.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Urbanist";src:url(../fonts/urbanist-latin.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Poppins";src:url(../fonts/poppins-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Poppins";src:url(../fonts/poppins-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  --verde:#07311E; --rojo:#C11336; --rojo-osc:#9E0E2B; --azul:#1B3767; --amarillo:#F4BF00;
  --tinta:#050505; --gris:#565656; --blanco:#FBFBFB;
  --u:calc((min(100vw, 1457px) - 17px) / 1440);
  --cab:76px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--cab);-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Urbanist",system-ui,sans-serif;color:var(--gris);background:#fff;line-height:1.6;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3{margin:0;font-family:"Inter",system-ui,sans-serif}
p{margin:0}
svg{display:block}
.saltar{position:absolute;left:-9999px;top:8px;z-index:200;background:#fff;color:var(--verde);padding:10px 16px;border-radius:6px;font-weight:700}
.saltar:focus{left:12px}
:focus-visible{outline:3px solid var(--amarillo);outline-offset:3px}

/* Botones */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:"Urbanist",sans-serif;font-weight:600;font-size:16px;line-height:1;padding:17px 24px;border-radius:6px;transition:background .25s,transform .25s,box-shadow .25s}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.btn--rojo{background:var(--rojo);color:#fff;box-shadow:0 8px 22px -10px rgba(193,19,54,.8)}
.btn--rojo:hover{background:var(--rojo-osc);transform:translateY(-2px)}
.btn--rojo:hover svg{transform:translateX(4px)}

/* ================= CABECERA ================= */
.cab{position:sticky;top:0;z-index:60;background:#fff;height:var(--cab);transition:box-shadow .3s}
.cab.sombra{box-shadow:0 6px 24px -12px rgba(0,0,0,.35)}
.cab__in{height:100%;max-width:1344px;margin:0 auto;padding:0 40px;display:flex;align-items:center;gap:24px}
.cab__logo img{width:76px;height:auto;margin-left:10px}
.menu{display:flex;gap:6px;margin:0 auto}
.menu a{position:relative;font-weight:600;font-size:16px;color:var(--verde);padding:10px 14px;border-radius:6px;transition:color .25s}
.menu a::after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:2px;background:var(--rojo);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.menu a:hover,.menu a.activo{color:var(--rojo)}
.menu a:hover::after,.menu a.activo::after{transform:scaleX(1)}
.cab__tel{display:flex;align-items:center;gap:16px;color:#020202}
.cab__tel-txt{display:flex;flex-direction:column;text-align:right;line-height:1.2}
.cab__tel-txt small{font-size:14px}
.cab__tel-txt b{font-size:15px;font-weight:700;margin-top:6px}
.cab__tel-ico{width:28px;height:28px;border-radius:4px;background:#C2C2C2;display:grid;place-items:center;transition:background .25s}
.cab__tel-ico svg{width:17px;height:17px;fill:#fff}
.cab__tel:hover .cab__tel-ico{background:var(--rojo)}
.hamb{display:none;width:44px;height:44px;border:0;border-radius:8px;background:#F1F1F1;cursor:pointer;padding:0 11px;flex-direction:column;justify-content:center;gap:5px;margin-left:auto}
.hamb span{display:block;height:2.5px;border-radius:2px;background:#111}

/* Menú del teléfono */
.panel{position:fixed;inset:0;z-index:100}
.panel[hidden]{display:none}
.panel__velo{position:absolute;inset:0;background:rgba(3,20,12,.55);opacity:0;transition:opacity .3s}
.panel__caja{position:absolute;top:0;right:0;height:100%;width:min(360px,88vw);background:var(--verde);color:#fff;padding:22px 24px 30px;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.7,.2,1);overflow-y:auto}
.panel.abierto .panel__velo{opacity:1}
.panel.abierto .panel__caja{transform:none}
.panel__top{display:flex;align-items:center;justify-content:space-between}
.panel__top img{width:96px;background:#fff;border-radius:12px;padding:6px}
.panel__x{width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.12);cursor:pointer;display:grid;place-items:center}
.panel__x svg,.visor__x svg{width:22px;height:22px;stroke:#fff;stroke-width:2.2;fill:none;stroke-linecap:round}
.panel__nav{display:flex;flex-direction:column;margin:34px 0 28px}
.panel__nav a{font-family:"Poppins",sans-serif;font-weight:600;font-size:21px;padding:14px 2px;border-bottom:1px solid rgba(255,255,255,.14)}
.panel__nav a:hover{color:var(--amarillo)}
.panel__cta{justify-content:center}
.panel__tel{margin-top:22px;font-weight:700;font-size:18px;display:flex;flex-direction:column;align-items:center}
.panel__tel small{font-weight:400;font-size:14px;opacity:.8}

/* ================= PORTADA ================= */
.hero{position:relative;height:calc(1213 * var(--u));overflow:hidden}
.hero__fondo{position:absolute;inset:0;clip-path:polygon(100% 0%,0% 0%,0% 52.9%,0% 77.3%,0.1% 77.3%,0.1% 77.4%,0.1% 77.5%,0.2% 77.5%,0.3% 77.6%,0.4% 77.7%,0.5% 77.7%,0.7% 77.8%,0.8% 77.8%,1.1% 77.9%,1.4% 77.9%,1.9% 77.9%,2.3% 77.9%,2.8% 77.9%,3.3% 77.8%,3.7% 77.8%,4.2% 77.8%,4.5% 77.8%,6% 76.1%,6.2% 76.4%,6.4% 76.4%,6.5% 76.4%,6.7% 76.4%,6.9% 76.5%,7.2% 76.5%,7.4% 76.5%,7.6% 76.5%,7.8% 76.5%,8% 76.5%,8.2% 76.5%,8.4% 76.6%,8.5% 76.7%,8.6% 76.8%,8.7% 77.1%,8.8% 77.3%,8.8% 77.6%,8.9% 77.8%,8.9% 78.1%,8.9% 78.3%,8.9% 78.6%,9.1% 79%,9.3% 79.3%,9.6% 79.7%,9.9% 80%,10.2% 80.2%,10.5% 80.4%,10.8% 80.6%,11.1% 80.7%,11.4% 80.8%,11.6% 80.9%,12.6% 81%,13.6% 80.9%,14.5% 80.8%,15.4% 80.6%,16.1% 80.4%,16.8% 80.1%,17.4% 79.8%,17.9% 79.5%,18.4% 79.2%,18.6% 78.9%,18.8% 78.7%,19% 78.7%,19.1% 78.6%,19.3% 78.7%,19.4% 78.7%,19.5% 78.9%,19.6% 79%,19.7% 79.1%,19.8% 79.3%,19.8% 79.4%,23.6% 80.9%,24.5% 78.4%,34.5% 85.1%,34.6% 85.1%,34.7% 85%,34.8% 85%,34.9% 84.9%,35.1% 84.8%,35.3% 84.7%,35.5% 84.6%,35.8% 84.4%,36% 84.3%,36.3% 84.1%,36.6% 84%,37% 84%,37.4% 84%,37.9% 84.1%,38.5% 84.2%,39% 84.3%,39.5% 84.5%,40% 84.7%,40.4% 84.9%,40.8% 85.1%,43.6% 83.9%,43.8% 83.9%,44% 83.8%,44.3% 83.8%,44.6% 83.7%,45% 83.6%,45.3% 83.6%,45.7% 83.5%,46.1% 83.5%,46.5% 83.4%,46.8% 83.4%,47.2% 83.3%,47.7% 83.1%,48.3% 82.9%,49% 82.7%,49.7% 82.4%,50.4% 82.1%,51.2% 81.7%,51.9% 81.4%,52.7% 81%,53.4% 80.7%,53.6% 80.6%,53.8% 80.5%,54% 80.4%,54.2% 80.3%,54.4% 80.2%,54.6% 80.1%,54.7% 80%,54.9% 80%,55.1% 79.9%,55.2% 79.8%,55.9% 79.6%,56.6% 79.4%,57.3% 79.3%,58.1% 79.3%,58.9% 79.3%,59.7% 79.3%,60.5% 79.4%,61.2% 79.5%,61.8% 79.6%,62.3% 79.7%,66.2% 87.6%,68.1% 87.6%,70.1% 91%,72.9% 91%,73.8% 93.6%,81.3% 91%,82.9% 91%,84.1% 93.6%,84.3% 93.5%,84.5% 93.5%,84.7% 93.5%,85% 93.4%,85.2% 93.3%,85.4% 93.1%,85.6% 93%,85.8% 92.7%,85.9% 92.5%,86% 92.2%,86% 91.9%,86.1% 91.7%,86.2% 91.5%,86.3% 91.3%,86.5% 91.2%,86.7% 91.1%,86.8% 91.1%,87% 91%,87.1% 91%,87.3% 91%,87.3% 91.1%,87.4% 91.2%,87.5% 91.4%,87.7% 91.7%,87.9% 92%,88.1% 92.4%,88.4% 92.9%,88.8% 93.4%,89.2% 94.1%,89.6% 94.8%,90.1% 95.6%,90.6% 96.2%,91.1% 96.7%,91.6% 97%,92% 97.3%,92.5% 97.5%,92.9% 97.7%,93.3% 97.8%,93.7% 97.8%,94% 97.9%,94.1% 97.9%,94.2% 97.9%,94.3% 97.9%,94.4% 97.9%,94.4% 98%,94.5% 98%,94.6% 98%,94.9% 98.1%,95.2% 98.2%,95.5% 98.4%,95.8% 98.6%,96.1% 98.8%,96.4% 99.1%,96.6% 99.3%,96.8% 99.6%,97% 99.8%,97.2% 100%,100% 97.7%,100% 52.9%,100% 0%)}
.hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.06);animation:acercar 2.4s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes acercar{to{transform:scale(1)}}
.hero__manos{position:absolute;left:calc(-230 * var(--u));top:calc(573 * var(--u));width:calc(859 * var(--u));height:calc(380 * var(--u));max-width:none;clip-path:polygon(2.3% 34.3%,0.6% 34.3%,0.6% 35.7%,1.4% 36.6%,2.1% 39.3%,3.3% 42%,2.9% 43.4%,3.9% 45.5%,2.1% 45.5%,1.6% 46.9%,5.5% 59.7%,9.1% 65.1%,18.1% 76.3%,33.2% 90.3%,39.1% 96.5%,40.9% 97.3%,41.4% 100%,42.5% 98.5%,43.8% 99.4%,49.4% 99.4%,52.9% 99.4%,55% 100%,57.4% 99.4%,59.4% 97.3%,61.1% 97.3%,63.8% 94%,65.6% 93.8%,67.1% 91.1%,67.7% 88.8%,68.3% 88.5%,69.2% 87.5%,70.5% 88.5%,71.9% 88.5%,72.7% 85.8%,73.2% 85.2%,73.7% 85.5%,74.3% 85.7%,74.6% 85.1%,75.4% 85.7%,76.3% 85.5%,76.4% 84.1%,76.7% 83.1%,78.4% 81.4%,81.8% 81.3%,83.5% 81.7%,84.6% 82.9%,86.2% 82.5%,86.2% 80.8%,86.3% 78.4%,86.6% 77.4%,87.4% 77.2%,87.9% 77.8%,89.8% 77.8%,89.8% 73.6%,90.6% 73.6%,91.2% 71.2%,92.1% 71.2%,92.2% 70%,92.7% 69.2%,92.7% 66.5%,93.9% 65.3%,93.7% 62.9%,93.9% 61.7%,95.3% 60.1%,95.3% 58.6%,95.8% 58.3%,95.8% 55.6%,96.6% 54.6%,98.8% 54.6%,100% 53.7%,100% 52.9%,93.2% 39.3%,92.9% 38.1%,90.7% 34.2%,86% 28.1%,85.7% 26.8%,84.7% 26.3%,80.3% 21.8%,71% 11.5%,62.2% 3.2%,61.2% 2%,59% 2%,56.5% 0.8%,54.3% 0.8%,53.4% 3.7%,49.9% 3.7%,46.7% 0.8%,44.5% 0.8%,43.5% 2.3%,42.5% 1.4%,40.5% 1.4%,40.5% 2.2%,39.3% 2.8%,40.5% 5.2%,39.2% 7.2%,38.9% 9.3%,38.9% 12.6%,39.3% 15.2%,39.3% 16.1%,38.4% 16.2%,37.2% 14.9%,34.9% 20.7%,32.8% 19.7%,32.7% 20.7%,31.2% 20.7%,30.7% 22.7%,28% 23.3%,26% 25%,24.4% 23.8%,23.3% 27.8%,20.9% 30.3%,18.4% 26.6%,17.9% 27.8%,17.2% 28%,15.7% 30.7%,15.6% 33%,13.6% 33.9%,12.2% 33.9%,10.4% 32.1%,9.7% 31%,9.5% 33.4%,7.9% 32.7%,5.5% 31.8%,5.3% 32.7%,3.9% 32.7%,2.3% 34.3%)}
.hero__txt{position:absolute;left:calc(422 * var(--u));top:calc(285 * var(--u));width:calc(780 * var(--u));color:#fff}
.hero h1{font-size:calc(68 * var(--u));font-weight:700;line-height:1.06;letter-spacing:-.01em;text-shadow:0 2px 24px rgba(0,0,0,.18)}
.punto{color:var(--amarillo)}
.hero p{margin:calc(44 * var(--u)) 0 0 calc(162 * var(--u));width:calc(383 * var(--u));font-size:max(15px,calc(20 * var(--u)));line-height:1.6;text-shadow:0 1px 12px rgba(0,0,0,.35)}

/* ================= SERVICIOS ================= */
.servicios{position:relative;z-index:2;width:calc(1440 * var(--u));margin:calc(-143 * var(--u)) auto 0}
.servicios .carril{display:grid;grid-template-columns:repeat(3,calc(408 * var(--u)));gap:calc(40 * var(--u));padding-left:calc(68 * var(--u));align-items:start}
.serv{background:#fff;border-radius:calc(22 * var(--u));padding:calc(35 * var(--u));box-shadow:0 0 0 1px rgba(0,0,0,.04),0 0 14px rgba(0,0,0,.3);text-align:center;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.serv:nth-child(2){margin-top:calc(100 * var(--u))}
.serv:nth-child(3){margin-top:calc(200 * var(--u))}
.serv img{width:100%;aspect-ratio:338/221;object-fit:cover;border-radius:10%/15%;transition:transform .6s}
.serv h3{color:var(--azul);font-size:calc(28 * var(--u));font-weight:700;line-height:1.2;margin:calc(26 * var(--u)) 0 calc(10 * var(--u))}
.serv p{color:var(--azul);font-size:max(14px,calc(17 * var(--u)));line-height:1.65}
@media (hover:hover){
  .serv:hover{box-shadow:0 0 0 1px rgba(0,0,0,.04),0 22px 44px -18px rgba(27,55,103,.55)}
  .servicios .serv:hover{transform:translateY(-8px)}
}
.puntos{display:none}

/* ================= NOSOTROS ================= */
.nosotros{position:relative;height:calc(1482 * var(--u));overflow:hidden}
.nosotros__asesores{position:absolute;left:calc(50% - 11 * var(--u));top:calc(10 * var(--u));width:calc(572 * var(--u))}
.nosotros__in{position:absolute;inset:0;width:calc(1440 * var(--u));margin:0 auto}
.collage__bolsa{position:absolute;left:0;top:calc(508 * var(--u));width:calc(650 * var(--u));height:calc(644 * var(--u));max-width:none;object-fit:cover;clip-path:polygon(6.7% 35.3%,4.8% 35%,4.2% 47.9%,8% 60.4%,15.4% 71.9%,24.7% 86.7%,26.7% 89.1%,26.7% 91.7%,27.8% 90.6%,28.9% 91.7%,30.9% 91.9%,32.6% 92.3%,34.2% 92.7%,35.5% 93.1%,36.6% 93.5%,37.5% 94%,38.2% 94.4%,38.7% 94.8%,39.1% 95.2%,39.3% 95.5%,41.3% 94.9%,43.7% 93.1%,44.8% 94%,50.8% 92%,56.1% 87.2%,58.4% 88.5%,60.9% 85.7%,63.5% 86.7%,63.6% 86.4%,63.8% 86.1%,64.1% 85.8%,64.4% 85.5%,64.8% 85.2%,65.3% 84.8%,65.9% 84.6%,66.6% 84.3%,67.3% 84.1%,68.2% 84%,69.1% 84%,70% 84%,70.7% 84.2%,71.4% 84.4%,72% 84.7%,72.6% 85%,73% 85.3%,73.4% 85.6%,73.7% 85.9%,74% 86.2%,75.8% 81.8%,77.1% 82.9%,78.7% 82.9%,79.8% 79%,80.5% 79.7%,82.1% 77.2%,82.5% 77.8%,84% 76%,86.1% 73.4%,87.7% 69.5%,89.8% 67.3%,91.4% 63.8%,95.8% 63.8%,92.2% 43.6%,92% 43.2%,91.8% 42.7%,91.6% 42.1%,91.3% 41.5%,91% 40.8%,90.8% 40.2%,90.5% 39.5%,90.2% 38.9%,90% 38.3%,89.8% 37.8%,89.6% 37.2%,89.3% 36.6%,89% 35.9%,88.6% 35.1%,88.1% 34.3%,87.7% 33.5%,87.2% 32.7%,86.8% 32%,86.4% 31.4%,86.1% 30.8%,81.2% 21.1%,74.8% 11.8%,74.2% 9.3%,72.4% 9.3%,71.9% 9%,71.3% 8.6%,70.7% 8.3%,70% 7.9%,69.3% 7.7%,68.7% 7.5%,68.2% 7.4%,67.7% 7.4%,67.3% 7.6%,67.1% 7.9%,66.9% 8.3%,66.7% 8.7%,66.4% 8.9%,66.2% 9.1%,65.9% 9.2%,65.6% 9.3%,65.4% 9.4%,65.1% 9.4%,64.9% 9.3%,64.7% 9.3%,63.9% 9.2%,63.2% 8.9%,62.6% 8.5%,62.1% 8%,61.6% 7.5%,61.2% 7%,60.9% 6.4%,60.6% 6%,60.4% 5.6%,60.3% 5.4%,60.2% 5.3%,60% 5.2%,59.7% 5.2%,59.4% 5.1%,59.1% 5.1%,58.8% 5.1%,58.5% 5.1%,58.2% 5.1%,57.9% 5.2%,57.6% 5.2%,57% 5.8%,54.4% 4.5%,54.3% 5%,52.9% 5.4%,53.3% 7.7%,51.2% 9.7%,50.9% 10.2%,50.6% 11%,50.3% 11.8%,50.1% 12.6%,49.9% 13.5%,49.7% 14.3%,49.5% 15.1%,49.4% 15.8%,49.4% 16.3%,49.3% 16.6%,49.3% 16.8%,49.3% 16.9%,49.2% 17%,49.1% 17.1%,49% 17.1%,48.8% 17.1%,48.7% 17.2%,48.6% 17.2%,48.4% 17.2%,48.3% 17.1%,47.2% 15.9%,43.4% 20.4%,41.9% 19.2%,41.2% 19.9%,40% 19.5%,38.9% 21.1%,36.1% 21.1%,33.8% 22.2%,33.3% 20.8%,32.4% 20.7%,31.2% 22.9%,30.8% 22.9%,30.5% 24%,28.4% 25.3%,27.9% 25.1%,27.5% 25.6%,26% 22.2%,25% 23.1%,24.5% 22.9%,22.2% 25.6%,22.2% 25.8%,22.1% 26%,22% 26.2%,21.8% 26.4%,21.7% 26.6%,21.5% 26.8%,21.4% 26.9%,21.2% 27.1%,21.1% 27.2%,21% 27.3%,19.4% 27.4%,18.5% 27.4%,17.9% 26.7%,17.8% 26.4%,17.8% 26.1%,17.7% 25.9%,17.6% 25.6%,17.5% 25.4%,17.4% 25.3%,17.2% 25.1%,17.1% 25%,17% 24.9%,16.9% 24.9%,16.8% 23.8%,15.8% 25.8%,14.5% 24.8%,14.4% 25.1%,14.2% 24.9%,13.4% 24.8%,13.6% 24.3%,13% 24.3%,12.3% 23.7%,12.2% 23.8%,12.2% 23.9%,12.1% 24%,12% 24.1%,11.9% 24.2%,11.8% 24.2%,11.7% 24.3%,11.5% 24.3%,11.3% 24.3%,11.2% 24.3%,10.9% 24.3%,10.7% 24.3%,10.4% 24.4%,10.1% 24.4%,9.9% 24.5%,9.6% 24.6%,9.3% 24.7%,9.1% 24.8%,8.8% 24.9%,8.7% 25%,7.8% 25%,7% 24.7%,6.7% 25.5%,7% 26.5%,7% 26.8%,7% 27.2%,7% 27.7%,6.9% 28.1%,6.9% 28.6%,6.9% 29%,6.9% 29.4%,6.9% 29.8%,7% 30.1%,7% 30.2%,7.1% 30.4%,7.1% 30.6%,7.2% 30.9%,7.2% 31.3%,7.2% 31.6%,7.1% 32%,7.1% 32.4%,7.1% 32.7%,7.1% 33.1%,7% 33.3%,6.7% 33.3%,6.8% 33.7%,6.5% 34.1%,6.7% 35.3%)}
.collage__equipo{position:absolute;left:calc(268 * var(--u));top:calc(792 * var(--u));width:calc(447 * var(--u));height:calc(544 * var(--u));max-width:none;object-fit:cover;clip-path:polygon(9.1% 69.7%,6.3% 67%,6.8% 66.4%,8.3% 66.4%,7.1% 65.5%,8.3% 63.5%,10.2% 61.2%,12.5% 60.4%,12.8% 58.3%,12.9% 58.5%,13% 58.7%,13.1% 58.9%,13.4% 59.1%,13.6% 59.2%,13.9% 59.3%,14.3% 59.3%,14.8% 59.3%,15.3% 59.1%,15.9% 58.9%,16.5% 58.5%,17% 58.1%,17.3% 57.7%,17.5% 57.3%,17.6% 56.8%,17.7% 56.4%,17.6% 56%,17.5% 55.6%,17.4% 55.2%,17.3% 55%,18% 51.2%,18.7% 49.4%,19.7% 50.7%,20.6% 51.2%,21.4% 51.2%,21.4% 50.4%,21.9% 50.4%,22.3% 49.4%,22.6% 48.1%,22.3% 46.2%,22.3% 44.3%,24% 43.8%,24.6% 41.9%,26.7% 39.8%,26.7% 38.1%,27.9% 37.3%,27.9% 36.1%,29.8% 35.7%,30.1% 29.8%,31.8% 29.8%,31.8% 28.9%,29% 22.5%,29.3% 20%,27.9% 18.7%,28.3% 17.4%,29.3% 16.1%,30.6% 16.1%,30.6% 16%,30.6% 15.9%,30.6% 15.8%,30.7% 15.7%,30.7% 15.6%,30.8% 15.5%,30.8% 15.3%,30.9% 15.2%,30.9% 15%,31.1% 14.6%,31.3% 14.3%,31.5% 14.1%,31.8% 13.9%,32.1% 13.7%,32.5% 13.5%,32.8% 13.4%,33.1% 13.3%,33.4% 13.2%,33.6% 13.2%,37% 13.4%,39.3% 11.7%,39.2% 11.6%,39.2% 11.5%,39.1% 11.4%,39.1% 11.3%,39% 11.2%,38.9% 11.1%,38.9% 11%,38.8% 10.9%,38.7% 10.8%,38.7% 10.6%,38.7% 10.5%,38.8% 10.3%,38.9% 10.1%,38.9% 9.9%,39% 9.7%,39.1% 9.5%,39.2% 9.4%,39.3% 9.2%,40.4% 8%,44.1% 6.5%,45.6% 5.3%,46.2% 5.3%,46.9% 6.1%,58.8% 7.7%,60.1% 7.7%,61.6% 8.3%,62.4% 8.3%,63.4% 8.3%,64.3% 8.9%,65.2% 8.9%,66.6% 9.6%,67.4% 10.5%,70.3% 11.2%,73.6% 11.2%,74.7% 12.2%,83% 15.6%,83.4% 16.4%,88.6% 19.9%,93.7% 23.4%,93.7% 24.9%,92.6% 25.8%,91% 26.8%,91% 27.9%,91% 29.4%,91.8% 30.3%,91.3% 30.9%,92.1% 32.1%,91.3% 33.6%,91.3% 34.6%,91.4% 34.7%,91.4% 34.9%,91.5% 35.1%,91.7% 35.4%,91.8% 35.7%,92% 36%,92.2% 36.3%,92.3% 36.6%,92.5% 36.9%,92.6% 37.2%,91.8% 38.4%,92.4% 41.3%,92.9% 43%,92.1% 43%,92.4% 45.7%,92.3% 45.7%,92.2% 45.7%,92.1% 45.7%,92% 45.7%,91.9% 45.7%,91.8% 45.7%,91.7% 45.7%,91.5% 45.7%,91.4% 45.7%,91.3% 45.7%,91.3% 45.8%,91.4% 46%,91.5% 46.3%,91.6% 46.6%,91.8% 47%,92% 47.4%,92.2% 47.7%,92.4% 48.1%,92.6% 48.4%,92.9% 49.3%,92.1% 49.9%,92.1% 50.4%,91% 49.9%,90.4% 50.8%,90.4% 51.2%,90.4% 52.5%,91.3% 53.7%,91.4% 54%,91.4% 54.2%,91.4% 54.5%,91.4% 54.8%,91.4% 55.1%,91.4% 55.4%,91.3% 55.6%,91.3% 55.9%,91.2% 56.1%,91% 56.2%,90.8% 56.3%,90.7% 56.4%,90.4% 56.4%,90.2% 56.4%,90% 56.4%,89.8% 56.3%,89.6% 56.3%,89.3% 56.2%,89.2% 56.1%,89% 56%,89% 56.4%,88.1% 56.2%,87.7% 56.8%,87.6% 56.8%,87.5% 56.9%,87.3% 57%,87.1% 57.2%,86.9% 57.3%,86.7% 57.4%,86.4% 57.6%,86.2% 57.7%,85.9% 57.9%,85.6% 58.1%,85.3% 58.3%,85% 58.5%,84.8% 58.8%,84.6% 59.1%,84.5% 59.5%,84.3% 59.8%,84.2% 60.2%,84.1% 60.5%,84.1% 60.8%,84.1% 61.1%,84.4% 63.4%,82.7% 64.1%,81.7% 65.3%,81.7% 68.2%,80% 68.6%,79.2% 69.1%,78.6% 70.6%,78.1% 76.2%,77.9% 76.2%,77.7% 76.3%,77.5% 76.4%,77.3% 76.6%,77.1% 76.8%,76.9% 77%,76.6% 77.3%,76.4% 77.6%,76.3% 77.8%,76.1% 78%,75.8% 80%,75.6% 81.7%,75.3% 81.9%,75.1% 82%,74.9% 82.1%,74.7% 82.1%,74.6% 82.2%,74.4% 82.1%,74.3% 82.1%,74.1% 82.1%,74% 82%,74% 81.9%,73.2% 83.3%,73% 86.2%,72.4% 86.2%,72% 87.3%,70.3% 87.3%,69% 87.8%,63.3% 91.8%,63.3% 92.4%,62.5% 92.1%,62.3% 92.6%,61.3% 92.6%,60.6% 93.3%,60.3% 94.7%,58.9% 92.6%,58.4% 93.3%,57.2% 93.3%,56% 92.6%,52.1% 92.1%,40.4% 90.2%,36% 90.2%,29.3% 88.8%,21.7% 85.1%,18.7% 83.5%,17.9% 83.3%,10.7% 75.7%,10.7% 74.5%,12.3% 73.5%,11.3% 72.3%,11.3% 71.9%,9.9% 69.9%,9.1% 69.7%)}
.nosotros__txt{position:absolute;left:calc(657 * var(--u));top:calc(588 * var(--u));width:calc(711 * var(--u))}
.nosotros h2{font-size:calc(48 * var(--u));font-weight:600;line-height:1.1;color:var(--tinta);letter-spacing:-.01em}
.nosotros__txt>p,.cifras,.nosotros .btn{margin-left:calc(130 * var(--u))}
.nosotros__txt>p{font-size:max(15px,calc(20 * var(--u)));line-height:1.6;color:var(--tinta);margin-top:calc(24 * var(--u))}
.cifras{margin-top:calc(56 * var(--u));margin-bottom:calc(40 * var(--u))}
.cifras__top{display:flex;align-items:center;gap:15px;padding-bottom:calc(38 * var(--u));border-bottom:1px solid #DCDCDC}
.cifras__top strong{font-family:"Inter",sans-serif;font-size:max(28px,calc(40 * var(--u)));font-weight:700;color:var(--rojo);line-height:1;font-variant-numeric:tabular-nums}
.cifras__top>span{font-size:max(15px,calc(20 * var(--u)))}
.cifras__dos{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #DCDCDC}
.cifras__dos>div{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px 14px;padding:calc(30 * var(--u)) 0}
.cifras__dos>div+div{border-left:1px solid #DCDCDC;padding-left:calc(28 * var(--u))}
.cifras__ico{width:42px;height:42px;border-radius:6px;background:#F2F2F2;display:grid;place-items:center}
.cifras__ico svg{width:30px;height:30px;fill:none;stroke:#111;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.cifras__dos b{font-family:"Inter",sans-serif;font-weight:600;font-size:20px;color:var(--tinta)}
.cifras__dos small{grid-column:1 / -1;font-size:16px}

/* ================= LA RUTA DEL CONQUISTADOR ================= */
.ruta{position:relative;background:var(--verde);padding:calc(125 * var(--u)) 0 calc(110 * var(--u));overflow:hidden}
.ruta__ola{position:absolute;top:-1px;left:0;width:100%;height:calc(110 * var(--u));fill:#fff}
.ruta>h2{position:relative;text-align:center;color:var(--blanco);font-size:max(24px,calc(32 * var(--u)));font-weight:700;line-height:1}
.carril--ruta{display:grid;grid-template-columns:repeat(5,calc(264 * var(--u)));gap:calc(20 * var(--u));width:calc(1440 * var(--u));margin:calc(65 * var(--u)) auto 0;padding-left:calc(20 * var(--u));align-items:start}
.etapa{border-radius:25% 0 0 0;padding:calc(15 * var(--u)) calc(15 * var(--u)) calc(15 * var(--u));text-align:center;color:var(--blanco);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.etapa:nth-child(2n){margin-top:calc(100 * var(--u))}
.etapa--rojo{background:var(--rojo)}
.etapa--azul{background:var(--azul)}
.etapa--blanco{background:var(--blanco);color:var(--azul)}
.etapa h3{font-size:max(17px,calc(20 * var(--u)));font-weight:700;line-height:1.2;margin-top:calc(2 * var(--u))}
.etapa p{font-size:max(13px,calc(13 * var(--u)));line-height:1.45;margin:calc(10 * var(--u)) auto calc(14 * var(--u));max-width:220px;min-height:2.9em}
.etapa img{width:100%;aspect-ratio:234/194;object-fit:cover}
@media (hover:hover){.carril--ruta .etapa:hover{transform:translateY(-10px);box-shadow:0 24px 40px -18px rgba(0,0,0,.6)}}
.ruta__frase{position:relative;width:fit-content;max-width:calc(640 * var(--u));margin:calc(65 * var(--u)) auto 0;background:var(--rojo);color:var(--blanco);font-size:max(13px,calc(14 * var(--u)));line-height:1.4;text-align:center;padding:12px 26px;border-radius:999px;box-shadow:0 12px 30px -14px rgba(0,0,0,.7)}

/* ================= PIE ================= */
.pie{background:var(--rojo);color:var(--blanco);padding:calc(72 * var(--u)) 0 calc(73 * var(--u))}
.pie__in{width:calc(1440 * var(--u));margin:0 auto;padding-left:calc(120 * var(--u));display:grid;grid-template-columns:calc(354 * var(--u)) calc(826 * var(--u));gap:calc(20 * var(--u))}
.pie__logo img{width:calc(117 * var(--u));min-width:90px;background:#fff;border-radius:50%;padding:0}
.pie__nav{display:flex;flex-direction:column;margin-top:calc(32 * var(--u))}
.pie__nav a{font-family:"Poppins",sans-serif;font-weight:600;font-size:max(16px,calc(20 * var(--u)));line-height:1;padding:8px 1px;width:100%;transition:color .25s,padding .25s}
.pie__nav a.activo{color:var(--verde);border-bottom:1px solid var(--verde)}
.pie__nav a:hover{color:var(--verde);padding-left:6px}
.pie__copy{font-family:"Poppins",sans-serif;font-weight:600;font-size:12px;line-height:1.2;margin-top:calc(33 * var(--u))}
.pie__contacto h2{font-family:"Poppins",sans-serif;font-weight:400;font-size:max(26px,calc(32 * var(--u)));line-height:1.2;color:#FCFCFC}
.redes{list-style:none;margin:calc(28 * var(--u)) 0 0;padding:0;display:flex;gap:20px}
.redes a{display:grid;place-items:center;width:40px;height:40px;transition:transform .25s}
.redes svg{width:36px;height:36px;fill:#fff}
.redes a:hover{transform:translateY(-4px) scale(1.06)}
.galeria{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:calc(73 * var(--u));max-width:calc(826 * var(--u))}
.galeria a{display:block;overflow:hidden;aspect-ratio:199/149;background:rgba(0,0,0,.15)}
.galeria img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .3s}
.galeria a:hover img{transform:scale(1.08);filter:brightness(1.08)}

/* Botón flotante de WhatsApp */
.wa-flota{position:fixed;right:22px;bottom:22px;z-index:50;width:58px;height:58px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 10px 26px -8px rgba(0,0,0,.45);transition:transform .25s}
.wa-flota svg{width:31px;height:31px;fill:#fff}
.wa-flota::before{content:"";position:absolute;inset:0;border-radius:50%;background:#25D366;z-index:-1;animation:latido 2.4s ease-out infinite}
@keyframes latido{0%{transform:scale(1);opacity:.55}80%,100%{transform:scale(1.6);opacity:0}}
.wa-flota:hover{transform:scale(1.08)}

/* Visor de fotos */
.visor{position:fixed;inset:0;z-index:120;background:rgba(5,12,9,.92);display:grid;place-items:center;padding:60px 70px;opacity:0;transition:opacity .25s}
.visor[hidden]{display:none}
.visor.abierto{opacity:1}
.visor img{max-width:100%;max-height:calc(100vh - 120px);object-fit:contain;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.visor__x{position:absolute;top:16px;right:16px;width:46px;height:46px;border:0;border-radius:50%;background:rgba(255,255,255,.12);cursor:pointer;display:grid;place-items:center}
.visor__nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.12);cursor:pointer;display:grid;place-items:center}
.visor__nav svg{width:24px;height:24px;stroke:#fff;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.visor__nav--ant{left:14px}.visor__nav--sig{right:14px}
.visor__x:hover,.visor__nav:hover{background:rgba(255,255,255,.25)}

/* Animaciones al bajar */
.js .rv{opacity:0;transition:opacity .9s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .9s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.js .rv--arriba{transform:translateY(40px)}
.js .rv--izq{transform:translateX(-60px)}
.js .rv--zoom{transform:scale(.9)}
.js .rv.vis{opacity:1;transform:none}
.js .serv.rv.vis,.js .etapa.rv.vis{transition-delay:0s,0s;transition-duration:.9s,.35s}
.js .serv.rv:not(.vis),.js .etapa.rv:not(.vis){transition-delay:var(--d,0s)}

/* ================= TABLET Y TELÉFONO ================= */
@media (max-width:1180px){
  .menu{display:none}
  .cab__tel{margin-left:auto}
  .hamb{display:flex;margin-left:0}
}
@media (max-width:959px){
  :root{--cab:80px}
  .cab__in{padding:0 20px}
  .cab__logo img{width:84px;margin-left:4px}
  .cab__tel-txt{display:none}
  .cab__tel-ico{width:44px;height:44px;border-radius:8px;background:var(--rojo)}
  .cab__tel-ico svg{width:20px;height:20px}
  .cab__tel{gap:0}
  .hamb{margin-left:10px}

  .hero{height:auto;min-height:max(640px, calc(100svh - var(--cab) + 40px));display:flex;align-items:center}
  .hero__img{object-position:70% center}
  .hero__manos{display:none}
  .hero__txt{position:relative;left:auto;top:auto;width:auto;padding:70px 20px 170px}
  .hero h1{font-size:clamp(30px,calc((100vw - 40px) / 9.1),60px);line-height:1.05}
  .hero p{margin:30px 0 0;width:auto;max-width:520px;font-size:18px}

  .servicios{width:auto;margin-top:-110px}
  .carril{display:flex!important;gap:16px!important;width:auto!important;margin-left:0!important;margin-right:0!important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:12px 20px 26px!important;scroll-padding-inline:20px}
  .carril::-webkit-scrollbar{display:none}
  .serv{flex:0 0 min(82%,340px);scroll-snap-align:start;margin-top:0!important;border-radius:20px;padding:22px 22px 26px;box-shadow:0 0 0 1px rgba(0,0,0,.05),0 10px 26px -10px rgba(0,0,0,.35)}
  .serv h3{font-size:22px;margin:18px 0 8px}
  .serv p{font-size:16px}
  .js .carril .rv{opacity:1;transform:none}
  .puntos{display:flex;justify-content:center;gap:8px;margin-top:2px}
  .puntos button{width:9px;height:9px;padding:0;border:0;border-radius:99px;background:#C9CED8;cursor:pointer;transition:width .3s,background .3s}
  .puntos button.on{width:26px;background:var(--azul)}
  .puntos--claro button{background:rgba(255,255,255,.3)}
  .puntos--claro button.on{background:var(--blanco)}

  .nosotros{height:auto;overflow:hidden;padding:30px 0 70px}
  .nosotros__asesores{position:relative;left:auto;top:auto;width:min(86%,460px);margin:0 auto}
  .nosotros__in{position:relative;width:auto}
  .collage{position:relative;height:112vw;margin-top:-10px}
  .collage__bolsa{left:-22vw;top:0;width:96vw;height:96vw}
  .collage__equipo{left:auto;right:-16vw;top:26vw;width:84vw;height:84vw}
  .nosotros__txt{position:relative;left:auto;top:auto;width:auto;padding:0 20px;max-width:640px;margin:0 auto}
  .nosotros h2{font-size:clamp(28px,8vw,40px)}
  .nosotros__txt>p,.cifras,.nosotros .btn{margin-left:0}
  .nosotros__txt>p{font-size:18px;margin-top:18px}
  .cifras{margin-top:30px;margin-bottom:30px}
  .cifras__top{padding-bottom:22px}
  .cifras__dos>div{padding:22px 0}
  .cifras__dos>div+div{padding-left:18px}
  .cifras__dos small{font-size:15px}
  .nosotros .btn{width:100%;justify-content:center}

  .ruta{padding:84px 0 70px}
  .ruta__ola{height:52px}
  .ruta>h2{font-size:26px;padding:0 20px}
  .carril--ruta{margin-top:30px!important}
  .etapa{flex:0 0 min(76%,300px);scroll-snap-align:start;margin-top:0!important;padding:18px 18px 18px;border-radius:70px 0 0 0}
  .etapa h3{font-size:24px}
  .etapa p{font-size:16px;max-width:none;margin:8px 0 16px}
  .ruta__frase{max-width:calc(100% - 40px);margin-top:34px;border-radius:24px;padding:14px 22px;font-size:15px}

  .pie{padding:56px 0 100px}
  .pie__in{width:auto;padding:0 20px;grid-template-columns:1fr;gap:40px}
  .pie__marca{display:grid;grid-template-columns:auto 1fr;gap:0 26px;align-items:start}
  .pie__logo img{width:110px}
  .pie__nav{margin-top:0}
  .pie__nav a{font-size:17px;padding:9px 1px}
  .pie__copy{grid-column:1 / -1;margin-top:26px}
  .redes{margin-top:18px}
  .galeria{grid-template-columns:repeat(2,1fr);max-width:none;margin-top:28px}
  .wa-flota{right:16px;bottom:16px;width:54px;height:54px}
}
@media (min-width:640px) and (max-width:959px){
  .serv{flex-basis:calc(50% - 28px)}
  .etapa{flex-basis:calc(40% - 10px)}
  .galeria{grid-template-columns:repeat(4,1fr)}
  .hero__txt{padding-left:48px;padding-right:48px}
  .collage{height:600px;max-width:820px;margin:-10px auto 0}
  .collage__bolsa{left:0;top:0;width:520px;height:520px}
  .collage__equipo{left:auto;right:0;top:130px;width:450px;height:450px}
}
@media (max-width:380px){
  .cifras__dos>div{grid-template-columns:1fr}
  .cifras__ico{display:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .rv{opacity:1;transform:none}
  .hero__img{transform:none}
}
