
:root {
  --primary-color: #0055b7;
  --secondary-color: #262626;
  --white: #ffffff;
  --dark-gray: #272727;
  --light-gray: #f8f9fa;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}


html {
  overflow-y: scroll;
  scroll-padding-top: 80px;
}

body {
  font-family: 'Lato', sans-serif;
  background: var(--white);
  overflow-x: hidden;
}

body.modal-open {
  padding-right: 0 !important;
}


/*=============================================
        AJUSTE DEL SWEET ALERT
===============================================*/
.swal2-confirm{

  background-color: var(--primary-color);
}

.swal2-confirm:hover{
  background-color: var(--white);
  color: var(--primary-color);
}


/*=============================================
        BOTON PERSONALIZADO
===============================================*/
.btn-site{

    background-color: var(--primary-color);
    color: var(--white);
    text-transform: uppercase;
}

.btn-site:hover{
  background-color: var(--white);
  border:1px solid var(--primary-color);
  color: var(--primary-color);
}

/*=============================================
   Fondo transparente para ambas secciones 
  =============================================*/
.header-top,
.header-bottom {

  /*background-color: rgba(0, 0, 0, 0.5); */
  background-color:var(--white); 

}

#site-header {
  z-index: 1000;
/*  transition: background-color .3s ease;
  background-color: rgba(27, 27, 27, .52);*/
}

/*=============================================
   Efecto sticky en scroll 
 ===============================================*/
.header-fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}

#mainNav a i{
  color: var(--white) !important;
  font-size: 1.4rem;
}



#hero-slider{
  position: relative;
  height: 100vh;
  overflow: hidden;
}

.slide{
  position: absolute;
  inset:0;
  background-size: cover;
  background-position: center;
  opacity: 0;
   will-change: opacity, transform;
}


.slide.active{
  opacity: 1;
}


.slide h2{
  
  font-size: 4rem;

}

.slide p{
  
  font-size: 2rem;

}

.overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.35); /* oscurece un poco para mejor legibilidad */
  padding: 1rem;
}



.custom-toggler {
  border: none;
  background: none;
  padding: 0.5rem;
  font-size: 1.5rem;
  /*color: var(--white);  */
  box-shadow: none !important;
}

#toggler-icon {
  display: inline-block; /* Permite aplicar transformaciones */
  transition: transform 0.3s ease; /* Agrega la transición */
}

#toggler-icon.rotate {
  transform: rotate(180deg);
}


.custom-tooltip {
  --bs-tooltip-bg: var(--primaru-color);
  --bs-tooltip-color: var(--white);
}


/*==================================================
     SECTION DE HERO CSS
  ==================================================*/
/* Ajusta altura a menos de 100vh para diferenciarlo del slider */
.hero-main {
  position: relative;
  min-height: 50vh; /* Ajusta según tu diseño */
  /*background: url('../img/instlaciones-integrales.jpg') center center/cover no-repeat;*/
  background: var(--white);

}

.hero-main .overlay {

  position: absolute;
  inset: 0;
  /*background: rgba(0, 0, 0, 0.45);*/
}

.hero-main h1 span {
  color: var(--primary-color) !important; 
}

.hero-main h1{

  color: var(--dark-gray);
}

.hero-main p{
  color: var(--dark-gray);
}


.counter-card {
  text-align: center;
  animation: fadeInUp 0.6s ease-out forwards;
  opacity: 0;
}

.counter-card:nth-child(1) { animation-delay: 0.1s; }
.counter-card:nth-child(2) { animation-delay: 0.2s; }
.counter-card:nth-child(3) { animation-delay: 0.3s; }
.counter-card:nth-child(4) { animation-delay: 0.4s; }

.circle {
  width: 180px;
  height: 180px;
  background: #0056b3;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s ease;
}

.circle:hover {
  transform: scale(1.05);
}

.number {
  color: white;
  font-size: 48px;
  font-weight: bold;
}

.title {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}

.description {
  /*color: rgba(255, 255, 255, 0.9);*/
  font-size: 14px;
}

@keyframes fadeInUp {

  from {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}



/* Colores de los links */
.navbar-nav .nav-link {
  /*color: #fff;*/
   color: var(--primary-color);
}
.navbar-nav .nav-link:hover {
  color: var(--secondary-color);
  background-color: rgba(255, 255, 255,0.2);
}


.quienes-somos-section {
  /* Imagen de fondo */
  background: url('../img/pages/background-about.jpg') center center / cover no-repeat;
  
  /* Para que el contenido no quede debajo del header */
  padding-top: 200px; /* Ajusta a la altura de tu header */
  padding-bottom: 80px;

  /* Si quieres que el texto sea más legible */
  position: relative;
}
.quienes-somos-section::before {
  content: "";
  position: absolute;
  inset: 0;
  /*background: rgba(0,0,0,0.4);  */
}
.quienes-somos-section .container {
  position: relative;
  z-index: 1; /* Texto por encima del overlay */
}







/*==================================================
     SECTION DE MISION
  ==================================================*/
.mision-vision-valores-section{
  background: url('../img/pages/background-about.jpg') center center / cover no-repeat;
  /*background-color: var(--light-gray);*/
  padding-top: 200px;
  padding-bottom: 80px;

}

.items-mision{
  /*background-color: rgba(255,255,255,0.6)*/
}


.contenedor-mision p{
    /*background-color: var(--white);*/
    color: var(--primary-color) !important;
    font-weight: 400;
    font-size: 1.4rem;
    padding: 20px 15px !important;
    border-radius: 12px;
}

.contenedor-mision ul{

    /*background-color: var(--white);*/
    color: var(--primary-color) !important;
    
    font-size: 1.4rem;
    padding: 20px !important;
    border-radius: 12px;


}
.contenedor-mision ul li{
color: var(--primary-color) !important;
font-weight: 400;
 margin: 0px 30px;
}

.image-wrapper {
    width: 100%;
    height: 300px;
    overflow: hidden;
    position: relative;
}

.rounded-asymmetric{
    border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
}
.rounded-asymmetric:hover img {
  transform: scale(1.1) rotate(-2deg);

}


.image-wrapper img, .image-wrapper video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
    box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
    border: 2px solid var(--primary-color);
}


.image-wrapper::after {
  cursor: pointer;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.4), rgba(0, 0, 0, 0.4));
    opacity: 0;
    transition: opacity 0.3s ease;
}


.image-wrapper:hover::after {
    opacity: 1;
}



.corner-cut {
  clip-path: polygon(0 0, 100% 0, 100% 10%, 100% 100%, 10% 100%, 0 100%);
}

.corner-cut:hover img {
  transform: scale(1.1);
}

.item-text h2{
  /*background-color: var(--white);*/
  color: var(--primary-color);
}

.opt-items{
  margin: 1rem;
}

.opt-items li{
  font-family: 'Lato', sans-serif;
  color: var(--white);
  font-size: 20px;
  font-weight: 300;
}


.diagonal {
  clip-path: polygon(0 0, 100% 10%, 100% 100%, 0 90%);
}

.diagonal:hover img {
  transform: scale(1.1);
}

.split-diagonal {
  clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
  border-radius: 15px 15px 0 0;
}

.split-diagonal:hover img {
  transform: scale(1.1) rotate(1deg);
}




/*==================================================
      ESPECIALISTAS 
 ==================================================*/
.equipo-especialista-section{

  background: url('../img/pages/background-about.jpg') center center / cover no-repeat;
    padding-top: 200px;
    padding-bottom: 80px;


}

.items-especialistas{
  background-color: rgba(255,255,255,0.2);
  padding: 1.5rem 0;
}

.texto-especialistas h2{

  font-size: 2rem;
  padding: 1rem 0;
  font-weight: bold;
}


.item-profesional{

  text-align: center;
  padding: 20px 0px;
}

.item-profesional h4{

  font-weight: bold;

}

.item-profesional p{

text-align: center;
font-weight: 400;
}

.card-header-especialista i{

  background-color: var(--primary-color);
    padding: 5px;
    border-radius: 50%;
    border: 0;
    color: #fff;
    font-size: 20px;
    height: 50px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    text-align: center;
    top: -30px;
    width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}


.card-body-content p{
  text-align: justify;
  font-weight: 500;

}



/*==================================================
     SECTION DE AREAS
  ==================================================*/

.areas-especializacion-section{

  background: url('../img/pages/background-about.jpg') center center / cover no-repeat;
    padding-top: 200px;
    padding-bottom: 80px;

}

.items-especializacion{
  /*background-color: rgba(255,255,255,0.2);*/
  padding: 1.5rem;

}

.texto-especializacion h2{

  font-size: 2rem;
  padding: 1rem 0;
  font-weight: bold;

}

.items-areas{
  background-color: var(--white);
  box-shadow:0 0 10px var(--secondary-color);
  /*height: 350px;*/
  height: auto;
  text-align: center;

}

.items-areas i{

  font-size: 5rem;
  color: var(--primary-color);
}

.items-areas h4{

  text-align: center;
  font-weight: bold;

}

.items-areas p{

  text-align: justify;
  font-weight: 500;

}



/*=================================================
       SERVICIOS DESTACADOS
  =================================================*/

  .servicios-destacados-section{

  background: url('../img/pages/background-about.jpg') center center / cover no-repeat;
    padding-top: 100px;
    padding-bottom: 80px;

}

.items-destacados{
  /*background-color: rgba(255,255,255,0.2);*/
  padding: 1.5rem;

}

.texto-destacados h2{

  font-size: 2rem;
  padding: 1rem 0;
  font-weight: bold;

}


.servicios-section {
    padding: 10px 0;
}

.servicios-section h1 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 40px;
}

.arrow-container {
    display: flex;
    align-items: stretch;
    /*margin-bottom: 40px;*/
    gap: 0;
}

.arrow-box {
    position: relative;
    background: linear-gradient(135deg, #0055b7 0%, #0055b7 100%);
    color: white;
    padding: 10px;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 80px;
    clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 50%, calc(100% - 30px) 100%, 0 100%, 30px 50%);
}

.arrow-box:first-child {
    /*clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 50%, calc(100% - 30px) 100%, 0 100%);*/
    padding-left: 40px;
}

.arrow-box:last-child {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 30px 50%);
    padding-right: 40px;
}

.arrow-box i {
    font-size: 2.5rem;
}

.service-card {

    background: white;
    border-radius: 8px;
    padding: 10px;
    height: 80%;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 0 10px var(--secondary-color);
}

.service-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}

.service-card h3 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 20px;
    color: #333;
    text-align: center;

}

.service-card ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.service-card ul li {
    padding: 8px 0;
    color: #555;
    line-height: 1.6;
    position: relative;
    padding-left: 25px;
}

.service-card ul li:before {
    content: "•";
    position: absolute;
    left: 8px;
    color: #0055b7;
    font-weight: bold;
    font-size: 1.2rem;
}




/*==================================================
     SECTION DE CALIDAD - SEGURIDAD
  ==================================================*/
.calidad-section{
  background: url('../img/pages/background-about.jpg') center center / cover no-repeat;
  padding-top: 150px;
  padding-bottom: 80px;
}

.items-calidad{
  background-color: rgba(255,255,255,0.7);
  /*background-color: var(--light-gray);*/
  padding: 1.5rem;
}

.texto-calidad h2{

  font-size: 2rem;
  padding: 1rem 0;
  color: var(--primary-color);
  font-weight: bold;
}
.contenedor-calidad-img img{
  width: 40%;
  background-color: var(--light-gray);
  filter:  drop-shadow(2px 4px 6px black);
}

.item-normas h4{
  font-weight: bold;
  color: var(--primary-color);
  font-family: 'Montserrat','Lato',sans-serif;
}

.item-normas p{
  font-size: 1.2rem;
  font-weight: 400;

}




/*==================================================
     SECTION DE FOOTER
  ==================================================*/

.modal-content-contact{
  background-color: rgba(255,255,255,0.9) !important;
  border-radius: 0;
}

.footer-link {
  color: #ccc;
  text-decoration: none;
  transition: color .3s;
}
.footer-link:hover {
  color: #fff;
}

.social-link {
  color: #ccc;
  font-size: 1.4rem;
  transition: color .3s, transform .3s;
}
.social-link:hover {
  color: #0d6efd;      /* Azul Bootstrap o el color corporativo */
  transform: translateY(-3px);
}

footer .small{
  font-family: 'Montserrat','Lato',sans-serif;
}

footer ul li a{
  font-family: 'Montserrat','Lato',sans-serif;
}

.up-a {
  bottom: 1rem;
  cursor: pointer;
  right: 1rem;
  color: #3498db;
  background-color: #fff;
  height: 40px;
  text-align: center;
  font-size: 30px;
  line-height: 35px;
  position: fixed;
  width: 40px;
  z-index: 1000;
    /* transition: all 800ms 
    ease; */
    transition: background-color 0.3s 
    ease;


  }


/*==================================================
     SECTION DE ERROR 404
==================================================*/

.error404-section{

  background: url('../img/pages/background-about.jpg') center center / cover no-repeat;
  padding-top: 100px;
  padding-bottom: 80px;

}

.link-home a{

  list-style: none;
  text-decoration: none;
  color: var(--white);

}

.error .clip .shadow{

    height: 180px;  
}

.error .clip:nth-of-type(2) .shadow{

    width: 130px;   
}

.error .clip:nth-of-type(1) .shadow, .error .clip:nth-of-type(3) .shadow {

    width: 250px; 

}

.error .digit{
    width: 150px;   
    height: 150px;  
    line-height: 150px; 
    font-size: 120px;
    font-weight: bold;
}

.error h2 {

    font-size: 32px;
}

h2{
    font-size: 20px;
}

.error .msg{
    top: -190px;
    left: 30%;
    width: 80px;
    height: 80px;
    line-height: 80px;
    font-size: 32px;
}

.error span.triangle{
    top: 70%;
    right: 0%;
    border-left: 20px solid #535353;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
}


.error .container-error-404{
  margin-top: 10%;
  position: relative;
  height: 250px;
  padding-top: 40px;
}

.error .container-error-404 .clip{
    display: inline-block;
    transform: skew(-45deg);
}

.error .clip .shadow{

    overflow: hidden;
}

.error .clip:nth-of-type(2) .shadow{
    overflow: hidden;
    position: relative;
    box-shadow: inset 20px 0px 20px -15px rgba(150, 150, 150,0.8), 20px 0px 20px -15px rgba(150, 150, 150,0.8);
}

.error .clip:nth-of-type(3) .shadow:after, .error .clip:nth-of-type(1) .shadow:after{
    content: "";
    position: absolute;
    right: -8px;
    bottom: 0px;
    z-index: 9999;
    height: 100%;
    width: 10px;
    background: linear-gradient(90deg, transparent, rgba(173,173,173, 0.8), transparent);
    border-radius: 50%;
}

.error .clip:nth-of-type(3) .shadow:after{

    left: -8px;

}

.error .digit{
    position: relative;
    top: 8%;
    color: white;
    background: var(--primary-color);
    border-radius: 50%;
    display: inline-block;
    transform: skew(45deg);
}

.error .clip:nth-of-type(2) .digit{

    left: -10%;

}

.error .clip:nth-of-type(1) .digit{

    right: -20%;
}

.error .clip:nth-of-type(3) .digit{

  left: -20%;

}    

.error h2{
    color: #A2A2A2;
    font-weight: bold;
    padding-bottom: 20px;
}

.error .msg {
    position: relative;
    z-index: 9999;
    display: block;
    background: #535353;
    color: #A2A2A2;
    border-radius: 50%;
    font-style: italic;
}

.error .triangle{
    position: absolute;
    z-index: 999;
    transform: rotate(45deg);
    content: "";
    width: 0; 
    height: 0; 
}



/*--------------------------------------------Framework --------------------------------*/

/*.overlay { position: relative; z-index: 20; } */
.ground-color { background: rgba(0,0,0,0.2); }  
.item-bg-color { background: #EAEAEA } 

/* Padding Section*/
.padding-top { padding-top: 10px; } 
.padding-bottom { padding-bottom: 10px; }   
.padding-vertical { padding-top: 10px; padding-bottom: 10px; }
.padding-horizontal { padding-left: 10px; padding-right: 10px; }
.padding-all { padding: 10px; }   

.no-padding-left { padding-left: 0px; }    
.no-padding-right { padding-right: 0px; }   
.no-vertical-padding { padding-top: 0px; padding-bottom: 0px; }
.no-horizontal-padding { padding-left: 0px; padding-right: 0px; }
.no-padding { padding: 0px; }   
/* Padding Section*/

/* Margin section */
.margin-top { margin-top: 10px; }   
.margin-bottom { margin-bottom: 10px; } 
.margin-right { margin-right: 10px; } 
.margin-left { margin-left: 10px; } 
.margin-horizontal { margin-left: 10px; margin-right: 10px; } 
.margin-vertical { margin-top: 10px; margin-bottom: 10px; } 
.margin-all { margin: 10px; }   
.no-margin { margin: 0px; }   

.no-vertical-margin { margin-top: 0px; margin-bottom: 0px; }
.no-horizontal-margin { margin-left: 0px; margin-right: 0px; }

.inside-col-shrink { margin: 0px 20px; }    


hr
    { margin: 0px; padding: 0px; border-top: 1px dashed #999; }
/*--------------------------------------------FrameWork------------------------*/












  /* Rango: extra small (320px - 479px) */
@media (min-width: 320px) and (max-width: 479px) {

  .nvbar{

    display: flex !important;
    justify-content: end !important;
   
  }


/*SLIDER*/
  .slide h2{
    font-size: 1.6rem;
  }

  .slide p {
    font-size: 1.1rem;
  }

/* MISION */
  .mision-vision-valores-section{
    padding-top: 100px;
  }

 /* EQUIPO ESPECIALISTA */
 .equipo-especialista-section{

  padding-top: 80px;

}

.card-body-content h5{

  text-align: center;
  font-size: 18px;
  padding: 12px;
}

.card-body-content p{

  font-size: 12px;
  
}


.profesional-bloque{
  margin: 2rem 0;
}




/* AREAS*/

.areas-especializacion-section{
  padding-top: 70px;
}

.texto-especializacion h2{
  font-size: 1.7rem;
}


.items-especializacion{
  display: flex;
  justify-content: center;
}

.items-areas{

  width: 310px;
  padding: 0;
  margin: 0 auto;
}

.items-areas p{

  text-align: justify;
  font-weight: 500;
  font-size: 1rem;

}


  /*SERVCIOS DESTACADOS*/

  .items-destacados{

    display: flex;
    justify-content: center;

  }

  .items-destacados h2{

    font-size: 1.7rem;

  }

  .contenedor-servicios{

    padding: 0;
    margin: 0;

  }


  .servicios-section{

    padding:0px;
    display: flex;
    justify-content: center;

  }

  .service-card ul li{

    font-size: 1rem;

  }


/* CALIDAD - SEGURIDAD */

  .calidad-section{
    padding-top: 100px;
  }

  .item-normas p {
    font-size: 1rem;
  }


/*BENEFICIOS*/
.item-propuesta h4 {

  margin: 2rem 0;

}


  /*FOOTER*/
  .item-section ul li{
      list-style: none;
      text-decoration: none;
  }

  /* EROR 404*/

  .error .digit{
    width: 100px;   
    height: 100px;  
    line-height: 100px; 
    font-size: 80px;
    font-weight: bold;
}

  .error .msg {
    display: none;
  }


  .error .clip:nth-of-type(1) .shadow, .error .clip:nth-of-type(3) .shadow {

    width: 100px; 

  }

  .error h2 {

    font-size: 18px;
  }



}

/* Rango: small (480px - 639px) */
@media (min-width: 480px) and (max-width: 639px) {

  .nvbar{

    display: flex !important;
    justify-content: end !important;
   
  }

   /*SLIDER*/

  .slide h2{
    font-size: 1.8rem;
  }

  .slide p {
    font-size: 1.3rem;
  }


  /* HERO */
  #hero-main a{
    margin: .8rem 0;
  }

  .counter-card{

    margin: 1.5rem 0;
  }


/* MISION */
  .mision-vision-valores-section{
    padding-top: 100px;
  }


 /* EQUIPO ESPECIALISTA */
 .equipo-especialista-section{

  padding-top: 80px;

 }



/* AREAS */
  .areas-especializacion-section{
    padding-top: 100px;
  }

  .items-especializacion{
    display: flex;
    justify-content: center;
  }

  .items-areas p{

    text-align: justify;
    font-weight: 500;
    font-size: 1rem;

  }

  .card-body-content h5{

    text-align: center;
    font-size: 22px;
    padding: 16px;
  }

 .card-body-content p{

  font-size: 16px;
  
 }

 .profesional-bloque{
  margin: 2rem 0;
}


/*SERVCIOS DESTACADOS*/

  .items-destacados{

    display: flex;
    justify-content: center;
    
  }

  .items-destacados h2{

    font-size: 1.7rem;

  }

  .contenedor-servicios{

    padding: 0;
    margin: 0;

  }


  .servicios-section{

    padding:0px;
    display: flex;
    justify-content: center;

  }

  .service-card ul li{

    font-size: 1rem;

  }



/* CALIDAD - SEGURIDAD */

  .calidad-section{
    padding-top: 100px;
  }

  .item-normas p {
    font-size: 1rem;
  }
  

/*BENEFICIOS*/
.item-propuesta h4 {

  margin: 2rem 0;

}


    /*FOOTER*/
  .item-section ul li{
      list-style: none;
      text-decoration: none;
  }



  /* EROR 404*/
  .error .clip:nth-of-type(1) .shadow, .error .clip:nth-of-type(3) .shadow {

      width: 150px; 

  }

  .error h2 {

      font-size: 22px;
  }

}

/* Rango: medium (640px - 767px) */
@media (min-width: 640px) and (max-width: 767px) {

  .nvbar{

    display: flex !important;
    justify-content: end !important;
   
  }

  /*SLIDER*/

  .slide h2{

    font-size: 2.2rem;
  }

  .slide p {

    font-size: 1.2rem;

  }


/* MISION */
  .mision-vision-valores-section{
        padding-top: 100px;
    }


 /* EQUIPO ESPECIALISTA */
 .equipo-especialista-section{

  padding-top: 80px;

 }

 .card-body-content h5{

  text-align: center;
  font-size: 16px;
  padding: 12px;
}

.card-body-content p{

  font-size: 12px;
  
}



/*  AREAS */

.areas-especializacion-section{
  padding-top: 100px;
}

.items-especializacion{
  display: flex;
  justify-content: center;
}

.items-areas p{

  text-align: justify;
  font-weight: 500;
  font-size: 1rem;

}


/*SERVCIOS DESTACADOS*/

  .items-destacados{

    display: flex;
    justify-content: center;
    
  }

  .items-destacados h2{

    font-size: 1.7rem;

  }

  .contenedor-servicios{

    padding: 0;
    margin: 0;

  }


  .servicios-section{

    padding:0px;
    display: flex;
    justify-content: center;

  }

  .service-card ul li{

    font-size: 1rem;

  }




/* CALIDAD - SEGURIDAD */

  .calidad-section{
    padding-top: 100px;
  }

  .item-normas p {
    font-size: 1rem;
  }
  

/*BENEFICIOS*/
.item-propuesta h4 {

  margin: 2rem 0;

}




/* ERROR 404*/
  .error .clip .shadow{

    height: 100px;  
  }

  .error .clip:nth-of-type(2) .shadow{

    width: 80px;  
  }

  .error .clip:nth-of-type(1) .shadow, .error .clip:nth-of-type(3) .shadow{

    width: 100px; 
  }

  .error .digit{
    width: 80px;   
    height: 80px;  
    line-height: 80px; 
    font-size: 52px;
  }

  .error h2{

    font-size: 24px;
  }

  .error .msg {

    top: -110px;
    left: 15%;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 18px;
  }

  .error span.triangle{

    top: 70%;
    right: -3%;
    border-left: 10px solid #535353;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;

  }


  .error .container-error-404{

    height: 150px;

  }

}

/* Rango: large (768px - 991px) — tablets / small laptops */
@media (min-width: 768px) and (max-width: 991px) {

  .navbar > .container-fluid{
    justify-content: end;

  }



  /* HERO CSS*/
  .main-section{

    margin: 2rem 0;
  }

  .main-section a{

    margin: 1rem 0;
  }

  .container {

    grid-template-columns: 1fr;

  }

  .circle {

    width: 100px;
    height: 100px;

  }

  .number {

    font-size: 25px;
  }

  .counter-card{

    padding: 1.5rem 0rem;

  }



  
/* MISION */
.mision-vision-valores-section{

    padding-top: 100px;
}
  

   /* EQUIPO ESPECIALISTA */
.equipo-especialista-section{

  padding-top: 80px;

}

.btn-site{
  width: 120px !important;
}


/*AREAS*/
.areas-especializacion-section {

  padding-top: 100px;

}

.items-areas{
  width: 200px;
  height: 400px;
}

.items-areas i{
  font-size: 3rem;
}


.items-areas h4 {

  font-size: 1rem;

}

.items-areas p {

  font-size: .7rem;
  font-weight: 600;

}

 .card-body-content{

    height: 250px;
    padding: 10px;

 }
  .card-body-content h5{

    text-align: center;
    font-size: 16px;
    padding: 12px;
  }

 .card-body-content p{

  font-size: 12px;

 }



 /*SERVICIOS DESTACADOS*/

 .items-destacados{
  display: flex;
  justify-content: center;
  padding: 0;
}

.servicios-section{
  padding:0px;
  display: flex;
  justify-content: center;
}

.service-card ul li{
  font-size: .8rem;
  padding: 0px 20px;
  text-align: justify;
}


.arrow-container {
  flex-direction: column;
  gap: 15px;
}

.arrow-box {
  clip-path: none !important;
  border-radius: 8px;
}

.arrow-box:first-child,
.arrow-box:last-child {
  clip-path: none !important;
  padding: 10px;
  box-shadow: 0 0 10px var(--secondary-color);
}

.servicios-section h1 {
  font-size: 2rem;
}

.service-card{
 height: 350px;
}




/* CALIDAD - SEGURIDAD */

.calidad-section{
  padding-top: 100px;
}

.item-normas p {
  font-size: 1rem;
}

.texto-calidad h2 {
  font-size: 3rem;
}
  
.item-normas h4 {

  font-size: 1.7rem;

}

.item-normas p{

  font-size: 1.3rem;
  font-weight: 500;

}

/* Rango: extra large (992px - 1199px) — laptop */
@media (min-width: 992px) and (max-width: 1199px) {


  .navbar .dropdown:hover > .dropdown-menu {

    display: block;

  }

  .navbar-expand-lg .navbar-nav .dropdown-menu{

    width: 100%;
    border-radius: 0;

  }


  /* HERO CSS*/
  .container {
    grid-template-columns: 1fr;
  }

  .circle {
    width: 140px;
    height: 140px;
  }

  .number {
    font-size: 40px;
  }

  .counter-card{
    padding: .5rem 0rem;
  }

  .title {

    font-size: 20px;

  }


   /* EQUIPO ESPECIALISTA */
 .equipo-especialista-section{

  padding-top: 150px;

 }

  .card-body-content{

    height: 250px;

 }
 .card-body-content h5{
  text-align: center;
 }

 .card-body-content p{

  font-size: 14px;

 }


 /*AREAS*/
.areas-especializacion-section {

  padding-top: 100px;

}

.items-areas{
  width: 250px;
}

.items-areas i{
  font-size: 5rem;
}


.items-areas h4 {

  font-size: 1rem;

}

.items-areas p {

  font-size: .7rem;
  font-weight: 600;

}


 /* CALIDAD - SEGURIDAD */

.calidad-section{
  padding-top: 100px;
}

.item-normas p {
  font-size: 1rem;
}

.texto-calidad h2 {
  font-size: 3rem;
}
  
.item-normas h4 {

  font-size: 1.7rem;

}

.item-normas p{

  font-size: 1.3rem;
  font-weight: 500;

}
 


}

/* Rango: xxl (1200px - 1599px) — desktop */
@media (min-width: 1200px) and (max-width: 1599px) {



  /*SLIDER*/

  .slide h2{

    font-size: 4rem;

  }

  .slide p{

    font-size: 2rem;

  }

  /* HERO CSS*/
  .main-section{

    padding: 30px 2px;
  }

  .title {

    font-size: 20px;

  }

  /* EQUIPO ESPECIALISTA */
  .equipo-especialista-section{

    padding-top: 120px;

  }

  .texto-especialistas h2{

    margin: 2rem 0;

  }

  .card-body-content{

    height: 250px;

  }
  .card-body-content h5{
    text-align: center;
  }

  .card-body-content p{

    font-size: 16px;

  }


  /*AREAS*/
  .areas-especializacion-section {

    padding-top: 100px;

  }

  .items-areas{
    width: 330px;
  }

  .items-areas i{
    font-size: 5rem;
  }


  .items-areas h4 {

    font-size: 1.5rem;

  }

  .items-areas p {

    font-size: 1rem;
    font-weight: 500;

  }

  /* CALIDAD - SEGURIDAD */
  .texto-calidad h2{
    font-size: 3rem;
  }

  .calidad-section{
    padding-top: 100px;
  }

  .item-normas p {
    font-size: 1rem;
  }

  .texto-calidad h2 {
    font-size: 3rem;
  }
  
  .item-normas h4 {

    font-size: 1.7rem;

  }

  .item-normas p{

    font-size: 1.3rem;
    font-weight: 500;

  }

 

 

}

/* Min-only: ultrawide (>=1600px) */
@media (min-width: 1600px) {

  /*SLIDER*/

  .slide h2{

    font-size: 4.4rem;

  }

  .slide p{

    font-size: 2.2rem;

  }



     /* EQUIPO ESPECIALISTA */
 .equipo-especialista-section{

  padding-top: 150px;

}

.texto-especialistas h2{

  margin: 2rem 0;

}

.card-body-content{

  height: 250px;

}
.card-body-content h5{
  text-align: center;
}

.card-body-content p{

  font-size: 16px;

}


   /*AREAS*/
.areas-especializacion-section {

  padding-top: 100px;

}

.items-areas{
  width: 350px;
}

.items-areas i{
  font-size: 5rem;
}


.items-areas h4 {

  font-size: 1.5rem;

}

.items-areas p {

  font-size: 1rem;
  font-weight: 500;

}



}