
    :root{
      --bg:#f3f5f6;
      --white:#ffffff;
      --navy:#072b52;
      --navy-2:#082849;
      --navy-3:#0d3158;
      --teal:#11c7b1;
      --teal-2:#13d0bf;
      --text:#11345a;
      --muted:#536983;
      --muted-2:#7e8ea2;
      --line:#dfe5ea;
      --line-2:#e8edf1;
      --card:#ffffff;
      --hero1:#334c68;
      --hero2:#5f7891;
      --heroGlow:#b8fff2;
      --radius:26px;
      --radius-lg:32px;
      --container:1240px;
      --shadow:0 8px 22px rgba(7,43,82,.06);
    }

    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{
      font-family: Inter, Arial, Helvetica, sans-serif;
      background:var(--bg);
      color:var(--text);
      overflow-x:hidden;
    }
    a{text-decoration:none;color:inherit}
    img{display:block;max-width:100%}
    .container{width:min(calc(100% - 64px), var(--container));margin:0 auto}

    /* HEADER */
    .site-header{
      position:sticky;
      top:0;
      z-index:1000;
      background:#fff;
      border-bottom:1px solid rgba(17,52,90,.08);
    }
    .nav{
      height:80px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
    }
    .brand{
      display:flex;
      align-items:center;
      gap:12px;
      font-weight:800;
      color:#0f2f52;
      font-size:16px;
    }
    .brand-mark{
      width:32px;height:32px;border-radius:9px;
      background:linear-gradient(135deg,#09556c 0%, #11c7b1 100%);
      color:#fff;
      display:grid;place-items:center;
      font-size:14px;font-weight:900;
      box-shadow:0 8px 18px rgba(17,199,177,.18);
    }
    .menu{
      display:flex;
      align-items:center;
      gap:38px;
      font-size:14px;
      font-weight:600;
      color:#16395e;
    }
    .menu a:hover{color:var(--teal)}
    .btn-demo{
      background:var(--teal);
      color:#fff;
      padding:17px 30px;
      border-radius:999px;
      font-size:15px;
      font-weight:800;
      line-height:1;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-width:145px;
    }
    .btn-demo:hover{filter:brightness(.97)}
    .mobile-toggle{
      display:none;
      width:46px;height:46px;border:none;border-radius:12px;
      background:#f3f6f8;color:var(--navy);font-size:20px;cursor:pointer;
    }

    /* GENERAL */
    .section{
      padding:64px 0;
      position:relative;
    }
    .section-light{
      background:var(--bg);
      border-top:1px solid rgba(17,52,90,.04);
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      background:rgba(17,199,177,.14);
      color:#07bfae;
      border-radius:999px;
      padding:8px 14px;
      font-weight:800;
      font-size:12px;
      text-transform:uppercase;
      letter-spacing:.12em;
      line-height:1;
    }
    .eyebrow.dark{
      background:rgba(17,199,177,.14);
      color:#0dd0be;
      border:1px solid rgba(17,199,177,.2);
    }
    .section-title{
      font-size:64px;
      line-height:.95;
      font-weight:900;
      letter-spacing:-.04em;
      color:#072b52;
    }
    .section-title-lg{
      font-size:78px;
      line-height:.92;
      font-weight:900;
      letter-spacing:-.05em;
      color:#fff;
    }
    .section-title-lg .accent{
      color:var(--teal);
    }
    .section-sub{
      font-size:17px;
      color:#536983;
      line-height:1.6;
    }
    .two-col-head{
      display:grid;
      grid-template-columns:1.2fr .8fr;
      gap:60px;
      align-items:start;
      margin-bottom:38px;
    }

    /* HERO */
    .hero{
      min-height: 868px;
      position: relative;
      overflow: hidden;
      background:
        linear-gradient(180deg, rgba(51,76,104,.88) 0%, rgba(98,122,146,.82) 65%, rgba(141,161,179,.78) 100%),
        radial-gradient(circle at 82% 78%, rgba(184,255,242,.35) 0%, rgba(184,255,242,.12) 18%, rgba(184,255,242,0) 42%),
        url("img/hero-devices.jpg");
      background-repeat: no-repeat, no-repeat, no-repeat;
      background-position: center, 82% 78%, center bottom;
      background-size: cover, cover, 100%;
    }
    .hero::after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg, rgba(12,42,70,.10) 0%, rgba(10,31,50,.08) 45%, rgba(255,255,255,.02) 100%);
      pointer-events:none;
    }
    .hero-inner{
      position:relative;
      z-index:2;
      padding-top:66px;
      padding-bottom:70px;
      display:flex;
      flex-direction:column;
      align-items:center;
      text-align:center;
    }
    .hero-badge{margin-top:78px;margin-bottom:34px}
    .hero h1{
      max-width:1050px;
      margin:0 auto 26px;
    }
    .hero p{
      max-width:760px;
      color:rgba(255,255,255,.8);
      font-size:21px;
      line-height:1.35;
      margin-bottom:38px;
    }
    .hero-actions{
      display:flex;
      gap:16px;
      margin-bottom:68px;
      flex-wrap:wrap;
      justify-content:center;
    }
    .btn-primary{
      background:var(--teal);
      color:#fff;
      padding:20px 34px;
      border-radius:999px;
      font-weight:800;
      font-size:17px;
      min-width:220px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
    }
    .btn-outline{
      color:#fff;
      border:2px solid rgba(255,255,255,.38);
      padding:18px 34px;
      border-radius:999px;
      font-weight:800;
      font-size:17px;
      min-width:145px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      backdrop-filter:blur(4px);
    }
    .hero-devices{
      position: relative;
      width: 100%;
      max-width: 1100px;
      height: 360px;
      margin: 0 auto 28px;
      opacity: .26;
      background: url("img/668717dd336e9292a1cdc5d1c57a09e7.jpg") center bottom / contain no-repeat;
      filter: brightness(1.08) contrast(.92);
      pointer-events: none;
    }
    
    .device{
      position:absolute;
      background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.06));
      border:1px solid rgba(255,255,255,.2);
      box-shadow:0 25px 50px rgba(0,0,0,.06);
    }
    .device.left{
      width:170px;height:130px;left:110px;top:60px;
      border-radius:8px;
    }
    .device.left::before{
      content:"";
      position:absolute;left:22px;top:18px;width:74px;height:74px;border-radius:50%;
      background:rgba(20,199,177,.22);
      box-shadow:46px 12px 0 -14px rgba(20,199,177,.18), 25px 38px 0 -14px rgba(20,199,177,.14);
    }
    .device.center{
      width:240px;height:170px;left:50%;top:14px;transform:translateX(-50%);
      border-radius:12px;
    }
    .device.center::before{
      content:"";
      position:absolute;left:40px;right:40px;bottom:38px;height:72px;
      background:linear-gradient(180deg, rgba(20,199,177,.1), rgba(20,199,177,.24));
      clip-path:polygon(0 100%, 0 65%, 10% 60%, 17% 52%, 28% 55%, 36% 38%, 48% 42%, 54% 28%, 62% 40%, 74% 18%, 84% 20%, 100% 0, 100% 100%);
    }
    .device.right{
      width:175px;height:120px;right:120px;top:12px;border-radius:8px;
    }
    .device.right::before{
      content:"";
      position:absolute;inset:18px;
      background:
        linear-gradient(180deg, transparent 0, transparent 62%, rgba(20,199,177,.16) 62%, rgba(20,199,177,.16) 64%, transparent 64%),
        linear-gradient(90deg, transparent 0, transparent 72%, rgba(20,199,177,.16) 72%, rgba(20,199,177,.16) 74%, transparent 74%);
    }
    .device-stand{
      position:absolute;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.14)
    }
    .stand-left-1{width:12px;height:94px;left:190px;top:190px;border-radius:8px}
    .stand-left-2{width:82px;height:12px;left:155px;top:284px;border-radius:12px}
    .stand-center-1{width:54px;height:115px;left:50%;top:160px;transform:translateX(-50%);border-radius:10px}
    .stand-center-2{width:140px;height:20px;left:50%;top:265px;transform:translateX(-50%);border-radius:14px}
    .stand-right-1{width:16px;height:118px;right:190px;top:132px;border-radius:8px}
    .stand-right-2{width:92px;height:120px;right:145px;top:210px;border-radius:16px}
    .hero-cards{
      width:100%;
      display:flex;
      justify-content:center;
      gap:16px;
      flex-wrap:wrap;
      margin-top:18px;
    }
    .hero-mini{
      width:210px;
      min-height:126px;
      background:rgba(255,255,255,.14);
      border:1px solid rgba(255,255,255,.16);
      border-radius:18px;
      backdrop-filter:blur(10px);
      color:#fff;
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      text-align:center;
      padding:18px;
    }
    .hero-mini strong{
      display:block;
      font-size:28px;
      font-weight:900;
      margin-bottom:8px;
      letter-spacing:-.04em;
    }
    .hero-mini span{
      color:rgba(255,255,255,.76);
      font-weight:600;
      line-height:1.2;
      font-size:14px;
    }
    .hero-arrow{
      margin-top:52px;
      color:rgba(255,255,255,.54);
      font-size:28px;
      line-height:1;
    }

    /* SERVICIOS */
    .services-grid{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:24px;
      margin-top:26px;
    }
    .service-card{
      border:1px solid var(--line);
      border-radius:22px;
      background:#fff;
      overflow:hidden;
    }
    .service-card .image{
      height:190px;
      
      position:relative;
    }

    .image-service-1 {
      background-image: url('img/14ca45252716cbfebe921ec5be51c9bc.jpg');
      background-size: cover;
      background-position: center;
      min-height: 250px; /* Ajusta la altura según necesites */
      width: 100%;
      position: relative; /* Para que el badge-over-image se posicione bien */
    }

    .service-card .image.right{
      height:190px;
      
      position:relative;
    }
    
    .image.right {
        background-image: url('img/9ef99768f958436c271b83a00df17524.jpg'); /* Pon aquí el nombre de tu archivo */
        background-size: cover;
      background-position: center;
      min-height: 250px; /* Ajusta la altura según necesites */
      width: 100%;
      position: relative; /* Para que el badge-over-image se posicione bien */
    }
    
    .service-card .image.right::before{
      left:auto;right:46px;top:24px;width:175px;height:105px;border-radius:8px;background:rgba(255,255,255,.44);transform:none;
    }
    .service-card .image.right::after{
      left:18px;bottom:0;width:140px;height:175px;border-radius:24px 24px 0 0;background:rgba(255,255,255,.12)
    }
    .service-body{
      padding:24px 24px 22px;
    }
    .badge-chip{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 8px 14px;
      border-radius: 999px;
      background: #12d6bf;
      color: #fff;
      font-size: 13px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .4px;
    }

    .badge-over-image {
      position: absolute;
      top: 20px;    /* Margen desde el borde superior */
      left: 20px;   /* Margen desde el borde izquierdo */
      z-index: 10;  /* Asegura que siempre esté por encima de la imagen */
    }
    .icon-box{
      width:40px;height:40px;border-radius:12px;background:#072b52;color:#fff;
      display:grid;place-items:center;font-size:18px;font-weight:900;margin-bottom:18px;
    }
    .service-body h3{
      font-size:23px;
      line-height:1.1;
      color:#072b52;
      font-weight:900;
      letter-spacing:-.03em;
      margin-bottom:14px;
    }
    .service-body p{
      color:#4c627b;
      font-size:16px;
      line-height:1.55;
      margin-bottom:22px;
    }
    .service-link{
      color:#072b52;
      font-weight:800;
      font-size:15px;
    }
    .service-dark{
      background:#072b52;
      color:#fff;
      padding:24px;
      border-radius:22px;
      border:1px solid rgba(7,43,82,.1);
      min-height:472px;
    }
    .service-dark .badge-chip{
      background:#11c7b1;
      color:#072b52;
      margin-bottom:28px;
    }
    .service-dark .icon-box{
      background:#11c7b1;
      color:#fff;
    }
    .service-dark h3{
      color:#fff;
      font-size:23px;
      line-height:1.15;
      font-weight:900;
      margin-bottom:16px;
    }
    .service-dark p{
      color:rgba(255,255,255,.82);
      font-size:16px;
      line-height:1.55;
      margin-bottom:98px;
    }
    .ticks{
      display:grid;
      gap:16px;
    }
    .ticks li{
      list-style:none;
      color:#11e0c2;
      font-size:16px;
      font-weight:700;
      display:flex;
      gap:12px;
      align-items:center;
    }
    .ticks li::before{
      content:"✓";
      font-weight:900;
      font-size:18px;
      line-height:1;
    }

    /* INNOVACION */
    .innovation-grid{
      display:grid;
      grid-template-columns:.95fr 1.05fr;
      gap:60px;
      align-items:center;
    }
    .innovation-copy h2{
      font-size:64px;
      line-height:.95;
      font-weight:900;
      letter-spacing:-.05em;
      color:#072b52;
      margin:18px 0 26px;
      font-style:italic;
    }
    .innovation-copy p{
      max-width:540px;
      font-size:18px;
      line-height:1.55;
      color:#48607b;
      margin-bottom:40px;
    }
    .innovation-features{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:18px 28px;
      max-width:560px;
    }
    .inf-item{
      display:grid;
      grid-template-columns:40px 1fr;
      gap:14px;
      align-items:start;
    }
    .inf-icon{
      width:40px;height:40px;border-radius:12px;background:#eef1f2;display:grid;place-items:center;color:#11c7b1;font-size:18px;font-weight:900;
    }
    .inf-text strong{
      display:block;
      color:#072b52;
      font-size:28px;
      line-height:1;
      font-weight:900;
      margin-bottom:6px;
      letter-spacing:-.03em;
    }
    .inf-text span{
      color:#48607b;
      line-height:1.2;
      font-size:15px;
    }
    .innovation-visual{
      position:relative;
      min-height:560px;
    }
    .innovation-image{
      background-image: 
          url('img/46c56691fddb4f3d156e67cb2717e7bb.jpg'); /* Reemplaza con tu archivo */
        background-size: cover;
        background-position: center;
        width: 100%;
        height: 100%; /* Asegúrate de que el contenedor padre tenga altura */
        min-height: 400px; /* Altura mínima recomendada para esta sección */
        border-radius: var(--radius-lg);
        position: relative;

    }
    .innovation-image::before{
      content:"";
      position:absolute;inset:0;
      
    }
    .iso-box{
      position:absolute;
      right:-16px;top:0;
      width:74px;height:80px;
      background:#072b52;
      color:#11d4bf;
      border-radius:16px;
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      font-weight:900;
      box-shadow:var(--shadow);
    }
    .iso-box small{color:#fff;font-size:12px;font-weight:700;margin-top:2px}
    .mini-stat{
      position:absolute;
      left:0;
      bottom:18px;
      width:220px;
      background:#fff;
      border:1px solid var(--line);
      border-radius:18px;
      padding:20px;
      box-shadow:var(--shadow);
    }
    .mini-stat .top{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:18px;
      font-weight:800;
      color:#072b52;
    }
    .mini-stat .top .sicon{
      width:28px;height:28px;border-radius:9px;background:rgba(17,199,177,.16);display:grid;place-items:center;color:#11c7b1;font-size:14px;
    }
    .mini-stat .big{
      font-size:24px;
      font-weight:900;
      color:#072b52;
      margin-bottom:6px;
    }
    .mini-stat p{
      font-size:14px;
      color:#536983;
      line-height:1.35;
      margin-bottom:14px;
    }
    .bar{
      height:5px;border-radius:999px;background:#e5e9ee;overflow:hidden
    }
    .bar span{
      display:block;height:100%;width:60%;background:#18c5af;border-radius:999px
    }

    /* INTEROPERABILIDAD */
    .interop-head{
      text-align:center;
      max-width:760px;
      margin:0 auto 26px;
    }
    .interop-head .eyebrow{margin-bottom:18px}
    .interop-head h2{
      font-size:50px;
      line-height:1;
      font-weight:900;
      color:#072b52;
      letter-spacing:-.04em;
      margin-bottom:18px;
    }
    .interop-head p{
      font-size:17px;
      color:#536983;
      line-height:1.55;
    }
    .orbit-wrap{
      position:relative;
      height:560px;
      margin-top:24px;
    }
    .hub-outer{
      position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
      width:306px;height:306px;border-radius:50%;
      border:1px dashed rgba(17,199,177,.45);
    }
    .hub-middle{
      position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
      width:180px;height:180px;border-radius:50%;
      border:1px solid rgba(17,52,90,.12);
    }
    .hub-core{
      position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
      width:98px;height:98px;border-radius:50%;
      background:linear-gradient(135deg,#063657 0%, #10c6b1 100%);
      color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;
      box-shadow:0 15px 35px rgba(7,43,82,.12);
    }
    .hub-core strong{font-size:18px;font-weight:900;line-height:1}
    .hub-core span{font-size:12px;font-weight:700;opacity:.9;margin-top:4px}
    .orbit-item{
      position:absolute;
      width:180px;
      text-align:center;
      color:#072b52;
    }
    .orbit-item .circle{
      width:58px;height:58px;border-radius:50%;
      border:1px solid rgba(17,199,177,.5);
      background:rgba(255,255,255,.45);
      margin:0 auto 12px;
      display:grid;place-items:center;
      font-size:20px;
      color:#072b52;
    }
    .orbit-item strong{
      display:block;
      font-size:22px;
      font-weight:900;
      letter-spacing:-.03em;
      margin-bottom:4px;
    }
    .orbit-item span{
      display:block;
      font-size:12px;
      line-height:1.35;
      color:#536983;
    }
    .orbit-top{left:50%;top:0;transform:translateX(-50%)}
    .orbit-right-top{right:80px;top:140px}
    .orbit-right-bottom{right:80px;bottom:110px}
    .orbit-bottom{left:50%;bottom:0;transform:translateX(-50%)}
    .orbit-left-bottom{left:80px;bottom:110px}
    .orbit-left-top{left:80px;top:140px}
    .interop-divider{
      height:1px;background:rgba(17,52,90,.08);margin-top:34px;margin-bottom:34px;
    }
    .supported{
      text-align:center;
    }
    .supported h4{
      color:#50657e;
      font-size:14px;
      text-transform:uppercase;
      letter-spacing:.18em;
      margin-bottom:24px;
      font-weight:800;
    }
    .chips{
      display:flex;
      gap:14px;
      flex-wrap:wrap;
      justify-content:center;
    }
    .chip{
      background:#fff;
      border:1px solid var(--line);
      color:#072b52;
      border-radius:999px;
      padding:12px 18px;
      font-weight:800;
      font-size:14px;
      min-width:108px;
      display:inline-flex;
      justify-content:center;
      align-items:center;
      gap:8px;
    }
    .chip::before{
      content:"◉";
      color:#11c7b1;
      font-size:10px;
    }

    /* PROYECTOS IA */
    .projects-grid{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:22px;
      margin-top:18px;
    }
    .project-card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:20px;
      padding:22px 22px 24px;
      min-height:250px;
    }
    .project-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      margin-bottom:18px;
    }
    .project-icon{
      width:36px;height:36px;border-radius:12px;display:grid;place-items:center;
      color:#fff;font-weight:900;font-size:16px;
    }
    .project-card:nth-child(1) .project-icon{background:#0a2c52}
    .project-card:nth-child(2) .project-icon{background:#18c8b4}
    .project-card:nth-child(3) .project-icon{background:#f04b43}
    .project-card:nth-child(4) .project-icon{background:#7448cc}
    .project-card:nth-child(5) .project-icon{background:#d9a227}
    .project-card:nth-child(6) .project-icon{background:#14c6b0}
    .project-tag{
      font-size:12px;
      border-radius:999px;
      padding:6px 12px;
      background:#f2f4f7;
      color:#516781;
      font-weight:800;
    }
    .project-card:nth-child(1) .project-tag{background:#eef2f7;color:#0a2c52}
    .project-card:nth-child(2) .project-tag{background:#edf9f6;color:#14bca8}
    .project-card:nth-child(3) .project-tag{background:#fff1f0;color:#f04b43}
    .project-card:nth-child(4) .project-tag{background:#f3effc;color:#7448cc}
    .project-card:nth-child(5) .project-tag{background:#f8f1df;color:#bf8610}
    .project-card:nth-child(6) .project-tag{background:#eafaf5;color:#14c6b0}
    .project-card h3{
      font-size:20px;
      color:#072b52;
      font-weight:900;
      letter-spacing:-.03em;
      margin-bottom:6px;
    }
    .project-org{
      color:#11c7b1;
      font-size:14px;
      margin-bottom:14px;
    }
    .project-card p{
      color:#4f647c;
      line-height:1.6;
      font-size:16px;
      font-style:italic;
    }

    /* CONTACTO */
    .contact-top{
      text-align:center;
      max-width:820px;
      margin:0 auto 46px;
    }
    .contact-top .eyebrow{margin-bottom:18px}
    .contact-top h2{
      font-size:50px;
      line-height:1;
      letter-spacing:-.04em;
      font-weight:900;
      color:#072b52;
      margin-bottom:16px;
    }
    .contact-top p{
      font-size:17px;
      color:#536983;
      line-height:1.55;
    }
    .contact-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:44px;
      align-items:start;
    }
    .contact-visual{
      display:flex;
      flex-direction:column;
      gap:24px;
    }
    .contact-image{
      height:202px;
      border-radius:18px;
      background-image: url('img/766dc991ccb1ea558e28bbe63947f2cc.jpg'); /* Tu imagen aquí */
      background-size: cover;
      background-position: center;
      position:relative;
      overflow:hidden;
    }
    .contact-image::before{
      
    }
    .contact-cards{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:18px 16px;
    }
    .c-card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:14px;
      padding:16px 16px;
      display:grid;
      grid-template-columns:32px 1fr;
      gap:12px;
      align-items:start;
    }
    .c-icon{
      width:32px;height:32px;border-radius:10px;background:#f1f3f5;color:#11c7b1;
      display:grid;place-items:center;font-size:14px;font-weight:900;
    }
    .c-card strong{
      display:block;
      color:#072b52;
      font-size:14px;
      font-weight:800;
      margin-bottom:4px;
    }
    .c-card span{
      color:#50657d;
      line-height:1.35;
      font-size:14px;
    }
    .contact-form-wrap{
      background:#fff;
      border:1px solid var(--line);
      border-radius:20px;
      padding:28px;
    }
    form{
      display:grid;
      gap:16px;
    }
    .row-2{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:14px;
    }
    .field label{
      display:block;
      font-size:14px;
      color:#072b52;
      font-weight:800;
      margin-bottom:8px;
    }
    .field label small{
      color:#95a2b2;
      font-weight:600;
    }
    input,select,textarea{
      width:100%;
      border:1px solid #d7dee5;
      border-radius:10px;
      background:#fff;
      padding:15px 14px;
      font-size:16px;
      color:#244766;
      outline:none;
    }
    textarea{
      min-height:95px;
      resize:vertical;
    }
    input::placeholder,textarea::placeholder{color:#9aa7b7}
    input:focus,select:focus,textarea:focus{
      border-color:#9edfd7;
      box-shadow:0 0 0 4px rgba(17,199,177,.08);
    }
    .submit{
      height:56px;
      border:none;
      border-radius:999px;
      background:#072b52;
      color:#fff;
      font-weight:900;
      font-size:18px;
      cursor:pointer;
      margin-top:4px;
    }

    /* CTA */
    .cta{
      background:#072b52;
      color:#fff;
      text-align:center;
      padding:68px 0 74px;
    }
    .cta h2{
      font-size:58px;
      line-height:.95;
      letter-spacing:-.04em;
      font-weight:900;
      margin-bottom:18px;
    }
    .cta p{
      max-width:580px;
      margin:0 auto 30px;
      color:rgba(255,255,255,.76);
      font-size:18px;
      line-height:1.55;
    }
    .cta .btn-primary{
      min-width:282px;
      font-size:16px;
      gap:10px;
    }

    /* FOOTER */
    .footer{
      background:#072b52;
      color:#fff;
      padding:54px 0 34px;
      border-top:1px solid rgba(255,255,255,.06);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.25fr .6fr .6fr .6fr;
      gap:34px;
      align-items:start;
    }
    .footer-brand{
      max-width:380px;
    }
    .footer-brand .brand{color:#fff;font-size:18px;margin-bottom:18px}
    .footer-brand p{
      color:rgba(255,255,255,.7);
      font-size:16px;
      line-height:1.5;
      margin-bottom:24px;
    }
    .news-title{
      font-size:13px;
      color:#fff;
      letter-spacing:.12em;
      text-transform:uppercase;
      font-weight:900;
      margin-bottom:14px;
    }
    .newsletter{
      display:flex;
      gap:8px;
      align-items:center;
      flex-wrap:wrap;
    }
    .newsletter input{
      width:300px;
      height:38px;
      background:rgba(255,255,255,.1);
      border:1px solid rgba(255,255,255,.18);
      color:#fff;
      border-radius:999px;
      padding:0 16px;
      font-size:15px;
    }
    .newsletter input::placeholder{color:rgba(255,255,255,.45)}
    .newsletter button{
      height:38px;
      padding:0 18px;
      border:none;
      border-radius:999px;
      background:var(--teal);
      color:#fff;
      font-weight:800;
      font-size:15px;
      cursor:pointer;
    }
    .footer-col h4{
      font-size:14px;
      letter-spacing:.12em;
      text-transform:uppercase;
      margin-bottom:18px;
      color:#fff;
      font-weight:900;
    }
    .footer-links{
      display:grid;
      gap:16px;
    }
    .footer-links a{
      color:rgba(255,255,255,.66);
      font-size:16px;
    }
    .footer-divider{
      height:1px;
      background:rgba(255,255,255,.12);
      margin:40px 0 28px;
    }
    .footer-bottom{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:16px;
      flex-wrap:wrap;
      color:rgba(255,255,255,.48);
      font-size:15px;
    }
    .socials{
      display:flex;
      gap:10px;
    }
    .social{
      width:30px;height:30px;border-radius:50%;
      background:rgba(255,255,255,.11);
      display:grid;place-items:center;
      color:rgba(255,255,255,.68);
      font-size:13px;
      font-weight:800;
    }

    /* REVEAL */
    .reveal{
      opacity:0;
      transform:translateY(18px);
      transition:all .55s ease;
    }
    .reveal.show{
      opacity:1;
      transform:none;
    }


    @media (max-width: 1180px){
      .section-title-lg{font-size:64px}
      .two-col-head{grid-template-columns:1fr}
      .innovation-grid,
      .contact-grid,
      .footer-grid{
        grid-template-columns:1fr;
      }
      .services-grid,
      .projects-grid{
        grid-template-columns:1fr 1fr;
      }
      .innovation-visual{min-height:520px}
      .innovation-image{

        background-image: 
          url('img/766dc991ccb1ea558e28bbe63947f2cc.jpg'); /* Reemplaza con tu archivo */
        background-size: cover;
        background-position: center;
        width: 100%;
        height: 100%; /* Asegúrate de que el contenedor padre tenga altura */
        min-height: 400px; /* Altura mínima recomendada para esta sección */
        border-radius: var(--radius-lg);
        position: relative;

      }
      .iso-box{right:0}
      .mini-stat{left:20px}
    }

    @media (max-width: 900px){
      .menu{display:none}
      .mobile-toggle{display:block}
      .menu.mobile-open{
        display:flex;
        position:absolute;
        left:16px;right:16px;top:80px;
        background:#fff;
        border:1px solid var(--line);
        border-radius:18px;
        box-shadow:var(--shadow);
        padding:18px;
        flex-direction:column;
        gap:16px;
        align-items:flex-start;
      }
      .hero{min-height:auto}
      .hero-badge{margin-top:40px}
      .section-title-lg{font-size:52px}
      .hero p{font-size:18px}
      .hero-devices{height:180px}
      .device.left{left:20px;top:58px;transform:scale(.72);transform-origin:left top}
      .device.center{top:16px;transform:translateX(-50%) scale(.82)}
      .device.right{right:20px;top:10px;transform:scale(.72);transform-origin:right top}
      .stand-left-1,.stand-left-2,.stand-right-1,.stand-right-2,.stand-center-1,.stand-center-2{display:none}
      .services-grid,
      .projects-grid,
      .contact-cards,
      .row-2{
        grid-template-columns:1fr;
      }
      .innovation-copy h2{font-size:48px}
      .section-title,.contact-top h2,.interop-head h2,.cta h2{font-size:40px}
      .orbit-wrap{
        height:auto;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:22px;
        margin-top:22px;
      }
      .hub-outer,.hub-middle,.hub-core{
        position:relative;left:auto;top:auto;transform:none;margin:0 auto;
      }
      .hub-outer{
        width:220px;height:220px;
        grid-column:1 / -1;
        order:1;
      }
      .hub-middle{
        width:132px;height:132px;
        position:absolute;
      }
      .hub-core{
        width:86px;height:86px;
        position:absolute;
      }
      .orbit-item{
        position:relative!important;
        inset:auto!important;
        left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
        transform:none!important;
        width:100%;
        background:#fff;
        border:1px solid var(--line);
        border-radius:18px;
        padding:18px 12px;
      }
      .orbit-top{order:2}
      .orbit-right-top{order:3}
      .orbit-right-bottom{order:4}
      .orbit-bottom{order:5}
      .orbit-left-bottom{order:6}
      .orbit-left-top{order:7}
    }

    @media (max-width: 640px){
      .container{width:min(calc(100% - 28px), var(--container))}
      .nav{height:74px}
      .btn-demo{padding:15px 22px;min-width:auto;font-size:14px}
      .section{padding:48px 0}
      .section-title-lg{font-size:38px}
      .hero p{font-size:17px}
      .hero-actions{width:100%}
      .btn-primary,.btn-outline{width:100%;min-width:auto}
      .hero-mini{width:100%}
      .section-title,.innovation-copy h2,.contact-top h2,.interop-head h2,.cta h2{font-size:34px}
      .footer-bottom{align-items:flex-start;flex-direction:column}
      .newsletter input{width:100%}
    }











.domit-contact-v2 {
  padding: 70px 0 80px;
  background: #f3f6f8;
}

.domit-contact-v2,
.domit-contact-v2 * {
  box-sizing: border-box;
}

.domit-contact-v2__container {
  width: min(calc(100% - 64px), 1150px);
  margin: 0 auto;
}

.domit-contact-v2__header {
  max-width: 760px;
  margin: 0 auto 48px;
  text-align: center;
}

.domit-contact-v2__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 18px;
  margin-bottom: 18px;
  border-radius: 999px;
  background: #d6f4ed;
  color: #10cdb8;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.domit-contact-v2__title {
  margin: 0 0 14px;
  color: #072c58;
  font-size: 56px;
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.04em;
}

.domit-contact-v2__text {
  margin: 0 auto;
  max-width: 760px;
  color: #495f7f;
  font-size: 18px;
  line-height: 1.7;
}

.domit-contact-v2__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 34px;
  align-items: start;
}

.domit-contact-v2__left {
  width: 100%;
}

.domit-contact-v2__image-card {
  overflow: hidden;
  margin-bottom: 28px;
  border-radius: 22px;
  background: #dcecf6;
}

.domit-contact-v2__image-card img {
  display: block;
  width: 100%;
  height: 235px;
  object-fit: cover;
}

.domit-contact-v2__info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.domit-contact-v2__info-card {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 18px;
  border: 1px solid #edf1f4;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 1px 0 rgba(10, 45, 87, 0.04);
}

.domit-contact-v2__info-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 10px;
  background: #f3f6f8;
  color: #10cdb8;
  font-size: 16px;
  font-weight: 700;
}

.domit-contact-v2__info-content h4 {
  margin: 0 0 6px;
  color: #072c58;
  font-size: 15px;
  font-weight: 800;
}

.domit-contact-v2__info-content p {
  margin: 0;
  color: #435b7c;
  font-size: 15px;
  line-height: 1.55;
}

.domit-contact-v2__right {
  padding: 30px;
  border: 1px solid #edf1f4;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 1px 0 rgba(10, 45, 87, 0.04);
}

.domit-contact-v2__form {
  display: block;
  width: 100%;
}

.domit-contact-v2__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.domit-contact-v2__field {
  margin-bottom: 18px;
}

.domit-contact-v2__field label {
  display: block;
  margin-bottom: 8px;
  color: #072c58;
  font-size: 14px;
  font-weight: 800;
}

.domit-contact-v2__count {
  color: #8e97a8;
  font-weight: 500;
}

.domit-contact-v2__field input,
.domit-contact-v2__field select,
.domit-contact-v2__field textarea {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid #d9dfe6;
  border-radius: 10px;
  outline: none;
  background: #ffffff;
  color: #0a2d57;
  font-size: 16px;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.domit-contact-v2__field input::placeholder,
.domit-contact-v2__field textarea::placeholder {
  color: #a0a9b8;
}

.domit-contact-v2__field input:focus,
.domit-contact-v2__field select:focus,
.domit-contact-v2__field textarea:focus {
  border-color: #10cdb8;
  box-shadow: 0 0 0 3px rgba(16, 205, 184, 0.10);
}

.domit-contact-v2__field textarea {
  min-height: 120px;
  resize: none;
}

.domit-contact-v2__error {
  display: block;
  min-height: 16px;
  margin-top: 6px;
  color: #e14b4b;
  font-size: 12px;
}

.domit-contact-v2__input--error {
  border-color: #e14b4b !important;
  box-shadow: 0 0 0 3px rgba(225, 75, 75, 0.08) !important;
}

.domit-contact-v2__submit {
  width: 100%;
  padding: 18px 24px;
  border: none;
  border-radius: 999px;
  background: #082b51;
  color: #ffffff;
  font-size: 18px;
  font-weight: 800;
  cursor: pointer;
  transition: background 0.25s ease, transform 0.25s ease;
}

.domit-contact-v2__submit:hover {
  background: #0b3767;
  transform: translateY(-1px);
}

.domit-contact-v2__submit:active {
  transform: translateY(0);
}

@media (max-width: 1024px) {
  .domit-contact-v2__title {
    font-size: 46px;
  }

  .domit-contact-v2__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .domit-contact-v2 {
    padding: 50px 0 60px;
  }

  .domit-contact-v2__container {
    width: min(calc(100% - 28px), 1150px);
  }

  .domit-contact-v2__title {
    font-size: 36px;
  }

  .domit-contact-v2__text {
    font-size: 16px;
  }

  .domit-contact-v2__row,
  .domit-contact-v2__info-grid {
    grid-template-columns: 1fr;
  }

  .domit-contact-v2__right {
    padding: 22px;
  }

  .domit-contact-v2__image-card img {
    height: 220px;
  }
}

.domit-contact-v2__alert {
  margin-bottom: 18px;
  padding: 14px 16px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 700;
}

.domit-contact-v2__alert--success {
  background: #e9fbf4;
  color: #0d8f6f;
  border: 1px solid #bdeedc;
}

.domit-contact-v2__alert--error {
  background: #fff1f1;
  color: #c43d3d;
  border: 1px solid #f0c3c3;
}

