    :root{
      --black:#080808;--red:#c40010;--wa:#25D366;
      --line:#e2e2e0;--soft:#f5f5f3;--max:1240px;
      --gray:#555;--gray-light:#888;--gray-border:#e0e0de;
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{font-family:'Inter',sans-serif;color:var(--black);background:#fff;letter-spacing:-.022em;overflow-x:hidden}
    a{text-decoration:none;color:inherit}
    img{display:block;max-width:100%}

    /* ═══ NAV ═══ */
    .nav{height:68px;position:fixed;inset:0 0 auto 0;z-index:200;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.08);display:flex;align-items:center;justify-content:space-between;padding:0 20px;transition:background .3s,box-shadow .3s}
    .nav.scrolled{background:rgba(255,255,255,.98);box-shadow:0 2px 20px rgba(0,0,0,.08)}
    .brand{display:flex;align-items:center;gap:11px;white-space:nowrap}
    .brand-full{font-size:13px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--black)}
    .nav-links{display:none;gap:26px;font-size:12.5px;font-weight:600;color:#333}
    .nav-links a:hover{color:var(--red)}
    .nav-actions{display:flex;align-items:center;gap:10px}
    .nav-wa-btn{background:var(--black);color:#fff;height:38px;padding:0 18px;border-radius:999px;display:none;align-items:center;font-size:12.5px;font-weight:800;gap:7px;transition:background .2s}
    .nav-wa-btn:hover{background:var(--red)}
    .hamburger{font-size:22px;cursor:pointer;line-height:1;color:#333;background:none;border:0;padding:0;font-family:inherit}

    /* ═══ HERO ═══ */
    .hero{min-height:105vh;padding-top:68px;display:flex;align-items:center;color:#fff;position:relative;overflow:hidden}
    .hero-bg{position:absolute;inset:0;background:url('../img/hero.jpg') center 58%/cover no-repeat;background-image:image-set(url('../img/hero.webp') type('image/webp'),url('../img/hero.jpg') type('image/jpeg'))}
    .hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(8,8,8,.82) 0%,rgba(8,8,8,.45) 60%,rgba(8,8,8,.25) 100%)}
    .hero-content{position:relative;z-index:2;max-width:var(--max);width:100%;margin:0 auto;padding:60px 22px 80px}
    .hero h1{font-size:clamp(42px,7vw,88px);line-height:1.0;font-weight:500;letter-spacing:-.04em;max-width:780px;margin-bottom:22px}
    .hero h1 em{font-style:normal;color:var(--red)}
    .hero-desc{font-size:17px;line-height:1.5;color:rgba(255,255,255,.82);max-width:520px;margin-bottom:38px}
    .hero-btns{display:flex;flex-direction:column;gap:12px;width:min(100%,340px)}

    /* ═══ BUTTONS ═══ */
    .btn{min-height:52px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px;font-weight:800;letter-spacing:-.01em;border:0;cursor:pointer;font-family:'Inter',sans-serif;transition:transform .22s,background .22s,box-shadow .22s}
    .btn:hover{transform:translateY(-2px)}
    .btn-black{background:var(--black);color:#fff;box-shadow:0 6px 20px rgba(8,8,8,.18)}
    .btn-black:hover{background:#1a1a1a;box-shadow:0 10px 30px rgba(8,8,8,.28)}
    .btn-wa{background:var(--wa);color:#fff}
    .btn-wa:hover{background:#20b859}
    .btn-outline-white{border:1.5px solid rgba(255,255,255,.6);color:#fff;background:rgba(255,255,255,.06)}
    .btn-outline-white:hover{background:rgba(255,255,255,.16)}
    .btn-outline-dark{border:1.5px solid var(--black);color:var(--black);background:transparent}
    .btn-outline-dark:hover{background:var(--black);color:#fff}
    /* Redes: iconos neutros sobre negro, sin colores de marca */
    .btn-sm{min-height:44px;font-size:13px;padding:0 22px;border-radius:999px}

    /* WA SVG */
    .wa-ico{width:19px;height:19px;flex-shrink:0}

    /* ═══ LAYOUT ═══ */
    .wrap{max-width:var(--max);margin:0 auto;padding:0 22px}
    .sec{padding:76px 0}
    .sec-label{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-bottom:14px}
    .sec h2{font-size:clamp(30px,4.8vw,58px);line-height:1.04;font-weight:500;letter-spacing:-.06em;max-width:820px}
    .sec-lead{margin-top:14px;max-width:680px;color:var(--gray);font-size:15.5px;line-height:1.58}

    /* ═══ QUICK CARDS ═══ */
    .quick-grid{margin-top:32px;display:grid;gap:10px}
    .qcard{background:var(--soft);border-radius:4px;min-height:96px;display:flex;align-items:center;justify-content:space-between;padding:20px;transition:background .22s,transform .22s;cursor:pointer;border-left:3px solid transparent}
    .qcard:hover{background:#ebebea;transform:translateY(-2px);border-left-color:var(--red)}
    .qcard h3{font-size:15.5px;font-weight:700;letter-spacing:-.03em;margin-bottom:5px}
    .qcard p{font-size:13px;color:var(--gray-light);line-height:1.35}
    .qcard-arrow{font-size:26px;color:var(--gray-light);margin-left:18px;flex-shrink:0}

    /* ═══ SERVICES ═══ */
    .svc-grid{margin-top:36px;display:grid;gap:20px}
    .svc{background:var(--soft);border-radius:4px;overflow:hidden;transition:transform .3s,box-shadow .3s}
    .svc:hover{transform:translateY(-5px);box-shadow:0 20px 55px rgba(8,8,8,.12)}
    .svc-img{height:270px;overflow:hidden}
    .svc-img img{width:100%;height:100%;object-fit:cover;transition:transform .9s}
    .svc:hover .svc-img img{transform:scale(1.05)}
    .svc-body{padding:24px 20px 26px}
    .svc-num{font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--red);margin-bottom:10px;display:block}
    .svc h3{font-size:23px;font-weight:600;letter-spacing:-.05em;line-height:1.08;margin-bottom:10px}
    .svc p{color:var(--gray);font-size:14px;line-height:1.5;margin-bottom:20px}

    /* ═══ CUOTAS ═══ */

    /* Features */

    /* Inversión planes */

    /* ═══ MODAL ═══ */
    .overlay{display:none;position:fixed;inset:0;background:rgba(8,8,8,.6);backdrop-filter:blur(10px);z-index:500;align-items:center;justify-content:center;padding:16px}
    .overlay.show{display:flex}
    .modal{background:#fff;border-radius:20px;width:100%;max-width:530px;max-height:94vh;overflow-y:auto;padding:34px 28px 38px;position:relative;animation:mUp .3s ease}
    @keyframes mUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
    .modal-x{position:absolute;top:18px;right:18px;background:var(--soft);border:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17px;cursor:pointer;color:var(--black);transition:background .2s}
    .modal-x:hover{background:var(--line)}
    .m-tag{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:4px 11px;border-radius:999px;margin-bottom:12px;background:var(--red);color:#fff}
    .m-tag.dark{background:var(--black)}
    .modal h3{font-size:22px;font-weight:700;letter-spacing:-.045em;margin-bottom:4px;color:var(--black)}
    .modal .m-sub{color:var(--gray);font-size:14px;line-height:1.45;margin-bottom:22px}
    .m-amt-box{background:var(--soft);border-radius:10px;padding:14px 18px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line)}
    .m-amt-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-light)}
    .m-amt-val{font-size:24px;font-weight:800;letter-spacing:-.05em;color:var(--black)}
    .frow{margin-bottom:14px}
    .frow label,.flabel{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-light);margin-bottom:7px}
    .finput,.fselect,.ftextarea{width:100%;border:1.5px solid var(--gray-border);border-radius:9px;padding:13px 15px;font-size:14.5px;font-family:'Inter',sans-serif;color:var(--black);outline:none;transition:border-color .2s;background:#fff}
    .finput:focus,.fselect:focus,.ftextarea:focus{border-color:var(--red)}
    .fselect{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23555' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer}
    .ftextarea{resize:vertical;min-height:90px}
    .f2col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
    .serr{color:var(--red);font-size:13px;margin-top:7px;display:none}
    .m-submit{width:100%;min-height:54px;background:var(--black);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:800;font-family:'Inter',sans-serif;cursor:pointer;margin-top:20px;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .22s}
    .m-submit:hover{background:var(--red)}
    .m-submit:disabled{background:var(--gray-light);cursor:not-allowed}
    .m-submit.green{background:var(--wa)}
    .m-submit.green:hover{background:#20b859}
    .m-secure{display:flex;align-items:center;gap:6px;color:var(--gray-light);font-size:11.5px;margin-top:11px;justify-content:center}
    .m-success{display:none;flex-direction:column;align-items:center;text-align:center;padding:20px 0}
    .m-success-ico{font-size:60px;margin-bottom:16px}
    .m-success h3{font-size:23px;letter-spacing:-.04em;margin-bottom:10px;color:var(--black)}
    .m-success p{color:var(--gray);font-size:14.5px;line-height:1.5;margin-bottom:24px;max-width:360px}

    /* ═══ MOBILE NAV MENU ═══ */
    .mobile-menu{
      display:none;position:fixed;inset:0;z-index:199;
      background:rgba(8,8,8,.97);backdrop-filter:blur(20px);
      flex-direction:column;align-items:center;justify-content:center;gap:32px;
    }
    .mobile-menu.open{display:flex}
    .mobile-menu a{color:#fff;font-size:22px;font-weight:700;letter-spacing:-.03em;text-decoration:none;transition:color .2s}
    .mobile-menu a:hover{color:var(--red)}
    .mobile-menu .m-close{position:absolute;top:22px;right:22px;background:none;border:none;color:#fff;font-size:28px;cursor:pointer;line-height:1}
    .mobile-menu .m-wa-btn{margin-top:12px;background:var(--wa);color:#fff;padding:14px 32px;border-radius:999px;font-size:16px;font-weight:800;display:flex;align-items:center;gap:9px}
    .process-grid{display:grid;gap:1px;background:var(--line);margin-top:32px}
    .step{background:#fff;padding:28px 20px}
    .step-num{color:var(--red);font-size:11px;font-weight:800;letter-spacing:.15em;display:block;margin-bottom:14px}
    .step h3{font-size:22px;letter-spacing:-.045em;margin-bottom:10px;color:var(--black)}
    .step p{color:var(--gray);line-height:1.5;font-size:14px}

    /* ═══ FINAL CTA ═══ */
    .cta-section{min-height:72vh;display:flex;align-items:center;background:linear-gradient(135deg,rgba(8,8,8,.85) 0%,rgba(8,8,8,.5) 100%),url('https://images.unsplash.com/photo-1626668893632-6f3a4466d22f?auto=format&fit=crop&w=1600&q=90') center 60%/cover no-repeat;color:#fff;padding:80px 22px}
    .cta-inner{max-width:var(--max);margin:0 auto;width:100%}
    .cta-section h2{font-size:clamp(36px,6.5vw,76px);line-height:.97;font-weight:500;letter-spacing:-.07em;max-width:720px;margin-bottom:18px}
    .cta-section p{color:rgba(255,255,255,.75);font-size:16px;line-height:1.5;max-width:540px;margin-bottom:36px}
    .cta-btns{display:flex;flex-direction:column;gap:16px;width:min(100%,400px);align-items:flex-start}
    .cta-social-icon{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;color:#fff;transition:background .2s,border-color .2s,transform .2s}
    .cta-social-icon:hover{background:var(--red);border-color:var(--red);transform:scale(1.08)}

    /* ═══ FOOTER ═══ */
    footer{background:var(--black);color:var(--gray-light);font-size:13px;line-height:1.8;padding:40px 22px}
    footer strong{display:block;color:#fff;font-size:14px;margin-bottom:6px}
    .footer-social{display:flex;flex-direction:column;gap:6px}
    .footer-social a{display:flex;align-items:center;gap:10px;transition:color .2s}
    .footer-social svg{flex-shrink:0;color:#fff;transition:color .2s}
    .footer-social span{color:#fff;border-bottom:1px solid rgba(255,255,255,.3);transition:color .2s,border-color .2s}
    .footer-social a:hover svg,.footer-social a:hover span{color:var(--red);border-color:var(--red)}
    .footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:10px}
    .footer-brand strong{margin-bottom:0}
    .footer-logo{display:block;width:56px;height:56px;flex-shrink:0}

    /* ═══ FLOATING WA ═══ */
    .float-wa{position:fixed;right:18px;bottom:18px;z-index:300;width:58px;height:58px;background:var(--wa);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(8,8,8,.25);transition:transform .22s}
    .float-wa:hover{transform:scale(1.08)}

    /* ═══ REVEAL ═══ */
    .rv{opacity:0;transform:translateY(30px);transition:opacity .8s,transform .8s}
    .rv.ok{opacity:1;transform:translateY(0)}
    .fd{opacity:0;transition:opacity 1s}
    .fd.ok{opacity:1}
    @media (prefers-reduced-motion:reduce){
      .rv,.fd{opacity:1;transform:none;transition:none}
      *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
      html{scroll-behavior:auto}
    }

    /* ═══ RESPONSIVE MÓVIL (default) ═══ */
    /* Móvil: hero texto más controlado */
    .hero-content{position:relative;z-index:2;max-width:var(--max);width:100%;margin:0 auto;padding:52px 22px 72px}
    .hero-desc{font-size:15px;line-height:1.55;color:rgba(255,255,255,.82);max-width:520px;margin-bottom:32px}
    .hero-btns{display:flex;flex-direction:column;gap:12px;width:100%}
    .hero-btns .btn{width:100%;min-width:unset}

    /* Secciones en móvil */
    .sec{padding:52px 0}
    .sec h2{font-size:clamp(26px,7vw,58px);line-height:1.08;letter-spacing:-.05em}
    .sec-lead{font-size:14.5px}

    /* Servicios móvil */
    .svc-img{height:220px}

    /* Quiénes somos móvil: imagen arriba texto abajo */
    .qs-grid{grid-template-columns:1fr}
    .qs-img-wrap{height:260px !important;min-height:unset !important;aspect-ratio:unset !important;max-height:unset !important}

    /* Proceso móvil */
    .step{padding:22px 18px}

    /* CTA móvil */
    .cta-section{padding:64px 22px 56px;min-height:auto}
    .cta-btns{width:100%;align-items:stretch}
    .cta-btns .btn{width:100%}
    .cta-social-icon{flex-shrink:0}

    /* Footer móvil */
    footer{padding:36px 22px;display:flex;flex-direction:column;gap:16px}

    /* Cuotas móvil */

    /* Modal móvil */
    .modal{padding:26px 20px 32px;border-radius:16px}
    .f2col{grid-template-columns:1fr}

    /* ═══ TABLET (600px+) ═══ */
    @media(min-width:600px){
      .hero h1{font-size:clamp(46px,8vw,88px);letter-spacing:-.045em}
      .hero-btns{flex-direction:row;width:auto}
      .hero-btns .btn{width:auto;min-width:160px}
      .quick-grid{grid-template-columns:repeat(3,1fr)}
      .qcard{min-height:120px;align-items:flex-start;flex-direction:column;gap:10px}
      .qcard-arrow{display:none}
      .f2col{grid-template-columns:1fr 1fr}
    }

    /* ═══ DESKTOP (820px+) ═══ */
    @media(min-width:820px){
      .nav{padding:0 44px;height:74px}
      .nav-links{display:flex}
      .nav-wa-btn{display:flex}
      .hamburger{display:none}
      .hero-content{padding:80px 44px 100px}
      .hero h1{font-size:clamp(52px,7vw,88px);letter-spacing:-.045em;line-height:.97}
      .hero-desc{font-size:17px}
      .hero-btns{flex-direction:row;width:auto}
      .hero-btns .btn{width:auto;min-width:180px}
      .btn{min-width:180px}
      .wrap{padding:0 44px}
      .sec{padding:96px 0}
      .sec h2{font-size:clamp(30px,4.8vw,58px);letter-spacing:-.06em}
      .quick-grid{grid-template-columns:repeat(3,1fr)}
      .qcard{min-height:140px}
      .svc-grid{grid-template-columns:repeat(3,1fr)}
      .svc:first-child{grid-column:span 2}
      .svc-img{height:320px}
      .process-grid{grid-template-columns:repeat(3,1fr)}
      .step{padding:40px 34px;min-height:240px}
      .qs-grid{grid-template-columns:1fr 1fr}
      .qs-img-wrap{height:520px !important;min-height:unset !important;aspect-ratio:unset !important;max-height:unset !important}
      .cta-section{padding:100px 44px;min-height:72vh}
      .cta-btns{flex-direction:row;align-items:center;width:auto}
      .cta-btns .btn{width:auto}
      footer{padding:48px 44px;display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:40px}
      .modal{padding:34px 28px 38px}
      .f2col{grid-template-columns:1fr 1fr}
    }

    /* ═══ DESKTOP ANCHO (1100px+) ═══ */
    @media(min-width:1100px){
      .hero h1{font-size:clamp(64px,6vw,88px)}
      .svc-img{height:350px}
    }
