@import url(../css/fonts.css);


/* apply a natural box layout model to all elements, but allowing components to change */
html {
    box-sizing: border-box;
    font-size: 62.5%;
}
*, *:before, *:after {
    box-sizing: inherit;
}
html, body { overflow-x: hidden;}

body{
    font-family: 'KiaL', sans-serif;
    font-size: 1.4rem;
    font-weight: 300;
    color: #000000;
}

:root{
    --grisClaro:#F8F8F8;
    --grisMedio:#e4e5e5;
    --grisOscuro:#37434C;
    --negroKia:#05141F;
    --cremaKia:#F6F2ED;
    --blancoKia:#ffffff;
    --rojoKia:#EA0029;
    --verdeKia:#637E27;
    --grisKia: #C7C8CA;
}

h1{font-size: 2.8rem; font-family: 'KiaR', sans-serif; margin-bottom: 1.5rem; text-align: center;}
.container, .container-fluid{padding: 0;}
.img-100{width: 100%; height: auto;}

.sticky .menu .item-link{color: var(--negroKia);}
.sticky .menu .item-link::before{
    background-color: var(--negroKia)!important;
}
.menu-header ul{list-style: none}
.menu-header .item-link.active{font-family: 'KiaB', sans-serif;}
.menu-header .item-link.active::before{
    content: "";
    display: block;
    height: 3px;
    background-color: var(--blancoKia);
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.menu-header .item-link{
    font-family: 'KiaR', sans-serif;
    font-size: 1.8rem;
    color: var(--blancoKia);
    text-decoration: none;
    padding: 1em 0;
    margin: 0 1rem;
    position: relative;
}


.menu-header .item-link. a.active{font-family: 'KiaB', sans-serif;}
.menu-header .item-link. a.active::before{
    content: "";
    display: block;
    height: 3px;
    background-color: var(--blancoKia);
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.menu-header .item-link a{
    font-family: 'KiaR', sans-serif;
    font-size: 1.8rem;
    color: var(--blancoKia);
    text-decoration: none;
    padding: 1em 0;
    /*margin: 0 1rem;*/
    position: relative;
}

.fondo-blanco{ background-color: var(--blancoKia); }
.fondo-primario{ background-color: var(--negroKia); color: var(--blancoKia); }
.fondo-secundario{ background-color: var(--grisClaro); color: var(--negroKia); }
.fondo-terciario{ background-color: var(--grisOscuro); color: var(--blancoKia); }

.como-funciona{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.como-funciona .item{ flex: 0 0 calc(25% - 20px); }
.como-funciona .item{margin-bottom: 3rem;}
.como-funciona .item img{display: block; height: 7.5rem; margin: 0 auto;}
.como-funciona .item span{display: block; text-align: center; margin-top: 1.5rem;}

.logros{display: flex;}
.logros .item{width: 20%; text-align: center;}
.logros .item img{height: 13rem;}
.logros .item span{display: block;}

.empresas .item a{position: relative;}
.empresas .item a span{
    position: absolute;
    width: 100%;
    bottom: 0;
    color: var(--blancoKia);
    font-family: 'KiaB', sans-serif;
    font-size: 1.8rem;
    padding: 3rem;
    z-index: 2;
}

.gradiente{
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgb(0,0,0);
    background: linear-gradient(360deg, rgba(0,0,0,0.75) 0%, rgba(0,212,255,0) 100%);
    mix-blend-mode: multiply;
    z-index: 1;
}

.about-us .row{align-items: center;}
.about-content{font-size: 1.8rem;}

.como-funciona-content{padding: 9rem;}
.como-funciona-content h1{text-align: center; margin-bottom: 3rem;}
.como-funciona-content p{text-align: center;}
.como-funciona-title{margin-bottom: 6rem;}

.nuestros-vehiculos p{text-align: center;}
.nuestros-vehiculos .item span{display: block; text-align: center;}
.nuestros-vehiculos .item a{display: block; text-align: center;}
.nuestros-vehiculos .item .ver-mas{
    display: block;
    background-color: var(--negroKia);
    color: var(--blancoKia);
    width: 15rem;
    margin: 0 auto;
    padding: 1rem 1.5rem;
    border-radius: 3rem;
    text-decoration: none;
}
.nuestros-vehiculos .item span{margin-bottom: 3rem; font-family: 'KiaB', sans-serif; font-size: 1.6rem;}
.modelos-carousel{margin-top: 6rem;}

.cotizador{padding: 9rem;}
.cotizador h1{margin-bottom: 6rem;}
.cotizador p{text-align: center;}
.cotizar-title{margin-bottom: 3rem;}

::placeholder{font-size: 1.2rem;}
.form-control{
    font-size: 1.6rem;
    padding: 1rem;
    margin-bottom: 3rem;
    background-color: #F8F8F8;
    border: none;
    border-bottom: 1px solid var(--negroKia);
    border-radius: 0;
}
.form-select{
    font-size: 1.6rem;
    padding: 1rem;
    margin-bottom: 3rem;
    background-color: #F8F8F8;
    border: none;
    border-bottom: 1px solid var(--negroKia);
    border-radius: 0;
}
label{padding: 0 .5rem;}

#modelo-selected img{display: block; height: 20rem; margin: 0 auto;}
#nombre-selected span{display: block; text-align: center; font-family: 'KiaB', sans-serif; font-size: 2rem; margin-bottom: 3rem;}

.modelo-checks{align-items: center;}
.cta-content{display: flex; justify-content: flex-end;}
.enviar-btn{
    background-color: var(--negroKia);
    color: var(--blancoKia);
    border: 1px solid var(--negroKia);
    font-size: 1.8rem;
    font-family: 'KiaR', sans-serif;
    padding: 1rem 6rem;
    border-radius: 3rem;
}
.enviar-btn:hover{background-color: var(--grisOscuro); border: 1px solid var(--grisOscuro);}

.red-atencion{padding: 9rem;}
.red-atencion .row{align-items: center;}

.logros-content{padding: 9rem;}
.logros-content h1{margin-bottom: 6rem;}
.logros-content .item span{margin-top: 1.5rem;}
.logros{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.clientes-content{padding: 9rem; text-align: center;}
.clientes-content h1{margin-bottom: 3rem;}
.carrusel-clientes{padding-top: 6rem;}

.noticias{padding: 9rem;}
.noticias h1{margin-bottom: 6rem;}

label.error{display: none;}
.form-control.error{border: 2px solid var(--negroKia);}
.form-select.error{border: 2px solid var(--negroKia);}

.menu-lateral{
    position: fixed;
    display: block;
    bottom: 3rem;
    right: 3rem;
    z-index: 999;
    background-color: var(--negroKia);
    padding: 1.5rem;
    border-radius: 3rem;
}
.menu-lateral .lista-iconos{ display: flex; }
.menu-lateral span{ display: block; text-align: center; color: var(--blancoKia); }
.ico-menu-lateral{ display: block; width: 5.2rem; height: auto; margin: 0; }

.brand{width: 10rem;}
.brand.brand.logo-black{display: none;}
.presencia{display: flex; margin-top: 3rem;}
.presencia{padding: 0 1.5rem;}
.puntos-ventas{display: flex; justify-content: center; margin-top: 6rem;}
.puntos-ventas a{
    background-color: var(--negroKia);
    color: var(--blancoKia);
    text-decoration: none;
    padding: 1rem 3rem;
    font-size: 1.6rem;
    border-radius: 3rem;
    font-family: 'KiaB', sans-serif;
}

/* Footer */
#footer{
    background-color: var(--negroKia);
    padding-bottom: 18rem;
}
.inner{ display: flex; justify-content: space-between; padding: 3rem 0; }
.info_policy{display: flex;}
.info_policy .link a{color: var(--grisMedio); font-family: 'KiaR'; font-size: 1.3rem; padding: 0 1rem; text-decoration: none;}
.sns_spr{ background-size: auto; }
.info_sns{display: flex;}
.info_sns .link a{padding: 0 .5rem;}
.copyright{color: var(--grisMedio); display: flex; justify-content: space-between; padding: 0 1rem;}
.copyright .br{font-size: 1.2rem;}
.cpr{margin: 0;}
.info_top{border-bottom: 1px solid #3b4e5b; margin-bottom: 3rem;}
.f_logo{width: 10rem;}

#cotizar-form .alert__messagge { border: 2px var(--negroKia) solid; }

/* ============================================
   CATEGORÍAS — FILTROS GAMA KIA
============================================ */
.categorias{display: flex; justify-content: center; margin-top: 3rem;}
.link-gama{
    color: var(--negroKia);
    text-decoration: none;
    font-family: 'KiaR', sans-serif;
    font-size: 1.8rem;
    padding: 1.5rem 3rem;
    border-top: 1px solid var(--negroKia);
    border-bottom: 1px solid var(--negroKia);
    border-left: 1px solid var(--negroKia);
    transition: all .5s ease;
    cursor: pointer;
}
.link-gama:first-child{border-radius: 3rem 0 0 3rem;}
.link-gama:last-child{border-radius: 0 3rem 3rem 0; border-right: 1px solid var(--negroKia);}
.link-gama:hover{background-color: var(--negroKia); color: var(--blancoKia);}
.link-gama.active{background-color: var(--negroKia); color: var(--blancoKia);}

.contenido-beneficios{padding: 9rem;}
.fondo-logros{
    background-image: url("../img/common/background-logros.jpg");
    background-size: cover;
    background-position: center center;
}

/* ============================================
   GAMA KIA — GRUPOS FILTRADOS
============================================ */
.gama-grupo { display: none; }
.gama-grupo.show { display: block; }

.gama-grupo.show .vehiculos-estandard {
    display: flex !important;
    justify-content: center;
    flex-wrap: wrap;
    padding: 2rem 0;
}
.gama-grupo.show .vehiculos-estandard .item {
    max-width: 30rem;
    text-align: center;
}

/* ============================================
   OWL CAROUSEL — CONTENEDORES
   overflow: visible en padre, hidden en owl
============================================ */
.gama-grupos,
.modelos-carousel,
.beneficios-carousel-wrap {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 5rem;
    position: relative;
    overflow: visible;
}

/* Quitar overflow hidden del owl — los botones van dentro del padding */
.gama-grupos .owl-carousel,
.modelos-carousel .owl-carousel,
.beneficios-carousel-wrap .owl-carousel {
    overflow: visible;
}

/* ============================================
   OWL NAV — botones a los lados
============================================ */
.owl-carousel {
    position: relative;
}

.owl-nav {
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    width: 100% !important;
    height: 0 !important;
    margin: 0 !important;
    transform: translateY(-50%);
    display: flex !important;
    justify-content: space-between !important;
    pointer-events: none;
    box-shadow: none !important;
}

.car-prev,
.car-next {
    pointer-events: all;
    position: relative;
    background-color: #ffffff !important;
    border-radius: 50% !important;
    width: 4.5rem !important;
    height: 4.5rem !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15) !important;
    background-size: 40% 40% !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    border: none !important;
    flex-shrink: 0;
}

/* Botones dentro del contenedor usando el padding de 5rem */
.car-prev {
    background-image: url(../img/common/prev.svg) !important;
    margin-left: 0 !important;
}

.car-next {
    background-image: url(../img/common/next.svg) !important;
    margin-right: 0 !important;
}

.car-prev:hover {
    background-color: var(--negroKia) !important;
    background-image: url(../img/common/prev-white.svg) !important;
}

.car-next:hover {
    background-color: var(--negroKia) !important;
    background-image: url(../img/common/next-white.svg) !important;
}

.owl-carousel.owl-loaded .owl-nav.disabled {
    display: none !important;
}

/* Centrar item único */
.gama-grupo.show .owl-carousel .owl-stage {
    display: flex;
    justify-content: center;
}

@media (min-width: 960px) {
    #gama-hibridos-carousel.owl-loaded,
    #gama-comerciales-carousel.owl-loaded {
        max-width: 33%;
        margin: 0 auto;
    }
}

/* Dots */
.owl-theme .owl-dots{ margin-top: 3rem; }
.owl-theme .owl-dots .owl-dot span{
    width: 25px !important;
    height: 5px !important;
    border-radius: 0 !important;
    margin: 35px 3px !important;
}

/* ============================================
   OTROS
============================================ */
.grupo-items{display: none;}
.grupo-items.show{display: block;}

.vehiculos-estandard{ display: flex; justify-content: center; }
.vehiculos-estandard .item{ max-width: 38rem; }

.img-m{display: block;}
.img-d{display: none;}

.sticky {
    background-color: white;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: fixed;
    z-index: 999;
}
.sticky .brand.logo-black{display: block;}
.sticky .brand.logo-white{display: none;}

.boton-flota{
    display: block;
    background-color: var(--negroKia);
    color: var(--blancoKia);
    text-decoration: none;
    padding: 1rem 3rem;
    border-radius: 3rem;
    margin-top: 3rem;
    max-width: 30rem;
    text-align: center;
}

.sub-titulo h2{text-align: center; font-size: 3rem; font-family: 'KiaB', sans-serif;}
.sub-titulo p{font-size: 2.2rem;}

/* ============================================
   MENÚ MOBILE — FONDO NEGRO AL ABRIR
============================================ */
nav.menu-mobile .brand.logo-white { display: none !important; }

.menu-mobile.navbar-open { background-color: var(--negroKia) !important; }
.menu-mobile.navbar-open .brand.logo-black { display: none !important; }
nav.menu-mobile.navbar-open .brand.logo-white { display: block !important; height: 2rem; }
.menu-mobile.navbar-open .lista-menu-mobile li a { color: var(--blancoKia) !important; }
.menu-mobile.navbar-open .navbar-toggler { border-color: var(--blancoKia) !important; }
.menu-mobile.navbar-open .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

/* ============================================
   RESPONSIVE — MOBILE (min-width: 320px)
============================================ */
@media (min-width: 320px){

    .como-funciona .item{ flex: 0 0 calc(50% - 20px); }
    .cotizador{width: 100%; padding: 9rem 1.5rem;}
    .como-funciona-content {padding: 9rem 1.5rem;}
    .logros .item{ flex: 0 0 calc(50% - 20px); margin-bottom: 3rem; }
    .logros-content { padding: 9rem 1.5rem; }
    #modelo-selected img{width: 100%; height: auto;}
    .enviar-btn{ width: 100%; margin-top: 3rem; }
    .col-sm-12{padding: 0;}
    .noticias{padding: 9rem 1.5rem;}
    .como-funciona .item img{height: 7.5rem;}

    .menu-header .item-link{ font-size: 1.6rem; }
    .menu-header .menu{
        white-space: nowrap;
        overflow-x: auto;
        display: flex;
        padding: 10px;
    }

    .red-atencion{padding: 6rem 3rem;}
    .foto-corp{padding: 0!important;}
    .about-content{padding: 6rem;}
    .about-content h1{margin-bottom: 3rem;}

    .menu-header{position: absolute; width: 100%; display: flex; justify-content: space-between; align-items: center;}
    .menu-desktop{display: none;}
    .menu-mobile{display: block; position: fixed; width: 100%; background-color: var(--blancoKia); padding: 1.5rem; z-index: 999;}

    .menu-mobile .brand.brand.logo-black{display: block; height: 2rem;}
    .navbar-toggler{border: 1px solid var(--negroKia);}
    .navbar-toggler-icon{
        width: 2.5rem;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280,0,0,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }
    .lista-menu-mobile{padding-top: 3rem;}
    .lista-menu-mobile li a{text-align: center; font-size: 1.6rem;}
    .banner-hero{padding-top: 6rem;}

    .menu-lateral{ bottom: 1rem; right: 1rem; }
    .nuestros-vehiculos{ padding: 3rem 1.5rem; }

    #menu-categoria-mobile .carousel-inner .carousel-item .link-categoria{
        display: block;
        width: 70%;
        margin: 0 auto;
        text-align: center;
        border: 2px solid var(--negroKia);
        font-family: 'Kiab', sans-serif;
        text-decoration: none !important;
        color: var(--negroKia);
        padding: 1.5rem;
        border-radius: 3rem;
        margin-top: 3rem;
    }

    .menu-categoria-mobile{display: block;}
    .categorias{display: none;}

    .carousel-control-prev{
        background-image: url(../img/common/prev.svg);
        background-size: 30%;
        background-position: center 4rem;
        background-repeat: no-repeat;
    }
    .carousel-control-next{
        background-image: url(../img/common/next.svg);
        background-size: 30%;
        background-position: center 4rem;
        background-repeat: no-repeat;
    }

    .car-prev span{display: none;}
    .car-next span{display: none;}

    /* Footer mobile */
    .inner{display: block;}
    .info_policy{display: block;}
    .info_policy .link{padding: 1rem 1.5rem; border-bottom: 1px solid var(--grisOscuro);}
    .info_policy .link:last-of-type{border-bottom: none;}
    .info_sns{display: flex; justify-content: center; margin-top: 3rem;}
    .copyright .br{padding-right: 1rem;}
    .cotizador-contenido{padding: 0 1.5rem;}
}

/* ============================================
   CATEGORÍAS MOBILE — GAMA KIA scrolleable
============================================ */
@media (max-width: 767px) {
    #gama-categoria-mobile { display: none !important; }

    .gama-categorias {
        display: flex !important;
        overflow-x: auto;
        flex-wrap: nowrap;
        justify-content: flex-start;
        padding: 0 1.5rem;
        gap: 0;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }
    .gama-categorias::-webkit-scrollbar { display: none; }

    .link-gama {
        font-size: 1.4rem !important;
        padding: 1rem 1.8rem !important;
        white-space: nowrap;
        flex-shrink: 0;
    }

    .gama-grupos .owl-dots { display: none !important; }
    #gama-hibridos-carousel.owl-loaded, #gama-comerciales-carousel.owl-loaded {
        max-width: 100%!important;
        margin: 0 auto;
    }
}

/* ============================================
   RESPONSIVE — TABLET (min-width: 768px)
============================================ */
@media (min-width: 768px){
    .como-funciona .item{ flex: 0 0 calc(33.33% - 20px); }
    .cotizador{width: 70rem;}
    .logros .item{ flex: 0 0 calc(33.33% - 20px); }
    .logros-content { padding: 9rem 3rem; }
    .col-sm-12{padding: 0 1.5rem;}
    .about-content{padding: 6rem;}
    .about-content p{font-size: 2rem;}
    .menu-header{padding: 2rem;}
    .como-funciona .item img{height: 10rem;}

    .img-m{display: none;}
    .img-d{display: block;}
    .menu-header .item-link{ font-size: 1.8rem; }
    .sticky { padding: 1.5rem 3rem; }
    .red-atencion{padding: 9rem;}
    .banner-hero{padding-top: 0rem;}
    .menu-lateral{ bottom: 1.5rem; right: 1.5rem; }
    .nuestros-vehiculos{ padding: 3rem; }

    .categorias{display: flex;}
    .menu-categoria-mobile{display: none;}
    .inner{display: flex;}
    .info_policy{display: flex;}
    .info_policy .link{border-bottom: none;}
    .info_sns{margin-top: .5rem;}
}

/* ============================================
   RESPONSIVE — DESKTOP (min-width: 960px)
============================================ */
@media (min-width: 960px){
    .about-content h1{margin-bottom: 6rem;}
    .como-funciona .item{ flex: 0 0 calc(25% - 20px); }
    .como-funciona-content {padding: 9rem;}
    .cotizador{width: 96rem;}
    .logros .item{ flex: 0 0 calc(20% - 20px); }
    .logros-content { padding: 9rem; }
    .col-sm-12{padding: 1.5rem;}
    .about-content{padding: 9rem;}
    .enviar-btn{width: 30rem; margin: 0 auto;}
    .menu-header{padding: 1.5rem 6rem;}
    .sticky { padding: 1.5rem 3rem; }
    .menu-desktop{display: flex; z-index: 999;}
    .menu-mobile{display: none;}
    .nuestros-vehiculos{ padding: 9rem; }
}

#gama-hibridos-carousel.owl-loaded,
#gama-comerciales-carousel.owl-loaded {
    max-width: 33%;
    margin: 0 auto;
}

#gama-hibridos-carousel .owl-item,
#gama-comerciales-carousel .owl-item {
    width: 100% !important;
}

#gama-hibridos-carousel .item img,
#gama-comerciales-carousel .item img {
    width: 100%;
    height: auto;
}

@media (min-width: 768px){

}