body {
  background-color: #fff;
  color: #000;
  font-family: 'Open Sauce One', sans-serif;
}

@media (min-width: 768px) {
  .contenido-principal{
      margin-top:89px;
  }
}

@media (max-width: 768px) {
  .contenido-principal{
      margin-top:115px;
  }
}

.navbar {
  background-color: white;
}

.navbar a,
.navbar a:hover {
  color: #000;
}

.navbar2 {
  background: linear-gradient(to right, #1D4A64, #0E2038);
}

.hero {
  position: relative;
  text-align: left;
  padding: 50px;
}

.hero img {
  max-width: 100%;
}


/*MENU INDEX*/
.menu {
  top: 100px;
  padding: 45px 0px;
  width: 100%;
  text-align: center;
}

.menu li {
  padding: 20px 0;
}

.menu li a {
  color: #000;
  text-decoration: none;
  font-weight: bold;
}

.menu li:hover, .menu li:active,
.menu li a:hover, .menu li a:active{
  background: #fff;
}

.menu .submenu {
  position: relative;
}

.menu .submenu .dropdown {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease-in-out, opacity 0.4s ease-in-out;
  opacity: 0;
  list-style: none;
  padding: 0;
  margin: 0;
  background: white;
  border-radius: 5px;
}

.menu .submenu .dropdown.show {
  max-height: 400px;
  opacity: 1;
}

.menu .dropdown li {
  padding-bottom: 0px;
}

.menu .dropdown li a {
  text-decoration: none;
  color: black;
  display: block;
  padding: 0;
}

.menu .dropdown li a:hover {
  background: #f0f0f0;
}

/*FIN MENU INDEX*/



.carousel-item img {
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.brand-carousel img {
  max-width: 150px;
  margin: auto;
  padding: 10px;
}

.text-main {
  position: absolute;
  top: 40px;
  right: 0px;
  color: white;
  text-align: center;
  padding: 35px 70px 35px 35px;

}

/*MENU TODOS*/

a.nav-link, a:hover.nav-link{
font-weight:normal;
letter-spacing: 2px;
font-size:12pt;
}
@media (min-width: 768px) {
  a.nav-link, a:hover.nav-link{
    padding: 15px 35px !important;
    }
}


.main-menu .dropdown-menu {
background: #061C31;
padding:5px;
}
.main-menu .dropdown-menu a{
color: #fff;
font-weight: normal;
letter-spacing: 2px;
font-size: 10pt;
}

.main-menu .dropdown-menu a:hover,.main-menu .dropdown-menu a:hover{
  background: #fff;
color:#061C31 !important;
}

.main-menu a.nav-link{
  color:#000;

}
.main-menu a:hover.nav-link{
  color:#061C31;
  background-color: #fff;;

}

.navbar-nav .nav-link.active, .navbar-nav .nav-link.show{
  color:#061C31;
  background-color: #fff;;
}




/*BUSCADOR INDEX*/
.search-box {
  position: relative;
  width: 350px;
  margin-top: 10px;
}

.search-box input {
  width: 100%;
  padding: 10px 100px 10px 15px;
  border: 2px solid #ccc;
  border-radius: 25px;
  outline: none;
  font-size: 13px;
  height: 35px;
}

.search-box button {
  position: absolute;
  right: 3px;
  margin-top: 17px;
  transform: translateY(-50%);
  background: #000;
  border: none;
  color: white;
  padding: 5px 10px;
  border-radius: 20px;
  cursor: pointer;
  font-size: 12px;
  font-weight: bold;
  height: 27px;
}

.search-box button:hover {
  background: #0056b3;
}

.boton-cotizar {
  border-radius: 20px;
  color: #fff;
  width: 100px;
  font-size: 13px;
}
button.add-to-quote{
  background:#000; 
  border: 1px solid #000;
  font-size:9pt;
  width:100%;
  margin:auto;
  letter-spacing: 2px;
  padding:10px;
  border-radius:0;
}
button.add-to-quote:hover, button.add-to-quote:active{
  color: #000;
  background: #ECECEC !important;
  border: 1px solid #ECECEC !important;
}



/*CAROUSEL INDEX AREAS*/
.carousel-container2 {
  width: 76%;
  overflow: hidden;
  position: relative;
  margin: auto;
} 
.carousel-container2 .carousel2 {
  display: flex;
  overflow: hidden;
}

.carousel-container2 .carousel2 img {
  width: 150px;
  padding: 7px;
  height: 400px;
  object-fit: cover;
  transition: width 0.5s ease;
  border-radius: 30px;
}

.carousel-container2 .carousel2 img.active {
  width: 400px;
}

.carousel-container2 .carousel2 img:hover {
  transform: scale(1.0);
}

.carousel-container2 .image-wrapper {
  position: relative;
  display: inline-block;
}

.carousel-container2 .image-title {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 5px 10px;
  font-size: 18px;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  white-space: nowrap;
}

.carousel-container2 .image-title a,
.carousel-container2 .image-title a:hover {
  color: #fff;
  text-decoration: none;
}

.carousel-container2 .image-wrapper:hover .image-title {
  opacity: 1;
}

.carousel-container2 .arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  padding: 10px;
  cursor: pointer;
  z-index: 10;
}
.carousel-container2 .arrow.left {
  left: 0;
}

.carousel-container2 .arrow.right {
  right: 0;
}
.slide-logos img{
  width:100%;
}




.sidebar .nav-link {
  text-align: left;
  color: #000;
  background: #C1EDF2;
  border-radius: 0;
  padding: 21px;
}

.sidebar .active.nav-link {
  background: #fff;
  color: #000;
}



.columna-ia a.btn-masinfo{
  background:#01B9CA;color:#fff;border-radius:30px;padding:14px;font-size:15pt;width:250px;margin:20px 0;
}
.columna-ia  a.btn-contactar{
  background:#01B9CA;color:#fff;border-radius:30px;padding:14px;font-size:15pt;width:180px;
}
.columna-ia img.img-ia1{
  position: relative;top: 110px;left: 45px;z-index: 1;
}

.columna-tienda-cotizar .card{
  border: 15px solid silver;border-radius:30px;padding: 45px 0;
}
.columna-tienda-cotizar h3{
  color:#fff;padding:30px 60px;font-size:24pt;line-height: 120%;
}
.columna-proddest{
  background: #fff;padding:50px 0;
}

.columna-proddest .card{
  border:none;
}
/*
.columna-proddest .card button{
  background:#004684;font-size:15pt;width:220px;margin:auto;
}
  */
.columna-certinsu{
  background:#fff;
  margin-bottom: 130px;
}

.columna-certinsu .columna-1 h3{
  color:#23346A; 
  font-size:40pt;
}

.columna-certinsu .columna-2 h3{
  color:#23346A; 
  font-size:40pt;
  padding-bottom:30px;
}


/*FOOTER*/

footer{
  font-size:10pt;
  background: #000;
  padding: 0;
}
footer .contenedor{
  padding:50px 50px 0px 50px;
}
footer .social-media-container{
  border-top: 1px solid #fff;
}
footer .social-icon {
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: white;
  border-radius: 50%;
  text-decoration: none;
  color: #333;
  font-size: 20px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s, box-shadow 0.3s;
}

footer .social-icon:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
}


/*NOSOTROS*/
header.nosotros{
  background: url('/images/bg-gray.jpg') no-repeat bottom center;background-size:cover;
}
header.nosotros h1{
  font-size:40pt;
}
header.nosotros .boxes{
  margin-bottom:80px;
  margin-top:30px;
}
header.nosotros .boxes .card{
  min-height:425px;padding:50px;border-radius:30px;background:#ECECEC;
}
header.nosotros .boxes h2{
  font-size:36pt;margin-bottom:30px;
}
header.nosotros .boxes p{
  font-size:18pt;
}
.columna-politica{
  background:#fff;margin-top:15px;
}
.columna-politica h2{
  font-size:50pt;color:#000;font-weight:bold;
  line-height:120%;
  margin-bottom:30px;
}

@media (max-width: 767px) {
  .columna-politica h2{
    font-size:25pt !important;
  }
  header.nosotros .boxes h2{
    font-size:25pt !important;
  }
  header.nosotros .boxes p{
    font-size:12pt !important;
  }
  header.nosotros .boxes .card{
    min-height:300px !important;
  }
}

.columna-politica .descripcion{
  font-size:18pt;color:#000;
  text-align: justify;
}
.columna-politica ul{
  line-height: 150%;margin-top:30px;padding-left: 0;font-size:18pt;color:#23346A;margin-left:50px;font-weight:bold;
}
.columna-politica ul li{
  padding-bottom:0px;
  text-align: justify;
}
.columna-politica p.datos-empresa{
  font-size:18pt;font-style:italic;color:#23346A;margin-top:30px;
}

/*SERVICIOS*/
header.servicios{
  background: url('/images/bg-gray.jpg') no-repeat  center;background-size: cover;
}
header.servicios h1{
  font-size:40pt;
}
.columma-asesorias{
  background:#fff;margin-top:50px;
}
.columma-asesorias h2{
  font-size:35pt;color:#000;font-weight:bold;
  line-height:120%;
  margin-bottom: 30px;
}
.columna-serviciotec h2{
  font-size:50pt;
  font-weight: bold;
}

@media (max-width: 767px) {
  .columma-asesorias h2{
    font-size:30pt !important;
  }
  .columna-serviciotec h2{
    font-size:30pt !important;
  }
}
.columma-asesorias  p.descripcion{
  font-size:18pt !important;
  color: #000;
    text-align: justify;
}
.columna-asesorias ul{
  margin-top:30px;
  padding-left: 0 !important;
  font-size:18pt;
}
.columma-asesorias ul li{
  list-style:none;
  color: #000;
  padding-bottom:15px;
  font-size: 16pt;
}
.columma-asesorias .img1{
  position: relative;top: 110px;left: 45px;z-index: 1;width:300px;
}
.columma-asesorias .img2{
  width:300px;
}

.columna-serviciotec{
  background: #fff;margin:150px 0 0 0;color:#233469;
}
.columna-serviciotec .columna-1{
  padding:15px 50px 50px 50px;
}
.columna-serviciotec .columna-1 img{
  box-shadow: -20px -20px 0px #A9E7ED;
  border-radius: 40px;
  width: 100%;
}
.columna-serviciotec .columna-2{
  padding-top:50px;
}

.columna-serviciotec .descripcion{
  font-size:16pt;margin-bottom:50px;
  text-align: justify;
}


/*CONTACTO*/
header.contacto{
  background: url('/images/bg-gray.jpg') no-repeat  center;background-size: cover;
  color:#fff;
}

@media (max-width: 767px) {
  .btn-contacto{
    display: none;
  }
}

header.contacto h1{
  font-size:40pt;color:#000;
}

@media (max-width: 767px) {
  header.contacto h1{
    font-size:30pt !important;
    background-color: rgba(255, 255, 255, 0.5);
    padding: 5px !important;
  }
  .columna-contactanos{
    padding-top:0 !important;
  }
  .columna-contactanos .mt-5{
    margin-top: 0 !important
  }
}


.columna-contactanos {
  background:#fff;margin-top:50px;
}
.columna-contactanos h2.subtitulo{
  color:#000;font-weight:bold;line-height:120%;padding-bottom:30px;
}

@media (min-width: 768px) {
  .columna-contactanos h2.subtitulo{
    font-size:35pt;
  }
}

.columna-contactanos p.descripcion{
  font-size:18pt;color:#000;padding-bottom:30px;
}
.columna-contactanos ul{
  color:#000;font-size:18pt;
}
.columna-contactanos ul li a,
.columna-contactanos ul li a:hover,
.columna-contactanos ul li a:active
{
  color: #23346A;
}

.columna-contactanos .columna-form .card{
  background: #000;
  padding:40px;
  border-radius:20px;
}
.columna-contactanos .columna-form .card h5{
  font-size:20pt;font-weight:normal;
}
.columna-contactanos .columna-form label{
  font-size:12px;
}
.columna-contactanos .columna-form button.btn-enviar {
  float:right;border-radius:30px; 
  background:#ECECEC;padding:10px 30px;
  border:1px solid #ECECEC;
  color:#000;
}
.columna-contactanos .underline-input {
  background: #000;
  border: none;
  border-bottom: 1px solid #fff;
  outline: none;
  padding: 5px;
  font-size: 12px;
  width: 100%;
  color: #fff;
}

.columna-contactanos .underline-input:focus {
  border-bottom: 1px solid #fff;
}

@media (min-width: 1200px) {
  .fs-1 {
      font-size: 3.5rem !important;
  }
}

.text-justify {
  text-align: justify !important;
}

.paginador a{
  color:#000;
  text-decoration: none;
  font-size: 20pt;
}
.paginador .number{
    color: #A4A4A4;
    font-size: 20pt;
} 





/*catalogo*/
.header-catalogo{
  background: url('/images/bg-gray.jpg') no-repeat  center;background-size: cover;
}
.header-catalogo .column1{
    padding:100px 95px 95px;
}
.header-catalogo h1{
    font-size:40pt;
}

@media (max-width: 767px) {
    .header-catalogo .column1 h1{
    font-size:30pt !important;
    }
    .header-catalogo .column1{
    padding:30px;
    }
}
.catalogo-home{
    background: #fff;padding:150px 0 0 0;
}
.producto .card{
  margin-bottom:20px;border:1px solid silver;border-radius: 5px;
}
.producto .card .card-header{
  padding:0px;border: none;background: #EAEAEA;min-height:290px;
}
.producto .card-body{
  min-height: 80px;background:#fff;
}
.producto .card .card-header img{
  width: 100%; height: 290px; object-fit: cover;
}

/*catalogo show*/
.catalogo-producto{
    background: #fff;padding:150px 0 0 0;
}
.catalogo-producto .contain1er {
                        margin: auto;
                        display: flex;
                        align-items: flex-start;
                    }

.catalogo-producto .thumbnails {
                        display: flex;
                        flex-direction: column;
                        gap: 10px;
                        margin-right: 10px;
                    }

.catalogo-producto .thumbnails img {
                        width: 118px;
                        cursor: pointer;
                        border: 1px solid #ddd;
                        padding: 3px;
                    }

.catalogo-producto .thumbnails img:hover {
                        border-color: #333;
                    }

.catalogo-producto .main-image {
                        width: 100%;
                        border: 1px solid #ddd;
                        padding: 5px;
                    }
                    
.catalogo-producto .column2 h1.producto-nombre{
    font-size:40pt;font-weight:bold;
}

@media (max-width: 767px) {
.catalogo-producto .column2 h1.producto-nombre{
    font-size:30pt !important;
    font-weight:bold;
}
}
.catalogo-producto .column2 .producto-btn{
    border-top:1px solid #000;
    border-bottom:1px solid #000;padding:15px 0;
}
.catalogo-producto .column2 .producto-btn .card-footer{
    background: none;
}
.catalogo-producto .column2 .categorias-keyword{
    border-bottom:1px solid #000;padding:15px;
}
.catalogo-producto .column2 .categorias-keyword p{
    color:gray;font-size:9pt;
}
.catalogo-producto .productos-relacionados h2{
    padding-bottom:30px;
}
.catalogo-producto .productos-relacionados .card{
  margin-bottom:20px;border:1px solid #1C1C1A;border-radius: 5px;
}
.catalogo-producto .productos-relacionados .card-header{
  padding:5px;border: none;background: #EAEAEA;min-height:290px;  
}
.catalogo-producto .productos-relacionados .card-body{
  min-height: 105px;background:#eaeaea;
}
.catalogo-producto .productos-relacionados .card-footer{
  padding:0;
}


.card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}
.whatsapp-container {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 100;
  display: flex;
  align-items: center;
  gap: 10px;
}

.whatsapp-dialogo {
  background-color: #ffffff;
  color: #333;
  padding: 10px 15px;
  border-radius: 20px;
  font-size: 14px;
  box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
  animation: fadeInUp 0.6s ease forwards;
  opacity: 0;
}

.whatsapp-float {
  width: 60px;
  height: 60px;
  background-color: #25d366;
  color: white;
  border-radius: 50%;
  text-align: center;
  font-size: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
  transition: background-color 0.3s;
  text-decoration: none;
}

.whatsapp-float:hover {
  background-color: #1ebe57;
}

/* Animación suave de entrada */
@keyframes fadeInUp {
  from {
      opacity: 0;
      transform: translateY(10px);
  }
  to {
      opacity: 1;
      transform: translateY(0);
  }
}

li.breadcrumb-item a{
  color: #000;
}

/*menu*/
.main-menu-h{
  background: #123C53;
  padding:0;
  color:#fff;
  text-align:right;
}
.main-menu{
  top:35px;
  background: #ECECEC;
  padding:0;
}
.main-menu .cart {
  position: relative;
  color: #000;
}

@media (min-width: 768px) {
  .main-menu .cart {
    padding-top: 14px;
    margin: 0 5px;
  }
  .main-menu .logo{
    height:35px;
  }
}


@media (max-width: 767px) {
  .main-menu .cart {
    padding:5px;
  }
  .main-menu .logo{
    width:150px;
  }
}

.main-menu .cart-dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: white;
  border: 1px solid #ddd;
  padding: 10px 15px;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  min-width: 150px;
  z-index: 1000;
  white-space: nowrap;
}

.main-menu .cart:hover .cart-dropdown {
  display: block;
}

.main-menu .cart-dropdown a {
  text-decoration: none;
  color: #333;
}

.main-menu .cart-dropdown a:hover {
  text-decoration: underline;
}