html {
    /* overflow-y: hidden */
}

html, body {
    scroll-behavior: smooth;
    font-family: "Mulish", serif;
    overflow-x: hidden
}

video[data-src] {
    background: #00000061;
    /* hoặc ảnh nền giả */
}

.parallax_img {
    background-size: 100% auto
}

.bg-attach {
    background-attachment: fixed
}

.bg-F1F1F1 {
    background-color: #f1f1f1
}

.bg-000 {
    background-color: #000
}

.bg-0F0F0E {
    background-color: #0f0f0e
}

.bg-D68341 {
    background-color: #d68341
}

.bg-141414 {
    background-color: #141414
}

.bg-27083F {
    background-color: #27083f
}

.bg-8E5636 {
    background-color: #8e5636
}

.bg-860F5A {
    background-color: #860f5a;
    transition: all .3s
}

.bg-860F5A_hover:hover {
    background-color: #961466
}

.color-FFF {
    color: #fff
}

.color-0F0F0E {
    color: #0f0f0e
}

.colori-0F0F0E {
    color: #0f0f0e !important
}

.color-27083F {
    color: #27083f
}

.color-F1F1F1 {
    color: #f1f1f1
}

.colori-F1F1F1 {
    color: #f1f1f1 !important
}

.color-860F5A {
    color: #860f5a
}

.vcenter {
    display: flex;
    justify-content: center;
    align-items: center
}

.opa05 {
    opacity: .5
}

.opa07 {
    opacity: .7
}

.br-especial {
    border-right: #333 1px solid
}

.bb-especial {
    border-bottom: #333 1px solid
}

.b-sep {
    border: #350d53 1px solid
}

.overflow-clip {
    overflow: hidden;
    overflow: clip
}

.lh1-2 {
    line-height: 1.2
}

.lh1-1 {
    line-height: 1.1
}

.ml-auto {
    margin-left: auto
}

.mr-auto {
    margin-right: auto
}

.btn-menu {
    cursor: pointer;
    width: max-content;
    display: block;
    padding: 10px;
    mix-blend-mode: difference;
}

.btn-menu .line {
    width: 40px;
    height: 1px;
    background-color: #d9d9d9;
    display: block;
    margin: 9px 0;
    transition: all .3s ease-in-out;
    mix-blend-mode: difference
}

.btn-menu .line:nth-child(2) {
    width: 30px
}

.btn-menu.is-active .line:nth-child(2) {
    opacity: 0
}

.btn-menu.is-active .line:nth-child(1) {
    transform: translateY(10px) rotate(45deg)
}

.btn-menu.is-active .line:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg)
}

.btn_tienda {
    position: fixed;
    cursor: pointer;
    width: max-content;
    display: block;
    padding: 12px 25px;
    mix-blend-mode: difference;
    top: 35px;
    right: 40px;
    font-size: 14px;
    z-index: 8;
    border: #fff 1px solid;
    border-radius: 3px;
    text-decoration: none;
    color: #fff;
    transition: all .5s
}

.btn_tienda:hover {
    background-color: rgba(241, 241, 241, .1);
    background-size: 100%
}

.btn_tienda:hover:before {
    content: " ";
    width: 100%;
    height: 46px;
    position: absolute;
    border-radius: 30px;
    left: 0;
    top: 0;
    animation: ripples .3s ease-in-out
}

@keyframes ripples {
    0% {
        border: 1px solid rgba(0, 0, 0, 0)
    }

    100% {
        border: 20px solid rgba(241, 241, 241, .3);
        opacity: 0
    }
}

.btn_tienda i {
    margin-left: 8px
}

.logo_header {
    z-index: 5;
    left: 0;
    right: 0;
    top: 20px;
    margin-left: auto;
    margin-right: auto
}

.logo_header_angel {
    position: fixed;
    z-index: 5;
    left: calc(49% - 64px);
    right: auto;
    top: 20px;
    margin-left: auto;
    margin-right: auto
}

.logo_header_text {
    mix-blend-mode: difference;
    position: fixed;
    z-index: 5;
    left: calc(49.6% - 30px);
    right: auto;
    top: 60px;
    margin-left: auto;
    margin-right: auto
}

.bg_menu {
    background-color: rgba(0, 0, 0, .5);
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    transition: all .3s;
    z-index: 6;
    display: none
}

.container_menu {
    background-color: #0f0f0e;
    position: fixed;
    top: 0;
    width: 80%;
    z-index: 7;
    transition: all .3s;
    left: -80%;
    overflow-x: hidden
}

.container_menu .header_menu {
    height: 10vh
}

.container_menu .header_menu .input-group .input-group-text {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 0;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: #3b3b3a 1px solid;
    color: #80807f;
    padding: 8px 2px
}

.container_menu .header_menu .input-group .form-control {
    background-color: rgba(0, 0, 0, 0);
    color: #f1f1f1;
    border-radius: 0;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: #3b3b3a 1px solid;
    box-shadow: none !important
}

.container_menu .header_menu .input-group .form-control::placeholder {
    color: #80807f
}

.container_menu .body_menu {
    padding-left: 5%;
    height: 74vh
}

.container_menu .body_menu .titulo_menu {
    color: #f1f1f1;
    font-size: 22px
}

.container_menu .body_menu .line_menu {
    width: 80px;
    height: 1px;
    background-color: #f1f1f1
}

.container_menu .body_menu .line_menu2 {
    width: 40px;
    height: 1px;
    background-color: #f1f1f1;
    margin-bottom: 15px
}

.container_menu .body_menu .subtitulo_menu {
    color: #f1f1f1;
    font-size: 11px;
    text-transform: uppercase
}

.container_menu .body_menu .subtitulo_menu i {
    float: right;
    display: none
}

.container_menu .body_menu ul {
    list-style: none;
    padding-left: 0
}

.container_menu .body_menu ul li {
    margin-bottom: 10px;
    position: relative
}

.container_menu .body_menu ul li a {
    display: block;
    color: #f1f1f1;
    font-size: 16px;
    text-decoration: none;
    transition: all .5s
}

.container_menu .body_menu ul li a:hover {
    color: #d68341;
    position: relative
}

.container_menu .body_menu ul li a i {
    float: right;
    display: none
}

.container_menu .footer_menu {
    height: 14vh;
    padding-left: 5%;
    padding-right: 5%;
    width: 100%
}

.container_menu .footer_menu .btn-secondary {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 0;
    border: none;
    box-shadow: none !important;
    color: #f1f1f1
}

.box_shadow {
    background-color: rgba(0, 0, 0, .5);
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.pos_center {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: fit-content;
    height: fit-content;
    padding-left: 7%;
    padding-right: 7%
}

.tit_normal {
    font-family: "Mulish", serif;
    font-size: 64px;
    color: #fff;
    pointer-events: none;
    text-transform: uppercase;
    text-align: center
}

.sub_tit_normal {
    font-family: "Mulish", serif;
    color: #fff;
    font-size: 28px;
    font-weight: 200;
    pointer-events: none
}

.tit_carousel {
    font-family: "Mulish", serif;
    font-size: 64px;
    color: #fff;
    position: absolute;
    z-index: 2;
    font-weight: 400;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: fit-content;
    height: fit-content;
    pointer-events: none
}

.video_full {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100vh
}

.video_full_h {
    position: relative;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    min-width: 100%
}

.carousel-item {
    position: relative;
    overflow: hidden;
    height: 100vh
}

.carousel-control-next, .carousel-control-prev {
    width: 5%
}

.img_carousel_full {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 100vh
}

.img_carousel_80 {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 80vh
}

.titulo1 {
    font-family: "Mulish", serif;
    font-size: 32px;
    color: #27083f;
    font-weight: 400
}

.titulo1 b {
    font-weight: 700
}

.box_recomendacion {
    width: 100%;
    transition: all .5s
}

.box_recomendacion .box_img_video_recomendacion {
    width: 100%;
    position: relative;
    overflow: hidden;
    height: 70vh;
    transition: all .5s
}

.box_recomendacion .box_img_video_recomendacion .img_recomendacion {
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 2;
    top: 0;
    bottom: 0;
    width: 100%;
    transition: all .5s
}

.box_recomendacion .box_img_video_recomendacion .img_recomendacion:hover {
    opacity: 0
}

.box_recomendacion .box_img_video_recomendacion .video_recomendacion {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: all .5s;
    width: 100%
}

.box_recomendacion p {
    font-size: 16px;
    margin-top: 10px;
    text-align: center
}

.bg1_home {
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    height: 85vh;
    position: relative
}

.container_center_bottom {
    width: max-content;
    position: absolute;
    bottom: 10%;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto
}

.btn_play {
    background-color: rgba(0, 0, 0, 0);
    border: #f1f1f1 1px solid;
    border-radius: 30px;
    padding: 10px 20px;
    position: relative;
    color: #f1f1f1;
    width: max-content;
    cursor: pointer;
    text-decoration: none;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background 1s
}

.btn_play:hover {
    background-color: rgba(241, 241, 241, .1);
    background-size: 100%;
    transition: background 0s
}

.btn_play:hover:before {
    content: " ";
    width: 100%;
    height: 46px;
    position: absolute;
    border-radius: 30px;
    left: 0;
    top: 0;
    animation: ripples .3s ease-in-out
}

@keyframes ripples {
    0% {
        border: 1px solid rgba(0, 0, 0, 0)
    }

    100% {
        border: 20px solid rgba(241, 241, 241, .3);
        opacity: 0
    }
}

.link_type {
    color: #8e5636;
    font-size: 14px;
    text-transform: uppercase;
    text-decoration: none;
    transition: all .3s;
    display: block
}

.link_type i {
    margin-left: 10px;
    font-size: 18px;
    font-weight: 700;
    font-style: normal;
    font-family: monospace;
    transition: all .3s
}

.link_type:hover i {
    margin-left: 15px
}

.link_tel {
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    padding-left: 25px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left center;
    background-image: url(../images/icon_phone.svg)
}

.link_mail {
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    padding-left: 25px;
    background-size: 15px auto;
    background-repeat: no-repeat;
    background-position: left center;
    background-image: url(../images/icon_mail.svg)
}

.btn_suscribirse {
    background-color: rgba(0, 0, 0, 0);
    border: #f1f1f1 1px solid;
    border-radius: 5px;
    padding: 10px 20px;
    position: relative;
    font-size: 12px;
    color: #f1f1f1;
    width: max-content;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background 1s
}

.btn_suscribirse i {
    margin-left: 10px;
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    font-family: monospace;
    transition: all .3s
}

.btn_suscribirse:hover {
    background-color: rgba(241, 241, 241, .1);
    background-size: 100%;
    transition: background 0s
}

.btn_suscribirse:hover:before {
    content: " ";
    width: 100%;
    height: 46px;
    position: absolute;
    border-radius: 5px;
    left: 0;
    top: 0;
    animation: ripples .3s ease-in-out
}

@keyframes ripples {
    0% {
        border: 1px solid rgba(0, 0, 0, 0)
    }

    100% {
        border: 20px solid rgba(241, 241, 241, .3);
        opacity: 0
    }
}

.link_tel_normal {
    display: block;
    text-decoration: none
}

.link_tel_normal i {
    margin-right: 5px
}

.link_mail_normal {
    display: block;
    text-decoration: none
}

.link_mail_normal i {
    margin-right: 5px
}

.btn_conocemas {
    background-color: rgba(0, 0, 0, 0);
    border: #1b1b1a 1px solid;
    border-radius: 40px;
    padding: 10px 30px;
    position: relative;
    font-size: 12px;
    color: #1b1b1a;
    width: max-content;
    cursor: pointer;
    user-select: none;
    text-decoration: none;
    outline: none;
    background-position: center;
    transition: background 1s;
    display: block
}

.btn_conocemas i {
    margin-left: 10px;
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    font-family: monospace;
    transition: all .3s
}

.btn_conocemas:hover {
    background-color: rgba(27, 27, 26, .1);
    background-size: 100%;
    transition: background 0s
}

.btn_conocemas:hover:before {
    content: " ";
    width: 100%;
    height: 46px;
    position: absolute;
    border-radius: 40px;
    left: 0;
    top: 0;
    animation: ripples .3s ease-in-out
}

@keyframes ripples {
    0% {
        border: 1px solid rgba(0, 0, 0, 0)
    }

    100% {
        border: 20px solid rgba(27, 27, 26, .3);
        opacity: 0
    }
}

.btn_descargar {
    background-color: rgba(0, 0, 0, 0);
    border: #8e5636 1px solid;
    border-radius: 40px;
    padding: 10px 30px;
    position: relative;
    font-size: 12px;
    color: #8e5636;
    width: max-content;
    height: max-content;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background 1s;
    text-decoration: none;
    display: block;
    text-align: center
}

.btn_descargar i {
    margin-left: 10px;
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    font-family: monospace;
    transition: all .3s
}

.btn_descargar:hover {
    background-color: rgba(142, 86, 54, .1);
    background-size: 100%;
    transition: background 0s
}

.btn_descargar:hover:before {
    content: " ";
    width: 100%;
    height: 46px;
    position: absolute;
    border-radius: 40px;
    left: 0;
    top: 0;
    animation: ripples .3s ease-in-out
}

@keyframes ripples {
    0% {
        border: 1px solid rgba(0, 0, 0, 0)
    }

    100% {
        border: 20px solid rgba(142, 86, 54, .3);
        opacity: 0
    }
}

.btn_descargar2 {
    background-color: rgba(0, 0, 0, 0);
    border: #8e5636 1px solid;
    border-radius: 3px;
    padding: 10px 30px;
    position: relative;
    font-weight: 700;
    font-size: 14px;
    color: #8e5636;
    width: max-content;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background 1s;
    text-decoration: none;
    display: block;
    text-align: center
}

.btn_descargar2 i {
    margin-left: 10px;
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    font-family: monospace;
    transition: all .3s
}

.btn_descargar2:hover {
    background-color: rgba(142, 86, 54, .1);
    background-size: 100%;
    transition: background 0s
}

.btn_descargar2:hover:before {
    content: " ";
    width: 100%;
    height: 46px;
    position: absolute;
    border-radius: 3px;
    left: 0;
    top: 0;
    animation: ripples .3s ease-in-out
}

@keyframes ripples {
    0% {
        border: 1px solid rgba(0, 0, 0, 0)
    }

    100% {
        border: 20px solid rgba(142, 86, 54, .3);
        opacity: 0
    }
}

.btn_enviar_contacto {
    background-color: #8e5636;
    border-radius: 1px;
    padding: 15px 30px;
    position: relative;
    font-weight: 700;
    font-size: 14px;
    color: #f1f1f1;
    width: max-content;
    border: none;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background 1s;
    text-decoration: none;
    display: block;
    text-align: center
}

.btn_enviar_contacto:hover {
    background-color: rgba(119, 72, 45, .9)
}

.btn_reconocimiento {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 3px;
    padding: 8px 20px;
    position: relative;
    font-weight: 700;
    font-size: 10px;
    color: #8e5636;
    width: max-content;
    border: #8e5636 1px solid;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background .3s;
    text-decoration: none;
    display: block;
    text-align: center
}

.btn_reconocimiento:hover {
    background-color: #8e5636;
    color: #f1f1f1
}

.btn_descarga {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 3px;
    padding: 18px 25px;
    position: relative;
    font-weight: 700;
    font-size: 12px;
    color: #d68341;
    width: max-content;
    border: #d68341 1px solid;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background .3s;
    text-decoration: none;
    display: block;
    text-align: center
}

.btn_descarga:hover {
    background-color: #d68341;
    color: #f1f1f1
}

.line1 {
    height: 2px;
    background-color: #27083f;
    width: 40px
}

.line2 {
    height: 2px;
    background-color: #f1f1f1;
    width: 40px
}

.box-center {
    width: 100%;
    height: max-content
}

.boximg_mini {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 240px;
    height: 34vh;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    object-fit: cover;
}

.boximg_mini_int {
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    height: 40vh;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    top: 180px
}

.boximg_custom_parallax {
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto 150%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    height: 80vh;
    object-fit: cover;
    
}

.boximg_medium {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 70vh;
    width: 90%;
    margin-left: auto;
    margin-right: auto
}

.boximg_large_int {
    background-position: center;
    background-repeat: no-repeat;
    height: 85vh;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    transition: all .1s;
    overflow: hidden
}

.boximg_full_int {
    background-position: center;
    background-repeat: no-repeat;
    height: 120vh;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    transition: all .1s
}

.boximg_newsletter {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    min-height: 320px;
    height: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative
}

.ico_buscar {
    background-image: url(../images/icon_search.png);
    background-position: center right;
    background-repeat: no-repeat
}

.input-group-style .input-group-text {
    display: flex;
    align-items: center;
    padding: 2px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: rgba(0, 0, 0, 0);
    border: none;
    border-radius: 0;
    border-bottom: #fff 1px solid
}

.input-group-style .form-control, .input-group-style .form-select {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #fff;
    appearance: none;
    background-color: rgba(0, 0, 0, 0);
    background-clip: padding-box;
    border: none;
    border-radius: 0;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    border-bottom: #fff 1px solid
}

.input-group-style .form-floating>.form-select {
    padding-top: 1.625rem;
    padding-bottom: .625rem
}

.input-group-style .form-floating>.form-select option {
    color: #27083f
}

.input-group-style .form-floating>label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    height: 100%;
    padding: 1rem .75rem;
    overflow: hidden;
    text-align: start;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    color: #fff;
    border: none;
    transform-origin: 0 0;
    transition: opacity .1s ease-in-out, transform .1s ease-in-out
}

.input-group-style .form-floating .form-control:focus {
    color: #fff;
    background-color: rgba(0, 0, 0, 0);
    outline: 0;
    box-shadow: none
}

.input-group-style .form-floating .form-select:focus {
    color: #fff;
    background-color: rgba(0, 0, 0, 0);
    outline: 0;
    box-shadow: none
}

.input-group-style .form-floating>.form-control:focus~label::after, .input-group-style .form-floating>.form-control:not(:placeholder-shown)~label::after {
    position: absolute;
    inset: 1rem .375rem;
    z-index: -1;
    height: 1.5em;
    content: "";
    background-color: rgba(0, 0, 0, 0);
    border-radius: none;
    color: #fff
}

.input-group-style .form-floating>.form-control:focus~label, .input-group-style .form-floating>.form-control:not(:placeholder-shown)~label {
    color: rgba(255, 255, 255, .7);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem)
}

.input-group-style .form-floating>.form-select:focus~label::after, .input-group-style .form-floating>.form-select:not(:placeholder-shown)~label::after {
    position: absolute;
    inset: 1rem .375rem;
    z-index: -1;
    height: 1.5em;
    content: "";
    background-color: rgba(0, 0, 0, 0);
    border-radius: none;
    color: #fff
}

.input-group-style .form-floating>.form-select:focus~label, .input-group-style .form-floating>.form-select:not(:placeholder-shown)~label {
    color: rgba(255, 255, 255, .7);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem)
}

.input-group-style-claro .input-group-text {
    display: flex;
    align-items: center;
    padding: 2px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: rgba(0, 0, 0, 0);
    border: none;
    border-radius: 0;
    border-bottom: #fff 1px solid
}

.input-group-style-claro .form-control, .input-group-style-claro .form-select {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #fff;
    appearance: none;
    background-color: rgba(0, 0, 0, 0);
    background-clip: padding-box;
    border: none;
    border-radius: 0;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    border-bottom: #fff 1px solid
}

.input-group-style-claro .form-floating>.form-select {
    padding-top: 1.625rem;
    padding-bottom: .2rem;
    appearance: auto;
    background-image: none
}

.input-group-style-claro .form-floating>.form-select option, .input-group-style-claro .form-floating>.form-select optgroup {
    color: #27083f
}

.input-group-style-claro .form-floating>.form-control {
    padding-top: 1.625rem;
    padding-bottom: .2rem
}

.input-group-style-claro .form-floating>label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    height: 100%;
    padding: 1rem .75rem;
    overflow: hidden;
    text-align: start;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    color: #fff;
    border: none;
    transform-origin: 0 0;
    transition: opacity .1s ease-in-out, transform .1s ease-in-out
}

.input-group-style-claro .form-floating .form-control:focus {
    color: #fff;
    background-color: rgba(0, 0, 0, 0);
    outline: 0;
    box-shadow: none
}

.input-group-style-claro .form-floating .form-select:focus {
    color: #fff;
    background-color: rgba(0, 0, 0, 0);
    outline: 0;
    box-shadow: none
}

.input-group-style-claro .form-floating>.form-control:focus~label::after, .input-group-style-claro .form-floating>.form-control:not(:placeholder-shown)~label::after {
    position: absolute;
    inset: 1rem .375rem;
    z-index: -1;
    height: 1.5em;
    content: "";
    background-color: rgba(0, 0, 0, 0);
    border-radius: none;
    color: #fff
}

.input-group-style-claro .form-floating>.form-control:focus~label, .input-group-style-claro .form-floating>.form-control:not(:placeholder-shown)~label {
    color: rgba(255, 255, 255, .7);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem)
}

.input-group-style-claro .form-floating>.form-select:focus~label::after, .input-group-style-claro .form-floating>.form-select:not(:placeholder-shown)~label::after {
    position: absolute;
    inset: 1rem .375rem;
    z-index: -1;
    height: 1.5em;
    content: "";
    background-color: rgba(0, 0, 0, 0);
    border-radius: none;
    color: #fff
}

.input-group-style-claro .form-floating>.form-select:focus~label, .input-group-style-claro .form-floating>.form-select:not(:placeholder-shown)~label {
    color: rgba(255, 255, 255, .7);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem)
}

.input-group-style-oscuro .input-group-text {
    display: flex;
    align-items: center;
    padding: 2px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #0f0f0e;
    text-align: center;
    white-space: nowrap;
    background-color: rgba(0, 0, 0, 0);
    border: none;
    border-radius: 0;
    border-bottom: #fff 1px solid
}

.input-group-style-oscuro .form-control, .input-group-style-oscuro .form-select {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #0f0f0e;
    appearance: none;
    background-color: rgba(0, 0, 0, 0);
    background-clip: padding-box;
    border: none;
    border-radius: 0;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    border-bottom: #0f0f0e 1px solid
}

.input-group-style-oscuro .form-floating>.form-select {
    padding-top: 1.625rem;
    padding-bottom: .625rem
}

.input-group-style-oscuro .form-floating>.form-select option {
    color: #27083f
}

.input-group-style-oscuro .form-floating>label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    height: 100%;
    padding: 1rem .75rem;
    overflow: hidden;
    text-align: start;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    color: #0f0f0e;
    border: none;
    transform-origin: 0 0;
    transition: opacity .1s ease-in-out, transform .1s ease-in-out
}

.input-group-style-oscuro .form-floating .form-control:focus {
    color: #0f0f0e;
    background-color: rgba(0, 0, 0, 0);
    outline: 0;
    box-shadow: none
}

.input-group-style-oscuro .form-floating .form-select:focus {
    color: #0f0f0e;
    background-color: rgba(0, 0, 0, 0);
    outline: 0;
    box-shadow: none
}

.input-group-style-oscuro .form-floating>.form-control:focus~label::after, .input-group-style-oscuro .form-floating>.form-control:not(:placeholder-shown)~label::after {
    position: absolute;
    inset: 1rem .375rem;
    z-index: -1;
    height: 1.5em;
    content: "";
    background-color: rgba(0, 0, 0, 0);
    border-radius: none;
    color: #0f0f0e
}

.input-group-style-oscuro .form-floating>.form-control:focus~label, .input-group-style-oscuro .form-floating>.form-control:not(:placeholder-shown)~label {
    color: rgba(15, 15, 14, .7);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem)
}

.input-group-style-oscuro .form-floating>.form-select:focus~label::after, .input-group-style-oscuro .form-floating>.form-select:not(:placeholder-shown)~label::after {
    position: absolute;
    inset: 1rem .375rem;
    z-index: -1;
    height: 1.5em;
    content: "";
    background-color: rgba(0, 0, 0, 0);
    border-radius: none;
    color: #0f0f0e
}

.input-group-style-oscuro .form-floating>.form-select:focus~label, .input-group-style-oscuro .form-floating>.form-select:not(:placeholder-shown)~label {
    color: rgba(15, 15, 14, .7);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem)
}

.bg_valle {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: 25vh
}

.box_sgte_wine {
    width: 100%;
    transition: all .5s;
    position: relative;
    overflow: hidden;
    height: 22vh
}

.box_sgte_wine .name_wine {
    position: absolute;
    background-color: #0f0f0e;
    border-right: #1f1f1d 1px solid;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    transition: all .5s;
    text-decoration: none;
    cursor: pointer
}

.box_sgte_wine .name_wine:hover {
    background-color: rgba(15, 15, 14, .6)
}

.box_sgte_wine .name_wine p {
    font-size: 32px;
    color: #fff;
    margin-bottom: 0;
    text-align: center
}

.box_sgte_wine .video_wine {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: all .5s;
    width: 100%
}

.list-cepas {
    list-style: none;
    padding-left: 0
}

.list-cepas li {
    display: inline-block;
    margin-right: 20px;
    margin-left: 5px;
    cursor: pointer;
    font-size: 12px;
    color: #27083f;
    transition: all .3s;
    opacity: .5
}

.list-cepas li:hover {
    color: #27083f;
    font-weight: 700;
    text-decoration: underline;
    opacity: 1
}

.list-cepas li.active {
    color: #27083f;
    font-weight: 700;
    text-decoration: underline;
    opacity: 1
}

.box_opt_vinos {
    height: 90vh;
    width: 80%;
    margin: auto
}

.scroll_mini::-webkit-scrollbar {
    width: 4px;
    height: 4px
}

.scroll_mini::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 4px
}

.scroll_mini::-webkit-scrollbar-thumb:hover {
    background: #b3b3b3;
    box-shadow: 0 0 2px 1px rgba(0, 0, 0, .2)
}

.scroll_mini::-webkit-scrollbar-track {
    background: #f5f5f5;
    border-radius: 4px
}

.scroll_mini_morado::-webkit-scrollbar {
    width: 4px;
    height: 4px
}

.scroll_mini_morado::-webkit-scrollbar-thumb {
    background: #3e0d64;
    border-radius: 4px
}

.scroll_mini_morado::-webkit-scrollbar-thumb:hover {
    background: #45235f;
    box-shadow: 0 0 2px 1px rgba(0, 0, 0, .2)
}

.scroll_mini_morado::-webkit-scrollbar-track {
    background: #45235f;
    border-radius: 4px
}

.body_menu::-webkit-scrollbar {
    width: 2px;
    background-color: #000;
    border-radius: 20px
}

.body_menu::-webkit-scrollbar-thumb {
    background-color: #fdfdfd;
    border-radius: 6px
}

.box_descargas {
    background-color: #f1f1f1;
    width: 80%;
    padding: 50px 18%;
    display: flex;
    align-items: center;
}

.box_descargas .form-select {
    border-radius: 40px;
    background-color: rgba(0, 0, 0, 0);
    border-color: #1b1b1a;
    font-size: 12px;
    padding: 10px 45px 10px 18px
}

.box_enews {
    height: 90vh;
    width: 90%
}

.box_img_vh70 {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 70vh;
    width: 85%
}

.box_img_vh30 {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 30vh;
    width: 100%;
    margin-left: auto;
    margin-right: auto
}

.list-vinedos {
    list-style: none;
    padding-left: 0;
    text-align: center
}

.list-vinedos li {
    display: inline-block;
    margin-right: 20px;
    margin-left: 5px;
    cursor: pointer;
    font-size: 12px;
    color: #27083f;
    transition: all .3s;
    opacity: .5
}

.list-vinedos li b {
    color: #0f0f0e
}

.list-vinedos li a {
    cursor: pointer;
    font-size: 12px;
    color: #27083f;
    transition: all .3s;
    opacity: .5;
    text-decoration: none
}

.list-vinedos li:hover {
    color: #27083f;
    font-weight: 700;
    text-decoration: underline;
    opacity: 1
}

.list-vinedos li.active {
    color: #27083f;
    font-weight: 700;
    text-decoration: underline;
    opacity: 1
}

.list-vinedos li.active a {
    color: #27083f;
    font-weight: 700;
    text-decoration: underline;
    opacity: 1
}

.mod_select {
    background-color: rgba(0, 0, 0, 0);
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0
}

.carousel_vertical {
    overflow: hidden;
    max-height: 600px;
    width: 100%;
    position: relative
}

.carousel_vertical .riel_carousel_cv {
    width: 100%;
    position: absolute;
    transition: all .3s
}

.carousel_vertical .riel_carousel_cv .item_cv_container {
    display: flex;
    transition: all .3s;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 10vh
}

.carousel_vertical .riel_carousel_cv .item_cv_container .item_cv {
    text-align: center;
    color: #f1f1f1;
    font-size: 16px;
    transition: all .3s
}

.carousel_vertical .riel_carousel_cv .item_cv_container .item_cv.activo {
    font-size: 32px
}

.container_arrow_carrousel {
    position: absolute;
    z-index: 2;
    right: -20px;
    height: max-content;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto
}

.container_arrow_carrousel .btnup {
    background-color: #860f5a;
    color: #fff;
    padding: 12px;
    margin-bottom: 10px;
    line-height: 1;
    cursor: pointer;
    transition: all .3s
}

.container_arrow_carrousel .btnup:hover {
    background-color: #5f0b40
}

.container_arrow_carrousel .btndown {
    background-color: #860f5a;
    color: #fff;
    padding: 12px;
    margin-bottom: 10px;
    line-height: 1;
    cursor: pointer;
    transition: all .3s
}

.container_arrow_carrousel .btndown:hover {
    background-color: #5f0b40
}

.container_contacto {
    background-color: #0f0f0e;
    padding: 40px 10%;
    width: 90%
}

.table_reconocimiento .responsive_table {
    max-height: 60vh;
    overflow: auto
}

.table_reconocimiento .table_reco {
    width: 100%
}

.table_reconocimiento .table_reco thead th {
    background-color: #f1f1f1;
    position: sticky;
    top: 0;
    z-index: 1;
    border-bottom: rgba(0, 0, 0, .8) 1px solid
}

.table_reconocimiento .table_reco tr {
    border-bottom: rgba(0, 0, 0, .2) 1px solid
}

.table_reconocimiento .table_reco tr td {
    padding: 7px 30px;
    font-size: 14px;
    color: #27083f
}

.table_reconocimiento .table_reco tr th {
    padding: 7px 30px;
    font-size: 12px;
    color: #27083f;
    font-weight: 400
}

.container_cepas {
    background-color: #27083f;
    padding: 5vh 0;
    overflow: hidden
}

.container_cepas .riel_cepas {
    display: flex;
    justify-content: space-evenly;
    align-items: end;
    overflow-x: auto;
    scroll-behavior: smooth
}

.container_cepas .riel_cepas .opt_cepa {
    margin-left: 5px;
    margin-right: 5px;
    scroll-snap-align: start
}

.container_cepas .riel_cepas .opt_cepa .botella_cepa {
    min-width: 100px;
    height: 52vw;
    max-height: 60vh;
    width: 12vw;
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: contain
}

.container_cepas .riel_cepas .opt_cepa img {
    max-width: 100%;
    max-height: 100%
}

.bg-disclaimer {
    background-image: url(../images/bg_disclaimer.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: fixed;
    min-height: 100vh;
    width: 100%;
    z-index: 100000;
    filter: grayscale(100%);
    transition: all .3s
}

.disclaimer {
    position: fixed;
    min-height: 100vh;
    width: 100%;
    z-index: 100001;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex-wrap: nowrap
}

.disclaimer .logo_header {
    top: 40px;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto
}

.disclaimer .size60-esp {
    font-size: 60px
}

.disclaimer .pie_texto {
    position: fixed;
    bottom: 3%;
    color: #fff;
    font-size: 16px;
    text-align: center;
    font-style: italic;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 1em
}

.disclaimer .btn_si {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 30px;
    padding: 15px 30px;
    position: relative;
    font-size: 14px;
    color: #f1f1f1;
    width: 84px;
    border: #f1f1f1 1px solid;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background .4s;
    text-decoration: none;
    display: block;
    text-align: center;
    margin-left: auto
}

.disclaimer .btn_si.activo {
    background-color: #8e5636;
    color: #f1f1f1;
    border: #8e5636 1px solid
}

.disclaimer .btn_si:hover {
    background-color: #8e5636;
    color: #f1f1f1;
    border: #8e5636 1px solid
}

.disclaimer .btn_no {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 30px;
    padding: 15px 30px;
    position: relative;
    font-size: 14px;
    color: #f1f1f1;
    width: 84px;
    border: #f1f1f1 1px solid;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background .4s;
    text-decoration: none;
    display: block;
    text-align: center
}

.disclaimer .btn_no.activo {
    background-color: #eb0d3f;
    color: #f1f1f1;
    border: #eb0d3f 1px solid
}

.disclaimer .btn_no:hover {
    background-color: #eb0d3f;
    color: #f1f1f1;
    border: #eb0d3f 1px solid
}

.disclaimer .btn_confirm_disclaimer {
    background-color: rgba(0, 0, 0, 0);
    border-radius: 30px;
    padding: 15px 30px;
    position: relative;
    font-size: 14px;
    color: #f1f1f1;
    width: max-content;
    border: #f1f1f1 1px solid;
    cursor: pointer;
    user-select: none;
    outline: none;
    background-position: center;
    transition: background .4s;
    text-decoration: none;
    display: block;
    text-align: center;
    margin-left: auto;
    margin-right: auto
}

.disclaimer .btn_confirm_disclaimer i {
    margin-left: 10px
}

.disclaimer .btn_confirm_disclaimer:disabled {
    border: rgba(0, 0, 0, 0) 1px solid;
    animation: none;
    opacity: .7;
    cursor: not-allowed
}

.disclaimer .btn_confirm_disclaimer:hover:before {
    content: " ";
    width: 100%;
    height: 46px;
    position: absolute;
    border-radius: 30px;
    left: 0;
    top: 0;
    animation: ripples .3s ease-in-out
}

@keyframes ripples {
    0% {
        border: 1px solid rgba(0, 0, 0, 0)
    }

    100% {
        border: 20px solid rgba(241, 241, 241, .3);
        opacity: 0
    }
}

.disclaimer .form-select {
    background-color: rgba(0, 0, 0, 0);
    color: #f1f1f1;
    appearance: auto;
    background-image: none;
    border: none;
    width: max-content;
    box-shadow: none;
    font-size: 12px;
    text-transform: uppercase;
    padding: 5px 0
}

.disclaimer .form-select option {
    color: #27083f
}

.titulo_tour_abs {
    position: absolute;
    bottom: 30px;
    left: 30px;
    z-index: 3;
    color: #f1f1f1;
    font-size: 32px
}

.box_morado {
    background-color: #27083f;
    padding-top: 70px;
    padding-bottom: 70px;
    width: 80%;
    max-width: 420px
}

.box_morado img {
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block
}

.bg_attach {
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    position: relative
}

.pin-spacer {
    z-index: 2 !important
}

.bg-l-m {
    background: #27083f;
    background: linear-gradient(90deg, rgb(39, 8, 63) 60%, rgb(255, 255, 255) 60%)
}

.bg-r-m {
    background: #27083f;
    background: linear-gradient(270deg, rgb(39, 8, 63) 60%, rgb(255, 255, 255) 60%)
}

.timeline-section {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: start;
    padding: 0;
    overflow: hidden;
    position: relative
}

.timeline-section .timeline {
    display: flex
}

.timeline-section .timeline .vcenter-hito {
    display: flex;
    align-items: center
}

.timeline-section .timeline .hito {
    flex: 0 0 60vw;
    height: 100vh;
    border-radius: 0;
    background-size: cover;
    background-position: center;
    position: relative;
    scroll-snap-align: start;
    overflow: hidden
}

.timeline-section .timeline .hito.hito100 {
    flex: 0 0 100vw
}

.timeline-section .timeline .hito .cont-hito {
    height: 100%;
    width: 100%
}

.timeline-section .timeline .hito .cont-hito .acom {
    padding: 10vh 20%
}

.timeline-section .timeline .hito .cont-hito .titulo_hito {
    font-size: 64px
}

.timeline-section .timeline .hito .cont-hito .texto_hito {
    font-size: 20px
}

.timeline-section .timeline .hito .overlay {
    position: absolute;
    bottom: 20px;
    left: 20px;
    background: rgba(0, 0, 0, .5);
    color: #fff;
    padding: 20px;
    border-radius: 8px;
    max-width: 90%
}

.timeline-section .timeline .hito .overlay h2 {
    font-size: 2rem;
    margin-bottom: 10px
}

.timeline-section .timeline .hito .overlay p {
    font-size: 1rem
}

.years-container {
    display: flex;
    justify-content: center;
    gap: 30px;
    position: fixed;
    bottom: 10px;
    z-index: 3;
    left: 50%;
    transform: translateX(-50%);
    width: auto
}

.years-container .year {
    font-size: 8px;
    font-weight: bold;
    color: #000;
    cursor: pointer;
    transition: font-size .3s
}

.years-container .year.active {
    font-size: 14px;
    color: #000
}

.progress-bar-container {
    position: fixed;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    width: auto;
    height: 5px;
    background-color: #e0e0e0;
    z-index: 3
}

.progress-bar-container .progress-bar {
    height: 100%;
    width: 0%;
    background-color: #333
}

.pad40-especial {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 40px;
    padding-right: 40px
}

.pl30-especial {
    padding-left: 30px
}

.pr30-especial {
    padding-right: 30px
}

.pl0-especial {
    padding-left: 0
}

.pr0-especial {
    padding-right: 0
}

.wp80-especial {
    width: 80%
}

.wp80-100 {
    width: 80%
}

.wp85-especial {
    width: 85%
}

.vh90-especial {
    height: 80vh
}

.vh55-especial {
    height: 55vh
}

.vh65-especial {
    height: 65vh
}

.vh70-especial {
    height: 70vh
}

.vh75-especial {
    height: 75vh
}

.mtp5-especial {
    margin-top: 5%
}

.mbp5-especial {
    margin-bottom: 5%
}

.mt60-especial {
    margin-top: 60px
}

.plr_especial {
    padding-left: 5vh;
    padding-right: 5vh
}

.pall-especial {
    padding-top: 10px;
    padding-bottom: 40px;
    padding-left: 10%;
    padding-right: 10%
}

@media(max-width: 1366px) {
    .container_menu {
        width: 100%;
        left: -100%
    }
}

@media(max-width: 1280px) {
    .titulo1 {
        font-size: 24px
    }

    .size16 {
        font-size: 14px
    }

    .size32 {
        font-size: 24px
    }

    .plp20 {
        padding-left: 12%
    }

    .prp20 {
        padding-right: 12%
    }

    .box_recomendacion .box_img_video_recomendacion {
        height: 60vh
    }

    .box_recomendacion p {
        font-size: 14px
    }

    .box_sgte_wine .name_wine p {
        font-size: 20px
    }

    .carousel_vertical .riel_carousel_cv .item_cv_container .item_cv {
        font-size: 12px
    }

    .carousel_vertical .riel_carousel_cv .item_cv_container .item_cv.activo {
        font-size: 24px
    }

    .box_descargas {
        padding: 50px 8%
    }
}

@media(max-width: 1200px) {
    main {
        padding-top: 60px;
    }

    .container_menu {
        width: 100%;
        left: -100%
    }

    .container_menu .header_menu {
        height: 10vh
    }

    .container_menu .body_menu {
        padding-left: 5%;
        padding-right: 5%;
        height: 73vh;
        overflow: auto
    }

    .container_menu .body_menu .mbp10 {
        margin-bottom: 0
    }

    .container_menu .body_menu .pl15 {
        padding-right: 15px
    }

    .container_menu .body_menu .titulo_menu {
        font-size: 16px;
        padding-left: 13px;
        padding-right: 13px
    }

    .container_menu .body_menu .line_menu {
        display: none
    }

    .container_menu .body_menu .line_menu2 {
        display: none
    }

    .container_menu .body_menu .subtitulo_menu {
        font-size: 12px;
        border-bottom: #424242 1px solid;
        padding-bottom: 10px;
        margin-bottom: 0;
        transition: all .4s
    }

    .container_menu .body_menu .subtitulo_menu i {
        float: right;
        display: block;
        transition: all .4s
    }

    .container_menu .body_menu .subtitulo_menu i::before {
        content: ""
    }

    .container_menu .body_menu ul {
        height: 0;
        overflow: hidden;
        transition: all .4s
    }

    .container_menu .body_menu ul li:last-child {
        border-bottom: #8e5636 1px solid
    }

    .container_menu .body_menu ul li:first-child {
        margin-top: 15px
    }

    .container_menu .body_menu ul li {
        padding-bottom: 15px;
        margin-bottom: 0;
        transition: all .4s
    }

    .container_menu .body_menu ul li a {
        font-size: 16px;
        transition: all .4s
    }

    .container_menu .body_menu ul li a:hover {
        color: #d68341;
        position: relative
    }

    .container_menu .body_menu ul li a i {
        float: right;
        display: block;
        font-size: 10px;
        margin-top: 5px;
        transition: all .4s
    }

    .container_menu .body_menu .especial_ul {
        margin-top: 30px;
        height: auto;
        padding-left: 13px
    }

    .container_menu .body_menu .especial_ul li:last-child {
        border-bottom: none
    }

    .container_menu .body_menu .especial_ul li a {
        font-size: 14px
    }

    .container_menu .body_menu .activo ul {
        display: block
    }

    .container_menu .body_menu .activo .subtitulo_menu {
        border-bottom: #8e5636 1px solid
    }

    .container_menu .body_menu .activo .subtitulo_menu i::before {
        content: ""
    }

    .container_menu .footer_menu {
        height: 13vh;
        padding-left: 6%;
        padding-right: 9%
    }

    .container_menu .footer_menu .btn-secondary {
        background-color: rgba(0, 0, 0, 0);
        border-radius: 0;
        border: none;
        box-shadow: none !important;
        color: #f1f1f1
    }

    .pl30-especial {
        padding-left: 12px
    }

    .pr30-especial {
        padding-right: 12px
    }
}

@media(max-width: 767px) {
    .carousel-item {
        position: relative;
        overflow: hidden;
        height: 24vh;
    }

    .img_carousel_full {
        height: 100%;
    }

    .video_full {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        min-width: 100%;
        min-height: 100%;
    }
}

@media(max-width: 768px) {
    .img_v90 {
        max-width: 90%;
        margin-left: auto;
        margin-right: auto
    }

    .img_v70 {
        max-width: 70%;
        margin-left: auto;
        margin-right: auto
    }

    .img_v60 {
        max-width: 60%;
        margin-left: auto;
        margin-right: auto
    }

    .img_v {
        max-width: 50%;
        margin-left: 15%
    }

    .img_vr {
        max-width: 50%;
        margin-right: 15%;
        margin-left: auto
    }

    .bg-l-m {
        background: #27083f;
        background: linear-gradient(90deg, rgb(39, 8, 63) 30%, rgb(255, 255, 255) 30%)
    }

    .bg-r-m {
        background: #27083f;
        background: linear-gradient(270deg, rgb(39, 8, 63) 30%, rgb(255, 255, 255) 30%)
    }

    .timeline-section {
        height: 100vh
    }

    .timeline-section .timeline {
        display: flex
    }

    .timeline-section .timeline .hito {
        flex: 0 0 100vw;
        height: 100vh;
        border-radius: 0;
        background-size: cover;
        background-position: center;
        position: relative;
        scroll-snap-align: start;
        overflow: hidden
    }

    .timeline-section .timeline .hito .cont-hito {
        height: 100%;
        width: 100%
    }

    .timeline-section .timeline .hito .cont-hito .acom {
        padding: 10vh 10vw
    }

    .timeline-section .timeline .hito .cont-hito .titulo_hito {
        font-size: 32px
    }

    .timeline-section .timeline .hito .cont-hito .texto_hito {
        font-size: 16px
    }

    .years-container {
        display: none
    }

    .progress-bar-container {
        display: none
    }

    .logo_header_angel {
        left: calc(49% - 56px);
        top: 20px;
        height: 58px
    }

    .logo_header_text {
        left: calc(49.6% - 24px);
        top: 48px;
        height: 22px
    }

    .boximg_custom_parallax {
        background-size: auto 120%
    }

    .box_morado {
        width: 70%
    }

    .pall-especial {
        padding-top: 60px
    }

    .plr_especial {
        padding-left: 15%;
        padding-right: 15%
    }

    .tit_normal {
        font-size: 32px;
        line-height: 1;
        margin-bottom: 15px
    }

    .sub_tit_normal {
        font-size: 15px;
        max-width: 70%;
        margin-left: auto;
        margin-right: auto
    }

    .tit_carousel {
        font-size: 40px
    }

    .size16 {
        font-size: 14px
    }

    .mt60-especial {
        margin-top: 0
    }

    .mtp5-especial {
        margin-top: 0
    }

    .mbp5-especial {
        margin-bottom: 0
    }

    .mb30 {
        margin-bottom: 15px
    }

    .pl0-especial {
        padding-left: 15px
    }

    .pr0-especial {
        padding-right: 15px
    }

    .wp85-especial {
        width: 98%
    }

    .wp80-especial {
        width: 98%
    }

    .wp80-100 {
        width: 100%
    }

    .vh90-especial {
        height: 80vh
    }

    .vh55-especial {
        height: auto
    }

    .vh65-especial {
        height: auto
    }

    .vh70-especial {
        height: auto
    }

    .vh75-especial {
        height: auto
    }

    .pad40-especial {
        padding-top: 40px;
        padding-bottom: 40px;
        padding-left: 0;
        padding-right: 0
    }

    .boximg_medium {
        height: 30vh;
        width: 100%
    }

    .bg_valle {
        padding-bottom: 40vh
    }

    .bg-logos-footer {
        padding-left: 30px;
        padding-right: 30px
    }

    .bg-logos-footer img {
        max-width: 100%
    }

    .container_contacto {
        width: 100%
    }

    .box_enews {
        height: auto;
        width: 100%;
        padding-top: 50px;
        padding-bottom: 50px
    }

    .ajute_mobile_btn {
        margin-top: 30px;
        width: 100%
    }

    .box_img_vh30 {
        height: 25vh
    }

    .tit_vinedo_mobile {
        width: 100%;
        margin-bottom: 10px
    }

    .list-cepas li {
        margin-left: 0
    }

    .box_descargas {
        width: 100%;
        padding: 50px 13%
    }

    .box_opt_vinos {
        height: 15vh;
        width: 100%
    }

    .carousel_vertical {
        overflow: hidden;
        max-height: 600px;
        width: 100%;
        position: relative;
        height: 15vh
    }

    .container_arrow_carrousel {
        right: 0;
        left: 0;
        height: max-content;
        width: max-content;
        top: auto;
        bottom: -20px;
        margin: auto
    }

    .container_arrow_carrousel .btnup {
        margin-bottom: 0;
        width: max-content;
        display: inline-block;
        transform: rotateZ(-90deg)
    }

    .container_arrow_carrousel .btndown {
        margin-bottom: 0;
        width: max-content;
        display: inline-block;
        margin-left: 5px;
        transform: rotateZ(-90deg)
    }

    .carousel_vertical {
        overflow: hidden;
        max-height: 600px;
        width: 100%;
        position: relative;
        height: 15vh
    }

    .carousel_vertical .riel_carousel_cv {
        width: auto;
        display: flex
    }

    .carousel_vertical .riel_carousel_cv .item_cv_container {
        display: grid;
        transition: all .3s;
        width: 50vw;
        height: 15vh
    }

    .carousel_vertical .riel_carousel_cv .item_cv_container .item_cv {
        font-size: 12px;
        margin-bottom: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1.1
    }

    .carousel_vertical .riel_carousel_cv .item_cv_container .item_cv.activo {
        font-size: 18px
    }

    .disclaimer .size60-esp {
        font-size: 32px
    }

    .disclaimer .pie_texto {
        font-size: 14px
    }

    .logo_header {
        width: 120px
    }

    .box_recomendacion .box_img_video_recomendacion {
        height: 70vh
    }
}