body{
    font-family: "Nobel", serif;
    font-weight: 400;
    font-style: normal;
    margin: 0;
}
.d-none{
    display: none !important;
}
input, select{
    font-family: "Nobel", serif;
}
header{
    background-color: white;
    padding: 24px 0;
    border-bottom: 1px solid black;
    position: sticky;
    width: 100%;
    top: 0;
    font-size: 32px;
    font-weight: bold;
    display: flex;
    box-sizing: border-box;
    z-index: 1001;
}
h1,h2,h3,h4,h5,h6,p,a{
    margin: 0;
    color: black;
    text-decoration: none;
}
h1{
    font-size: 54px;
    line-height: 64px;
}
h2{
    font-size: 38px;
    line-height: 42px;
    font-family: 'Nobel';
    font-weight: normal;
    font-weight: 300;
    text-transform: uppercase
}
h3{
    font-size: 28px;
    margin: 0;
    font-weight: normal;
    font-family: 'Nobel';
}
h4{
    font-weight: normal;
    font-family: 'Nobel';
}
button{
    cursor:pointer;
    font-size: 16px;
    font-family: 'Nobel';
}
.center{
    text-align: center;
    justify-content: center;
    min-height: 70vh;
}
.contenedor{
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow-x: hidden;
}
.bg_secondary{
    background-color: #eee;
}
.pages-list{
    display: grid;
    grid-auto-flow: column;
    gap: 16px;
}
.img_grid img{
    width:100% !important;
    max-width: 300px;
    height: auto !important;
}
.contenedor-full{
    display:flex;
    justify-content: center;
    width: 100%;

}
.padding-contenedor{
    padding: 64px 0;
}
.banner-principal .texto{
    display:flex;
    flex-direction:column;
    gap:16px;
}
.banner-principal h1,.banner-principal p{
    color: white;
}
.contenedor-generico .texto{
    display: flex;
    gap:16px;
    flex-direction: column;
}
.form-informe label {
    font-weight: bold;
}
.field-container label{
    display: none;
}
.form-informe input, .form-informe select {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #ccc;
    max-width: 100%;
    box-sizing: border-box;
    background-color: transparent;
    font-size: 16px;
}
select {
    color: white; /* Color del texto del select */
    background-color: black; /* Fondo del select */
  }
  
select option {
    color: black; /* Color del texto de las opciones */
    background-color: white; /* Fondo de las opciones */
}
.form-informe input {
    color: white;
}
.form-informe .checkbox {
    display: flex;
    align-items: center;
    font-weight: 300;
}
.form-informe .checkbox input {
    width: auto;
    margin-right: 10px;
}
.form-informe button {
    background-color: #fff;
    padding: 8px 16px;
    border: none;
    cursor: pointer;
    width: 100%;
    font-weight: bold;
    color: black;
}
.form-informe a,.form-informe h3,.form-informe h4{
    color: white;
}
.form-informe{
    background-color: #000;
    background-image: url(../personalizaciones/bg-cotizacion-Cyo45GT7.png);
    background-repeat: no-repeat;
    color:#fff;
    width: 420px;
    box-sizing: border-box;
    padding: 32px 16px 16px 16px;
    flex-direction: column;
    gap: 8px;
    right: 8px;
    bottom: 8px;
    z-index: 1000;
    position: relative;
    display: flex;
}
.field-container{
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.form-informe h3{
    font-weight: bold;
    font-size: 26px;
    margin: 0;
}
.form-informe h4{
    margin: 32px 0 0 0;
    font-size: 18px;
}
.header-form{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.row{
    display: flex;
    gap: 8px;
}
.row > div{
    flex:1;
}
#minimizar-btn{
    cursor:pointer;
}
#toggleBtn{
    display: block;
    position: fixed;
    bottom: 8px;
    right: 16px;
    background: white;
    padding: 16px 32px;
    font-size: 18px;
    border: 1px solid black;
    color: black;
    z-index: 999;
}
.contenedor-banner-principal{
    background-color: black;
    position: relative;
    width: 100%;
    height: 70vh; /* La altura será el 100% de la ventana del navegador */
    overflow: hidden; /* Para evitar que el video se desborde */
    align-items: center;
    display: flex;
    justify-content: center;
    max-height: 720px;
}
.banner-principal{
    color: white;
    height: 420px;
    display: flex;
    z-index: 2;
    position: relative;
    justify-content: center;
    align-items: start;
}
.page-item{
    display: flex;
    flex-direction: column;
    gap: 32px;
    max-width: 300px;
}
.container-list{
    overflow-x: auto;
    padding-bottom: 32px;
    position: relative;
}

.lx-background{
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
    gap: 32px;
    width: 100%;
    align-items: center;
}
.lx-background::before{
    background-image: url(../personalizaciones/bg-pattern.svg);
    background-position: 50%;
    background-repeat: repeat;
    background-size: 22px auto;
    opacity: .1;
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    width: 100vw;
}
.lx-bg-colors{
    color:#f00;
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
}
.lx-bg-colors .contenedor-generico{
    align-items: end;
}
.lx-bg-colors::before{
    background-size: cover;
    background-position: bottom;
    content: " ";
    height: 100%;
    top: 0;
    width: 100%;
    position: absolute;
}
.container-lx-img-colors{
    overflow: auto;
    padding-bottom: 6px;
}
.lx-img-colors{
    display: flex;
    gap: 4px;
}
.lx-img-colors img{
    width: 48px;
    height:auto;
    cursor: pointer;
}
.lx-background::after{
    background-image: linear-gradient(#fff, hsla(0, 0%, 100%, .5) 50%, #fff);
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    width: 100vw;
}
.contenedor-generico{
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 32px;
    width:100%;
    position: relative;
    z-index: 1;
}
.ancho-normal{
    padding: 0 16px;
}
.video-background {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover; /* Asegura que el video cubra todo el área sin distorsionarse */
    pointer-events: none;
    z-index: 1;
    overflow: hidden; /* Para evitar que el video se desborde */
    opacity: 0.6;
}
.galeria_personalizada{
    display: grid;
    grid-auto-flow: column;
    gap: 16px;
}
.galeria_item{
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.videos .galeria_item{
    cursor: pointer;
}
.galeria_item .imagen_galeria{
    width: 100%;
    height: 300px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.galeria_item .imagen_galeria svg{
    background: #ffffff52;
    border-radius: 1000px;
    opacity: 0.9;
}
.selected{
    border: 2px solid #000;
}
iframe{
    width: 100%;
    aspect-ratio: 1 / 1 !important;
}

#msj_errores, #msj_errores p{
    color: red;
    margin-bottom: 16px;
}
#msj_exito{
    color: green;
    margin-bottom: 16px;
}
/* Estilo del contenedor del scroll */
::-webkit-scrollbar {
    width: 8px; /* Ancho del scroll vertical */
    height: 8px; /* Altura del scroll horizontal */
  }
  
  /* Estilo del "thumb" (barra deslizante) */
  ::-webkit-scrollbar-thumb {
    background-color: #888; /* Color de la barra */
    border-radius: 100px; /* Bordes redondeados */
    border: 2px solid transparent; /* Espaciado entre el thumb y el track */
    background-clip: padding-box; /* Evita que el borde sobresalga */
  }
  
  /* Estilo del track (fondo del scroll) */
  ::-webkit-scrollbar-track {
    background-color: #f0f0f0; /* Fondo del track */
    border-radius: 100px;
  }
  
  /* Hover sobre el thumb */
  ::-webkit-scrollbar-thumb:hover {
    background-color: #555; /* Cambia de color al pasar el cursor */
  }

.columnas-centradas{
    display: flex;
    justify-content: center;
    width: 100%;
    gap:8px;
    font-weight: 300;
    align-items: stretch;
}
.columnas-centradas h3{
    font-weight: 700;
}
.columnas-centradas p{
    display: flex;
    align-items: center;
}
.contenedor_galeria_videos{
    margin: 0 16px;
}
.contenedor_galeria_videos .galeria_personalizada{
    padding: 0 !important;
}
.textura_carrusel{
    position: relative;
}
.textura_carrusel::before{
    background-image: url(https://lacdstatic.lexusasia.com/etc.clientlibs/omotenashi/clientlibs/clientlib-base/img/resources/bg-pattern.svg);
    background-position: 50%;
    background-repeat: repeat;
    background-size: 22px auto;
    opacity: .1;
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    width: 100vw;
}
.textura_carrusel::after{
    background-image: linear-gradient(#E8EEF5, hsla(0, 0%, 100%, .5) 50%, #fff);
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    width: 100vw;
}
.btn_cotizar{
    width:120px;
    padding: 12px 0;
    background: rgba(0, 0, 0, 0.5);
    border: 1px solid white;
    color: white;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}
.checkbox a{
    text-decoration: underline;
}
@media (orientation: portrait) {
    .solo_escritorio{
        display: none !important;
    }
    .form-informe .checkbox{
        margin-top: 32px;
    }
    .form-informe{
        width: 100%;
        right: 0px;
        bottom: 0px;
        display: flex;
    }
    .form-informe .row{
        flex-direction: column;
    }
    .contenedor-generico{
        max-width: 1280px;
    }
    .video-background {
        height: 160%;
    }

    #minimizar-btn{
        display: none;
    }
    .imagen-descripcion{
        display: flex;
        flex-direction: column;
        gap:32px;
    }
    .imagen-descripcion img{
        width:100%;
        height: auto;
    }
    .imagen-descripcion p{
        width:100%;
        font-size: 28px;
        font-weight: 300;
    }
}
@media (orientation: landscape) {
    .solo_movil{
        display: none !important;
    }
    .form-informe h4{
        margin: 8px 0 0 0;
        font-size: 18px;
    }
    .video-background {
        width: 100%;
    }
    .banner-principal .texto{
        width: 50%;
    }

    .form-informe{
        position: fixed;
        border:1px solid white;
        max-height: 98vh;
        z-index: 1001;
    }
    .imagen-descripcion{
        display: flex;
        gap:32px;
    }
    .imagen-descripcion img{
        width:100%;
        height: auto;
    }
    .imagen-descripcion p{
        width:70%;
        font-size: 28px;
        font-weight: 300;
    }
}
@media (max-width: 767px) {
    .banner-principal .texto{
        display:flex;
        flex-direction:column;
        gap:16px;
    }
    .banner-principal .texto h1{
        font-size: 48px;
    }
    .banner-principal .texto p{
        font-size: 22px;
    }
    .pages-list, .galeria_personalizada{
        grid-auto-columns: 44%;
    }
    .page-item h3, .galeria_item h3{
        font-size: 22px;
    }

}
@media (min-width: 767px) {
    header{
        justify-content: center;
    }
    .contenedor-generico{
        min-width: 767px;
        max-width: 767px;
    }
    .banner-principal .texto p{
        font-size: 24px;
    }
    .pages-list, .galeria_personalizada{
        grid-auto-columns: 26%;
    }

}
@media (min-width: 1280px) {
    .contenedor-generico{
        min-width: 1280px;
        max-width: 1280px;
    }
    .pages-list, .galeria_personalizada{
        grid-auto-columns: 18%;
    }

}