
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');

@font-face {
    font-family:Caviar Dreams;
    font-weight: 500;
    font-style: normal;
    src: url('https://zen-leavitt.93-93-116-169.plesk.page/master-cocktail/fonts/CaviarDreams.woff2');
}

@font-face {
    font-family:Caviar Dreams;
    font-weight: 700;
    font-style: normal;
    src: url('https://zen-leavitt.93-93-116-169.plesk.page/master-cocktail/fonts/CaviarDreams_Bold.woff2');
}


@keyframes opOut{
    0%{
        display: block;
        opacity:1;
    }
    99%{
        display:block;
    }
    100%{
        display:none;
        opacity:0;
    }
}


@keyframes opIn{
    0%{
        display: block;
        opacity:0;
    }

    100%{
        display:block;
        opacity:1;
    }
}

@keyframes backgroundIn {
    0% { background-color:unset; box-shadow: unset }
    100% { background-color: rgb(156, 24, 47); box-shadow: 0 15px 12px rgba(0, 0, 0, 0.3); }
}

@keyframes backgroundOut {
    0% { background-color: rgb(156, 24, 47); box-shadow: 0 15px 12px rgba(0, 0, 0, 0.3); }
    100% { background-color: unset; box-shadow: unset; }
}

@keyframes circleIn {
    0% { opacity: 0; }
    100% { opacity: 1 }
}

@keyframes circleOut {
    0% { opacity: 1 }
    100% { opacity: 0; }
}

@keyframes logoIn {
    0% { opacity: 0 }
    50% { opacity: 0 }
    100% { opacity: 1 }
}

@keyframes logoOut {
    0% { opacity: 1 }
    50% { opacity: 0 }
    100% { opacity: 0 }
}

@keyframes lineIn {
    0% {
        transform: translate(0, -12px) scaleX(0);
        opacity: 0;
    }
    100% {
        transform: translate(0, -12px) scaleX(1);
        opacity: 1;
    }
}

@keyframes lineOut {
    0% {
        transform: translate(0, -12px) scaleX(1);
        opacity: 1;
    }
    50% { opacity: 1 }
    100% {
        transform: translate(0, -12px) scaleX(0);
        opacity: 0;
    }
}

@keyframes headerHide {
    from { transform: translateY(0); }
    to { transform: translateY(-100%); }
}

html, body {
    width: 100%;
    overflow-x: clip;
}

.cky-consent-container.cky-box-bottom-left * {
    font-family: 'Montserrat'!important;
}


.cky-modal * {
    font-family: 'Montserrat'!important;
}


.opIn{
    animation: opIn 0.5s ease-in-out forwards;
    display:block!important;
}

.opOut{
    animation: opOut 0.5s ease-in-out forwards;
}
.exitForm svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.popUpFormBG {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 6;
    backdrop-filter: blur(5px);
    display: none;
    background-color: rgba(29,29,27,0.7);
}
.navigationMenuLogoPhone a{
    display:block;
}

.popUpForm :is(textarea,input):hover {
    border-color: #E9BC5E!important;
}


.exitForm {
    position: absolute;
    top: 0;
    left: 100%;
    width: 25px;
    height: 25px;
    transform: translate(-150%,50%);
    cursor: pointer;
    transition: all 0.25s ease-in-out;
}

.exitForm:hover {
    transform: translate(-150%,50%) scale(1.15);
}
.exitForm * {
    pointer-events: none;
}

.popUpForm {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: fit-content;
    height: fit-content;
    display: none;
    background-color: #1D1D1B;
    padding: 6%;
    z-index: 10;
    border-radius: 10px;
    filter: drop-shadow(18px 23px 14px rgba(0,0,0,0.4));
    min-width: 25%;
    border: 1px solid rgba(0,0,0,0.3);
}
/*
#E9BC5E

#9C182F
*/

.forminator-ui#forminator-module-88.forminator-design--default .forminator-error-message {
    color: red!important;
}

button.forminator-button.forminator-button-submit {
    color: black!important;
}

.popUpForm :is(button,a,span,select,li, label) {
    font-family: 'Montserrat'!important;
    color:white!important;
}


.popUpForm :is(textarea,input) {
    color: white!important;
    font-family: 'Montserrat'!important;
    font-size: 0.9em!important;
    background-color:transparent!important;
    font-weight: 200!important;
}

.select2-results__options li {
    font-family: 'Montserrat'!important;
}
span[data-limit="180"] {
    display: none;
}

.popUpForm textarea {
    resize: none!important;
}

.popUpForm label {
    font-weight: 400!important;
    font-family: 'Caviar Dreams'!important;
    font-size: 0.9em!important;
}


html body .popUpForm .forminator-field:has(.forminator-button-submit) {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.forminator-button-submit {
    padding: 2.2% 20%!important;
    color: #061459!important;
    background-color: white!important;
    border-radius: 10px!important;
    transition: all 0.25s ease-in-out;
}

.forminator-button-submit:hover {
    transform: scale(1.1);
}



html{
    scroll-behavior: smooth;
}





.headerNavigationMenu a {
    color: white;
    font-family: 'Caviar Dreams';
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    font-size: 1.3em;
    transition: all 0.25s ease-in-out;
    padding: 10px;
    transition: all 0.25s ease-in-out;
    position: relative;
}

.headerNavigationMenu.scrolled :is(.navigationLeft, .navigationRight) a {
    font-size: 1.1em;
}

.headerNavigationMenu.scrolled .navigationMenuLogo {
    width: 160px;
}

.headerNavigationMenu.scrolled .navigationMenuLogo::after {
    width: 60px;
    height: 60px;
} 

.headerNavigationMenu a.isPage::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    transform: scaleY(0);
    transform-origin: top;
    border-radius: 10px 10px 0 0;
    padding: 1px;
    background: linear-gradient(
        0deg,
        rgba(156, 24, 47, 0) 0%,
        rgba(233, 185, 89, 0.6) 60%,
        rgba(233, 185, 89, 1) 100%
    );
    -webkit-mask: 
        linear-gradient(#fff 0 0) content-box, 
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: destination-out;
    mask-composite: exclude;
    transition: all 0.45s ease-in-out;
}

.headerNavigationMenu a.activeHeader {
    color: rgb(233, 185, 89);
    font-weight: 600;
}

.headerNavigationMenu a.activeHeader::after {
    transform: scaleY(1);
    transition: all 0.45s cubic-bezier(.38,.77,.17,.72);
}

.headerNavigationPhone {
    display: none;
}
.headerNavigationMenu {
    position: fixed;
    width: 100%;
    padding-top: 4vh;
    z-index: 99;
    transition: all 0.25s ease-in-out;
}

.headerNavigationMenu.hideNav {
    background-color: rgb(156, 24, 47); 
    padding-top: 5vh; 
    box-shadow: 0 15px 12px rgba(0, 0, 0, 0.3);
}

.headerNavigationPC .logoCircle {
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    transform: translate(-52%, -52%);
    background: rgb(156, 24, 47);
    width: 120px;
    height: 120px;
    border-radius: 50%;
    opacity: 0;
    box-shadow: rgba(0, 0, 0, 0.3) 0px 15px 12px 0px;
}

.headerNavigationMenu.hideNav .logoCircle {
    opacity: 1;
}

.headerNavigationPC {
    position: relative;
    width: 94%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 2vh 0;
    margin: 0 auto;
    box-sizing: border-box;
}
.navigationMenuLogo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


.navigationMenuLogo {
    width: 170px;
    transition: all 0.25s ease-in-out;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -51%);
    z-index: 12;
}

.navigationMenuLogo::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    border-bottom-left-radius: 50%;
    width: 75px;
    height: 75px;
    transform: translate(-52.1%, -112.5%);
    z-index: -1;
    opacity: 0;
    border-bottom-right-radius: 50%;
    border: 18px solid rgb(156, 24, 47);
    background: rgb(156, 24, 47);
}

.headerNavigationMenu.hideNav .navigationMenuLogo::after {
    opacity: 1;
}

.navigationMenuLogo a {
    display: block;
}

.navigationMenuLogo svg {
    width: 100%;
    height: 100%;
}

.mobileMenuLogo svg {
    width: 100%;
    height: 100%;
}

.headerNavigationPC .navigationLine {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 2px;
    background: white;
    z-index: 11;
    opacity: 0;
    transform-origin: center;
}

.headerNavigationMenu {
    transform: translateY(0);
    transition: all 0.4s ease-in-out;
}

.headerNavigationMenu.scrollEnd {
    transform: translateY(-100%);
}

.headerNavigationMenu.scrollEnd:hover {
    transform: translateY(0);
}

/* ANIMACIÓN IN HEADER */

.headerNavigationMenu.scrolled {
    animation: backgroundIn 0.3s forwards ease-in-out;
}

.headerNavigationMenu.scrolled .logoCircle {
    animation: circleIn 0.3s forwards ease-in-out;
}

.headerNavigationMenu.scrolled .navigationMenuLogo::after {
    animation: logoIn 0.3s forwards ease-in-out;
    animation-delay: 0.3s;
    transition: all 0.25s ease-in-out;
}

.headerNavigationMenu.scrolled .navigationLine {
    animation: lineIn 0.5s forwards cubic-bezier(0,1.05,1,.96);
    animation-delay: 0.55s;
}

/* ANIMACIÓN IN HEADER */

/* ANIMACIÓN OUT HEADER */

.headerNavigationMenu.hideNav .navigationLine {
    animation: lineOut 0.5s forwards cubic-bezier(.97,-0.06,1,.96);
}

.headerNavigationMenu.hideNav .logoCircle {
    animation: circleOut 0.3s forwards ease-in-out;
    animation-delay: 0.5s;
}

.headerNavigationMenu.hideNav .navigationMenuLogo::after {
    animation: logoOut 0.3s forwards ease-in-out;
    animation-delay: 0.5s;
}

.headerNavigationMenu.hideNav {
    animation: backgroundOut 0.3s forwards ease-in-out;
    animation-delay: 0.5s;
}

/* ANIMACIÓN OUT HEADER */

.navigationLeft a, .navigationRight a {
    margin-right: 55px;
}

.navigationRight a:last-of-type {
    margin-right: unset;
}


.headerMenuChevron {
    position: absolute;
    width: 15px;
    height: 15px;
    top: 73.8%;
    transform-origin: center;
    left: calc(50% - 3px);
    transform: translateX(-50%);
    opacity: 0;
    pointer-events: none;
    transition: all 0.35s ease-in-out;
}

.scrolled .headerMenuChevron {
    opacity: 1;
    transition: opacity 1.9s cubic-bezier(1,-0.02,.83,-0.06), transform 0.35s ease-in-out;
}

.headerNavigationPC:hover .headerMenuChevron, #header:hover .headerMenuChevron {
    transform: translateX(-50%) rotate(180deg) translateY(8px);
}


@media only screen and (max-width:1600px){
    html body .headerNavigationMenu a {
        font-size: 1.2em;
    }
    html body .headerNavigationPC {
        gap: 5%;
    }
}

@media only screen and (max-width:1150px){



.headerMenuChevron{
    display:none;
}
  
    html body .popUpForm {
        width: 80%;
    }
    .headerNavigationPC{
        display:none;
    }
    .navigationMenuLogoPhone svg {
        width: 100%;
        height: 100%;
        display:block;
        object-fit: contain;
    }

.navigationMenuLogoPhone {
    width: 140px;
    padding: 0.8vh 0;
    height: 100%;
    box-sizing: border-box;
}



    

    .displayNone {
        display: none!important;
    }



.menu svg {
    width: 100%;
    height: 100%;
    display: block;
}


.scrollEnd .headerMenuPhone::after {
    transform: unset;
}






    .line {
        fill: none;
        stroke: white;
        stroke-width: 6;
        transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1), stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
    }
    .line1 {
        stroke-dasharray: 60 207;
        stroke-width: 6;
    }
    .line2 {
        stroke-dasharray: 60 60;
        stroke-width: 6;
    }
    .line3 {
        stroke-dasharray: 60 207;
        stroke-width: 6;
    }
    .opened .line1 {
        stroke-dasharray: 90 207;
        stroke-dashoffset: -134;
        stroke-width: 6;
    }
    .opened .line2 {
        stroke-dasharray: 1 60;
        stroke-dashoffset: -30;
        stroke-width: 6;
    }
    .opened .line3 {
        stroke-dasharray: 90 207;
        stroke-dashoffset: -134;
        stroke-width: 6;
    }






}


/*New resp header*/
@media only screen and (max-width:1150px){


button.menu {
    background-color: transparent;
    border: none;
    position: absolute;
    height: 60px;
    width: 54px;
    transition: all 0.35s ease-in-out;
    z-index: 10;
    top: 0;
    left: 100%;
    transform: translate(-113%,-10%);
}

.mobileMenuLinks {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    width: 100%;
    transform: translateY(-13%);
}

div#header {
    background-color: rgb(156, 24, 47);
    width: 10vh;
    height: 7.14vh;
    padding-top: unset;
    position: fixed;
    top: 0;
    left: 100%;
    transform: translate(-100%, -100%);
    border-bottom-left-radius: 20px;
    filter: drop-shadow(-3px 4px 14px rgba(0,0,0,0.5));
    transition: all 0.45s ease-in-out;
}

div#header.reveal {
    transform: translate(-100%, 0);
}

div#header.growDown {
    width: 30vw;
    height: 60vh;
    border-bottom-left-radius: 9px;
    filter: drop-shadow(-3px 4px 12px rgba(0,0,0,0.8));
}


.headerNavigationPhone {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mobileMenuContent {
    width: 100%;
    height: 100%;
    transform-origin: right;
    transform: translateX(75vw);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.mobileMenu {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.growDown .mobileMenuContent {
    transform: translateX(0);
    transition: all 0.52s cubic-bezier(1, 0, 0.64, 0.04);
}

html body .headerNavigationMenu a {
    font-size: 1.1em;
    padding: unset;
    width: 100%;
    height: 100%;
    text-align: right;
    margin: 0.4em 0;
    padding-right: 15%;
}


html body .mobileMenuLogo a {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.mobileMenuLogo {
    width: 90px;
    height: 80px;
    position: absolute;
    top: 96.5%;
    left: 50%;
    transform: translate(-50%,-100%);
}

.mobileMenuLinksSeparator {
    width: 96%;
    height: 2px;
    background-color: #d88ba3;
    margin-left: auto;
    border-radius: 10px;
    min-height: 2px;
}

}
/*/// New resp header*/




@media only screen and (max-width: 600px) {

     
    html div#header.growDown {
    width: 65vw;
}

    html body button.menu {
    transform: translate(-124%,-8%);
}


.navigationMenuLogoPhone {
    width: 100px;
}


}

@supports (-webkit-touch-callout: none) {
  @media screen and (max-height: 700px) {
        html body button.menu {
            transform: translate(-110%,-12%);
        }
  }
}


/*
Burger
*/




.headerMenuPhone{
    display:none;
  }


