﻿@font-face {
    font-family: "Philosopher";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local(""), url("/assets/fonts/philosopher-v19-latin-regular.woff2") format("woff2"), url("/assets/fonts/philosopher-v19-latin-regular.woff") format("woff")
}

@font-face {
    font-family: "Festivo";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url("/assets/fonts/festivolc-basic2.woff2") format("woff2"), url("/assets/fonts/festivolc-basic2.woff") format("woff")
}

@font-face {
    font-family: "Raleway";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local(""), url("/assets/fonts/raleway-v28-latin-regular.woff2") format("woff2"), url("/assets/fonts/raleway-v28-latin-regular.woff") format("woff")
}

@font-face {
    font-family: "Raleway";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local(""), url("/assets/fonts/raleway-v28-latin-500.woff2") format("woff2"), url("/assets/fonts/raleway-v28-latin-500.woff") format("woff")
}

@font-face {
    font-family: "Raleway";
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: local(""), url("/assets/fonts/raleway-v28-latin-italic.woff2") format("woff2"), url("/assets/fonts/raleway-v28-latin-italic.woff") format("woff")
}

@font-face {
    font-family: "Raleway";
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: local(""), url("/assets/fonts/raleway-v28-latin-500italic.woff2") format("woff2"), url("/assets/fonts/raleway-v28-latin-500italic.woff") format("woff")
}

header.menu {
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 111111;
    height: 144px;
    transition: all .25s linear;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0)
}

header.menu::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, #ffffff, #ffffff, #ffffff, transparent);
    opacity: 0;
    transition: opacity .3s linear;
    z-index: -1
}

header.menu.active::before {
    opacity: 1
}

header.menu.minified {
    height: 4.6875rem;
    background: #fff;
    box-shadow: 0 0 20px #000
}

.containermenu {
    position: relative;
    height: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    text-transform: uppercase;
    font-size: .8125rem;
    padding-inline: 3rem;
    max-width: 1100px
}

.menu .containermenu,
header.menu {
    pointer-events: none
}

.menu.active .containermenu,
header.menu.active,
.menu.minified .containermenu,
header.menu.minified {
    pointer-events: all
}

.navboton_container,
.rrss_btn,
.logo-item,
.hamburger {
    pointer-events: all
}

.flex-item.logo-item {
    width: auto;
    min-width: 250px;
    position: relative;
    z-index: 10
}

header.menu .flex-item.logo-item {
    flex: 0 0 var(--logo-slot);
    width: var(--logo-slot);
    min-width: var(--logo-slot)
}

.logo {
    max-height: 130px;
    margin-top: 10px;
    z-index: 1
}

.menu.minified .logo {
    max-height: 6rem;
    margin-top: 35px
}

.flex-item.container_menu {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
    text-align: left;
    width: calc(100% - 250px);
    margin-top: 0
}

header.menu .flex-item.container_menu {
    flex: 1 1 auto;
    width: calc(100% - var(--logo-slot));
    min-width: 0
}

.apartados {
    position: relative;
    margin-top: 0
}

.apartados_list,
.submenu_list {
    list-style: none;
    margin: 0;
    padding: 0
}

.apartados_list {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap
}

header.menu .container_menu {
    justify-content: center;
    align-content: center;
    flex-direction: row;
    text-align: left
}

header.menu .apartados_list {
    justify-content: flex-start;
    align-items: center;
    margin-top: 0
}

header.menu a {
    color: #fff;
    font-family: "Raleway", Helvetica, Arial, Lucida, sans-serif;
    text-decoration: none;
    transition: all .25s linear;
    display: inline-block;
    position: relative;
    font-size: .8125rem;
    font-weight: 700;
    line-height: 40px
}

.menu.minified a,
.menu.active a {
    color: #000
}

.navboton_container {
    position: relative;
    top: 0;
    left: 0
}

header.menu .navboton_container {
    top: 0;
    left: 0px
}

.navboton_container .a-main {
    line-height: 40px;
    position: relative;
    z-index: 10;
    padding-bottom: 0;
    white-space: nowrap;
    letter-spacing: .02em;
    font-size: .8125rem;
    font-weight: 700;
    height: 25px
}

.punto {
    opacity: 0;
    color: gray;
    margin: 0 10px
}

.menu.minified .punto,
.menu.active .punto {
    opacity: 1
}

.menu .apartados a::before {
    position: absolute;
    content: "";
    width: 100%;
    height: .0625rem;
    background: #fff000;
    top: 100%;
    left: 0;
    transform-origin: 50% 100%;
    transition: clip-path .5s, transform .3s cubic-bezier(0.2, 1, 0.8, 1);
    clip-path: polygon(0% 0%, 0% 100%, 0 100%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%, 100% 100%, 100% 0%)
}

.menu .apartados .a-main::before {
    margin-top: .3125rem
}

.menu .apartados a:hover::before,
.menu .apartados .navboton_container.over2 .a-main::before,
.activemenu::before {
    transform: translate3d(0, 1px, 0) scale3d(1, 2, 1);
    clip-path: polygon(0% 0%, 0% 100%, 50% 100%, 50% 0, 50% 0, 50% 100%, 50% 100%, 0 100%, 100% 100%, 100% 0%)
}

.navboton_container .a-main:hover,
.navboton_container.over2 .a-main {
    transform: scale(1.1)
}

.submenu_container {
    width: 100vw;
    position: fixed;
    left: 50%;
    height: 300px;
    top: 100px;
    z-index: 0;
    background: #fff;
    justify-content: center;
    transform: translate(0, -40px);
    margin-top: -25px;
    padding-top: 1.5625rem;
    box-shadow: 0 20px 0 -20px rgba(0, 0, 0, 0);
    display: none
}

.submenu_container.v2 {
    height: 340px;
    overflow: hidden
}

.submenu_container.active {
    display: block;
    left: 50%;
    transform: translate(-50%, -40px);
    opacity: 1;
    z-index: 1
}

.menu.minified .submenu_container {
    top: 4.6875rem
}

.submenu {
    display: flex;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    justify-content: space-evenly;
    align-items: center
}

.submenu.v2 {
    transform: translateX(-45%)
}

.submenu .nav {
    display: flex;
    flex-flow: column;
    justify-content: center;
    text-align: left
}

.submenu a {
    display: inline-block;
    font-size: 1.125rem;
    font-weight: 700;
    height: auto;
    margin: 10px 0;
    color: #000;
    font-family: "Raleway", Helvetica, Arial, Lucida, sans-serif
}

.submenu_container .subcategoria_item {
    display: inline-block;
    color: #000 !important;
    font-family: "Raleway", Helvetica, Arial, Lucida, sans-serif;
    font-size: 1.125rem;
    font-weight: 700;
    height: auto
}

.submenu_container a:hover {
    padding-left: .625rem
}

.nav1 {
    width: 35%
}

.nav2 {
    width: 65%
}

.submenu.v2 .nav1,
.submenu.v2 .nav2 {
    width: unset
}

.flexrow {
    display: flex !important;
    flex-direction: row
}

.flexcol {
    display: flex;
    flex-direction: column
}

.mw {
    max-width: 900px;
    width: 100%
}

header.menu .img_container {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 1.875rem
}

header.menu .img_container.v2 {
    width: 100%;
    height: 207px;
    min-height: .625rem
}

header.menu .submenu.v2 .img_container.v2 img {
    max-width: 552px
}

.b_cocteleria .submenu.v2 .nav1 {
    width: 30%
}

.rrss {
    position: relative;
    display: flex;
    flex-flow: row;
    margin-left: auto;
    margin-top: 0;
    align-items: center;
    z-index: 1
}

.rrss .rrss_btn {
    position: relative;
    width: 2.1875rem;
    height: 1.875rem;
    padding-inline: .125rem
}

.rrss .rrss_btn a {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    background: #fff;
    padding: .375rem;
    box-sizing: border-box
}

.rrss .rrss_btn.yt a {
    padding: .25rem
}

.rrss .rrss_btn a:hover {
    transform: scale(1.15)
}

.rrss .rrss_btn a img {
    position: relative;
    width: 100%;
    height: 100%;
    transform: scale(0.75)
}

.rrss .rrss_btn a:hover img {
    transform: scale(1)
}

.hamburger {
    display: none;
    background: rgba(0, 0, 0, 0);
    border: 0;
    padding: 0
}

.ham {
    cursor: pointer;
    transition: transform 400ms;
    user-select: none
}

.hamRotate.active,
.hamburger.is-active .hamRotate {
    transform: rotate(45deg)
}

.line {
    fill: none;
    transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
    stroke: #fff;
    stroke-width: 5.5;
    stroke-linecap: round
}

.minified .line {
    stroke: #000
}

.menu_movil_on .line,
.menu_movil_on .minified .line {
    stroke: #fff
}

.menu_movil_on header.menu {
    background: #000 !important;
    box-shadow: none !important
}

.menu_movil_on header.menu::before {
    opacity: 1 !important;
    background: #000 !important
}

.ham8 .top {
    stroke-dasharray: 40 160
}

.ham8 .middle {
    stroke-dasharray: 40 142;
    transform-origin: 50%;
    transition: transform 400ms
}

.ham8 .bottom {
    stroke-dasharray: 40 85;
    transform-origin: 50%;
    transition: transform 400ms, stroke-dashoffset 400ms
}

.ham8.active .top {
    stroke-dashoffset: -64px
}

.ham8.active .middle {
    transform: rotate(90deg)
}

.ham8.active .bottom {
    stroke-dashoffset: -64px
}

.separacion_apartados {
    display: none
}

@media(min-width: 1023.9px)and (max-width: 1279.9px) {
    .containermenu {
        max-width: 1100px;
        padding-inline: 3rem;
        height: auto
    }

    .flex-item.logo-item {
        width: auto;
        min-width: 0
    }

    header.menu .flex-item.logo-item {
        flex: 0 0 auto;
        width: auto;
        min-width: 0
    }

    .logo {
        max-height: 130px
    }

    .flex-item.container_menu {
        width: auto;
        margin-top: 0
    }

    header.menu .flex-item.container_menu {
        width: auto;
        flex: 1 1 auto
    }

    .apartados {
        gap: .55rem
    }

    header.menu .apartados_list {
        justify-content: center
    }

    header.menu .navboton_container {
        left: 0
    }

    .navboton_container .a-main {
        font-size: .78rem
    }

    .rrss {
        margin-top: 0
    }
}

@media(min-width: 839.9px)and (max-width: 1023.9px) {
    .containermenu {
        max-width: 1100px;
        padding-inline: 1rem
    }

    .flex-item.logo-item {
        width: auto;
        min-width: 0
    }

    header.menu .flex-item.logo-item {
        flex: 0 0 auto;
        width: auto;
        min-width: 0
    }

    .logo {
        max-height: 110px
    }

    .flex-item.container_menu {
        width: auto;
        margin-top: 0
    }

    header.menu .flex-item.container_menu {
        width: auto;
        flex: 1 1 auto
    }

    .apartados {
        gap: .45rem
    }

    header.menu .apartados_list {
        justify-content: center
    }

    header.menu .navboton_container {
        left: 0
    }

    .navboton_container .a-main {
        font-size: .66rem;
        letter-spacing: .01em
    }

    .rrss {
        display: flex;
        gap: .1rem;
        margin-top: 0
    }

    .rrss .rrss_btn {
        width: 1.35rem;
        height: 1.35rem;
        padding-inline: .05rem
    }

    .rrss .rrss_btn a {
        padding: .2rem
    }

    .rrss .rrss_btn.yt a {
        padding: .16rem
    }
}

@media(min-width: 0)and (max-width: 839.9px) {
    header.menu {
        --logo-slot: auto
    }

    .menu .containermenu,
    header.menu {
        pointer-events: all
    }

    header.menu {
        text-align: center
    }

    .hamburger {
        display: block;
        position: relative;
        z-index: 1111111
    }

    .containermenu {
        padding: .25rem 1rem;
        justify-content: space-between;
        align-items: center
    }

    .flex-item.logo-item {
        width: auto;
        min-width: 0
    }

    .logo,
    .menu.minified .logo {
        margin: 0;
        max-height: 5rem
    }

    header.menu,
    header.menu.minified {
        height: 88px;
        pointer-events: all
    }

    header.menu .apartados {
        display: none;
        overflow: auto;
        position: absolute;
        width: 100vw;
        height: 100vh;
        top: 0;
        left: 0;
        z-index: 30;
        background: #000;
        padding: 100px 0 100px 0px;
        text-align: center;
        margin-top: 0
    }

    header.menu .apartados.visible {
        display: block
    }

    .punto,
    header.menu span {
        display: none
    }

    header.menu a {
        display: block !important;
        font-size: 6.2vw;
        margin: 0
    }

    header.menu a.a-main,
    header.menu.minified a.a-main {
        color: wheat !important;
        text-shadow: none !important;
        font-size: clamp(1.15rem, 5.4vw, 1.65rem);
        height: auto;
        line-height: 1.2;
        position: static;
        white-space: normal
    }

    .navboton_container {
        top: 20px;
        left: 0;
        padding: .55rem 0;
        border-bottom: 1px solid hsla(0, 0%, 100%, .2)
    }

    .navboton_container:not(.subs) {
        height: auto
    }

    .submenu_container,
    .submenu_container.v2,
    .menu.minified .submenu_container,
    .menu.minified .submenu_container.v2 {
        position: relative;
        display: block;
        height: auto;
        top: 69px;
        opacity: 1;
        left: 0;
        width: 100%;
        margin-top: 0;
        padding-bottom: 80px;
        background: #000;
        transform: none;
        box-shadow: none
    }

    header.menu .apartados .a-main::before {
        margin-top: 0
    }

    .submenu_container.v2 {
        overflow: visible
    }

    .submenu_container.active,
    .submenu_container.v2.active {
        display: block
    }

    .submenu.v2 {
        transform: none;
        left: 0;
        width: 90% !important
    }

    .submenu {
        justify-content: flex-start
    }

    .submenu .nav {
        width: 100% !important;
        position: relative
    }

    .submenu .nav.nav2 {
        margin-left: 1.25rem
    }

    .submenu a,
    header.menu.minified .submenu a {
        margin: 0;
        font-size: .95rem;
        line-height: 1.2;
        color: #fff !important
    }

    .submenu_container a.subcategoria_item {
        width: 0;
        text-align: right;
        padding: .38rem 0;
        color: #fff !important
    }

    .submenu_container a.subcategoria_item:hover {
        width: 100%
    }

    header.menu .img_container {
        width: 90%;
        height: 80%;
        border-radius: 1.875rem;
        border: 1px solid #fff000
    }

    header.menu .img_container.v2 {
        width: 100%;
        height: 100%;
        overflow: hidden !important;
        position: absolute;
        top: 0;
        display: flex !important;
        align-items: center;
        justify-content: center
    }

    header.menu .submenu.v2 .img_container.v2 img {
        position: absolute;
        width: auto;
        height: auto;
        max-height: 100%
    }

    .rrss {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin-left: 0;
        gap: .2rem;
        z-index: 1111112
    }

    .rrss .rrss_btn {
        width: 1.5rem;
        height: 1.5rem;
        margin-right: 0;
        padding-inline: .08rem
    }

    .rrss .rrss_btn a {
        padding: .25rem
    }

    .rrss .rrss_btn.yt a {
        padding: .2rem
    }

    .separacion_apartados {
        display: block;
        position: relative;
        height: 240px;
        top: 3.75rem
    }
}

@media(min-width: 1023.9px)and (max-width: 1279.9px)and (max-height: 700px) {
    header.menu {
        height: 88px
    }

    header.menu.minified {
        height: 4.6875rem
    }
}

@media(min-width: 0)and (max-width: 599.9px) {
    .containermenu {
        --mobile-header-side-slot: 5.5rem;
        position: relative;
        display: grid;
        grid-template-columns: var(--mobile-header-side-slot) auto var(--mobile-header-side-slot);
        grid-template-rows: auto 0;
        align-items: center;
        gap: .35rem;
        padding: .35rem 1rem
    }

    .flex-item.logo-item {
        grid-column: 1;
        width: var(--mobile-header-side-slot);
        justify-self: start;
        display: flex;
        align-items: center;
        z-index: 1111113
    }

    .logo,
    .menu.minified .logo {
        max-height: 80px;
        margin: 0
    }

    .rrss {
        position: static;
        transform: none;
        margin: 0;
        grid-column: 2;
        justify-self: center;
        gap: .12rem;
        z-index: 1111113
    }

    .rrss .rrss_btn {
        width: 2rem;
        height: 2rem;
        padding-inline: .08rem
    }

    .rrss .rrss_btn a {
        padding: .22rem
    }

    .rrss .rrss_btn.yt a {
        padding: .18rem
    }

    .hamburger {
        grid-column: 3;
        width: var(--mobile-header-side-slot);
        display: flex;
        justify-content: flex-end;
        justify-self: end;
        align-self: center;
        z-index: 1111113
    }

    .flex-item.container_menu {
        grid-column: 1/-1;
        grid-row: 2;
        width: auto;
        min-width: 0;
        margin: 0;
        padding: 0
    }

    header.menu .apartados {
        display: none;
        position: fixed;
        inset: 0;
        top: 0;
        height: 100vh;
        background: #000;
        padding: calc(4.6875rem + 12px) 1.25rem 1.25rem;
        overflow: auto;
        text-align: left;
        z-index: 1111110
    }

    header.menu .apartados.visible {
        display: block
    }

    .apartados_list {
        display: block
    }

    .navboton_container {
        top: 0;
        left: 0;
        border-bottom: 1px solid hsla(0, 0%, 100%, .2);
        padding: .85rem 0
    }

    .navboton_container.subs>.submenu_container,
    .navboton_container.subs>.submenu_container.v2 {
        display: block;
        position: static;
        width: 100%;
        height: auto;
        top: auto;
        left: auto;
        transform: none;
        margin: .75rem 0 .45rem;
        padding: 0;
        background: rgba(0, 0, 0, 0);
        box-shadow: none;
        opacity: 1
    }

    .submenu,
    .submenu.v2 {
        left: 0;
        transform: none;
        width: 100%
    }

    .submenu.v2 {
        display: flex !important;
        align-items: flex-start;
        justify-content: space-between;
        gap: 1rem
    }

    .submenu .nav.nav1 {
        width: 48% !important;
        margin: 0
    }

    .submenu .nav.nav2 {
        width: 52% !important;
        margin: 0
    }

    header.menu .img_container,
    header.menu .img_container.v2 {
        position: relative;
        width: 100%;
        height: auto;
        min-height: 0;
        background: rgba(0, 0, 0, 0);
        border: 1px solid #fff000;
        border-radius: 1rem;
        overflow: hidden !important;
        display: block !important
    }

    header.menu .submenu.v2 .img_container.v2 img {
        position: relative;
        width: 100%;
        max-width: 100%;
        height: auto;
        max-height: none;
        object-fit: cover
    }

    .separacion_apartados {
        display: none
    }

    .apartados_list {
        display: block
    }

    .navboton_container {
        top: 0;
        left: 0;
        border-bottom: 1px solid hsla(0, 0%, 100%, .2);
        padding: .85rem 0
    }

    .navboton_container.subs>.submenu_container,
    .navboton_container.subs>.submenu_container.v2 {
        display: block;
        position: static;
        width: 100%;
        height: auto;
        top: auto;
        left: auto;
        transform: none;
        margin: .75rem 0 .45rem;
        padding: 0;
        background: rgba(0, 0, 0, 0);
        box-shadow: none;
        opacity: 1
    }

    .submenu,
    .submenu.v2 {
        left: 0;
        transform: none;
        width: 100%
    }

    .submenu.v2 {
        display: flex !important;
        align-items: flex-start;
        justify-content: space-between;
        gap: 1rem
    }

    .submenu .nav.nav1 {
        width: 48% !important;
        margin: 10px
    }

    .submenu .nav.nav2 {
        width: 52% !important;
        margin: 0
    }

    header.menu .img_container,
    header.menu .img_container.v2 {
        position: relative;
        width: 100%;
        height: auto;
        min-height: 0;
        background: rgba(0, 0, 0, 0);
        border: 1px solid #fff000;
        border-radius: 1rem;
        overflow: hidden !important;
        display: block !important
    }

    header.menu .submenu.v2 .img_container.v2 img {
        position: relative;
        width: 100%;
        max-width: 100%;
        height: auto;
        max-height: none;
        object-fit: cover
    }

    .navboton_container .a-main {
        position: relative;
        display: block;
        width: 100%;
        height: auto;
        line-height: 1.25;
        color: #fff !important
    }

    .submenu_container a.subcategoria_item {
        width: 100%;
        display: block;
        text-align: left;
        padding: .18rem 0;
        color: #fff !important;
        line-height: 1.2
    }

    .submenu.v2 .nav1>a.a-main {
        margin-bottom: .25rem;
        color: #fff000 !important
    }

    .navboton_container .a-main {
        font-size: clamp(1.08rem, 5.5vw, 1.35rem)
    }

    .submenu_container a.subcategoria_item {
        font-size: clamp(.95rem, 3.9vw, 1.1rem)
    }

    .submenu.v2 .nav1>a.a-main {
        font-size: clamp(1.08rem, 5.5vw, 1.35rem)
    }
}

@media(min-width: 599.9px)and (max-width: 839.9px) {
    .containermenu {
        --mobile-header-side-slot: 5.5rem;
        position: relative;
        display: grid;
        grid-template-columns: var(--mobile-header-side-slot) auto var(--mobile-header-side-slot);
        grid-template-rows: auto 0;
        align-items: center;
        gap: .35rem;
        padding: .35rem 1rem
    }

    .flex-item.logo-item {
        grid-column: 1;
        width: var(--mobile-header-side-slot);
        justify-self: start;
        display: flex;
        align-items: center;
        z-index: 1111113
    }

    .logo,
    .menu.minified .logo {
        max-height: 80px;
        margin: 0
    }

    .rrss {
        position: static;
        transform: none;
        margin: 0;
        grid-column: 2;
        justify-self: center;
        gap: .12rem;
        z-index: 1111113
    }

    .rrss .rrss_btn {
        width: 2rem;
        height: 2rem;
        padding-inline: .08rem
    }

    .rrss .rrss_btn a {
        padding: .22rem
    }

    .rrss .rrss_btn.yt a {
        padding: .18rem
    }

    .hamburger {
        grid-column: 3;
        width: var(--mobile-header-side-slot);
        display: flex;
        justify-content: flex-end;
        justify-self: end;
        align-self: center;
        z-index: 1111113
    }

    .flex-item.container_menu {
        grid-column: 1/-1;
        grid-row: 2;
        width: auto;
        min-width: 0;
        margin: 0;
        padding: 0
    }

    header.menu .apartados {
        display: none;
        position: fixed;
        inset: 0;
        top: 0;
        height: 100vh;
        background: #000;
        padding: calc(4.6875rem + 12px) 1.25rem 1.25rem;
        overflow: auto;
        text-align: left;
        z-index: 1111110
    }

    header.menu .apartados.visible {
        display: block
    }

    .apartados_list {
        display: block
    }

    .navboton_container {
        top: 0;
        left: 0;
        border-bottom: 1px solid hsla(0, 0%, 100%, .2);
        padding: .85rem 0
    }

    .navboton_container.subs>.submenu_container,
    .navboton_container.subs>.submenu_container.v2 {
        display: block;
        position: static;
        width: 100%;
        height: auto;
        top: auto;
        left: auto;
        transform: none;
        margin: .75rem 0 .45rem;
        padding: 0;
        background: rgba(0, 0, 0, 0);
        box-shadow: none;
        opacity: 1
    }

    .submenu,
    .submenu.v2 {
        left: 0;
        transform: none;
        width: 100%
    }

    .submenu.v2 {
        display: flex !important;
        align-items: flex-start;
        justify-content: space-between;
        gap: 1rem
    }

    .submenu .nav.nav1 {
        width: 48% !important;
        margin: 0
    }

    .submenu .nav.nav2 {
        width: 52% !important;
        margin: 0
    }

    header.menu .img_container,
    header.menu .img_container.v2 {
        position: relative;
        width: 100%;
        height: auto;
        min-height: 0;
        background: rgba(0, 0, 0, 0);
        border: 1px solid #fff000;
        border-radius: 1rem;
        overflow: hidden !important;
        display: block !important
    }

    header.menu .submenu.v2 .img_container.v2 img {
        position: relative;
        width: 100%;
        max-width: 100%;
        height: auto;
        max-height: none;
        object-fit: cover
    }

    .separacion_apartados {
        display: none
    }

    .apartados_list {
        display: block
    }

    .navboton_container {
        top: 0;
        left: 0;
        border-bottom: 1px solid hsla(0, 0%, 100%, .2);
        padding: .85rem 0
    }

    .navboton_container.subs>.submenu_container,
    .navboton_container.subs>.submenu_container.v2 {
        display: block;
        position: static;
        width: 100%;
        height: auto;
        top: auto;
        left: auto;
        transform: none;
        margin: .75rem 0 .45rem;
        padding: 0;
        background: rgba(0, 0, 0, 0);
        box-shadow: none;
        opacity: 1
    }

    .submenu,
    .submenu.v2 {
        left: 0;
        transform: none;
        width: 100%
    }

    .submenu.v2 {
        display: flex !important;
        align-items: flex-start;
        justify-content: space-between;
        gap: 1rem
    }

    .submenu .nav.nav1 {
        width: 48% !important;
        margin: 10px
    }

    .submenu .nav.nav2 {
        width: 52% !important;
        margin: 0
    }

    header.menu .img_container,
    header.menu .img_container.v2 {
        position: relative;
        width: 100%;
        height: auto;
        min-height: 0;
        background: rgba(0, 0, 0, 0);
        border: 1px solid #fff000;
        border-radius: 1rem;
        overflow: hidden !important;
        display: block !important
    }

    header.menu .submenu.v2 .img_container.v2 img {
        position: relative;
        width: 100%;
        max-width: 100%;
        height: auto;
        max-height: none;
        object-fit: cover
    }

    .navboton_container .a-main {
        position: relative;
        display: block;
        width: 100%;
        height: auto;
        line-height: 1.25;
        color: #fff !important
    }

    .submenu_container a.subcategoria_item {
        width: 100%;
        display: block;
        text-align: left;
        padding: .18rem 0;
        color: #fff !important;
        line-height: 1.2
    }

    .submenu.v2 .nav1>a.a-main {
        margin-bottom: .25rem;
        color: #fff000 !important
    }

    .flex-item.logo-item {
        min-width: 0
    }

    header.menu .apartados {
        width: 100vw
    }

    .submenu,
    .submenu.v2 {
        padding-inline: 1.5rem
    }

    .submenu.v2 {
        gap: 1.5rem
    }

    .apartados a,
    .navboton_container .a-main {
        width: 100%;
        position: relative;
        display: block
    }

    .navboton_container .a-main {
        font-size: clamp(1.08rem, 3vw, 1.35rem)
    }

    .submenu_container a.subcategoria_item {
        font-size: clamp(.9rem, 2vw, 1rem)
    }

    .submenu.v2 .nav1>a.a-main {
        font-size: clamp(1.08rem, 3vw, 1.35rem)
    }
}

.footer {
    position: relative;
    bottom: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    background: #ffd331;
    color: #12181e;
    padding: 3rem 0 2.05rem
}

.footer .container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem
}

.footer .options-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: .95rem;
    margin: 0;
    padding: 0;
    z-index: 1
}

.footer .options-list li {
    list-style: none;
    font-size: 1rem;
    line-height: 1.15
}

.footer .options-list .decor {
    opacity: 1;
    font-size: .95rem;
    font-weight: 700
}

.footer .options-list a {
    color: #12181e;
    text-decoration: none;
    transition: color .2s ease
}

.footer .options-list a:hover {
    color: #fff
}

.footer .since {
    margin: 0;
    color: #12181e;
    font-size: 1.05rem;
    font-weight: 600;
    white-space: nowrap;
    z-index: 1
}

@media(min-width: 0)and (max-width: 839.9px) {
    .footer {
        padding: 1rem 0
    }

    .footer .container {
        flex-direction: column;
        align-items: flex-start;
        gap: .6rem
    }

    .footer .options-list {
        gap: .4rem .7rem
    }

    .footer .options-list li {
        font-size: .9rem
    }

    .footer .since {
        font-size: .95rem;
        align-self: center
    }
}

.alfa {
    opacity: 0;
    pointer-events: none
}

.carrusel,
.item_c {
    position: relative;
    display: inline-block;
    width: 100%
}

.linea_amarilla {
    height: 2rem;
    min-height: 2rem;
    display: block !important;
    background-color: #000
}

body.pm-expanded .linea_amarilla {
    height: 0;
    min-height: 0;
    display: none !important
}

.hero-perfect-intro {
    display: flex;
    background: #000;
    min-height: 0;
    padding: 20px 16px 8px;
    align-items: center;
    justify-content: center
}

.hero-perfect-inner {
    max-width: 980px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.hero-perfect-logo {
    width: min(300px, 62vw);
    height: auto;
    display: block
}

.hero-perfect-text {
    margin: 10px 0 0;
    color: #fff;
    text-align: center;
    font-family: "Futura PT Book";
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    height: 30px;
    line-height: 30px;
    letter-spacing: normal;
    max-width: 900px
}

.logo-pm2 {
    position: absolute;
    z-index: 1;
    width: 20%;
    left: 50%;
    top: -2%;
    transform: translate(-50%, -50%)
}

.logo-pm2 img {
    margin-top: -88%;
    max-width: 100%
}

.item_c .bg-img {
    position: relative;
    width: 100%
}

section.section_home {
    position: relative;
    width: 100vw;
    overflow: hidden
}

.franja_container,
.home_videos_hojas_container {
    position: absolute;
    height: 100%;
    top: 0;
    left: 10%;
    width: 35%
}

.franja_container {
    max-height: 100%;
    box-shadow: 0 0 20px rgba(0, 0, 0, .7);
    overflow: hidden
}

.franja_container.nopointers,
.franja_container.nopointers *,
.home_videos_hojas_container,
.home_videos_hojas_container * {
    pointer-events: none
}

.home_videos_hojas_container video,
.home_videos_hojas_container canvas {
    position: relative;
    height: 100%
}

.franja_container.nopointers button {
    pointer-events: all
}

.franja_container .franja {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 100%;
    background-color: #ffd304;
    padding: 10%;
    box-sizing: border-box;
    display: flex;
    flex-flow: column;
    justify-content: flex-start
}

.franja_container .franja img:not(.logo_interior) {
    max-width: 90%;
    transform-origin: top
}

.franja_container .franja img.logo_interior {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    filter: invert(1)
}

.franja_container .franja h2 {
    margin-top: 2.5rem
}

.home_videos_hojas {
    position: absolute;
    top: 1.25rem;
    left: 98%;
    height: 95%;
    transform: none !important
}

.home_videos_hojas.v2 {
    position: absolute;
    left: -32vh
}

.home_videos_hojas canvas {
    transform-origin: left center
}

#video_hojas2 {
    position: absolute;
    top: 0
}

section.home_pm {
    z-index: 1;
    overflow: hidden;
    isolation: isolate;
    height: var(--pm-section-height, 100vh);
    min-height: var(--pm-section-height, 100vh)
}

.carrusel_grid {
    top: 0;
    width: 100vw;
    height: var(--pm-section-height, 100vh);
    z-index: 120
}

.carrusel_grid .logo-pm2 {
    display: none
}

.carrusel_grid .boton.mini {
    pointer-events: none;
    position: absolute;
    bottom: 3.125rem;
    left: 35%
}

.carrusel_grid .fondo {
    position: relative;
    width: 100vw;
    height: auto;
    background: #ffd304
}

.franja_container,
.home_videos_hojas_container {
    z-index: 121
}

.carrusel .item_c {
    clip-path: inset(0 0 0 0);
    -webkit-clip-path: inset(0 0 0 0)
}

.carrusel_grid .item_c {
    position: absolute;
    width: 99.5%;
    top: 0;
    left: 0;
    clip-path: inset(0 70% 0 0);
    -webkit-clip-path: inset(0 70% 0 0)
}

.carrusel_grid .item_c .bg-img {
    transition: .5s linear;
    filter: saturate(0) contrast(1) brightness(0.6)
}

.carrusel_grid .item_c.over .bg-img {
    filter: saturate(1) contrast(1) brightness(1)
}

.carrusel_grid .item_c.over .boton::after {
    width: 80%;
    height: 80%;
    top: 10%;
    left: 10%;
    box-shadow: inset 0 0 10px 2px var(--gris-oscuro)
}

.carrusel_grid .item_c:nth-child(1) {
    clip-path: inset(0 66.7% 0 0);
    -webkit-clip-path: inset(0 66.7% 0 0)
}

.carrusel_grid .item_c:nth-child(2) {
    clip-path: inset(0 33.4% 0 33.3%);
    -webkit-clip-path: inset(0 33.4% 0 33.3%)
}

.carrusel_grid .item_c:nth-child(3) {
    clip-path: inset(0 0 0 66.6%);
    -webkit-clip-path: inset(0 0 0 66.6%)
}

.carrusel_grid img.logo_interior {
    position: absolute;
    bottom: 20%;
    transform: translateX(-40%)
}

.carrusel_grid .item_c:nth-child(1) .boton.mini,
.carrusel_grid .item_c:nth-child(1) img.logo_interior {
    left: 13%
}

.carrusel_grid .item_c:nth-child(2) .boton.mini,
.carrusel_grid .item_c:nth-child(2) img.logo_interior {
    left: 47%
}

.carrusel_grid .item_c:nth-child(3) .boton.mini,
.carrusel_grid .item_c:nth-child(3) img.logo_interior {
    left: 82%
}

.carrusel_grid .item_c.active {
    z-index: 11111111;
    pointer-events: none
}

.carrusel_grid .item_c.active .bg-img {
    filter: none
}

@media(min-width: 1023.9px) {
    .logo-pm2 {
        top: -3%
    }

    .linea_amarilla {
        height: 2rem;
        min-height: 2rem
    }
}

@media(min-width: 1023.9px)and (max-width: 1279.9px) {
    .logo-pm2 {
        top: -4%
    }

    section.section_home.home_pm,
    .carrusel {
        height: var(--pm-section-height, 100vh);
        min-height: var(--pm-section-height, 100vh)
    }

    .carrusel,
    .carrusel .slick-list,
    .carrusel .slick-track,
    .carrusel .slick-slide,
    .carrusel .item_c,
    .carrusel .item_c .bg-img,
    .home_videos_hojas_container,
    .franja_container,
    .franja_container .franja {
        height: 100%
    }

    .carrusel .item_c .bg-img {
        width: 100%;
        object-fit: cover
    }

    .home_videos_hojas_container,
    .franja_container.nopointers {
        transform: translate(0px, 0px) !important
    }

    .linea_amarilla {
        height: 1.75rem;
        min-height: 1.75rem
    }

    .franja_container .franja {
        min-height: 100%
    }
}

@media(min-width: 0)and (max-width: 839.9px) {
    section.section_home.home_pm {
        height: auto;
        min-height: 0
    }

    .hero-perfect-intro {
        min-height: 0;
        padding: 14px 14px 6px
    }

    .hero-perfect-logo {
        width: min(250px, 72vw)
    }

    .hero-perfect-text {
        margin-top: .625rem;
        font-size: 1.25rem
    }

    .linea_amarilla {
        width: 100%;
        height: 1.25rem;
        min-height: 1.25rem
    }

    .carrusel .slick-arrow.slick-next,
    .franja_container .slick-arrow.slick-next {
        right: -20px
    }

    .item_c .bg-img {
        position: relative;
        width: 130%;
        transform-origin: right
    }

    .franja_container {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        overflow: visible
    }

    .franja_container .franja {
        padding: 1.25rem
    }

    .franja_container .franja h2 {
        margin-top: 0;
        font-size: 1.875rem;
        text-align: right
    }

    .franja_container .franja img {
        position: absolute;
        left: 3vw;
        width: 46vw;
        max-width: 100px
    }

    .franja_container .franja img.logo_interior {
        position: relative;
        left: 26%;
        max-width: 200px;
        transform: translateX(-50%);
        filter: invert(1);
        z-index: 99999;
        top: 1%;
        margin-top: 6%
    }

    .franja_container .carrusel_texto p.txt_ {
        line-height: normal;
        margin-bottom: 18px
    }
}

@media(min-width: 599.9px)and (max-width: 839.9px) {
    .hero-perfect-text {
        font-size: 30px
    }
}

@media(min-width: 839.9px)and (max-width: 1023.9px) {

    section.section_home.home_pm,
    .carrusel {
        height: auto
    }

    section.section_home.home_pm {
        min-height: 0
    }

    .carrusel {
        aspect-ratio: 4/3
    }

    .carrusel,
    .carrusel .slick-list,
    .carrusel .slick-track,
    .carrusel .slick-slide,
    .carrusel .item_c,
    .carrusel_grid,
    .carrusel_grid .fondo,
    .carrusel_grid .item_c,
    .home_videos_hojas_container,
    .franja_container {
        height: 100%
    }

    .carrusel_grid {
        inset: 0
    }

    .carrusel,
    .home_videos_hojas_container,
    .franja_container {
        top: 0
    }

    .franja_container,
    .home_videos_hojas_container {
        left: 7%;
        width: 34%
    }

    .home_videos_hojas_container,
    .franja_container.nopointers {
        transform: translate(0px, 0px) !important
    }

    .franja_container .franja {
        height: 100%;
        min-height: 100%;
        padding: 8% 8% 6%;
        justify-content: flex-start
    }

    .home_videos_hojas_container {
        z-index: 121
    }

    .franja_container .carrusel_textos,
    .franja_container .slick-list,
    .franja_container .slick-track,
    .franja_container .slick-slide,
    .franja_container .carrusel_texto {
        height: 100%
    }

    .franja_container .carrusel_texto {
        display: flex !important;
        flex-direction: column;
        align-items: stretch
    }

    .franja_container .carrusel_texto a {
        margin-top: auto;
        padding-top: 1rem
    }

    .item_c .bg-img,
    .carrusel_grid .item_c .bg-img {
        width: 100%;
        height: 100%;
        object-fit: cover
    }

    .franja_container .franja img:not(.logo_interior) {
        max-width: 82%
    }

    .franja_container .franja img.logo_interior {
        max-width: 78%;
        margin-bottom: .75rem
    }

    .franja_container .carrusel_texto p.txt_ {
        margin-bottom: 0;
        line-height: 1.35
    }

    .home_videos_hojas {
        left: 88%;
        height: 84%;
        top: 1.5rem
    }

    .home_videos_hojas.v2 {
        left: -20vh
    }
}

@media(min-width: 1279.9px) {

    section.section_home.home_pm,
    .carrusel,
    .carrusel .slick-list,
    .carrusel .slick-track,
    .carrusel .slick-slide,
    .carrusel .item_c,
    .carrusel .item_c .bg-img,
    .carrusel_grid,
    .carrusel_grid .fondo,
    .carrusel_grid .item_c,
    .carrusel_grid .item_c .bg-img {
        height: var(--pm-section-height, 100vh);
        min-height: var(--pm-section-height, 100vh)
    }

    .carrusel .item_c .bg-img,
    .carrusel_grid .item_c .bg-img {
        width: 100%;
        object-fit: cover
    }

    .home_videos_hojas_container,
    .franja_container.nopointers {
        transform: translate(0px, 0px) !important
    }

    .franja_container .franja img {
        max-width: 15vw
    }
}

@media(min-width: 1023.9px)and (max-width: 1279.9px) {
    .home_pm.pm-compact-franja .franja_container {
        height: 100%;
        width: 34%;
        left: 10%
    }

    .home_pm.pm-compact-franja .franja_container .franja {
        height: 100%;
        min-height: 100%;
        padding: 7% 7% 5.5rem
    }

    .home_pm.pm-compact-franja .franja_container .carrusel_textos,
    .home_pm.pm-compact-franja .franja_container .slick-list,
    .home_pm.pm-compact-franja .franja_container .slick-track,
    .home_pm.pm-compact-franja .franja_container .slick-slide,
    .home_pm.pm-compact-franja .franja_container .carrusel_texto {
        height: 100%
    }

    .home_pm.pm-compact-franja .franja_container .carrusel_texto {
        display: flex !important;
        flex-direction: column;
        align-items: stretch
    }

    .home_pm.pm-compact-franja .franja_container .franja img:not(.logo_interior) {
        max-width: 72%
    }

    .home_pm.pm-compact-franja .franja_container .franja img.logo_interior {
        max-width: 74%;
        margin-bottom: 1rem
    }

    .home_pm.pm-compact-franja .franja_container .carrusel_texto p.txt_ {
        margin-top: .8rem !important;
        margin-bottom: 0;
        font-size: 1rem;
        line-height: 1.35
    }

    .home_pm.pm-compact-franja .franja_container .carrusel_texto a {
        margin-top: auto;
        padding-top: 1rem
    }

    .home_pm.pm-compact-franja .franja_container .carrusel_texto button.long {
        min-width: 180px;
        min-height: 52px
    }

    .home_pm.pm-compact-franja .franja_container .slick-arrow {
        display: none !important
    }

    .home_pm.pm-compact-franja .carrusel .slick-arrow {
        margin: 0;
        z-index: 130
    }

    .home_pm.pm-compact-franja .carrusel button.slick-arrow {
        transform: scale(1.2)
    }

    .home_pm.pm-compact-franja .carrusel .slick-arrow.slick-next {
        right: .8rem
    }

    .home_pm.pm-compact-franja .carrusel .slick-arrow.slick-prev {
        right: 5.4rem
    }
}

@media(min-width: 1023.9px)and (max-width: 1279.9px)and (max-height: 700px) {

    .franja_container,
    .home_videos_hojas_container {
        width: 30%;
        height: 100%;
        left: 8%
    }

    .franja_container .franja {
        padding: 5% 6% 4%
    }

    .franja_container .franja img:not(.logo_interior) {
        max-width: 62%
    }

    .franja_container .franja img.logo_interior {
        max-width: 66%;
        margin-bottom: .5rem
    }

    .franja_container .carrusel_texto p.txt_ {
        margin-top: .5rem !important;
        font-size: .875rem;
        line-height: 1.25
    }

    .franja_container .carrusel_texto button.long {
        min-width: 148px;
        min-height: 44px
    }

    .franja_container .slick-arrow {
        display: none !important
    }

    .carrusel .slick-arrow {
        margin: 0;
        top: 100% !important;
        bottom: unset !important;
        z-index: 130;
        opacity: 1 !important;
        transform: translateY(-50%)
    }

    .carrusel button.slick-arrow {
        transform: translateY(-50%) scale(1.2)
    }

    .carrusel .slick-arrow.slick-next {
        right: auto
    }

    .carrusel .slick-arrow.slick-prev {
        right: auto
    }

    .home_videos_hojas {
        left: 84%;
        top: 1rem;
        height: 82%
    }

    .home_videos_hojas.v2 {
        left: -16vh
    }
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before,
.vjs-button>.vjs-icon-placeholder:before,
.video-js .vjs-modal-dialog,
.vjs-modal-dialog .vjs-modal-dialog-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before,
.vjs-button>.vjs-icon-placeholder:before {
    text-align: center
}

@font-face {
    font-family: VideoJS;
    src: url(data:application/font-woff;charset=utf-8;base64,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) format("woff");
    font-weight: normal;
    font-style: normal
}

.section_home.home_videos {
    position: relative
}

.swiper {
    width: 100%;
    height: 100vh
}

.swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box
}

.video-container {
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
    overflow: hidden;
    background: #000
}

.video-container video {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.controls {
    width: 60%;
    position: absolute;
    bottom: 4rem;
    display: flex;
    align-items: center;
    gap: .625rem;
    z-index: 10;
    color: #fff;
    margin: auto;
    left: 2rem;
    right: 2rem
}

.controls__button {
    cursor: pointer;
    border-radius: .8125rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .3125rem;
    margin-left: 0
}

.controls__button svg {
    width: 1.25rem;
    height: 1.25rem;
    display: block;
    fill: currentColor
}

.toggleMuted {
    width: 2.5rem;
    height: 2.5rem
}

.toggleButton {
    width: 2.5rem;
    height: 2.5rem;
    border: solid 1px hsla(0, 0%, 100%, .7);
    background: rgba(0, 0, 0, .25);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 2.5rem;
    font-weight: normal;
    font-style: normal
}

.icon-volume-mute::before,
.icon-volume-unmute::before {
    font-family: VideoJS;
    width: 1.25rem;
    height: 1.25rem;
    font-size: 1.2em;
    line-height: 1.67;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff
}

.icon-volume-mute::before {
    content: ""
}

.icon-volume-unmute::before {
    content: ""
}

.icon-play::before,
.icon-pause::before,
.icon-replay::before {
    font-family: VideoJS;
    width: 1.75rem;
    height: 1.25rem;
    font-size: 1.4em;
    line-height: 1.67;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff
}

.icon-play::before {
    content: ""
}

.icon-pause::before {
    content: ""
}

.icon-replay::before {
    content: ""
}

.toggleButton:hover,
.icon-play:hover::before,
.icon-pause:hover::before,
.icon-replay:hover::before {
    color: #000;
    border: none;
    background-color: #ffd331
}

.toggleMuted:hover,
.icon-volume-unmute:hover::before,
.icon-volume-mute:hover::before {
    color: #ffd331;
    background: none
}

.progress {
    cursor: pointer;
    position: absolute;
    left: 50px;
    right: 50px;
    display: flex;
    bottom: -30%;
    width: 100%;
    height: .3125rem;
    border-radius: .625rem;
    background-color: rgba(0, 0, 0, .75);
    box-shadow: 0 0 0 1px hsla(0, 0%, 100%, .12)
}

.timeboxblack,
.timeboxwhite {
    position: absolute;
    display: none;
    border-radius: .3125rem;
    height: 1.25rem;
    bottom: .6875rem;
    font-size: .6875rem;
    margin-left: -13px;
    align-items: center
}

.timeboxblack {
    background-color: #000
}

.timeboxwhite {
    margin-left: -23px;
    background-color: #fff
}

.timeboxblack span {
    padding: .375rem;
    font-size: .6875rem;
    text-align: center;
    color: #fff
}

.timeboxwhite span {
    padding: .375rem;
    font-size: .6875rem;
    text-align: center;
    color: #000
}

.progress__filled {
    cursor: pointer;
    flex-basis: 0%;
    height: 100%;
    background-color: #ffd331;
    border-radius: .625rem
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
    top: 88%;
    height: 1.25rem;
    width: 30%;
    margin-left: 60%
}

.swiper-pagination-bullet-active {
    width: 10px !important;
    height: 10px !important;
    background-color: #fff !important
}

.swiper-pagination-bullet {
    width: 90px !important;
    height: 5px !important;
    background-color: #fff !important;
    border-radius: 10px !important
}

.swiper-button-next::after {
    content: "➜";
    color: #000;
    font-size: .875rem;
    line-height: 3.3125rem
}

.swiper-button-prev::after {
    content: "➜";
    color: #000;
    rotate: 180deg;
    font-size: .875rem;
    line-height: 3.3125rem
}

@media(min-width: 0)and (max-width: 839.9px) {
    .toggleButton {
        width: 2.5rem;
        height: 2.5rem
    }

    .controls__button svg {
        width: 1.125rem;
        height: 1.125rem
    }

    .toggleMuted {
        width: 2.5rem;
        height: 2.5rem
    }

    .swiper-pagination-bullet {
        width: 42px !important;
        height: 5px !important
    }

    .swiper-pagination-bullets.swiper-pagination-horizontal {
        top: 80%;
        width: 60%;
        margin-left: 40%
    }

    .swiper-button-prev,
    .swiper-button-next {
        display: none
    }

    .video {
        width: 100%;
        object-fit: cover
    }
}

@media(min-width: 839.9px)and (max-width: 1023.9px) {

    .section_home.home_videos .swiper,
    .section_home.home_videos .swiper-slide,
    .section_home.home_videos .video-container {
        height: 100vh;
        min-height: 100vh;
        max-height: none !important
    }

    .section_home.home_videos .video-container video,
    .section_home.home_videos .video {
        height: 100vh !important;
        min-height: 100vh;
        max-height: none !important;
        object-fit: cover
    }

    .section_home.home_videos .video-container video,
    .section_home.home_videos .video {
        height: 100vh !important;
        min-height: 100vh;
        max-height: none !important;
        object-fit: cover
    }
}

@media(min-width: 1023.9px)and (max-width: 1279.9px) {

    .section_home.home_videos .swiper,
    .section_home.home_videos .swiper-slide,
    .section_home.home_videos .video-container {
        height: 100vh;
        min-height: 100vh;
        max-height: none !important
    }

    .section_home.home_videos .video-container video,
    .section_home.home_videos .video {
        height: 100vh !important;
        min-height: 100vh;
        max-height: none !important;
        object-fit: cover
    }

    .section_home.home_videos .video-container video,
    .section_home.home_videos .video {
        height: 100vh !important;
        min-height: 100vh;
        max-height: none !important;
        object-fit: cover
    }

    .section_home.home_videos .video-container.video {
        height: 100vh;
        min-height: 100vh;
        max-height: none !important
    }
}

@media(min-width: 1279.9px) {

    .section_home.home_videos .swiper,
    .section_home.home_videos .swiper-slide,
    .section_home.home_videos .video-container {
        height: 100vh;
        min-height: 100vh;
        max-height: none !important
    }

    .section_home.home_videos .video-container video,
    .section_home.home_videos .video {
        height: 100vh !important;
        min-height: 100vh;
        max-height: none !important;
        object-fit: cover
    }

    .section_home.home_videos .video-container video,
    .section_home.home_videos .video {
        height: 100vh !important;
        min-height: 100vh;
        max-height: none !important;
        object-fit: cover
    }
}

:root {
    --white: #ffffff;
    --black: #232020;
    --black2: #1d1413;
    --black3: #1d1214;
    --rojo: #e1011f;
    --amarillo: #ffd304;
    --amarillo2: #ecc402;
    --amarillo3: #fbefae;
    --gris-oscuro: #231f1f;
    --azul: rgba(33, 150, 243, 0.5);
    --red-300: #ee0000;
    --red-400: #cb0404;
    --blue-100: #eff6f9;
    --blue-300: #36b7c0;
    --primary-color: var(--red-300);
    --primary-darken-color: var(--red-400);
    --secondary-color: var(--black);
    --tertiary-color: var(--gray-300);
    --c-error: hsl(6, 70%, 55%);
    --c-success: hsl(126, 60%, 50%);
    --wrapper-max-width: 90rem
}

::-webkit-scrollbar {
    width: 6px;
    height: 6px
}

::-webkit-scrollbar-track {
    background: black
}

::-webkit-scrollbar-thumb {
    background: var(--amarillo)
}

::-webkit-scrollbar-thumb:hover {
    background: red
}

body * {
    -webkit-tap-highlight-color: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0)
}

#smooth-wrapper {
    overflow: hidden !important
}

body {
    min-height: 100vh;
    margin: 0;
    text-align: left;
    color: white;
    background-color: white;
    font-family: "Montserrat", sans-serif
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    text-rendering: geometricPrecision;
    white-space: normal
}

:focus {
    outline: none !important
}

.anim {
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .25s linear
}

.anim-long {
    -webkit-transition: all .7s linear;
    -moz-transition: all .7s linear;
    -ms-transition: all .7s linear;
    -o-transition: all .7s linear;
    transition: all .75s linear
}

.w100 {
    width: 100%
}

.h100 {
    min-height: 100vh
}

.bg-white {
    background-color: white
}

.absolute {
    position: absolute
}

.relative {
    position: relative !important
}

.full {
    width: 100vw;
    height: 100vh
}

.full-relative {
    width: 100%;
    height: 100%;
    position: relative
}

.div-center {
    position: relative;
    left: 50%;
    transform: translateX(-50%)
}

.boton {
    position: relative;
    cursor: pointer
}

.xxxxxxxxxxxx.over,
.xxxxxxxxxx.touched {
    background-color: aliceblue
}

.center {
    text-align: center
}

.centered {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.centeredX {
    left: 50%;
    position: relative;
    transform: translateX(-50%)
}

.highlight-container:hover .img {
    transform: scale(1.1)
}

.c {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    min-height: 110px;
    box-sizing: border-box;
    margin: 0 auto
}

.c2 {
    display: flex;
    flex-direction: row;
    max-width: 1200px;
    margin: 0 auto;
    align-items: center;
    padding-left: 20px;
    padding-right: 20px
}

.c2.col {
    flex-direction: column
}

.c2 .el {
    box-sizing: border-box;
    margin: 10px;
    width: 50%
}

.c2.col .el {
    width: 100%;
    margin: 0px
}

.c2 .el .img {
    position: relative;
    display: block;
    margin: 0 auto;
    width: 100%;
    padding: 10px
}

.c3 {
    align-items: flex-start;
    margin-bottom: 30px !important
}

.grfx,
.txt {
    opacity: 0
}

.mb-0 {
    margin-bottom: 0
}

.mb-3 {
    margin-bottom: 3rem
}

.mb-5 {
    margin-bottom: 5rem
}

.mb-6 {
    margin-bottom: 6rem
}

.mt-1 {
    margin-top: 1rem !important
}

.mt-1-5 {
    margin-top: 1.5rem !important
}

.mt-2-5 {
    margin-top: 2.5rem !important
}

.mt-3-5 {
    margin-top: 3.5rem !important
}

.pt-1 {
    padding-top: 1rem !important
}

.pt-1-5 {
    padding-top: 1.5rem !important
}

.pt-2-5 {
    padding-top: 2.5rem !important
}

.pt-3-5 {
    padding-top: 3.5rem !important
}

.prod_container {
    position: relative
}

.prod_container.space-citricos {
    padding: 20px 0
}

.prod_container .anillo {
    position: absolute;
    top: 30%;
    left: 100%;
    transform: translate(-50%, -50%)
}

.prod_container .anillo-nuevo {
    position: absolute;
    top: 68%;
    left: 90%;
    transform: translate(-50%, -50%);
    width: 320px
}

.prod_container:hover .anillo-nuevo {
    position: absolute;
    top: 68%;
    left: 90%;
    transform: translate(-50%, -50%);
    width: 320px
}

.flex {
    display: flex !important;
    flex-flow: row
}

.flexrow {
    display: flex !important;
    flex-direction: row
}

.flexcol {
    display: flex !important;
    flex-direction: column;
    justify-content: space-between
}

.flexrow.reverse {
    flex-direction: row-reverse
}

.f-jc-center {
    justify-content: center
}

.f-jc-sb {
    justify-content: space-between
}

.f-jc-sa {
    justify-content: space-around
}

.f-ai-stretch {
    align-items: stretch
}

.f-ai-center {
    align-items: center
}

.f-center {
    align-items: center;
    justify-content: center;
    align-content: center;
    justify-items: center
}

.f-center-h {
    justify-content: center;
    justify-items: center
}

.f-center-v {
    align-items: center;
    align-content: center
}

.f-wrap {
    flex-wrap: wrap
}

.no_overflow,
.no-overflow {
    overflow: hidden !important
}

.overflow {
    overflow: visible !important
}

.no-margin {
    margin: 0px !important
}

.no-padding {
    padding: 0px !important
}

.nopointers,
.no-pointers {
    pointer-events: none !important
}

.white {
    color: white
}

.blanco {
    color: white !important
}

.blanco h4 {
    color: white !important
}

.blanco p {
    color: white !important
}

.blanco b {
    color: white !important
}

.black {
    color: black
}

.bg-white {
    background-color: white
}

.bg-black {
    background-color: black
}

.bg-black2 {
    background-color: var(--black2)
}

.bg-black3 {
    background-color: var(--black3)
}

.ta-left {
    text-align: left
}

.ta-right {
    text-align: right
}

.ta-center {
    text-align: center
}

.breadcrumbs {
    list-style: none;
    display: flex;
    color: black;
    height: 20px;
    line-height: 20px;
    margin: 20px;
    text-transform: capitalize;

    & li {
        display: flex;
        align-content: center;
        align-items: center;
        padding: 0 5px;
        text-decoration: none
    }

    &:visited,
    &:link {
        color: black;
        text-decoration: none
    }

    & li>a {
        color: rgb(157, 157, 157) !important;
        font-size: 15px;
        text-decoration: none;
        font-family: "Futura PT Book"
    }

    & li>a:hover {
        font-weight: bold
    }
}

.breadcrumbs_black {
    list-style: none;
    display: flex;
    background-color: black !important;
    color: white;
    height: 20px;
    line-height: 20px;
    margin-bottom: 20px;
    text-transform: capitalize;

    & li {
        display: flex;
        align-content: center;
        align-items: center;
        padding: 0 5px;
        text-decoration: none
    }

    &:visited,
    &:link {
        color: black;
        text-decoration: none
    }

    & li>a {
        color: rgb(157, 157, 157);
        font-size: 18px;
        text-decoration: none
    }

    & li>a:hover {
        color: rgb(84, 84, 84);
        font-size: 18px;
        text-decoration: underline
    }
}

.migas-product {
    position: absolute;
    top: 45%;
    left: -10%
}

.crumbs-mixing-listado {
    background-color: black;
    height: 0px;
    margin-top: -10px;
    padding: 10px 0
}

.edad {
    position: fixed;
    z-index: 10000000000000000000;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.8);
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center
}

.wrapper-txt {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

.edad-boton {
    width: 70%;
    display: flex;
    justify-content: space-around
}

.wrapper-txt p:nth-child(1) {
    font-size: min(3.5vw, 37px);
    font-weight: 300;
    font-family: "Dashiell" !important;
    line-height: min(4vw, 0px)
}

.edad p:nth-child(2) {
    margin-top: 10px;
    margin-bottom: 50px;
    font-size: 23px;
    font-size: min(4vw, 37px)
}

@media screen and (max-aspect-ratio: 1/1)and (orientation: portrait) {
    .c2 {
        flex-direction: column
    }

    .c2 .el {
        width: 100%
    }
}

@media(max-width: 850px) {
    .edad-boton {
        display: flex;
        width: 100%;
        flex-direction: column;
        align-items: center
    }

    .migas-product {
        position: absolute;
        top: 22%;
        left: 0
    }

    .crumbs-mixing-listado {
        height: auto
    }

    .flexcol {
        flex-flow: column
    }

    .column {
        max-width: 100%
    }
}

@media(min-width: 0px)and (max-width: 767px) {
    .prod_container .anillo {
        position: absolute;
        top: 20%;
        left: 80%;
        transform: translate(-50%, -50%);
        width: 200px
    }

    .prod_container .anillo-nuevo {
        position: absolute;
        top: 78%;
        left: 90%;
        transform: translate(-50%, -50%);
        width: 140px
    }

    .prod_container:hover .anillo-nuevo {
        position: absolute;
        top: 78%;
        left: 90%;
        transform: translate(-50%, -50%);
        width: 140px
    }
}

body {
    background-color: #232020
}

p {
    font-family: "Festivo LC Basic"
}

p {
    font-family: "Futura PT Book";
    font-size: 18px;
    margin-top: 5px
}

.maincontainer {
    position: relative;
    min-height: 70vh
}

h1 span[data-char="|"] {
    width: 20px;
    opacity: 0 !important
}

h2 span[data-char="|"] {
    width: 15px;
    opacity: 0 !important
}

h3 span[data-char="|"] {
    width: 10px;
    opacity: 0 !important
}

.pagecontent {
    min-height: 72vh
}

h1,
h2 {
    font-family: "Festivo basic"
}

h1,
h2,
h3 {
    font-size: 45px;
    font-family: "Dashiell", sans-serif !important;
    color: white;
    font-weight: lighter;
    margin-top: 20px;
    margin-bottom: 10px
}

h1 {
    font-size: min(8vw, 95px)
}

.dark {
    color: var(--black)
}

h3 {
    font-size: 25px
}

.txt-black {
    color: #000
}

button {
    font-family: "Futura PT Book", sans-serif !important
}

button {
    padding: 11px;
    padding-left: 15px;
    padding-right: 15px;
    text-align: center;
    color: black;
    border: none;
    background: #fbefae;
    border-radius: 35px;
    min-width: 140px;
    text-transform: uppercase;
    font-size: 13px;
    min-height: 60px;
    position: relative;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .25s linear
}

.ex {
    padding: 11px;
    padding-left: 15px;
    padding-right: 15px;
    text-align: center;
    color: black;
    border: none;
    background: #fbefae;
    border-radius: 35px;
    min-width: 140px;
    text-transform: uppercase;
    font-size: 13px;
    min-height: 60px;
    position: relative;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .25s linear
}

.swal2-close {
    padding: 11px;
    padding-left: 15px;
    padding-right: 15px;
    text-align: center;
    color: black;
    border: none;
    background: #fbefae;
    border-radius: 35px;
    min-width: 140px;
    text-transform: uppercase;
    font-size: 13px;
    min-height: 60px;
    position: relative;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .25s linear
}

.ot-floating-button__close,
.ot-floating-button__open {
    padding: 1px;
    top: -6px;
    left: -4px;
    padding-left: 30px;
    padding-right: 15px;
    text-align: center;
    color: black;
    border: none;
    background: #fbefae;
    width: 45px;
    min-width: 58px;
    text-transform: uppercase;
    font-size: 13px;
    min-height: 62px;
    position: relative;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .25s linear
}

button.long:not(.ex, .swal2-close) {
    min-width: 200px
}

.swal2-close:focus {
    box-shadow: none !important
}

button::after {
    position: absolute;
    content: "";
    width: 90%;
    height: 80%;
    top: 10%;
    left: 5%;
    border-radius: 100px;
    box-shadow: inset 0px 0px 0px 2px var(--gris-oscuro);
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .25s linear
}

button.swal2-close::after,
button#onetrust-accept-btn-handler::after,
button#onetrust-reject-all-handler::after,
button#onetrust-pc-btn-handler::after,
button.onetrust-close-btn-handler::after,
button.ot-close-icon::after,
button.ot-pc-refuse-all-handler::after,
.ot-accordion-layout>button::after,
#accept-recommended-btn-handler::after,
.gm-control-active::after,
.gm-ui-hover-effect::after {
    top: 10%;
    left: 0%;
    width: 0 !important
}

.gm-style-cc>div>button::after {
    left: 0%;
    width: 0 !important;
    content: "Combinaciones de teclas";
    top: -1%
}

.gm-control-active {
    background: none;
    display: block;
    border: 0px;
    margin: 0px;
    padding: 0px;
    text-transform: none;
    appearance: none;
    position: relative;
    cursor: pointer;
    user-select: none;
    overflow: hidden;
    width: 40px;
    height: 24px;
    top: 10px !important;
    left: 0px;
    min-height: 42px
}

.gm-control-active>img {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    display: none;
    left: 8% !important;
    pointer-events: none;
    position: absolute;
    top: 5% !important;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-5%, -2%) !important
}

button.over:not(.ex, .swal2-close, .boton_comprar),
.over:not(.ex, .swal2-close, .boton_comprar) button {
    background: #fff6c6;
    color: #2b0654;
    transform: scale(0.95)
}

button.over:not(.ex, .swal2-close, .boton_comprar)::after,
.over:not(.ex, .swal2-close, .boton_comprar) button::after {
    box-shadow: inset 0px 0px 10px 2px var(--gris-oscuro);
    width: 92%;
    height: 84%;
    top: 8%;
    left: 4%
}

button.slick-arrow {
    min-width: 60px;
    border-radius: 100%
}

button.slick-arrow::after {
    width: 80%;
    height: 80%;
    top: 10%;
    left: 10%
}

button.slick-arrow.over::after {
    width: 80%;
    height: 80%;
    top: 10%;
    left: 10%
}

button.boton.mini {
    min-width: 60px
}

button.boton.mini::after {
    width: 90%;
    height: 90%;
    top: 5%;
    left: 5%;
    border-radius: 100px
}

button.boton.mini.over::after {
    width: 90%;
    height: 90%;
    top: 5%;
    left: 5%;
    border-radius: 100px
}

.bg-black2 {
    background-color: var(--black)
}

.bg-black3 {
    background-color: var(--black2)
}

.slick-arrow.slick-prev {
    position: absolute;
    top: 100%;
    right: 75px
}

.slick-arrow.slick-next {
    position: absolute;
    right: 0
}

.slick-arrow {
    margin: 15px;
    z-index: 111;
    bottom: -40px;
    top: unset !important
}

.separacion {
    position: relative;
    height: 100vh;
    background-color: black
}

.separacion.v2 {
    position: relative;
    height: 60vh;
    background-color: black
}

.separacion_big {
    position: relative;
    height: 1300px;
    background-image: linear-gradient(#0b0bef 0%, #3508e7 10%, #4a08e2 20%, #5c08e2 30%, #650adb 40%, #6f0ed8 50%, #7318c3 60%, #7220ac 70%, #6c2697 80%, #2b252b 90%, #501cca 100%)
}

.bola2 {
    position: absolute;
    width: 50px;
    height: 50px;
    border-radius: 100px;
    background: red;
    top: 50%
}

.separacion {
    position: relative;
    height: 100vh
}

.flexcol2 {
    display: flex
}

.column {
    flex-basis: 50%;
    max-width: 50%
}

.sticky {
    position: sticky;
    top: 0
}

.cuad {
    position: relative;
    display: block;
    margin: 10px;
    width: 100px;
    height: 100px;
    background: darkkhaki
}

.cuadgroup .cuad {
    display: inline-block
}

.grid-layout {
    display: flex;
    height: 100%;
    width: 100%;
    transform-origin: center top
}

.grid-layout .column {
    position: relative;
    width: 25%
}

.grid-layout .column img {
    max-width: 100%
}

.parallax-section {
    height: 50vh;
    width: 100%;
    overflow: hidden;
    top: 0;
    padding: 0 1rem;
    transform-origin: center top
}

.parallax-image {
    height: 200vh;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    will-change: transform
}

section {
    width: 100%
}

section.cabecera img {
    max-width: 100%
}

section.cabecera img.titulo {
    max-width: 55vw;
    margin-top: 30px;
    filter: drop-shadow(1px 1px 3px black)
}

section.cabecera .img-full {
    z-index: -1
}

section.cabecera.almost-full,
section.cabecera .almost-full {
    width: 100vw;
    height: 60vh
}

.almost-full {
    width: 100vw;
    height: 60vh
}

.almost-full.v2 {
    height: min(55vh, 990px)
}

.almost-full img.img-full,
.almost-full.v2 img.img-full {
    object-fit: cover;
    position: absolute;
    width: 100%;
    height: 100%
}

section.cabecera .img-full {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center
}

section.cabecera .right {
    background-position: right
}

section.cabecera .left {
    background-position: left
}

section.cabecera .top {
    background-position: top
}

section.cabecera .bottom {
    background-position: bottom
}

.sombreado {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    top: 0;
    left: 0
}

.sombreado.v2 {
    background-image: url(../assets/images/cabeceras-sombreado2.png)
}

.cabecera .info {
    padding: 10vw
}

.cabecera .info * {
    color: white;
    font-family: "Dashiell", sans-serif !important
}

.cabecera .info p {
    color: white;
    font-family: "Futura PT Book", sans-serif !important
}

.cabecera h1 {
    margin-bottom: 0px;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 1)
}

.cabecera p {
    font-size: min(5vw, 23px);
    line-height: min(5vw, 20px);
    text-align: center;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 1)
}

.mw-1 {
    max-width: 1000px
}

.mw-2 {
    max-width: 550px
}

.mw-3 {
    max-width: 1200px
}

.entradilla {
    padding: 40px;
    background-color: white;
    color: black
}

.border-top {
    border-top: 6px solid var(--amarillo)
}

.burbujas {
    position: relative;
    z-index: 111;
    margin-top: -20%
}

.burbuja {
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 100%;
    background-size: 60%;
    background-position: center;
    background-repeat: no-repeat
}

.ornamento {
    z-index: 1;
    pointer-events: none;
    position: absolute;
    background-color: red;
    width: 100%;
    height: 100px;
    background: transparent;
    background-position: top;
    background-repeat: repeat-x;
    background-image: url(../assets/images/separador.png);
    transform: translateY(-99%)
}

.ornamento.o2 {
    background-image: url(../assets/images/separador2.png);
    transform: translateY(-90%)
}

.solomovil {
    display: none !important
}

@media screen and (max-width: 850px) {
    .nomovil {
        display: none !important
    }

    .solomovil {
        display: block !important
    }

    section.cabecera,
    .almost-full {
        height: 35vh !important
    }

    button:not(.ex) {
        transform: scale(0.9)
    }

    .slick-arrow {
        position: absolute;
        top: 90% !important;
        bottom: unset !important
    }

    .slick-arrow.slick-next {
        right: -20px
    }

    .slick-arrow.slick-prev {
        right: 50px
    }
}

body {
    color: #000;
    overflow-x: hidden;
    margin: 0;
    font-family: "Philosopher", Helvetica, Arial, Lucida, sans-serif;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.625rem;
    letter-spacing: normal;
    font-style: normal
}

@media(min-width: 1023.9px) {
    body {
        font-family: "Philosopher", Helvetica, Arial, Lucida, sans-serif;
        font-weight: 400;
        font-size: 1.125rem;
        line-height: 1.75rem;
        letter-spacing: normal;
        font-style: normal
    }
}

section {
    font-family: "Raleway", Helvetica, Arial, Lucida, sans-serif;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.625rem;
    letter-spacing: normal;
    font-style: normal
}

@media(min-width: 1023.9px) {
    section {
        font-family: "Raleway", Helvetica, Arial, Lucida, sans-serif;
        font-weight: 400;
        font-size: 1.125rem;
        line-height: 1.75rem;
        letter-spacing: normal;
        font-style: normal
    }
}

nav {
    font-family: "Festivo", Helvetica, Arial, Lucida, sans-serif;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.625rem;
    letter-spacing: normal;
    font-style: normal
}

@media(min-width: 1023.9px) {
    nav {
        font-family: "Festivo", Helvetica, Arial, Lucida, sans-serif;
        font-weight: 400;
        font-size: 1.125rem;
        line-height: 1.75rem;
        letter-spacing: normal;
        font-style: normal
    }
}

nav ul li a {
    text-decoration: none;
    list-style: none
}

*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box
}

button,
a {
    cursor: pointer
}

a {
    color: #3f37d7;
    text-decoration: none
}

a:hover {
    text-decoration: none
}

li {
    list-style: none
}

img {
    max-width: 100%;
    height: auto;
    display: block
}

input,
textarea,
select {
    font-family: inherit;
    font-size: inherit;
    padding: 1rem;
    border: 1px solid #a5abb3;
    width: 100%;
    border-radius: 0
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus {
    outline: 2px solid #002d72
}

svg:focus,
svg:focus-visible {
    border: none;
    outline: none
}

.sr_only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0, 0, 0, 0);
    overflow: hidden;
    white-space: nowrap
}

::selection {
    background-color: #33578e;
    color: #e4e2f9
}

.skip-to-content {
    position: absolute;
    top: -40px;
    left: 0;
    background: #fff;
    color: #000;
    padding: .5rem 1rem;
    z-index: 1000;
    transition: top .3s ease;
    text-decoration: none
}

.skip-to-content:focus {
    top: 0
}

.container {
    width: 100%;
    max-width: 1920px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem
}

@media(min-width: 599.9px)and (max-width: 1023.9px) {
    .container {
        padding-left: 1.5rem;
        padding-right: 1.5rem
    }
}

@media(min-width: 1023.9px)and (max-width: 1279.9px) {
    .container {
        padding-left: 2rem;
        padding-right: 2rem
    }
}

h1,
.h1 {
    text-transform: uppercase
}

h2,
.h2 {
    text-transform: uppercase;
    font-family: "Festivo", Helvetica, Arial, Lucida, sans-serif;
    font-weight: 400;
    font-size: 1.875rem;
    letter-spacing: .0625rem;
    font-style: normal
}

@media(min-width: 839.9px)and (max-width: 1023.9px) {

    h2,
    .h2 {
        font-family: "Festivo", Helvetica, Arial, Lucida, sans-serif;
        font-weight: 400;
        font-size: 2.8125rem;
        letter-spacing: .0625rem;
        font-style: normal
    }
}

@media(min-width: 1023.9px) {

    h2,
    .h2 {
        font-family: "Festivo", Helvetica, Arial, Lucida, sans-serif;
        font-weight: 400;
        font-size: 3.75rem;
        letter-spacing: .0625rem;
        font-style: normal
    }
}

.c-padding {
    padding-top: 2rem;
    padding-bottom: 2rem
}

@media(min-width: 599.9px)and (max-width: 1023.9px) {
    .c-padding {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem
    }
}

@media(min-width: 1023.9px) {
    .c-padding {
        padding-top: 3rem;
        padding-bottom: 3rem
    }
}

.c-padding-bottom {
    padding-bottom: 2rem
}

@media(min-width: 599.9px)and (max-width: 1023.9px) {
    .c-padding-bottom {
        padding-bottom: 2.5rem
    }
}

@media(min-width: 1023.9px) {
    .c-padding-bottom {
        padding-bottom: 3rem
    }
}

.c-margin-bottom {
    margin-bottom: 2rem
}

@media(min-width: 599.9px)and (max-width: 1023.9px) {
    .c-margin-bottom {
        margin-bottom: 2.5rem
    }
}

@media(min-width: 1023.9px) {
    .c-margin-bottom {
        margin-bottom: 3rem
    }
}

.sectionBreadcrumb {
    position: relative
}

@media(min-width: 839.9px) {
    .responsiveRichContent {
        gap: 4rem;
        grid-column: span 6
    }
}

.responsiveRichContent {
    display: grid;
    grid-template-columns: repeat(4, 1fr)
}

@media(min-width: 599.9px)and (max-width: 839.9px) {
    .responsiveRichContent {
        grid-template-columns: repeat(4, 1fr)
    }
}

@media(min-width: 839.9px) {
    .responsiveRichContent {
        grid-template-columns: repeat(12, 1fr)
    }
}

.responsiveRichContent div {
    grid-column: 1/span 4
}

@media(min-width: 599.9px)and (max-width: 839.9px) {
    .responsiveRichContent div {
        grid-column: 1/span 4
    }
}

@media(min-width: 839.9px) {
    .responsiveRichContent div {
        grid-column: span 6
    }
}

.tabularContent::-webkit-scrollbar {
    height: 8px
}

.tabularContent {
    overflow-x: auto;
    max-width: 800px;
    margin-inline: auto;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .05);
    background: #fff
}

@media(min-width: 1023.9px) {
    .tabularContent {
        max-width: 1024px
    }
}

.tabularContent {
    -webkit-overflow-scrolling: touch
}

.tabularContent table {
    border-collapse: collapse;
    width: 100%;
    min-width: 600px
}

.tabularContent th,
.tabularContent td {
    border: 1px solid #e6e6e6;
    padding: 14px 16px;
    text-align: left;
    font-size: 14px
}

.tabularContent th {
    background-color: #f4f6f8;
    font-weight: 600;
    color: #222;
    position: sticky;
    top: 0;
    z-index: 2
}

.tabularContent tbody tr:nth-child(even) {
    background-color: #fafafa
}

.tabularContent tbody tr:hover {
    background-color: #f1f5f9
}

.container-inner {
    width: 100%;
    max-width: 1250px;
    margin: auto;
    padding: 2rem 1rem
}

@media(min-width: 0)and (max-width: 1023.9px) {
    .container-inner {
        padding: 2rem 0rem
    }
}

.social-links {
    display: flex;
    gap: 15px
}

.social-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: #000;
    color: #fff;
    border-radius: 50%;
    text-decoration: none;
    font-size: 18px;
    transition: transform .3s ease, background-color .3s ease
}

.social-icon:hover {
    transform: scale(1.1);
    background-color: #333
}

/* Block */
.hero-banner {
    position: relative;
    width: 100%;
    overflow: hidden;
}

/* Elements */
.hero-banner picture,
.hero-banner__img {
    width: 100%;
    height: 100%;
    display: block;
}

.hero-banner__img {
    object-fit: cover;
}

/* Overlay */
.hero-banner__overlay {
    position: absolute;
    inset: 0;
}

/* Link wrapper */
.hero-banner__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

/* Optional: hover effect */
.hero-banner__link:hover .hero-banner__img {
    transform: scale(1.03);
    transition: transform 0.4s ease;
}