body {
    font-family: "Urbanist", sans-serif !important;
}
  /* NavBar */

  .contact-top {
    background-color: #513a7c;
    transition: top 0.3s ease, opacity 0.3s ease;
    z-index: 1050;
  }

.section-sectors {
    background-color: #513a7c;
}

.nav-link:hover {
    color: #f4b942 !important;
}

.header-scrolled .logo-header {
  width: 10rem !important;
  transition: width 0.3s ease;
}

/* Tamaño normal del logo */
.logo-header {
  width: 18rem;
  transition: width 0.3s ease;
}

/* Menú más pequeño al hacer scroll */
.header-scrolled .nav-link {
  font-size: 1rem !important;
  transition: font-size 0.3s ease;
}

/* Tamaño normal del texto del nav */
.nav-link {
  transition: font-size 0.3s ease;
}

/* Hero Section Main */
.hero-section-main{
    background-image: url(/img/banner.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
}

.hero-section-main-responsive {
  background-image: url(/img/banner-telefono.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 100vh;
  position: relative;
}

/* Hero Section About*/
.about-section,
.services-points {
    background-color: #372b4f;
}

.value-plus {
    background-color: #5a5a5a !important;
}

.value-minus {
    background-color: #f4b942 !important;
}

/* Colores del botón acordeón */
.accordion-button.btn-plus {
  background-color: #5a5a5a !important;
  color: #FFFFFF !important;
}

.accordion-button.btn-minus {
  background-color: #f4b942 !important;
  color: #FFFFFF!important;
}

.hero-section-about{
    background: url(/img/experiencia.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
    color: white;
    height: 70vh;
    display: flex;
    align-items: center;
}


.hero-section-about-responsive{
    background: url(/img/experiencia-telefono.png) no-repeat center center;
     background-size: cover;
     background-position: center;
     background-repeat: no-repeat;
     height: 100vh;
     position: relative;
}

.counter-section {
    padding: 3rem 1rem;
    background-color: #fff;
    text-align: left;
}
.counter-box {
    position: relative;
    padding: 1rem;
    color: #3d348b;
}
.border-left {
    border-left: 4px solid #f4b942 !important;
}
.counter-label {
    font-size: 0.9rem;
    color: #5c5c5c;
}

.hero-section-values{
    background: url(/img/mision-vision.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
    color: white;
    height: 60vh;
    display: flex;
    align-items: center;
}

.hero-section-values-responsive{
    background: url(/img/mision-vision-telefono.png) no-repeat center center;
    background-size: cover;
    position: relative;
    color: white;
    height: 100vh;
    display: flex;
    align-items: center;
}

.sector-card {
    background-size: cover;
    background-position: left;
    background-repeat: no-repeat;
    position: relative;
    color: white;
    height: 55vh;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    transition: transform 0.3s ease;
    text-align: center;
    padding: 1rem;
}

.sector-card:hover {
    transform: scale(1.05);
}

.sector-card-telecom {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    color: white;
    height: 55vh;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    transition: transform 0.3s ease;
    text-align: center;
    padding: 1rem;
}

.sector-card-telecom:hover {
    transform: scale(1.05);
}

.sector-title {
    padding-top: 25rem;
    border-radius: 5px;
    font-weight: bold;
    font-size: 2rem;
}


.sector-title-telecom {
    padding-top: 15rem;
    border-radius: 5px;
    font-weight: bold;
    font-size: 2rem;
}



/* Services Section */
.services-section,
.contact-section {
    background-color: #FFFFFF;
    color: #513a7c !important;
    padding: 0px !important;
}

    .nav-tabs .nav-link {
      background-color: #555;
      color: white;
      margin-right: 10px;
      border: none;
      border-radius: 8px;
      padding: 10px 20px;
    }

    .nav-tabs .nav-link.active {
      background-color: #FFB703 !important;
      color: #000 !important;
    }

    .tab-content {
      margin-top: 30px;
    }

    .rounded-image {
      border-radius: 20px;
    }

    .contenido-proyecto {
      display: flex;
      flex-wrap: wrap;
      align-items: start !important;
      gap: 30px;
    }

    .contenido-texto {
      flex: 1 1 300px;
    }

    .contenido-imagen-fondo {
        flex: 1 1 300px;
        height: 70vh;
        border-radius: 20px;
        overflow: hidden;
        position: relative;
    }

    .fondo-slide {
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        width: 100%;
    }

    /* Indicadores visibles sobre fondo oscuro */
    .carousel-indicators [data-bs-target] {
        background-color: #fff;
    }

    .line {
      border-top: 2px solid #FFFFFF !important;
      width: 80%;
    }

    /* Animación */
    .fade-custom {
      animation: fadeIn 0.6s ease;
    }

    @keyframes fadeIn {
      from {
        opacity: 0;
        transform: translateY(10px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

     .slider,
     .slider-create {
      position: relative;
      overflow: hidden;
      width: 100%;
      background: #fff;
      padding: 20px 0;
    }

    .slider::before,
    .slider::after,
    .slider-create::before,
    .slider-create::after  {
      content: "";
      position: absolute;
      width: 15%;
      height: 100%;
      z-index: 2;
      background: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0));
    }

    .slider::after,
    .slider-create::after {
      right: 0;
      top: 0;
      transform: rotateZ(180deg);
    }

    .slider::before,
    .slider-create::before {
      left: 0;
      top: 0;
    }

    .slide-track {
      display: flex;
      animation: scroll 40s linear infinite;
      width: max-content;
    }

    
    .slide-track-create {
      display: flex;
      animation: scroll-create 20s linear infinite;
      width: max-content;
    }

    .slide-brand {
      flex: 0 0 auto;
      width: 180px; /* Tamaño fijo */
      height: 120px; /* Tamaño fijo */
      padding: 10px;
      border: 1px solid #ddd;
      background-color: #f8f9fa;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 10px;
      border-radius: 8px;
    }

    .slide-brand img {
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
    }

    @keyframes scroll {
      0% {
        transform: translateX(0);
      }
      100% {
        transform: translateX(-50%);
      }
    }

    
    @keyframes scroll-create {
      100% {
        transform: translateX(0);
      }
      0% {
        transform: translateX(-50%);
      }
    }


    @media (max-width: 768px) {
      .slide-brand {
        width: 140px;
        height: 100px;
        margin: 0 6px;
      }
      .image-side {
        min-height: 100%;
      }
    }

        .contact-section {
            min-height: 75vh;
            display: flex;
        }

        .bg-contact {
          background-color: #372b4f;
        }

        .contact-form {
            color: white;
            border-radius: 10px;
        }

        .form-control,
        .form-control:focus,
        textarea.form-control,
        textarea.form-control:focus {
            background-color: #56486A !important;
            border: none !important;
            color: #FFFFFF !important;
            border-radius: 8px;
            box-shadow: none;
            font-size: 14px;
        }

        .form-control::placeholder {
            color: #dcdcdc !important;
            font-size: 20px;
        }

        .btn-custom {
            background-color: #FBB040 !important;
            color: black;
            border: none;
            font-weight: bold;
        }

        .btn-custom:hover {
            background-color: #fff !important;
            color: #FBB040 !important;
        }

        .whatsapp-icon {
            position: absolute;
            bottom: 20px;
            left: 20px;
            width: 70px;
            cursor: pointer;
        }

        .image-container {
            position: relative;
        }
    .social-icon {
      width: 60px;
      height: 60px;
      border: 1px solid #513a7c; /* Color aproximado al de la imagen */
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #513a7c;
      text-decoration: none;
      transition: background-color 0.3s, color 0.3s;
    }

    .social-icon:hover {
      background-color: #513a7c;
      color: white;
    }

        .footer {
      background-color: #513a7c;
      color: white;
      padding: 2rem 1rem;
    }
    .footer a {
      color: white;
      text-decoration: none;
    }
    .footer a:hover {
      text-decoration: underline;
    }
    .footer-bottom {
      background-color: #f8f9fa;
      color: #333;
      text-align: center;
      padding: 1rem 0;
      font-size: 0.9rem;
    }

  .g-recaptcha {
    transform: scale(0.85); /* Ajusta este valor según el tamaño deseado */
    transform-origin: 0 0; /* Asegura que el origen del escalado sea desde la esquina superior izquierda */
  }

  @media (max-width: 768px) { /* Para pantallas pequeñas */
    .g-recaptcha {
      transform: scale(0.75); /* Escala para dispositivos más pequeños */
      transform-origin: 0 0;
    }
  }

/*WhatsApp Btn*/
.float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 20px;
    left: 20px;
    background-color: #25d366;
    color: #fff;
    border-radius: 60px;
    text-align: center;
    padding-top: 6px;
    font-size: 30px;
    z-index: 100;
  }
  
  .float:hover {
    background-color: #fff;
    color: #25d366;
  }

  .my-float{
    margin-top:16px;
}

@media (max-width: 576px) {
  .hero-section-main-responsive {
    height: 50vh;
  }
  .hero-section-about-responsive {
    height: 90vh;
  }  
  .hero-section-values-responsive {
    height: 120vh;
  }
  .logo-header {
    width: 12rem;
}
.sector-title {
    padding-top: 15rem;
}

.sector-title-telecom {
    padding-top: 15rem;
}

.slide-brand {
    width: 100px;
    height: 80px;
    margin: 0 4px;
}

}

@media (max-width: 320px) {
      .hero-section-values-responsive {
    height: 150vh;
  }
  .sector-title {
    padding-top: 19rem;
}

.sector-title-telecom {
    padding-top: 19rem;
}

}