/*Theme Name: IDV Group
Theme URI: https://idvg.telaiotests.com/
Author: Telaio
Author URI: https://idvg.telaiotests.com/
Version: 1.0
*/
/* ===== General ===== */
*{margin: 0;padding: 0;box-sizing: border-box;}

a,a:hover{text-decoration: none; color: initial;}
strong{font-weight: 600;}
.ul--text ul, .ul--text ol{list-style: inside; }
.color-green{color :#5fcd25}
.color-grey{color: #424242;}
.color-black{color: #1A1A1A;}
.color-orange{color: #f38230;}
p{font-size: 20px; font-weight: 200;}
.fs-50{font-size: clamp(40px, 4vw, 50px); line-height: clamp(38px, 4vw, 48px);}
.fs-82{font-size: clamp(45px, 8vw, 82px); line-height: clamp(43px, 8vw, 79px);}
.fs-135{font-size: clamp(82px, 8vw, 135px); line-height: clamp(79px, 8vw, 132px);}
.section-spacing { padding: 100px 0; }
.titles{font-size: 135px;font-weight: bolder;}
/* Menu */
.navbar-brand img{width: 150px;height: auto;}
.navbar-nav .nav-item .nav-link.active { color: #ffffff !important; display: block !important; opacity: 1 !important;}
.menu{background-color: #000;color:#fff;    position: fixed; top: 0; right: 0; left: 0;z-index: 999;}
.nav-link{color:#fff;font-size: 16px;font-weight: bold;}
.nav-link:hover{color:#f38230;font-size: 16px;font-weight: bold;}
.btn-primary{padding: 8px 35px;background: transparent;color: #FFFFFF;font-weight: lighter;border: 1px solid #f38230;font-size: 16px;font-weight: 700;}
.btn-primary:hover{color: #f38230;}
.navbar-toggler{color:#fff;}
/* hero home */
.section-hero{background-color: #000000;width:100%; height: 100vh;position: relative;overflow: hidden;padding-top: 80px;}
.hero-video-container {position: relative;width: 100%;height: 100%;display: flex;align-items: center;}
.hero-video-wrapper {position: absolute; top: 0; left: 40%; width: 80%; height: 100%; z-index: 1;}
.hero-video-element {width: 100%; height: 100%; object-fit: cover; object-position: center right;}
.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
	background: linear-gradient(90deg, #000000 40%, rgba(0, 0, 0, 0.4) 60%, transparent 100%);
    pointer-events: none;
}
.hero-text{position:relative; z-index: 3; }
.title-hero{font-size: 135px;font-weight: bolder;}
.hero-line { width: 80px; height: 10px; background-color: #5fcd25; margin: 20px 0;}
.hero-subtitle{font-size: 23px;font-weight: 400;color: #fff;}
/* Section us */
.section-us{background-color: #f38230;background-position: center center;background-repeat: no-repeat;background-size: cover; height: min-content;}
/* Section divisiones */
.section-divisiones{background-position: top left;background-repeat: no-repeat;background-size: 300px auto; height: auto;}
.service-card {width: 100%; height: 400px; border-radius: 12px; overflow: hidden; border-color: 1px solid #EBEAEA;}
.service-card-img{width: 100%;height: 100%;object-fit: contain;display: block;}
#slide_divisiones {position: relative; overflow: visible;padding: 0 3rem; }
#slide_divisiones .splide__track { overflow: hidden; }
#slide_divisiones .splide__list{gap: 1.5rem;}
#slide_divisiones .splide__arrow svg {display: none;}
#slide_divisiones .splide__arrows .splide__arrow {
    background: transparent; 
    border: none;
    top: 50%;
    transform: translateY(-50%);
    width: auto;
    height: auto;
    opacity: 1;
    z-index: 5;
    padding: 0;
}
#slide_divisiones .splide__arrows .splide__arrow i {
    font-size: 2.5rem; 
    color: #5fcd25;
    font-weight: bolder;
    transition: transform 0.2s ease, color 0.2s ease;
}
#slide_divisiones .splide__arrow--prev {left: -1rem;}
#slide_divisiones .splide__arrow--next {right: -1rem;}

/* Section servicios */
.section-services{background-position: center center;background-repeat: no-repeat;background-size: cover; height: min-content;}
/* Section clientes */
.flex-clientes-grid {display: flex;gap: 20px;justify-content: center;}
.columna-clientes { flex: 1; display: flex; flex-direction: column; gap: 20px;}
.cliente-item {
    border: 1px solid #EBEAEA;
    border-radius: 15px;
    padding: 18px;
    background-color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 140px;
}
/* Seccion contacto */
.section-contacto{background-color: #424242; padding: 60px 0;}
.btn-contacto{padding: 5px 35px;background: transparent;color: #FFFFFF;font-weight: lighter;border: 1px solid #fff;}
.btn-contacto:hover{color: #f38230;border: 1px solid #f38230;}
.form-label, label {color: #fff;font-size: 16px;font-weight: bold;padding-bottom:10px ;}
.form-control {border: none;border-radius: 0;}
.textarea-big {height: 180px;resize: none;}
.map-container { width: 100%; min-height: 150px; display: flex;}
.img-mapa { width: 100% !important; height: 100% !important; object-fit: cover; object-position: center;}
/* footer */
.subtitle-footer{font-size: 17px; font-weight: bold;}
.p-footer{font-size: 15px; font-weight: 300;}
.footer__main{background-color: #5fcd25; align-content: center;padding: 60px 0}
.footer-up{text-align: left;}
.footer_link{font-size: 13px;text-decoration: none;color: #fff;}
.footer_link:hover{font-size: 13px;text-decoration: none;color: #fff;}
.footer__bar{background-color: #000; padding: 15px;}
.footer__bar-link{text-decoration: none; color: #fff;}
.icon-footer{ margin-right: 10px;  padding: 5px;  width: 30px;  height: 30px;  object-fit: contain;}
.btn-redes{border:none ; border-radius: 50%;background-color: #000;color:#fff; cursor : pointer;width: 35px; height: 35px;padding: 6px; align-items: center; justify-content: center; font-size: 18px;}
@media (min-width: 992px) {
    .footer-up {text-align: left; }
    .columna-clientes.col-desfasada { margin-top: 55px; }  
}
@media (max-width: 768px) {
	.p-footer{text-align: left;} 
    #slide_divisiones {padding:0 2rem;}
    #slide_divisiones .splide__list{gap: .5rem;}
    #slide_divisiones .splide__arrow--prev {left: 0rem;}
    #slide_divisiones .splide__arrow--next {right: 0rem;}  
}
@media (max-width: 992px) {
    .titles {font-size: 95px; } 
    .title-hero {font-size: 85px; } 
    .hero-video-wrapper { left: 0; right: 0; width: 100%; height: 100%;}
    .hero-video-element {width: 100%; height: 100%; object-fit: fill; object-position: center center;}  
    .hero-overlay { width: 100%; height: 100%; background: linear-gradient(90deg, #000000 10%, rgba(0, 0, 0, 0.4) 40%, transparent 90%); }   
}

@media (max-width: 768px) {
    .titles {font-size: 3.8rem; } 
    .title-hero{font-size: 3rem;}
    .section-divisiones{padding: 30px 0;}
    .hero-video-wrapper { left: 0; width: 100%; height: 100%;}
    .hero-overlay {left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, #000000 10%, rgba(0, 0, 0, 0.4) 50%, transparent 90%); }  
    .hero-video-element {width: 100%; height: 100%; object-fit: fill; object-position: center center;}  
    .flex-clientes-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap:20px; }
    .columna-clientes {display: contents;}
    .columna-clientes.col-desfasada { margin-top: 0; }
}
@media (min-width: 769px) {
    .columna-clientes.col-desfasada { margin-top: 55px; }
}
@media (min-width: 769px) and (max-width: 992px){
    .img-mapa{margin-top: 10px;}
}