@font-face {
    font-family: 'Aller Display';
    src: url('../fonts/Aller/AllerDisplay.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face{
    font-family:'Aller Regular';
    src: url('../fonts/Aller/Aller_Std_Rg.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

body {
    margin: 0;
    font-family: 'Aller Regular';
    overflow-x: hidden; /* Evitar desplazamiento horizontal */
    background-color: white;
}

/* Estilos para el container principal */
.container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* grid-template-rows: repeat(4, 1fr); */
    gap: 8px;
    background-color: #EEEEEE;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    width: 100%;
    margin-top: 50px;
}
.machine-image {
    position: relative;
    width: 420px;
    height: auto;
    padding: 0 50px;
    border-radius: 30%;
    justify-self: center;
    grid-row: span 3/ span 3;
    grid-row-start: 2;
}
.machine {
    width: 420px;
    height: auto;
}

.machine-title {
    position: absolute;
    margin:35px 0 0-220px ;
    width: 478px;
    height: auto;
    opacity: 0.8;
}
.intro-text img {
    width: 100%;
}
.intro-text h1 {
    font-size: 2em;
    margin: 20px 10px;
    font-family: 'Aller Display';
}

.machine-button {
    font-family: 'Aller Display';
    position: absolute;
    width: 50px;
    height: 50px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    border:solid transparent;
    background-color: white;
    color: #041c5d;
    font-size: 27px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s, transform 0.2s;
}

.machine-button:hover {
    background-color: #041c5d;
    color:white;
    transform: scale(1.4);
}

.info {
    width: 620px;
    background-color: transparent;
    padding: 0 0 0 0;
}

.info h2 {
    color: #7FBF3B;
    font-family: 'Aller Display';
    font-size: 2em;
    margin-bottom: 15px;
}
.info li {
    font-family: 'Aller Regular';
    list-style-type: none; /* Elimina las viñetas por defecto */
    color: black; /* Color del texto */
    position: relative; /* Para posicionar el pseudo-elemento */
    padding-left: 20px; /* Espacio para el pseudo-elemento */
    padding-bottom: 0;
    text-align: justify;
    font-size: 18px;
}

.info li::before {
    content:"";
    width: 8px; /* Ancho del cuadrado */
    height: 8px; /* Altura del cuadrado */
    background-color: #7FBF3B; /* Color de la viñeta */
    position: absolute;
    left: 0;
    top:10px;
    transform: translateY(-50%); /* Centrar verticalmente el cuadrado */
}



.intro-container{
    width: auto;
    display: flex;
    flex-direction: row;
}
.intro {
    background: url('../webp/img/mantis/fondo.webp') no-repeat center center;
    background-size: 100% 100%;
    height: 85vh;
    width: 80%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    color: white;
}

.intro-text {
    position: absolute;
    margin: 95px;
    z-index: 2;
    max-width: 80%;
}

.intro-text ul {
    list-style-type: none;
    padding-left: 20px;
    font-size: 1.2em;
}

.intro-text ul li {
    width: auto;
    height: auto;
    list-style-type: none;
    text-align: justify;
    font-size: 1.191em;
    padding:0 0 0 20px;
    position: relative;
    margin:20px;
    font-family: 'Aller Regular';
}
.intro-text ul li::before{
    display: flex;
    content: "";
    width: 8px;
    height: 8px;
    background-color: #7FBF3B;
    position: absolute;
    top: 8px;
}

.intro-image {
    position: relative;
    display: flex;
    width: auto;
    height: 110%;
    flex-direction: row;
    justify-content: end;
    z-index: 25;
    left: 92%;
}
.intro-image img {
    width:auto;
    height: auto;
}
.carousel {
    position: relative;
    width:100vw;
    height: 700px;
    background-color: #ffffff;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    margin-top: 50px;
}
.carousel +.carousel {
    margin-top: 100px;
    padding-top: 40px;
}
.carousel-item {
    position: relative;
    width: 100vw;
    height: 100%;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 40px;
    box-sizing: border-box;
    background-color: #EEEEEE;
    border-radius: 15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.5s ease;
}

.carousel-item.active {
    display: flex;
    /* transform: scale(1.05); */
}

.carousel-content {
    width:920px;
    height: auto;
    display: flex;
    flex-direction:column;
    /* padding: 0 0 0 40px; */
    gap:20px;
}

.carousel h2 {
    font-family:'Aller Display';
    color: #7FBF3B;
    position: relative;
    text-align: left;
    font-size: 1.8em;
    left:-40px;
    max-width: 100%;
}
.container-li {
    height: 420px;
}
.container h2 {
    font-family: 'Aller Display';
    font-size: 2em;
    color:#7FBF3B;
}

.carousel li {
    width: auto;
    height: auto;
    font-family: 'Aller Regular';
    list-style-type: none;
    text-align: justify;
    font-size: 23px;
    color: black;
    padding: 20px 0 0 20px;
    position: relative;
}

.carousel li+li {
    padding: 20px 0 0 20px;
}

/* Estilo para el primer elemento li */
.carousel li:first-child::before {
    display: flex;
    content: "";
    width: 8px;
    height: 8px;
    background-color: #7FBF3B; /* Color verde */
    position: absolute;
    left: 0;
    top: 8px;
    margin: 20px 0 0 0;
    /* transform: translate(-12px, 8px); */
}

.carousel-link {
    font-family:'Aller Regular';
    color: #041c5d;
    text-decoration: none;
    font-weight: bold;
    transition: color 0.3s;
    position:relative;
    font-size: 22px;
}

.carousel-link:hover {
    color: #7FBF3B;
}

.carousel-image {
    position: absolute;
    width:120px;
    height:520px;
    right: 10%;
    border-radius: 10px;
}

.carousel-control {
    position: absolute;
    top: 45%;
    transform: translateY(-50%);
    background-color: rgba(255, 255, 255, 0.8);
    border: none;
    font-size: 2em;
    cursor: pointer;
    color: #041c5d;
    padding: 10px;
    z-index: 10;
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s;
}
.carousel-control:hover {
    background-color: #7FBF3B;
    color: #ffffff;
}

.carousel-control.prev {
    left: 20px;
}

.carousel-control.next {
    right: 20px;
}
.carousel-indicator {
    position: absolute;
    display:flex;
    font-size: 1.2em;
    color: #041c5d;
    border-radius: 10px;
    bottom:10px;
    right: 28%;
}
.titulos-img{
    width: 100%; /* Ajusta el valor según el tamaño deseado */
    height: auto; /* Para mantener la proporción de la imagen */
    display: flex;
    justify-content: left;
}
.titulo-piezocono, .titulo-dilatometro, .titulo-shelby, .titulo-broca{
    height: 80px;
}

#video-container {
    position: fixed; /* antes estaba absolute */
    top: 0; left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0,0,0,.769);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}
.hidden { display: none !important; }


.video-wrapper {
    background: #0a0a0a7a;
    border-radius: 10px;
    width: 450px;
    height: 89vh;
}

.video-wrapper video{
    width: 100%;
    height: 100%;
}


#close-btn {
    display: none;
    position: absolute;
    top: 5px;
    right: 10px;
    background: red;
    color: white;
    font-size: 25px;
    border: none;
    cursor: pointer;
    width: 45px;
    height: 45px;
    justify-content: center;
    align-items: center;
}

#close-btn.show {
    display: flex; /* Se mostrará con esta clase */
    position: absolute;
    top: 5px;
    right: 10px;
    background: red;
    color: white;
    font-size: 25px;
    border: none;
    cursor: pointer;
    width: 45px;
    height: 45px;
}

#countdown {
    font-size: 20px;
}

.btn-text.hidden {
    display: none;
}
.machine-button {
    display: flex;
    justify-content: center;
    align-items: center;
}

.parent1{
    display: grid;
    grid-column: span 2 / span 2;
    grid-column-start: 2;
    grid-row-start: 3;
    gap: 8px;
    padding: 15px;
}

.controlador-ventajas {
    width: -webkit-fill-available;
    height: min-content;
    grid-column-start: 3;
    grid-row-start: 4;
    position: relative;
    display: flex;
    align-self: start;
    text-align: center;
    font-size: 20px;
    justify-content: end;
    align-items: baseline;
    padding-right: 40px;
}

.controlador-ventajas button {
    background-color: #ffffff00;
    border: none;
    color: #072360;
    padding: 2px 12px;
    font-size: 20px;
    cursor: pointer;
    border-radius: 50%;
}
.controlador-ventajas button:hover{
    background-color: #072360;
    color: rgb(255, 254, 254);
    transform: scale(1.1);
    transition: 0.3s;
}
.controlador-ventajas button:hover:not(:disabled) {
    background-color: #041c5d;
    color: white;
    transform: scale(1.2);
}

.controlador-ventajas button:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    transform: none;
}
#counter {
    margin: 0 10px;
    font-weight: bold;
    display: flex;
    align-items: center;
    color: #072360;
}
.machine-button.active {
    background-color: #041c5d;
    color: white;
    transform: scale(1.4);
}
.cont-vent{
    grid-column: span 3/ span 3;
    justify-self: center;
}
.information {
    position: relative;
    width: 60%;
    background-color: white;
    height: min-content;
    grid-column-start: 2;
    grid-row-start: 4;
    display: flex;
    justify-content: center;
    justify-self: center;
    padding: 20px;
    gap: 9%;
    border-radius: 100px;
}
.titulo-ventajas{
    position: relative;
    height: min-content;
    right: 20%;
    grid-column: span 2 / span 2;
    grid-row-start: 2;
    overflow: hidden;
}
.titulo-ventajas img{
    width: 63%;
    height: auto;
    object-fit: cover;
}

.parent2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 8px;
    margin-top: 50px;
    background-color: rgb(238,238,238);
    display: flex;
    flex-direction: row;
    height: auto;
}
.div1-contact{
    width: 33%;
    height: min-content;
    display: flex;
    justify-content: center;
    align-self: end;
    z-index: 15;
}
.contact-icon h3{
    font-family: 'Aller Display';
    color: #072360;
    margin: 5px;
    font-size: 42px;
}
.contact-icon {
    width: 80%;
    display: flex;
    position: relative;
    background: white;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 1.5);
    margin-bottom: 100px;
    flex-direction: column;
    gap: 20px;
    padding-left: 25px;
}
.contact-icon img{
    width: 50px;
    height: 50px;
    margin: 5px
}
.ubi, .wtsp, .correo{
    display: flex;
    flex-direction: row;
}
.mail{
    color: #072360;
}
.icon-img {
    display: flex;
    align-items: center;
}
.cont-text{
    align-content: center;
}
.cont-text span{
    font-weight: bold;
    font-family: 'Aller Regular';
}
.cont-text p{
    margin: 0;
    padding: 5px 0 0 0
}
.correo {
    padding-bottom: 20px;
}
.div2-contact{
    position: relative;
    display: grid;
    justify-content: center;
    width: 33%;
    box-sizing: border-box;
}
.div2-contact img{
    justify-self: center;
    width: 220%;
    height: auto;
    display: block;
    z-index: 10;
}
.div3-contact{
    width: 33%;
    display: flex;
    align-items: end;
}
.btn-cotizar button {
    background-color: #072360;
    color: white;
    font-size: 30px;
    padding: 10px 70px;
    font-family: 'Aller Display';
    border-radius: 25px;
    border:none;
    transition: all 0.3s ease;
}
.btn-cotizar a{
    text-decoration: none;
    color: #ffffff;
}
.btn-cotizar {
    width: 100%;
    height: auto;
    margin-bottom: 100px;
    z-index: 15;
}
.btn-cotizar button:hover {
    cursor: pointer;
    transform: scale(1.1);
    background-color: #7FBF3B;
}
.uno{
    top: -3%; left: 31%;
}
.dos{
    bottom: 12%; left: 29%;
}
.tres{
    top: 30%; left: 51%;
}
.cuatro{
    top: 30%; left: 77%;
}
.cinco{
    top: 62%; left: 62%;
}


@media (max-width: 780px) and (min-width: 320px) {
    /* header {
        flex-direction: row;
        padding: 12px 10px;
        gap: 10px;
    } */
    
    .logo-img {
        height: 30px;
    }
    .intro-container{
        width: auto;
        height: 400px;
    }
    .intro-text{
        height: 100%;
        font-size: 8px;
        margin: 5px;
    }
    .intro-text h1{
        font-size: 2em;
        margin: 15px 0;
    }
    .intro-text img{
        width: 100%;
        margin-top: 20px;
    }
    .intro-text ul{
        padding-left: 5px;
    }
    .intro-text ul li{
        margin: 20px 5px;
    }
    .intro-container{
        background-color: #ffffff;
        max-width: 100vw;
    }
    .intro {
        flex-direction: column;
        text-align: center;
        width: 100%;
        max-width: 75vw;
        max-height: 100%;
    }
    .intro-image {
        left: 95%;
        top: -10px;
        width: 90px;
        height: 426px;
        z-index: 10;
    }
    .intro-image img{
        max-width: 100%;
        max-height: 100%;
    }
    .carousel{
        height: 100%;
    }
    .carousel-indicator {
        flex-direction: column;
        right: unset;
        bottom: 12px;
        font-size: 1rem;
    }
    .container-li{
        height: 100%;
    }
    .carousel li {
        width: 100%;
        font-size: 1rem;
        padding: 0 0 0 0;
    }
    .carousel li+li{
        padding: 0 0 0 0;
    }
    .contrailer-ul-acces{
        padding-inline-start: 0;
    }
    .carousel h2{
        left: 0;
        text-align: center;
        margin-block-start: 0;
        margin-block-end: 0;
    }
    .carousel-item{
        flex-direction: column;
    }
    .titulos-img {
            width: 21rem;
        position: relative;
        right: 1rem;
    }
    .carousel-image{
        width: 48px;   /* tamaño proporcional */
        height: 208px;
        position: relative;
        right: 0;
    }
    .carousel-content{
        width: 100%;
        gap: 5px;
    }
    .carousel-control{
            top: unset;
            bottom: 15%;
    }
    #close-btn.show {
        top: 25px;
        right: 0;
    }
    .carousel li:first-child::before {
        left: -15px;
        margin: -2px 0 0 0;
    }
    .container{
    display: flex;
    flex-direction: column;
    max-width: fit-content;
    width: 100%;
    align-items: center;
    margin-bottom: 5px;
    }
    .container h2{
        text-align: center;
    }
    .machine{
        width: 251px;
    }
    .machine-image{
        position: relative;
        width: 60%;
        height: auto;
        padding: 0 0;
        display: flex;
        justify-content: center;
    }
    .machine-button{
        width: 35px;
        height: 35px;
    }
    .titulo-ventajas {
    position: relative;
    height: min-content;
    right: 0;
    display: flex;
    justify-content: center;
    }
    .parent1 {
    display: grid;
    grid-column: span 2 / span 2;
    grid-column-start: 2;
    grid-row-start: 3;
    gap: 8px;
    padding: 7px 15px 0
    }
    .info {
        width: 100%;
        height: 241px;
    }
    .info h2{
        font-size: 1.5rem;
    }
    .controlador-ventajas{
        width: 100%;
        height: min-content;
        justify-content: center;
        align-items: baseline;
        padding-right: 0;
        font-size: 1rem;
    }
    .information{
    width: 80%;
    position: relative;
    padding: 10px;
    gap: 9%;
    border-radius: 100px;
    margin-bottom: 20px;
    }
    .carousel-link{
        font-size: 1rem;
    }
        .parent2{
        height: 270px;
        gap: 8px;
    }
    .div1-contact{
        width: 30%;
        height: min-content;
        position: relative;
        justify-content: inherit;
        align-self: end;
        left: 10px;
        bottom: 10px;
    }
    .contact-icon{
        width: auto;
        left: 0;
        gap: 5px;
        padding-left: 10px;
        margin-bottom: 0;
        z-index: 20;
    }
    .contact-icon h3{
        font-size: 1rem;
        margin: 5px;
    }
    .contact-icon img{
        width: 15px;
        height: 15px;
        margin-right: 5px;
    }
    .cont-text span{
        font-size: small;
    }
    .cont-text p{
        padding: 5px 0 0 0;
        font-size: x-small;
    }
    .div2-contact img{
        width: 230%;
        height: auto;
        z-index: 10;
    }
    .div3-contact{
        width: 30%;
    }
    .btn-cotizar button{
        padding: 1px 7px;
        font-size: 1rem;
    }
}

@media(max-width: 2500px) and (min-width:1000px){
    .menu li{
        padding-right: 15px;
    }
}
@media screen and (min-width: 3440px){
    #close-btn.show {
        font-size: 6rem;
        width: 6rem;
        height: 6rem;
    }
    #countdown {
        font-size: 3rem;
    }
    .intro-text h1{
        font-size: 50px;
    }
    .intro-text ul li{
        width: 2150px;
        font-size: 45px;
    }
    .carousel-content{
        width: 2500px;
        height:100%;
    }
    .carousel h2{
        font-size: 55px;
    }
    .carousel-image{
        width: 190px;
        height: 662px;
    }
    .carousel{
        height: 1330px;
    }
    .titulos-img{
        width: 95%;
    }
    .titulo-img{
        width: 95%;
    }
    .carousel li{
        width: 1250px;
        font-size: 45px;
    }
    .carousel-indicator{
        font-size: 45px;
    }
    .parent1{
        width: 1500px;
        height: 300px;
    }
    .machine {
        width: 780px;
    }
    .machine-button{
        width: 75px;
        height: 75px;
        font-size: 49px;
    }
    .uno{
        top: 2%;
        left: 48%;
    }
    .dos{
        bottom: 17%;
        left: 48%;
    }
    .tres{
        top: 31%;
        left: 90%;
    }
    .cuatro{
        top: 31%;
        left: 134%;
    }
    .cinco{
        top: 59%;
        left:107%;
    }
    .info{
        width:100%
    }
    .info li {
        padding-left: 55px;
    }
    .info li::before {
        width: 30px;
        height: 30px;
        top: 27px;
    }
    .titulo-ventajas img{
        width: 36%;
        height: auto;
    }
    .container{
        height: 1300px;
    }
    .container h2{
        font-size: 55px;
    }
    .info li{
        font-size: 45px;
    }
    .carousel-link{
        font-size: 45px;
    }
    .carousel-control{
        font-size: 100px;
    }
    .carousel li:first-child::before {
        width: 25px;
        height: 25px;
        left: -2%;
        top: 4%;
    }
    .controlador-ventajas{
        padding-right: 500px;
        font-size: 45px;
    }
    .controlador-ventajas button {
        font-size: 45px;
    }
    div.information img{
        width:45px ;
        height: 45px;
    }
    .div1-contact{
        width: 1355px;
        padding: 120px;
    }
    .contact-icon h3{
        font-size: 80px;
    }
    .cont-text span{
        font-size:45px;
    }
    .cont-text p {
        font-size:45px;
    }
    .contact-icon img {
        width: 100px;
        height:100px;
    }
    .btn-cotizar button {
        font-size: 70px;
    }

}
@media screen and (min-height: 2160px){
    .video-wrapper {
        width: 29vw;
        height: inherit;
    }
}
@media screen and (min-width: 7680px){
    .intro-text h1 {
        font-size: 12rem;
    }
    .intro-text ul li {
        width: auto;
        font-size: 7rem;
        padding: 0 0 0 7rem;
    }
    .intro-text ul li::before {
        width: 5rem;
        height: 5rem;
        top: 23px;
    }
    .carousel h2 {
        font-size: 8rem;
    }
    .container-li {
        height: 1250px;
    }
    .carousel-content {
        height: 100%
    }
    .carousel li{
        width: 100%;
        height: 100%;
        font-size: 8rem;
    }
    .carousel-indicator {
        font-size: 6rem;
    }
    .carousel {
        height: 2750px;
    }
    .carousel-image{
        width:550px;
        height: 1700px;
    }
    .carousel-control {
        font-size: 11rem;
    }
    .carousel-control.prev {
        left: 120px;
    }
    .carousel-control.next {
        right: 120px;
    }
    .container h2 {
        font-size: 8rem;
    }
    .titulo-img{
        width: 150%;
    }
    .container {
    height: 3100px;
    }
    .titulo-ventajas{
        left:0;
    }
    .titulo-ventajas img {
        width: 46%;
        left: 780px;
        position: relative;
    }
    .machine {
        width: 1850px;
    }
    .machine-button {
        width: 8rem;
        height: 8rem;
        font-size: 5rem;
    }
    .uno {
        left: 99%;
    }
    .tres{
        left: 196%;
    }
    .cuatro{
        left: 301%;

    }
    .cinco{
        left: 225%;
    }
    .dos {
    bottom: 14%;
    left: 95%;
    }
    .info{
        position: relative;
        width: 4250px;
        margin-left: 400px;
        bottom: 500px;
    }
    .info li {
        font-size: 6rem;
    }
    div.information img {
        width: 7rem;
        height: 7rem;
        display: flex;
        align-self: center;
    }
    .carousel-link {
        font-size: 6rem;
    }
}
@media (min-width: 780px) and (max-width: 960px){
    .intro-text ul li::before {left: 0;}
    .intro-image{left: 85%;}
    .container-li{ width: 75%;}
    .carousel-image{ width: 80px; height: 383px; bottom: 0; margin-bottom: 10%; right: 15%;}
    .carousel-control {font-size: 1.7rem;}
    .container {width:auto;}
    .carousel h2{text-align: center;}
    .info{width: auto; height: 250px;}
    .information {width: 80%;grid-column-start: 3;right: 8%;}
    .carousel-link {font-size: 1rem;}
    .controlador-ventajas{ padding: 20px; grid-column-start: 2;}
    .contact-icon{width: 262px;margin: 10%; gap: 1%; padding: 3%;}
    .contact-icon h3{font-size: 2rem;}
    .cont-text{ font-size: small;}
    .contact-icon img{width: 2em; height: 2em; margin: 2px;}

}