body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
}
/* Fuente Regular - font-weight: 400 */
@font-face {
    font-family: 'DINPro';
    src: url('/fonts/DINPro/DINPro-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
  }
  
  /* Fuente Bold - font-weight: 700 */
  @font-face {
    font-family: 'DINPro';
    src: url('/fonts/DINPro/DINPro-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
  }
  
  /* Fuente Light - font-weight: 300 */
  @font-face {
    font-family: 'DINPro';
    src: url('/fonts/DINPro/DINPro-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
  }
  
  /* Fuente Medium - font-weight: 500 */
  @font-face {
    font-family: 'DINPro';
    src: url('/fonts/DINPro/DINPro-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
  }
  
  /* Fuente Black - font-weight: 900 */
  @font-face {
    font-family: 'DINPro';
    src: url('/fonts/DINPro/DINPro-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
  }
  
  /* Fuente Condensed Regular - font-weight: 400 */
  @font-face {
    font-family: 'DINPro Condensed';
    src: url('/fonts/DINPro/DINPro-Condensed.woff') format('woff');
    font-weight: 400;
    font-style: normal;
  }
  
  /* Fuente Condensed Bold - font-weight: 700 */
  @font-face {
    font-family: 'DINPro Condensed';
    src: url('/fonts/DINPro/DINPro-CondensedBold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
  }
  
  /* Fuente Condensed Light - font-weight: 300 */
  @font-face {
    font-family: 'DINPro Condensed';
    src: url('/fonts/DINPro/DINPro-CondensedLight.woff') format('woff');
    font-weight: 300;
    font-style: normal;
  }
  
*{
    margin: 0;
    padding: 0;
    list-style: none;
    text-decoration: none;
    font-family: 'DINPro', sans-serif !important;
    font-weight: 400;

}
.parrafo{
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
}
main{
    width: 100%;
}
.mobile{
    display: none;
    overflow: hidden;
}

.noBorderLeft{
    border-left: none !important;
}
/*BACKGROUND*/
.bg-negro{
    background: #191919;
}
.bg-blanco{
    background: white;
    color: black;
}
.bg-clarito{
    background-color: #EEE;
}
.bg-rojo{
    background: var(--rojo);
}
.bg-negro-sec{
    background-color: var(--negro-secundario);
}
.bg-gradient-transparente-negro{
    background: linear-gradient(0deg, #191919 0%, rgba(127, 127, 127, 0.00) 100%) !;
}
.bg-degradado-rojo{
    background: linear-gradient(0deg, #4F0A19 0%, #B5173A 100%);
}
.bg-dg-negro-a-rojo{
    background: linear-gradient(0deg, #BF0A33 -0.14%, #191919 99.86%);
}


/*WIDTH*/
.w100-center{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    text-align: center;
}
.w100P10{
    width: 100%;
    padding: 20px 10% !important;
}
.w90{
    width: 100%;
    margin: 0 5% !important;
}
.w80{
    width: 80%;
    margin-right: 10% !important;
    margin-left: 10% !important;
}
.w70{
    width: 100%;
    padding-right: 15% !important;
    padding-left: 15% !important;
}
.h75vh{
    height: 75vh !important;
}
.img-center{
    object-position: center !important;
}
.img-top{
    object-position: top !important;
}
.m5prcent{
    margin-left: 5% !important;
    margin-right: 5% !important;
}
.w-min-content-center{
    width: min-content;
    white-space: nowrap;
}
.color-white{
    color: white !important;
}
.color-black{
    color: black !important;
}
.line-bottom{
    border-bottom: 1px solid white;
}

.highlight {
    background-color: yellow;
}
:root {
    --negro: #191919;
    --negro-secundario: #2b2b2bcb;
    --rojo: #BF0A33;
    --gris: #EEEEEE;
}
.section{
    padding: 50px 80px 50px 80px;
}
#header{
    z-index: 100;
    width: 100%;
    background: black !important;
}
/*TITULOS*/
#titulo-principal-index{
    width: 90%;
    margin-left: 5%;
}
#titulo-principal-index p{
    width: 80%;
}
.contenedor-titulo-principal{
    gap: 10px;
    width: 80% ;
    padding: 0 0 0 15px !important;
    margin: 50px 10% 25px 10%;
    text-wrap: wrap !important;
    align-items: flex-start;
    margin: 50px 0 10px 0;
    border-left: 8px solid var(--rojo);
}
.margin0{
    margin: 0px !important;
}
.mb25{
    margin-bottom: 25px !important;
}
.mb50{
    margin-bottom: 50px !important;
}
.mb100{
    margin-bottom: 100px !important;
}
.mt25{
    margin-top: 25px;
}
.mt50{
    margin-top: 50px;
}
.mt100{
    margin-top: 100px !important;
}
.contenedor-titulo-principal h1{
    color: #FFF;
    font-size: 32px;
    margin: 10px 0 10px 0;
    font-style: normal;
    text-transform: uppercase;

    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}
.contenedor-titulo-principal p{
    font-size: 20px;
    font-style: normal;
    font-weight: 300;
    color: var(--negro-secundario);
    line-height: normal;
}
.contenedor-info{
    padding: 50px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.contenedor-info .info-cont-text, .contenedor-info .info-cont-img{
    width: 48%;
}
.contenedor-info img{
    width: 100%;
    border-radius: 10px;
}
.contenedor-info .info-cont-text h1{
    color: #000000;
    font-size: 32px;
    margin: 10px 0 10px 0;
    width: 70%;
    font-style: normal;
    text-transform: uppercase;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}
.contenedor-info .info-cont-text p{
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.boton-blanco-grande{
    display: inline;
    font-size: 16px;
    color: #BF0A33;
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    text-decoration: none;
    list-style: none;
    padding: 12px 60px;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    background: #FFF;
}
.boton-blanco-grande:hover{
    background-color: var(--gris);
    transition: 0.5s ease;
}

.boton-rojo-grande{
    display: inline;
    font-size: 16px;
    color: #ffffff;
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    text-decoration: none;
    list-style: none;
    padding: 12px 60px;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    background: var(--rojo);
}
.boton-gris-grande{
    display: inline;
    font-size: 16px;
    color: var(--negro);
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    text-decoration: none;
    list-style: none;
    padding: 12px 100px;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    background: var(--gris);
}
.boton-gris-grande:hover{
    display: inline;
    background-color: rgb(241, 241, 241);
 
}
.boton-rojo-grande:hover{
    background-color:#ac0028;
    transition: 0.5s ease;
}
.boton-antes-despues{
    display: inline;
    font-size: 16px;
    color: var(--rojo);
    text-align: center;
    font-size: 14px;
    font-style: normal;
    margin: 0 10%;
    padding: 12px 0;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    text-decoration: none;
    list-style: none;
    width: 100%;
    justify-content: center;
    border-radius: 5px;
    align-items: center;
    background: white;
    border: 2px solid var(--rojo);
}


/*HEADER*/
#header{
    background-color: var(--negro) !important;
    color: white !important;
    padding: 16px 2.5% 16px 2.5% ;
}
.navbar-expand-lg .navbar-collapse {
    justify-content: center!important;
}
#header li a{
    color: white ;
}
#header li{
    list-style: none !important;
}
/* Si deseas que el icono sea completamente blanco, también puedes agregar: */
.navbar-toggler, .navbar-toggler-icon {
    border-color: white !important; /* Cambia el color del borde a blanco */
    color: white !important;
}
.navbar-toggler .navbar-toggler-icon {
   color: white !important; /* Cambia el color de fondo a blanco */
}
#header .dropdown-item{
    color: grey !important;
}
#header img{
    max-width:  150px !important;
}

/*FOOTER */
    footer{
        margin-top: 50px;
        background-color: black !important;
    }
    .border-top-white {
        border-top: 1px solid white;
    }
    .footer-cont-contacto{
      display: flex;
      justify-content: space-around;
      text-align: justify;
      align-items: center;
    }
    #footer1-cont-text{
      text-align: justify;
    }
    #footer2-cont{
      background-color: var(--azul);
      width: 100%;
      display: flex;
      color: white;
      padding: 25px 10% 50px 10%;
      justify-content: space-between;
      flex-wrap: wrap;
      align-items: center;
      text-align: center;
    }
    #footer2-cont img{
      width: 200px;
    }
    .cont-redes-footer2{
      display: flex;
      justify-content: start;
      flex-wrap: wrap;
      align-items: center;
      width: 30%;
      padding-left: 15px;
    }
    .cont-redes-footer2 p{
      width: 100%;
      text-align: left;
    }
    .footer-red{
      width: 100%;
      display: flex;
      justify-content: start;
      align-items: center;
      align-content: center;
      color: white;
      margin-top: 15px;
    }
    #location-footer{
      align-items: normal;
    }
    .footer-red iconify-icon{
      font-size: 26px;
      margin-right: 10px;
      font-weight: 200;
    }
    .footer-red a{
      color: white;
      list-style: none;
      text-align: left;
      text-decoration: none;
  
    }
    .footer-red2 iconify-icon{
      font-size: 34px;
      margin-right: 10px;
      font-weight: 100;
    }
    .footer-red2 a{
      color: white;
    }
    #footer3-cont{
      background: var(--negro-secundario);
      padding: 10px 10% 2px 10%;
      font-weight: 400;
      color: white;
      font-size: 14px;
    }
    #footer3-cont a{
      color: white;
      font-weight: 700;
    }
/*HERO SECTION*/
.hero-section{
    width: 100%;
    height: 90vh;
    background-color: var(--gris);
}
.hero-tittle-cont{
    margin-bottom: 20px;
}

.hero-section img{
    width: 100%;
    height: 90vh;
    object-fit: cover;
    object-position: bottom;
    z-index: -5;
}
.hero-section p{
    color: #FFF;
    margin-top: 10px;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.7);
    line-height: normal;
    padding-left: 27px;
    width: 650px;
}
.hero-section video{
    width: 100%;
    object-fit: cover;
}


.hero-section h1{
    padding: 0px 15px;
    width: min-content;
    text-wrap: nowrap;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.7);
    font-size: 54px;
    margin: 10px 0 10px 0;
    border-left: 8px solid var(--rojo);
    color: white;
    font-weight: 600;
    line-height: 60px;
    text-transform: uppercase;
}
.hero-principal-info{
    bottom: 0 !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-left: 5% !important;
    background: #46464600 !important;
    top: 0 !important;
    width: 60%;
}
.hero-section .info {
    position: absolute;
    padding-left: 80px;
    bottom: 0;
    margin-bottom: 20vh;
    margin-top: 250px;
    background: #46464698;;
    width: min-content;
}
/*PAG CAPACITACIONES*/
#hero-capacitaciones{
    object-position: top !important;
}
#pag-capacitaciones .hero-section .info{
    margin-top: 50vh;
}
/*MENU LATERAL HERO SECTION*/
.hero-cont{
    position: absolute;
    top: 0;
    height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
.hero-cont  .info{
    position: initial !important;
    margin-top: auto;
    margin-left: 0 !important;
    top: 0 !important;
    max-width: 70%;
}
.section-menu-cont-item{
    display: flex;
    flex-direction: column;
    padding: 6px 0px 6px 20px;
    border-radius: 2px 0 0 2px;
}
.section-menu-cont-item a{
    color: white;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 600;
    padding: 8px 50px 8px 20px;
    text-decoration: none;
    border-top: 1px solid white;
    background-color: rgba(0, 0, 0, 0.393);

}
.section-menu-cont-item a:hover {
    background-color: rgba(0, 0, 0, 0.5);
}
.noBorder{
    border-top: none !important;
}

/*index -> horizontal cards CTA*/
#products-cta-section{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 5%;
}
.product-horizontal-card{
    display: flex;
    justify-content: space-between;
    cursor: pointer !important;
    align-items: center;
    flex-wrap: wrap;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 25px;
    background: rgb(234, 234, 234);
    margin-top: 20px;
    border-radius: 10px;
    /* padding-top: 50px; */
    /* min-height: 400px; */
    /* padding-bottom: 50px; */
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.353);
    border-top: 1px solid #ffffff1f;
}
.product-horizontal-card:hover{
    box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.5);
}
.product-horizontal-card h2{
    color: #000000;
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
    height: 52px;
    margin: 0 0 10px 0;
}

.product-horizontal-card-cont-links{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px;
}
.product-horizontal-card-cont-links a{
    color: #000000;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    text-transform: uppercase;
    text-underline-offset: 2px; /* Ajusta este valor según sea necesario */
}
.product-horizontal-card-cont-info a:hover{
    color: #900000;
    transition: 0.5s ease;
}
.product-horizontal-card-cont-image{
    display: flex;
    justify-content: center;
    width: 30%;
}
.product-horizontal-card-cont-image img {
    max-height: 300px;
    transition: transform 0.5s ease; /* Añade una transición suave */
}

.product-horizontal-card:hover .product-horizontal-card-cont-image img {
    transform: scale(1.15); /* Escala la imagen al hacer hover */
}
.product-horizontal-card-cont-info{
    width: 70%;
    padding: 0 25px;
}

.product-horizontal-card p{
    padding: 20px 0 20px 0;
    color: #000000;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
.product-card {
    border: 1px solid #ccc;
    padding: 16px;
    margin: 16px;
    text-align: center;
    width: 31% !important;
}

.product-card img {
    max-width: 100%;
}

/*INDEX -> BANNER SECTION*/
#banner-section{
    width: 100%;
    padding: 50px 0 75px 0;
    background-color: white;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
}
.banner{
    width: 100%;
    height: 500px;
    display: flex;
    justify-content: center;
    margin-bottom: 12px;
    padding: 0 10%;
    flex-direction: column;
    background-size: cover;
    background-color: rgba(0, 0, 0, 0.5); /* Negro con 50% de transparencia */
    background-repeat: no-repeat;
    position: relative; /* Necesario para posicionar el pseudo-elemento correctamente */
    overflow: hidden; /* Asegura que el pseudo-elemento no se desborde */
}
.banner .mobile{
    display: none;
    overflow: hidden;
}
.banner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
 /* Ajusta la opacidad según sea necesario */
    z-index: 1; /* Asegura que el pseudo-elemento esté detrás del contenido */
    transition: 0.5s ease;
}
.banner h3{
    color: #FFF;
    width: max-content;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.7);

    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    position: relative;
    padding: 5px 15px;
    gap: 5px;
    margin: 4px 0 4px 0;
    z-index: 50;
    border-left: 8px solid var(--rojo);
}



.banner a{
    width: 200px !important;
    position: relative;
    z-index: 50;
    margin-top: 16px;
}
#banner1{
    background-image: url(Recursos/imagenes/movistarArena.JPG);
    background-position-y: 45%;
}
#banner1::before , #banner2::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3); /* Negro con 50% de transparencia */
    z-index: 1; /* Se asegura de que esté por encima de la imagen */
}

#banner1 *, #banner2 * {
    position: relative;
    z-index: 2; /* Asegura que el contenido del banner esté por encima de la capa negra */
}
#banner2{
    background-image: url(Recursos/imagenes/capacitaciones-fondo.jpg);
    background-position-y: 38%;
    background-position-x: right

}

/*SECTION SISTEMA NEW CONCRET*/
.sistemaNewConcret-section{
    background-color: white;
    padding-bottom: 75px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
}
.sistemaNewConcret-section .contenedor-titulo-principal{
    text-align: center;
    color: var(--negro) !important;
    margin: 0 !important;
    padding: 0 !important;
}
.sistemaNewConcret-section .contenedor-titulo-principal p, .sistemaNewConcret-section .contenedor-titulo-principal h1{
    color: var(--negro) !important;
}
.sistemaNewConcret-section .antes-despues-cont{
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
    margin: 25px 0 25px 0;
}
.sistemaNewConcret-section .antes-despues-cont div{
    width: 48%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.sistemaNewConcret-section .antes-despues-cont div p{
    margin-top: 16px;
    font-weight: 600;
}
.sistemaNewConcret-section .antes-despues-cont div img{
    width: 100%;
    border-radius: 10px;
}
.sistemaNewConcret-section .antes-despues-cont a{
    margin-top: 75px;

}

/* BANNER SATISFACCIÓN GARANTIZADA */
.satisfaccion-section {
    padding: 50px 0;
}

#satisfaccion-section-cont {
    width: min-content;
    text-wrap: nowrap;
}

.satisfaccion-section .contenedor-titulo-principal {
    padding: 0 0 10px 0 !important;
}

.satisfaccion-section .contenedeor-datos-numericos {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding-top: 10px;
    color: white;
    text-align: center;
    margin-bottom: 16px;
}

.satisfaccion-section .contenedeor-datos-numericos .counter {
    font-size: 42px;
    font-weight: 500;
    padding-right: 5px;
}

.satisfaccion-section .contenedeor-datos-numericos .counter::before {
    content: "+";
    font-size: 48px;
    font-weight: 500;
    margin-right: 5px;
}

.satisfaccion-section .contenedeor-datos-numericos p {
    font-size: 18px;
    font-weight: 300;
}
    /*seccion en la página de sistema new concret (con la img a la izquierda)*/
    #satisfaccion-section-sistema-new-concret{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
        color: rgb(0, 0, 0) !important;
        margin-top: 50px;
        padding: 25px 10% !important; 
        width: 100%;
    }
    #satisfaccion-section-sistema-new-concret h1, .satisfaccion-section p {
        color: rgb(0, 0, 0) !important;
    }
    #satisfaccion-section-img{
        width: 30% !important;
    }

    #satisfaccion-section-img img{
        width: 100%;
        border-radius: 5px;
    }
    #satisfaccion-section-sistema-new-concret #satisfaccion-section-cont{
        width: 65% !important;
        margin-left: 5% !important;
        height: min-content;
    }
    #satisfaccion-section-sistema-new-concret .contenedeor-datos-numericos span{
        color: var(--rojo) !important;
    }
    #pag-sist-new-concret .satisfaccion-section .contenedor-titulo-principal h1, #pag-sist-new-concret .satisfaccion-section .contenedor-titulo-principal p {
        color: var(--negro) !important;
    }
    #pag-sist-new-concret .dato-numerico p{
        color: var(--negro);
    }

/*Sistema NEWCONCRET -> LINEA DE TIEMPO SECTION*/
#linea-de-tiempo-cont-img{
    width: 100%;
}
#linea-de-tiempo-cont-img img{
    width: 100%;
    height: auto;
}
#linea-de-tiempo-cont-text{
    display: flex;
    justify-content: space-between;
    margin-top: 24px;
    padding-bottom: 100px;
}
#linea-de-tiempo-cont-text div{
    width: 19%;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.512);
    padding: 15px;
    border-radius: 5px;
    color: white;
    background-size: cover;
    padding-top: 150px;
    background-position: center;
    position: relative;
}
/*Sistema NEWCONCRET -> LINEA DE TIEMPO SECTION*/
#linea-de-tiempo-cont-img{
    width: 100%;
}
#linea-de-tiempo-cont-img img{
    width: 100%;
    height: auto;
}
#linea-de-tiempo-cont-text{
    display: flex;
    justify-content: space-between;
    margin-top: 24px;
    padding-bottom: 100px;
}
#linea-de-tiempo-cont-text div{
    width: 19%;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.685);
    padding: 15px;
    border-radius: 5px;
    color: white;
    background-size: cover;
    padding-top: 200px;
    background-position: center;
}
#linea-de-tiempo-cont-text div::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 70%;  /* Ajusta según la cantidad de degradado que quieras */
    background: linear-gradient(to top, rgba(67, 67, 67, 0.7), rgba(0, 0, 0, 0));  /* Degradado de negro a transparente */
    z-index: 1;  /* Para que el degradado esté sobre la imagen */
}
#linea-de-tiempo-cont-text h3{
    font-size: 20px;
    font-style: normal;
    display: inline;
    font-weight: 600;
    line-height: normal;

}
#linea-de-tiempo-cont-text p{
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
#linea-de-tiempo-cont-text h3{
    font-size: 20px;
    font-style: normal;
    display: inline;
    font-weight: 600;
    line-height: normal;

}
#linea-de-tiempo-cont-text h3, #linea-de-tiempo-cont-text p {
    position: relative;
    z-index: 2;  /* Asegura que el texto esté encima del degradado */
}


/*PAG CURSO TEORICO PRACTICO*/
    /*DAta section (3 pasos)*/
#data-curso-section{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    height: 500px;
}

.data-curso-cont-img{
    width: 55%;
    height: 100%;
}

.data-curso-cont-img img{
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.data-curso-cont-info{
    width: 44%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    gap: 1% 0;
}

.data-curso-cont-info div{
    border-radius: 5px;
    height: 30%;
    background-color: #eee;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 20px;
    padding: 25px 50px;
}

.data-curso-cont-info span{
    color: var(--rojo);
    font-size: 64px;
    font-style: normal;
    font-weight: 300;
}

.data-curso-cont-info p{
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin: 0;
}
    /*Info section (el parrafo largo)*/
    #curso-description-section{
        margin-top: 50px;
        margin-bottom: 50px;
    }
    #curso-description-section p{
        margin: 8px 0;
        font-size: 18px;
    }

    /*CTA*/
    #curso-cta{
        padding: 100px 0;
        text-align: center;

    }
    #curso-cta h1{
        font-size: 36px !important;
        margin-bottom: 25px;
        text-transform: uppercase;
        color: white;
        font-weight: 600;

    }

    #pag-capacitaciones .footer{
        margin-top: 0 !important;
    }

    /*CARACT HORMIGON PULIDO*/
    #propositos-section{
        background-repeat: no-repeat;
        background-size: cover;
        padding-bottom: 100px;
    }
    #propositos-cont{
        display: flex;
        flex-wrap: wrap;
        justify-content: left;
        gap: 0 100px;
    }
    .parrafo-cont{
        color: white;
        font-size: 18px;
        margin:  16px 0 16px 0;
        width: 40%;
    }
    .parrafo-cont p{
        border-left: 3px solid var(--rojo);
        padding-left: 10px;
    
    }

    #hormigon-pulido-pag .satisfaccion-section, #hormigon-pulido-pag .sistemaNewConcret-section { 
        padding: 100px 0;
    }

    /*Carrousel hormigon pulido*/
    #carrousel-hormigon-piulido{
        display:flex;
        align-items:center;
        justify-content:center;
        flex-direction:column;
        background:#eee;
    }
    #carrousel-hormigon-piulido img{
       width: 100%;
    }

    .cards-wrapper {
        width:100%;
        height:400px;
        overflow-x:hidden;
        position:relative;
      }
      
      .cards {
        position:absolute;
        top:15px;
        left:50%;
        padding-top: 50px;
        padding-bottom: 50px;
        transform:translateX(-110px);
        display:flex;
        flex-direction:row;
        gap: 25px;
        width:100%;
        justify-content:space-between;
      }
      
      .card {
        width:220px;
        height:275px !important;
        border-radius:14px;
        border:none;
        font-family: 'Open Sans', sans-serif;
        letter-spacing:0.5px;
        padding: 10px;
        display:inline;
        cursor:pointer;
        box-sizing:border-box;
        color:#000;
      }
      
      .card h2 {
        font-size:16px;
        font-weight:400;
        margin-top:1.25em;
      }
      
      .card h4 {
        text-transform:uppercase;
      }
      
      .icon svg {
        overflow:visible;
        stroke-width:1.25em;
        width:3em;
      }
      
      .cards-wrapper::after {
        content:'';
        display:block;
        position:absolute;
        top:0;
        width:100%;
        height:100%;
        background:linear-gradient(90deg, #eee 0%, #ffffff00 30%, #ffffff00 70%, #eee 100%);
        pointer-events:none;
      }
      
      .arrow-btn {
        width:40px;
        height:40px;
        background:#fff;
        border-radius:50%;
        border:none;
        box-shadow: 0 6px 8px #00000030;
        position:absolute;
        top:50%;
        left:20px;
        transform:translateY(-50%);
        z-index:1000;
        cursor:pointer;
      }
      
      .arrow-btn-next {
        left:auto;
        right:20px;
      }
      
      .arrow-btn svg {
        fill:#333;
        position:absolute;
        height:80%;  
        left:50%;
        top:50%;
        transform:translate(-60%,-50%);
      }
      
      .arrow-btn-next svg {
        transform:translate(-40%,-50%);
      }

    /*CARDS PRODUCTOS*/
    .pag-prdocutos .contenedor-titulo-principal{
        margin-top: 50px !important;
        margin-bottom: 50px !important;
    }
    .pag-prdocutos footer{
        background-color: #191919 !important;
    }
    .product-section{
        width: 100%;
        display: flex;
        justify-content: space-between;
        padding: 0 5%;
    }
    
    #productos-container{
        display: flex;
        width: 80%;
        justify-content: left;
        gap: 20px 2%;
        flex-wrap: wrap;
        align-items: center;
        align-content: center;
    }   
    .product-card {
        padding: 10px 24px 24px 24px;
        margin: 0 !important;
        background-color: white;
        transition: box-shadow 0.3s ease;
        cursor: pointer;
        position: relative;
        width: 31% !important;
        text-align: left;
        border-radius: 15px;
        min-height: 550px;
    }

    .product-card h3{ 
        color: #8B8B8B;
        font-size: 16px;
        font-weight: 400;
        line-height: normal;
        display: block;
    }
    .product-card h2{ 
        color: #000;
        font-size: 24px;
        font-weight: 600;
        line-height: normal;
        display: block;
        text-transform: uppercase;
    }
    .product-card span{
        color: #6f6f6f;
        font-size: 14px;
        font-weight: 400;
        line-height: normal;
        display: block;
    }
    .product-card p{
        color: #000;
        font-size: 16px;
        font-weight: 500;
        line-height: normal;
        margin: 4px 0 8px 0;
        display: block;
    }
    .product-card .cont-caract{
        display: flex;
        width: 100%;
        justify-content: space-between;
        align-items: center;
        text-align: left;
        flex-wrap: wrap;
        gap: 8px 0;
    }
    .product-card .cont-caract div{
        width: 100%;
    }
    .maquinas .cont-caract div{
        width: 49% ;
    }


    .product-card:hover {
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    }

    .product-card img {
        max-width: 100%;
        height: auto;
        display: block;
        margin-bottom: 0;
    }

    .product-card h2 {
        font-size: 1.5em;
        margin: 0 0 8px 0;
    }

    .product-card h3 {
        font-size: 1.2em;
        margin: 0 0 8px 0;
    }

    .product-card a {
        position: absolute;
        bottom: 16px;
        left: 16px;
        right: 16px;
        text-align: center;
        display: block;
        padding: 8px;
        background: #007BFF;
        color: white;
        text-decoration: none;
        border-radius: 4px;
    }

    .product-card a:hover {
        background: #0056b3;
    }

    /*CHEKBOXES*/
    .form-check-input[type=checkbox] {
        border-radius: .25em;
        border: 1px solid black;
    }
    #checkboxes-container{
        width: 20%;
    }
    #checkboxes-container h3{
        margin: 16px 0 8px 0;
        color: #000;
        font-size: 20px;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
    }
    #checkboxes-container .filtrar{
        color: #000;
        font-size: 24px;
        font-style: normal;
        font-weight: 600;
        width: 80%;
        line-height: normal;
        display: block;
        padding-bottom: 4px;
        border-bottom: 2px solid black;
        text-transform: uppercase;
    }
    .nav-product-section{
        margin-bottom: 0;
        margin-top: 50px;
        padding: 10px 0 0 5%;
        font-size: 18px;
        text-align: center;
    }
    .nav-product-section a{
        color: black !important;
    }

/* LOGO SLIDER */
#logo-slider-section {
  width: 100%;
  background-color: white;
}

.container {
  overflow: hidden;
  width: 100%;
  max-width: 1500px !important;
}

.slider {
  width: 350%; /* Ajusta el ancho para incluir dos conjuntos de logos */
  display: flex;
  animation: slidein 30s linear infinite;
}

.logos {
  display: flex;
  width: 50%; /* Cada conjunto de logos ocupa la mitad del slider */
}

.logos i {
  flex: 1; /* Asegura que todos los logos se distribuyan equitativamente */
  display: flex;
  justify-content: center;
  align-items: center;
  height: 150px; /* Ajusta la altura del contenedor según sea necesario */
}

.logos img {
  max-width: 100%;
  height: auto;
  max-height: 100%; /* Asegura que las imágenes no se estiren */
}



@keyframes slidein {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-50%); /* Mueve el slider solo un 50% */
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*SLIDER DE IMAGENES SISTEMA NEW CONCRET*/

.carousel-wrap {
    margin: 25px auto;
    padding: 30px 5%;
    width: 90%;
    position: relative;
  }
  .carousel-wrap img{
    height: 100%;
    width: 100%;
    object-fit: fill;
  }
  /* fix blank or flashing items on carousel */
  .owl-carousel .item {
    position: relative;
    z-index: 100;
    -webkit-backface-visibility: hidden;
  }
  
  /* end fix */
  .owl-nav > div {
    margin-top: -26px;
    position: absolute;
    top: 50%;
    color: #cdcbcd;
  }
  
  .owl-nav i {
    font-size: 52px;
  }
  
  .owl-prev, .owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    padding: 10px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 40px !important;
    color: gray !important;
  }
  .owl-prev:hover, .owl-next:hover{
      color: var(--rojo) !important;
      transition: 0.5 ease;
  }
  
  .owl-prev {
    left: -40px;

}
  
  .owl-next {
    right: -40px;
  }
  
  .owl-prev:hover, .owl-next:hover {
    background-color: rgba(0, 0, 0, 0.8);
  }
  /*ANTES Y DESPYES*/
  #sec-antes-despues{
    display: flex   ;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #sec-antes-despues div{
    width: 48%;
    margin-top: 20px;
  }
  #sec-antes-despues img{
    width: 100%;
    height: 500px;
    object-fit: cover;
  }
  #sec-antes-despues h4{
    background-color: var(--rojo);
    color: white;
    text-align: center;
    font-weight: 600;
  }

  /* Tooltip personalizado */
div.tooltip {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 12px;
    pointer-events: none;
    z-index: 1000;
    display: none;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
  }
  
    @media screen and (min-width: 1024px){
    .navbar-expand-lg .navbar-collapse {
        display: flex !important;
        /* flex-basis: auto; */
        justify-content: space-between !important;
    }
}
/* Media query para tablets en modo horizontal (landscape) */
@media screen and (max-width: 1024px) {
    /* GENERAL */
    .h55vh{
        height: 55vh !important;
    }
    .contenedor-titulo-principal h1{
        font-size: 32px;
        display: block;
    }
    .contenedor-titulo-principal p{
        font-size: 18px;
        display: block;

    }
    
    .boton-blanco-grande, .boton-rojo-grande, .product-horizontal-card-cont-links a{
        font-size: 14px;
    }
    .w80{
        width: 90%;
        padding-right: 5% !important;
        padding-left: 5% !important;
    }
    .w70{
        width: 100%;
        padding-right: 10% ;
        padding-left: 10% ;
    }
    /*HERO*/
    .hero-section p {
        font-size: 16px;
        width: 100%;
    }
    .hero-section, .hero-section img, .hero-cont {
        height: 60vh;
    }
    .hero-cont{
        margin-top: 70px;
    }
    .section-menu{
        width: 100%;
        display: flex;
        justify-content: end;
    }

    .img-mobile-right{
        object-position: right !important;
    }



    /* INDEX -> PRODUCTS HORIZONTAL CARDS*/
    .product-horizontal-card, .contenedor-titulo-principal{
        padding-right: 5% !important;
        padding-left: 5% !important;
    }
    .product-horizontal-card h2 {
        font-size: 28px;
    }
    .product-horizontal-card-cont-info {
        width: 65%;
    }
    .product-horizontal-card-cont-image img {
        max-width: 100%;
    }
       /* FOOTER */
       #footer-cont1 h2 {
        font-size: 22px;
      }
    #footer2-cont{
        padding: 25px 5% 25px 5%;
    }
      #footer-cont1 iconify-icon {
        font-size: 30px;
      }
      .footer-cont-contacto {
        margin-top: 20px;
      }
      .cont-redes-footer2{
        width: 100%;
        margin-top: 30px;
      }
      #cont2-footer{
        margin-top: 50px;
      }
      .footer-red2 iconify-icon{
        font-size: 40px;
        margin-right: 20px;
        font-weight: 100;
      }
      .footer-red2 a{
        color: white;
      }
      #footer3-cont{
        padding: 20px 5% 20px 5%;
        font-weight: 400;
        color: white;
      }

      /*LINEA DE TIEMPO*/
      #imagen-linea-tiempo{
        display: none;
        overflow: hidden;
      }

      #linea-de-tiempo-cont-text{
        flex-wrap: wrap;
        gap: 16px;
        padding-bottom: 50px;
        margin-top: 0;
      }
      #linea-de-tiempo-cont-text div{
        width: 100%;
      }
      /*carrousel hormigon pulido*/
      #carrousel-hormigon-piulido{
        display:flex;
        align-items:center;
        justify-content:center;
        flex-direction:column;
        background:#ffffff;
    }
    #carrousel-hormigon-piulido img{
       width: 100%;
    }

    .cards-wrapper {
        width:100%;
        height:450px;
        max-width:1000;
        overflow-x:hidden;
        position:relative;
      }
      
      .cards {
        position:absolute;
        top:15px;
        left:50%;
        transform:translateX(-50px);
        display:flex;
        flex-direction:row;
        width:1300px;
        justify-content:space-between;
      }
      
      .card {
        width:220px;
        height:260px;
        border-radius:14px;
        border:none;
        font-family: 'Open Sans', sans-serif;
        letter-spacing:0.5px;
        padding: 10px;
        display:inline;
        cursor:pointer;
        box-sizing:border-box;
        color:#000;
      }
      
      .card h2 {
        font-size:16px;
        font-weight:300;
        margin-top:1.25em;
      }
      
      .card h4 {
        text-transform:uppercase;
      }
      
      .icon svg {
        overflow:visible;
        stroke-width:1.25em;
        width:3em;
      }
      
      .cards-wrapper::after {
        content:'';
        display:block;
        position:absolute;
        top:0;
        width:100%;
        max-width:1000;
        height:100%;
        background:linear-gradient(90deg, #eee 0%, #ffffff00 30%, #ffffff00 70%, #eee 100%);
        pointer-events:none;
      }
      
      .arrow-btn {
        width:40px;
        height:40px;
        background:#fff;
        border-radius:50%;
        border:none;
        box-shadow: 0 6px 8px #00000030;
        position:absolute;
        top:50%;
        left:20px;
        transform:translateY(-50%);
        z-index:1000;
        cursor:pointer;
      }
      
      .arrow-btn-next {
        left:auto;
        right:20px;
      }
      
      .arrow-btn svg {
        fill:#333;
        position:absolute;
        height:80%;  
        left:50%;
        top:50%;
        transform:translate(-60%,-50%);
      }
      
      .arrow-btn-next svg {
        transform:translate(-40%,-50%);
      }


     /*SATISFACCION SECTION*/   
     #satisfaccion-section-sistema-new-concret #satisfaccion-section-cont {
        width: auto ;
        height: min-content;
    }
    #satisfaccion-section-sistema-new-concret .contenedor-titulo-principal {
        width: 100%;
    }
     #satisfaccion-section-cont {
        width: auto;
        justify-content: center;
        text-align: center ;
        height: min-content;
    }
    .dato-numerico, .satisfaccion-section .contenedor-titulo-principal {
        justify-content: center ;
        text-align: center;
    }
     .contenedeor-datos-numericos{
        margin-bottom: 0;
    }
    .contenedeor-datos-numericos P{
        padding-left: 0px;
    }
    #satisfaccion-section-img {
        width: 100%;
        margin-bottom: 50px;
        /* height: 400px; */
    }
    #satisfaccion-section-img img{
        width: 100%;
        object-fit: cover;
        height: 600px; 
    }

    /*PAGINA CAPACITACIONES*/
    #pag-capacitaciones .hero-section .info {
        margin-top: 30vh;
    }

    /*PRODUCTOS*/
    .product-card {
        width: 49% !important;
    }

}
/* Media query para tablets en modo vertical (portrait) */
@media screen and (max-width: 768px) {
    /* Estilos específicos para tablets en modo vertical */

        /*HERO*/
    .hero-section {
        height: 70vh;;
    }  
    #satisfaccion-section-img {
        width: 100% !important;
        margin-bottom: 50px;
        /* height: 400px; */
    }
    #satisfaccion-section-cont{
        width: 100% !important;
        margin: 0!important;
    }

    .hero-section img, .hero-cont{
        height: 70vh;;
    }  
    .hero-cont .section-menu a{
        font-size: 14px;
        padding-right: 10px;
    }
    .hero-section .info, .hero-cont .info {
            /* margin-left: 10px !important; */
            width: 100%;
            padding-right: 10%;
            padding-left: 2%;
            margin-bottom: 0;
            max-width: 100%;
            height: min-content;
            top: auto;
            padding-bottom: 5%;
            margin-top: 25vh;
    }
    .hero-cont .info {
        margin-left: 0 !important;
    }

    .hero-section h1 {
        padding: 5px 15px;
        gap: 5px;
        font-size: 28px;
        margin: 4px 0 4px 0;
        color: white;
        display: flex;
        font-weight: 600;
        flex-wrap: wrap;
        line-height: 32px;
        width: auto;
        text-transform: uppercase;
    }


     /* GENERAL */
     .desktop{
        display: none;
        overflow: hidden;
    }
    .mobile{
        display: block !important;
        overflow: visible !important    ;
    }
     .contenedor-titulo-principal{
        text-align: left !important;
    }
     .contenedor-titulo-principal h1{
        font-size: 24px;
    }
    .contenedor-titulo-principal p{
        font-size: 16px;
    }

        /* LOGO SLIDER */
    #logo-slider-section {
        width: 100%;
        background-color: white;
    }
    
    .container {
        overflow: hidden;
        width: 100%;
        max-width: 800px !important;
    }
    
    .slider {
        width: 800%; /* Ajusta el ancho para incluir dos conjuntos de logos */
        display: flex;
        animation: slidein 20s linear infinite;
    }
    
    .logos {
        display: flex;
        width: 50%; /* Cada conjunto de logos ocupa la mitad del slider */
    }
    
    .logos i {
        flex: 1; /* Asegura que todos los logos se distribuyan equitativamente */
        display: flex;
        justify-content: center;
        align-items: center;
        height: 150px; /* Ajusta la altura del contenedor según sea necesario */
    }
    
    .logos img {
        max-width: 100%;
        height: auto;
        max-height: 100%; /* Asegura que las imágenes no se estiren */
    }
    

    /*PRODUCT HORIZONTAL CARD*/
    .product-horizontal-card{
        gap: 10px;
    }
    .product-horizontal-card h2{
        font-size: 22px;
        height: auto;
        margin-top: 25px;
    }
    .product-horizontal-card p{
        font-size: 16px;
    }
    .product-horizontal-card-cont-image, .product-horizontal-card-cont-info{
        width: 100%;
        justify-content: left;
    }


    /*INDEX -> BANNER SECTION*/
    .banner{
        display: flex;
        padding: 0 5% 0 5%;
    }

    .banner h3 {
        width: 100%;
        font-size: 24px;
        padding: 5px 8px;
    }
    #banner2{
        background-position-x: 20%;
        background-image: url(Recursos/imagenes/CAPACITACION\ PRACTICA-mobile.JPG);
    }

    /*SISTEMA NEW CONCRET SECTION*/
    .satisfaccion-section{
        width: 100% !important;
        padding: 0 !important;
        text-align: center !important;
    }
    .sistemaNewConcret-section .antes-despues-cont div {
        width: 100%;
    }

    /*CONTADORES SECTION*/
    #satisfaccion-section-cont, #satisfaccion-section .contenedeor-datos-numericos, .dato-numerico, #satisfaccion-section .contenedor-titulo-principal{ 
        width: 100% !important;
        text-align: center;
    }

 
    #satisfaccion-section-sistema-new-concret #satisfaccion-section-cont {
    width: 100%;
    height: min-content;
}

    #satisfaccion-section-sistema-new-concret #satisfaccion-section-cont {
        width: 100% !important;
        margin-left: 0% !important;
        text-align: center !important;
        /* height: min-content; */
    }
    .satisfaccion-section .contenedeor-datos-numericos{
        flex-wrap: wrap;
        padding-top: 50px;
    }
    .dato-numerico{
        padding: 24px 0;
    }
    .dato-numerico p{
        padding-left: 40px;
    }
    #satisfaccion-section-sistema-new-concret .dato-numerico p{
        padding-left: 0px !important;
    }
    .dato-numerico span{
        line-height: 0;
    }
    .satisfaccion-section .contenedor-titulo-principal {
        padding: 25px 0 20px 0 !important;
    }

    /*PAGINA CAPACITACIONES*/
    #pag-capacitaciones .hero-section .info {
        margin-top: 40vh;
    }
    #linea-de-tiempo-cont-img{
    width: 100%;
}
#linea-de-tiempo-cont-img img{
    width: 100%;
    height: auto;
}
#linea-de-tiempo-cont-text{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 24px;
    padding-bottom: 100px;
}
#linea-de-tiempo-cont-text div{
    width: 100%;
    height: min-content;
    background-color: var(--rojo);
    padding: 200px 25px 25px 25px;    
    border-radius: 5px;
    color: white;
}
#linea-de-tiempo-cont-text h3{
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
#linea-de-tiempo-cont-text p{
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}
/*PAG CURSO TEORICO PRACTICO*/
    /*DAta section (3 pasos)*/
#data-curso-section{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    height: auto;
}

.data-curso-cont-img{
    width: 100%;
    height: 300px;
}

.data-curso-cont-img img{
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.data-curso-cont-info{
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    gap: 1% 0;
    margin-top: 25px;
}

.data-curso-cont-info div{
    border-radius: 5px;
    height: auto;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 20px;
    margin: 10px 0;
    padding: 25px 50px;
}
/*Contador satisfaccion garantizada*/
.satisfaccion-section .contenedeor-datos-numericos .counter {
    font-size: 38px;

}

    /*CTA*/
    #curso-cta{
        padding: 100px 0;
        
    }
    #curso-cta h1{
        font-size: 32px !important;
        margin-bottom: 25px;
        text-align: center !important;

    }
 

    #pag-capacitaciones .footer{
        margin-top: 0 !important;
    }

    /*CARACT HORMIGÓN PULIDO SECTION*/
    #propositos-section {
        padding-bottom: 170px;
    }
    .parrafo-cont {
        width: 90%;
    }
    /*PRODUCTOS*/
    .product-section{
        flex-wrap: wrap;
    }
    #productos-container{
        margin-top: 48px;
    }
    .product-card {
        width: 49%;
        min-height: 400px;
    }
    .maquinas .cont-caract div {
        width: 100% !important;
    }
    .product-card p{
        font-size: 14px;
    }
    .product-card h3{
        font-size: 16px !important;
    }
    .product-card h2{
        font-size: 22px !important;
    }
    #checkboxes-container, #productos-container,#checkboxes-container-mobile{
        width: 100%;
    }
    /*PAGINA SISTEMA NEW CONCRET*/
    /*SIST NEWCON -> SEC ANTES Y DEPSPUES*/
    #sec-antes-despues div {
        width: 100%;
    }
    /*SIST NEWCON -> CARACT HORMIGON PULIDO*/
    .contenedor-info .info-cont-text, .contenedor-info .info-cont-img, .contenedor-info .info-cont-text h1 {
        width: 100% !important;
    }
    .contenedor-info .info-cont-text h1 {
        font-size: 28px;
    }
}