:root{
    --primary-font: 'Source Sans Pro';
    --secondary-font: 'Minion Pro';
    --base-size-font:16px;
    --primary-color:#c9a983;
    --light-background:#f8f5f0;
    --text-color:#7a7a7a;
    --transition:all .4s ease;
    --box-shadow: rgb(0 0 0 / 10%) 1px 1px 10px;
    --border-radius:12px;
}

html{
    font-size: 62.5%;
}

body {
    background-color: #fff;
    font-family: var(--primary-font);
    font-size: var(--base-size-font);
    color:var(--text-color);
    line-height: 1.2;
    font-style: normal;
}

body:not(.home){
    padding-top:80px;
}

@media screen and (min-width: 1280px) {
    body:not(.home){
        padding-top:110px;
    }
}


/* --- Container --- */

.container{
    margin: 0 auto;
    width: 100%;
    max-width: 1755px;
    position: relative;
    padding: 0 15px;
}

@media screen and (min-width: 1280px) {
    .container{
        width: 90%;
    }

    .container-small{
        width: 80%;
    }
}

/*** Slick arrow ***/

.slick-arrow{
    width: 70px;
    height: 40px;
    z-index: 9;
    background: var(--primary-color);
    transition: var(--transition);
    position: relative;
}

@media screen and (min-width: 1024px) {
    .slick-arrow{
        width: 90px;
        height: 42px;
    }
}

.slick-arrow:before{
    display: none;
}

.slick-arrow:after{
    content: "\e902";
    font-family: 'omelet' !important;
    display: block;
    font-size: 2rem;
    color:var(--text-color);
}

.custom-arrows{
    display: flex;
    align-items: center;
    position: relative;
}

.custom-arrows.-start{
    justify-content: flex-start;
}

.custom-arrows.-end{
    justify-content: flex-end;
}

.custom-arrows-wrap{
    display: flex;
    align-items: center;
    gap:20px;
    flex-shrink: 0;
}

@media screen and (min-width: 1024px) {
    .custom-arrows-wrap{
        gap:40px;
    }
}

.custom-arrow{
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.custom-arrow.slick-disabled{
    opacity:.8;
    pointer-events:none;
}

.custom-arrow-prev:after{
    transform: scaleX(-1);
}

.custom-arrows.-with-line:before{
    content:"";
    display: inline-block;
    height: 2px;
    width: 100%;
    background-color: #d5c8bb;
    margin-right: 20px;
}

@media screen and (min-width: 1024px) {
    .custom-arrows.-with-line:before{
        margin-right: 75px;
        width: 70%;
    }
}


/* --- Slick --- */

.slick-dots{
    display: flex;
    justify-content: center;
    bottom: 0;
    pointer-events: none;
    position: relative;
    margin-top: 40px;
}

.slick-dots li{
    width: 11px;
    height: 11px;
    margin: 6px 0px;
    border-radius: 9999px;
    transition:var(--transition);
    background-color: #d5c8bb;
}

.dots-light .slick-dots li{
    background-color: var(--primary-color);
}

.slick-dots li.slick-active{
    background-color: var(--primary-color);
    height: 18px;
}

.slick-dots li button{
    width:100%;
    height:100%;
    padding:0;
    pointer-events: all;
}

.slick-dots li button::before{
    display: none;
}

/* ---------------- Formularios  ---------------- */

.form-control{
    padding: 12px 0px!important;
    border-radius:0!important;
    height: auto;
    box-shadow:none!important;;
    line-height: 1!important;
    background-color: #fff!important;
    border-bottom: 1px solid var(--primary-color);
    width:100%;
    font-family:var(--secondary-font);
}

textarea.form-control{
    min-height:140px;
    width:100%;
}

select.form-control{
    width:100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url(../images/select-arrow.svg);
    background-position: right 20px center;
    background-size: 12px;
    background-repeat: no-repeat;
	min-height:43px;
}

.form-control,
.form-control::placeholder{
    font-size: 2rem!important;
    color:var(--text-color)!important;
    font-family:var(--secondary-font);
}

.form-group{
    margin-bottom:15px;
    display: flex;
    flex-flow: column;
}

.form-group label{
    margin-bottom: 10px;
    font-size: 1.8rem!important;
    font-weight: 300;
    display:inline-block;
}

.form-group br{
    display:none!important;
}


.form-group small{
   font-weight: 300;
    font-size: 1.6rem;
    margin-top: 10px;
    display: block;
}


.form-row{
    margin:0;
    display: grid;
    grid-template-columns: repeat(1,1fr);
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    margin-bottom:15px;
    width:100%;
}



@media screen and (min-width : 580px) {
   .form-row{
        grid-template-columns: repeat(2,1fr);
    }
    
    .form-row-split{
        grid-template-columns: repeat(3,1fr);
        
    }
    
    .form-row-single{
        grid-template-columns: repeat(1,1fr);
        gap:10px;
    }
}


.form-row > p{
    display:none;
}

.form-row .form-group{
    margin: 0;
}

.form-group-button{
    text-align:left;
    margin-top:40px;
    padding-top:40px;
    position:relative;
    justify-content: flex-start;
    flex-flow: row;
    align-items:center
}

.form-group-button:after{
    content:"\e902";
    display: inline-block;
    font-size: 1.2rem;
    font-family: 'omelet' !important;
    margin-left: 10px;
    transition:var(--transition);
    color:var(--primary-color);
    transform: rotate(-45deg);
}

.form-group-button .btn{
    width:100%;
}

@media screen and (min-width : 580px) {
   .form-group-button .btn{
        width:auto;
    }
}

.form-group-button:before{
        content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 65px;
    height: 4px;
    background-color: #6d6d6d;
}


/* -------------- Contact form ------------ */

form.wpcf7-form {
    position:relative;
    margin:0!important;
}

form.wpcf7-form br{
    display:none;
}

form.wpcf7-form.submitting:after{
    content:"";
    width:100%;
    height:100%;
    position: absolute;
    top:60%;
    transform:translateY(-50%);
    left:0;
    background-image: url(../images/loader.gif);
    background-size: 5%;
    background-repeat: no-repeat;
    background-position: center top 30%;
    z-index:2;
}

.wpcf7-not-valid-tip,
.wpcf7-response-output{
    color: #fff!important;
    font-size: 1.5rem!important;
    font-weight: 300!important;
    text-align: left!important;
    border-radius: 0!important;
    padding: 8px 0px!important;
    line-height: 1.2;
}

.wpcf7-not-valid-tip{
    display: block!important;
    margin-top:10px!important;
}

.wpcf7-response-output{
    margin:10px 0!important;
    border:0!important;
}

.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-not-valid-tip,
.comments-error{
    color: #f14040!important;
}

.wpcf7-form.invalid .form-control{
    border-bottom: 1px solid #f14040!important;;
}

/*.wpcf7-form.sent .form-control{*/
/*    border: 1px solid #34b234!important;*/
/*}*/

.wpcf7-form.sent .wpcf7-response-output,
.comments-valid{
    color:#34b234!important;
}

.wpcf7 .ajax-loader,
.wpcf7-spinner{
    display:none!important;
}

.wpcf7 .ajax-loader:before{
    display:none;
}

form.wpcf7-form .form-group{
    transition:all .6s ease;
}

form.wpcf7-form.submitting .form-group{
    opacity:0.4;
}

/* SWEET ALERT */

.swal2-popup {
   width: 40em;
    min-height: 280px;
}

.swal2-styled.swal2-confirm,
.swal2-html-container{
    font-size: 1.6rem;
    
}

.swal2-styled.swal2-confirm{
    background-color: var(--primary-color);
    border:0!important;
    outline:0!important;
}

.swal2-title{
    font-family:var(--secondary-font);
    font-size: 1.9rem;
}

.swal2-icon {
    display: flex;
    transform: scale(1.5);
    margin-top: 50px;
}

/* --- Botones --- */

.btn{
    display: inline-block;
    padding: 0;
    text-align: center;
    position: relative;
    background-color: transparent;
    border: 0;
    transition:var(--transition);
    font-size:1.9rem;
    line-height: 1;
    color:var(--text-color);
    font-weight: 400;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.btn:after{
    content:"\e902";
    display: inline-block;
    font-size: 1.2rem;
    font-family: 'omelet' !important;
    margin-left: 10px;
    transition:var(--transition);
    color:var(--primary-color);
    transform: rotate(-45deg);
}

.btn:hover:after{
    transform: rotate(0);
}

.btn.-white{
    color:#fff;
}

.btn.-primary{
    padding:12px 20px;
    background-color:var(--text-color);
    border:1px solid var(--text-color);
    color:#fff;
}

.btn.-primary:hover{
    background-color:var(--primary-color);
    border:1px solid var(--primary-color);
    color:#fff;
}

.btn.-primary:after{
    color:#fff;
}

/* ---- Section ---- */

.section{
    overflow: hidden;
    position: relative;
    padding: 4rem 0;
}

@media screen and (min-width: 1280px) {
    .section{
        padding: 85px 0;
    }
    
    .section.-small{
        padding: 45px 0;
    }
}

.-top{
    padding-top:0;
}

.-bottom{
    padding-bottom:0;
}

.section-title{
    position: relative;
}

.section-title.-with-line p{
    padding-bottom: 40px;
    margin-bottom: 35px;
    position: relative;
}

.section-title.-with-line p:after{
    content:"";
    position: absolute;
    bottom:0;
    left: 0;
    width: 65px;
    height: 4px;
    background-color: #6d6d6d;
}

.section-title h2{
    font-size: 3.2rem;
    margin-bottom: 3vmax;
    line-height: 1.1;
    font-family: var(--secondary-font);
    font-weight: 500;
}

@media screen and (min-width: 1024px) {
    .section-title h2{
        font-size: 4.4rem;
        margin-bottom: 60px;
    }
}

.section-title.-small-margin h2{
    margin-bottom: 30px;
}

.section-title h2:before{
    content:"\e90c";
    display: inline-block;
    font-family: "omelet" !important;
    font-size: 2.1rem;
    line-height: 1;
    color: var(--primary-color);
    margin-right: 10px;
}

.section-title h2 span{
    color:#c9a983;
}

.section-title p{
    font-size: 16px;
    line-height: 1.8;
    font-weight: 200;
    text-align: justify;
}

.-light-background{
    background-color:var(--light-background);
}
.section-title.-center{
    text-align:center;
}

.section-title.-center p{
    text-align:center;
}


/* --- Header --- */

.header{
    width: 100%;
    position: relative;
    overflow: hidden;
    position: relative;
    z-index: 10;
    
}

body.home .header{
    position: absolute;
    top:0;
    left: 0;
}

.header.headerColor{
  animation: slideIn 0.3s ease-in forwards;
  position:fixed!important;
  background-color:var(--primary-color);
  top:0;
}

body:not(.home) .header.headerColor{
    animation:none;
}

@keyframes slideIn {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}

.header-wrap{
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
}

@media screen and (min-width: 1024px) {
    .header-wrap{
        height: 172px;
    }
    
    .headerColor .header-wrap{
        height: 95px;
    }
}

.header-logo {
    display: flex;
    align-items: center;
    line-height: 0;
    height: calc(100% - 45px);
    flex-shrink: 0;
    transition:var(--transition);
}

@media screen and (min-width: 1024px) {
    .header-logo {
        height: 65px;
    }
}

.header-logo img{
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
}

.header-menu-wrap{
     display: flex;
    align-items: center;
    gap:20px;
}

.header-menu{
    opacity:0;
    visibility:hidden;
    display:none;
}

@media screen and (min-width: 1024px) {
    .header-menu{
        display:block;
    }
}

.header.headerColor .header-menu{
    opacity:1;
    visibility:visible;
}

.header-menu .menu{
    display:flex;
    gap:8px;
   
}

.header-menu .menu li {
    z-index:11;
}

.header-menu .menu li a{
    color:#fff;
    text-transform:uppercase;
    font-weight:200;
    display:block;
    padding: 0 15px;
    position: relative;
    min-height: 40px;
    display: flex;
    align-items: center;
    transition:var(--transition);
    cursor:pointer;
}

.header-menu .menu li a:hover,
.header-menu .menu li.current-menu-item{
    background-color: var(--text-color);
}

.movable-div {
     position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    height: 0;
    background-color: var(--text-color);
    transition:var(--transition);
    z-index: 10;
}

.header-icons{
    display: flex;
    align-items: center;
}

.header-icons a{
    margin-left: 10px;
}

.header-icons a span{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    background-color: #fff;
    border-radius: 9999px;
}

@media screen and (min-width: 1024px) {
    .header-icons a span{
        width: 26px;
        height: 26px;
    }
}



.header-icons a span:before{
    content: "";
    text-indent: 0;
    display: inline-block;
    font-family: "omelet" !important;
    font-size: 1.2rem;
    color: #000;
    text-indent: 0;
    transition:var(--transition);
    text-indent: 0;
}

@media screen and (min-width: 1024px) {
    .header-icons a span:before{
        content: "";
        font-size: 1.4rem;
    }
    
}

.header.headerColor .header-icons a span:before{
    color: var(--primary-color);
}

.header-icons a.-facebook  span:before{
    content: "\e907";
}

.header-icons a.-instagram  span:before{
    content: "\e908";
}

.header-icons a.-cart{
    margin-left: 15px;
    padding-left: 15px;
    position: relative;
}

.header-icons a.-cart:after{
    content:"";
    position: absolute;
    top:50%;
    transform: translateY(-50%);
    left: 0;
    width: 0.75px;
    height: 80%;
    background-color: #fff;
}

.header-icons a.-cart span{
    background-color: var(--primary-color);
}

.header.headerColor .header-icons a.-cart span{
    color: var(--primary-color);
    background-color:#fff;
}


.header-icons a.-cart span:before{
    content: "\e903";
    color: #fff;
}

.header.headerColor .header-icons a.-cart span:before{
    color: var(--primary-color);
}

.header-icons .-mobile-menu{
    width: 50px;
    height: 100%;
    position: relative;
    cursor: pointer;
    background-color: rgba(0,0,0,0);
    text-indent: -999999px;
    overflow: hidden;
    transition:var(--transition);
    filter: invert(1);
    display: block;
}

@media screen and (min-width: 1024px) {
    .header-icons .-mobile-menu{
        display: none;
    }
}

.header-icons .-mobile-menu span{
    display: block;
    border-radius: 9999px;
    width: 30px;
    height: 3px;
    background: #1b1b1b;
    transition:var(--transition);
    position: relative;
    margin: 0;
    margin-left: auto;
}

.header-icons .-mobile-menu span + span {
    margin-top: 6px;
}


/* MENU MOBILE */

.menu-sidebar{
    height: 100vh;
    position:fixed;
    top:0;
    width:100%;
    background-color: var(--primary-color)!important;
    box-shadow: 0 2px 10px 0 rgb(176 176 176 / 20%);
    z-index:1002;
    padding: 4rem 1.875rem 1.875rem;
    opacity:0;
    visibility:hidden;
    transition: all .25s cubic-bezier(.73,.33,.33,.97);
}

.menu-sidebar-left{
    left:0;
    transform:translateX(-290px) translatez(0);
}

.menu-sidebar-right{
    right:0;
    transform:translateX(290px) translatez(0);
}

.menu-sidebar.active{
    opacity:1;
    visibility:visible;
    transform:translateX(0%) translatez(0);
}

body.body-fixed{
    overflow: hidden;
}

.menu-sidebar-overlay{
    width:100%;
    height:100%;
    position:fixed;
    top:0;
    left:0;
    background-color:rgba(0,0,0,.7);
    z-index:1001;
    opacity:0;
    visibility:hidden;
    transition:all .3s ease;
}

@media screen and (min-width: 1280px) {
    .menu-sidebar-overlay{
        z-index:998;
    }
}

.menu-sidebar-overlay.active{
     opacity:1;
    visibility:visible;
}

.menu-header-overlay{
    z-index:10;
}

.menu-sidebar-wrapper{
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.menu-sidebar-wrapper > h2{
    text-transform:uppercase;  
    font-weight:700;
    font-size:1.8rem;
    flex-shrink: 0;
    margin-bottom:25px;
    color:#fff;
}

.menu-sidebar-content{
   height: 100%;
   width:100%;
   overflow:auto;
}

.menu-sidebar-item{
    margin-top:25px;
    padding-top:25px;
    border-top:1px solid var(--black-color);
}

.menu-sidebar-item > h2{
    margin-bottom:20px;
    font-size:1.5rem;
    color:var(--primary-color);
    font-weight:700;
}

.menu-sidebar-item ul{
    margin:0;
}

.menu-sidebar-item:first-child{
    margin:0;
    padding:0;
    border:0;
}
.menu-sidebar-mobile .sub-menu{
    height:0;
    opacity:0;
    visibility:hidden;
}

.menu-sidebar-mobile .menu-open .sub-menu {
 height:auto;
  z-index: 10;
  opacity:1;
    visibility:visible;
}

.menu-sidebar-item-general ul{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    margin:0;
}

.menu-sidebar-item-general ul.menu > li{
    position:relative;
    width:100%;
    max-width:420px;
        margin-bottom: 20px;
    padding-bottom: 25px;
}

.menu-sidebar-item-general ul.menu > li:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 8px;
    height: 8px;
    background-color:#bc892b;
    border-radius: 9999px;
}

.menu-sidebar-item-general ul.menu > li:last-child{
    margin:0;
    padding:0;
}
.menu-sidebar-item-general ul.menu > li:last-child:after{
    display:none;
}

.menu-sidebar-item-general ul.menu > li > a{
       position: relative;
    font-size: 2.4rem;
    font-weight: 400;
    color: #fff!important;
    font-family: var(--secondary-font);
}



.menu-sidebar-close{
    position: absolute;
    top: 20px;
    right:20px;
    width: 40px;
    height: 40px;
    border-radius: 9999px;
    background-color: #6d6d6d;
}

.menu-sidebar-left .menu-sidebar-close{
    left:calc(100% + 25px);
}

.menu-sidebar-right .menu-sidebar-close{
    right:calc(100% + 25px);
}

.menu-sidebar-close:after{
     content:"\e905";
    display: inline-block;
    font-size: 1.8rem;
    font-family: 'omelet' !important;
    transition:var(--transition);
    color:var(--primary-color);
    text-indent:0;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    opacity:0;
    visibility:hidden;
    transition:all .3s ease;
        display: flex;
    align-items: center;
    justify-content: center;
}

.menu-sidebar.active .menu-sidebar-close:after{
     opacity:1;
    visibility:visible;
    transition-delay:.3s;
}

.menu-sidebar-logo{
    display:flex;
    margin-bottom:25px;
    margin-bottom: 10vmax;
}

.menu-sidebar-wrapper .search-form{
    margin-bottom:25px;
        height: 45px;
}

.menu-sidebar-wrapper .search-form form{
    width:100%;
}

.menu-sidebar-logo img{
    width:150px;
}

/* MAIN WRAPPER */

.main-page{
    padding-bottom:6vmax;
}

body.home .main-page{
    padding:0;
}

body.single-sesiones .main-page,
body.page-id-27 .main-page,
body.single-sesion .main-page,
body.single-product  .main-pag{
    padding-bottom:0;
}

/* BANNER */

.banner{
    padding:20px 0;
    position:relative;
    overflow:hidden;
}

@media screen and (min-width: 1024px) {
    .banner{
        padding:35px 0;
    }
}


.banner-title{
    position:relative;
}

.banner-title:after,
.banner-title:before{
    content:"";
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:100%;
    height:2px;
    width:100%;
    background-color:var(--text-color);
    z-index:-1;
    left:0;
}

.banner-title:before{
    left:100%;
}

.banner-item .col-full{
    width:auto;
    padding:0!important;
    margin:0!important;
    display: flex;
    align-items: flex-start;
}

.banner-item .storefront-breadcrumb{
    margin:0!important;
    padding:0!important;
}

.banner-title,
.banner-title .woocommerce-breadcrumb{
    font-size:3rem;
    font-weight: 500;
    line-height:1.2;
    font-family:var(--secondary-font);
}

.banner-title .breadcrumb-separator,
.banner-title .woocommerce-breadcrumb a{
    display:none!important;
}

.banner-title .woocommerce-breadcrumb{
    width:auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color:#fff;
    padding-right:20px;
    gap: 20px;
}

@media screen and (min-width: 1024px) {
    .banner-title .woocommerce-breadcrumb{
        min-width:320px;
    }
}

.banner-title .woocommerce-breadcrumb:after{
    content:"\e90c";
    display: inline-block;
    font-family: "omelet" !important;
    font-size: 2.1rem;
    line-height: 1;
    color: var(--text-color);
}

/* WELCOME */

.welcome{
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;
}

.welcome-slider{
    height: 100%;
    width:100%;
    position: absolute;
    top:0;
    left: 0;
    margin: 0 !important;
    transform:scale(1.1);
}

.welcome-slider .slick-slide,
.welcome-slider .slick-slide > div,
.welcome-slider .slick-list,
.welcome-slider .slick-track,
.welcome-slider-item,
.welcome-slider-image{
    height: 100%;
}

.welcome-slider-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.welcome-content{
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 9;
}

.welcome-content .container,
.welcome-content .welcome-text{
    height: 100%;
}

.welcome-content .welcome-text{
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 6vmax 0;
    pointer-events:none;
}

@media screen and (min-width: 1024px) {
    .welcome-content .welcome-text{
        padding: 100px 75px;
        justify-content: flex-end;
    }
}

.welcome-content .welcome-text h1{
    font-family: var(--secondary-font);
    font-size: 4.8rem;
    color:#fff;
    line-height: 1;
    pointer-events:all;
}

@media screen and (min-width: 1024px) {
    .welcome-content .welcome-text h1{
        font-size: 6.5rem;
    }
}

.welcome-content .welcome-text h1 span:last-of-type{
    color:var(--primary-color);
}

.welcome-dots{
    position: absolute;
    top:50%;
    transform: translateY(-50%);
    right: 15px;
}


.welcome-dots .slick-dots{
    margin: 0;
    width: auto;
    flex-flow: column;
}

.welcome-menu{
    position: absolute;
    left: 0;
    top:55%;
    transform: translateY(-50%) translateX(-8%);
    display: none;
}

@media screen and (min-width: 1024px) {
    .welcome-menu{
        display: block;
    }
}

.welcome-menu .menu{
    display: flex;
    flex-flow: column;
}

.welcome-menu .menu li a{
    padding: 12px;
    text-align: right;
    display: block;
    color:#fff;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 200;
    position: relative;
    z-index: 1;
}

.welcome-menu .menu li a:after{
    content:"";
    position: absolute;
    top:0;
    right: 0;
    width: 100vh;
    height: 100%;
    z-index: -1;
    background-color: var(--primary-color);
    transition:var(--transition);
    opacity: 0;
    visibility: hidden;
}

.welcome-menu .menu li a:hover:after,
.welcome-menu .menu li.current-menu-item a:after{
    opacity: 1;
    visibility: visible;
}

/* INTRO */

#intro{
    overflow: visible;
}

@media screen and (min-width: 1024px) {
    #intro{
        padding: 125px 0;
        min-height: 800px;
    }
}

.intro-wrap{
    display: flex;
    justify-content: flex-end;
    
}

.intro-content{
    width: 100%;
    max-width: 100%;
}

@media screen and (min-width: 580px) {
    .intro-content{
        max-width: 65%;
        margin: 0 auto;
        text-align: center;
    }
}

@media screen and (min-width: 1024px) {
    .intro-content{
        margin: 0;
        max-width: 40%;
        text-align: left;
    }
}

.intro-image{
    margin-bottom: 3vmax;
}

@media screen and (min-width: 580px) {
    .intro-image{
        display: none;
        margin: 0;
    }
}

@media screen and (min-width: 1024px) {
    .intro-image{
        position: absolute;
        left: 0;
        top:-40px;
        display: block;
    }
}

.intro-image img{
    max-width: 100%;
    height: auto;
    width: 100%;
    object-fit: contain;
}

@media screen and (min-width: 1280px) {
    .intro-image img{
        width: 95%;
    }
}

.intro-msj{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.intro-msj h2{
    font-size: 3.2rem;
    text-align: center;
    font-family: var(--secondary-font);
}

@media screen and (min-width: 1280px) {
    .intro-msj h2{
        font-size: 4.4rem;
    }
}
.intro-msj h2:before{
    content:"\e90c";
    display: block;
    font-family: "omelet" !important;
    font-size: 2.1rem;
    line-height: 1;
    color: var(--primary-color);
    text-align: center;
}

.intro-msj h2 span,
.intro-msj h2 strong{
    font-style: italic;
    color:var(--primary-color);
    font-weight:400;
}

/* PAQUETES */

#packages{
    background-color: #f8f5f0;
}

.packages-wrapper{
    position: relative;
    min-height: 320px;
    display: block;
}

@media screen and (min-width: 1024px) {
    .packages-wrapper{
        min-height: 520px;
    }
}

.packages-images{
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow:hidden;
}

.packages-images:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 38.4868%;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.65)), to(rgba(0, 0, 0, 0)));
    background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
    background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
    background: linear-gradient(to top, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
    display: block;
    z-index: 3;
    opacity:0;
    visibility:hidden;
    transition:var(--transition);
}

.packages-wrapper:hover .packages-images:before{
    opacity:1;
    visibility:visible;
}

.packages-images img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:var(--transition);
}

.packages-wrapper:hover .packages-images img{
    transform:scale(1.1);
}

.packages-item{
    padding: 0 10px;
}

@media screen and (min-width: 1024px) {
    .packages-item{
        padding: 0 32px;
    }
}

#packagesSlider{
    margin-bottom: 3vmax;
}

@media screen and (min-width: 1024px) {
    #packagesSlider{
        margin-bottom: 50px;
    }
}

#packagesSlider .slick-list{
    max-width: 100%;
    overflow: visible;
    margin: 0 -10px;
}

@media screen and (min-width: 580px) {
    #packagesSlider .slick-list{
        max-width: 65%;
        margin: 0 -32px;
        transform: translatex(40px);
    }
}

@media screen and (min-width: 1280px) {
    #packagesSlider .slick-list{
        max-width: 765px;
    }
}

.packages-content{
    opacity: 0;
    visibility: hidden;
    transition:var(--transition);
}

.slick-current .packages-content{
    opacity: 1;
    visibility: visible;
}

.packages-title{
    font-size: 3.2rem;
    font-family: var(--secondary-font);
    color: #fff;
    position: absolute;
    top:20px;
    left: 20px;
    display: flex;
    align-items: center;
}

@media screen and (min-width: 1024px) {
    .packages-title{
        font-size: 4.4rem;
        top:50px;
        left: 50px;
    }
}

.packages-title:before{
    content:"\e90c";
    display: inline-block;
    font-family: "omelet" !important;
    font-size: 2.1rem;
    line-height: 1;
    color: var(--primary-color);
    text-align: center;
    margin-right:10px;
}

.packages-link{
    position: absolute;
    bottom:20px;
    right: 20px;
    padding-top: 20px;
    z-index:4;
}

@media screen and (min-width: 1024px) {
    .packages-link{
        bottom:30px;
        right: 20px;
        padding-top: 35px;
    }
}

.packages-link:before{
    content:"";
    position: absolute;
    top:0;
    left: 0;
    background-color:#fff;
    height: 4px;
    width: 65px;
}

/* TESTIMONIAL */

@media screen and (min-width: 1024px) {
    #testimonials{
        min-height: 730px;
    }
}

.testimonial-bg{
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
}

.testimonial-bg img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial-wrap{
    display: flex;
    flex-flow: column;
    width: 100%;
    max-width: 100%;
    margin: 0;
    margin-left: auto;
    padding: 0;
}

@media screen and (min-width: 580px) {
    .testimonial-wrap{
        max-width: 45%;
    }
}

@media screen and (min-width: 1024px) {
    .testimonial-wrap{
        padding: 0 28px;
    }
}

.testimonial-slider{
    width: 100%;
    margin-bottom: 35px;
}

.testimonial-text{
    color: #fff;
    font-size: 1.6rem;
    line-height: 1.8;
    font-weight: 300;
}

.testimonial-text:before,
.testimonial-text:after{
    content:"\e906";
    font-family: 'omelet';
    display: block;
    font-size: 4.5rem;
    color:var(--primary-color);
}

.testimonial-text:after{
    margin: 0;
    margin-right: auto;
    transform: scaleX(-1);
    font-size: 4rem;
}

.testimonial-footer{
    margin-top: 10px;
}

.testimonial-title,
.testimonial-subtitle{
    font-family: var(--secondary-font);
}

.testimonial-title{
    font-size: 2.2rem;
    color:#fff;
}

.testimonial-subtitle{
    font-size: 1.8rem;
    color:var(--primary-color)
}

/* INSTAGRAM */

#instagram .section-title h2{
    color:#000;
}

.instagram-wrap{
    display: flex;
    flex-flow: column;
    align-items: center;
}

@media screen and (min-width: 1024px) {
    .instagram-wrap{
        flex-flow: row;
		gap: 80px;
    }
}

.instagram-content{
    width: 100%;
    margin-bottom: 3vmax;
}

@media screen and (min-width: 1024px) {
    .instagram-content{
        padding-left: 40px;
        margin: 0;
    }
}

.instagram-grid{
    width: 100%;
    flex-shrink: 0;
}

@media screen and (min-width: 1024px) {
    .instagram-grid{
        width: 565px;
    }
}

#sbi_images{
    margin: -12px;
    padding: 0!important;
}

#sb_instagram.sbi_col_2 #sbi_images .sbi_item{
    padding: 12px!important;
}

/* FOOTER */

.footer{
    background-color: var(--primary-color);
    padding-top: 65px;
    position: relative;
}

.footer:before{
    content:"";
    position: absolute;
    top:-10px;
    left: 0;
    height: 25px;
    width: 100%;
    background-image: url(../images/footer-shape.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.footer-wrap{
    display: flex;
    flex-flow: column;
}

@media screen and (min-width: 1024px) {
    .footer-wrap{
        flex-flow: row;
    }
}

.footer-logo {
    flex-shrink: 0;
    text-align: center;
    margin-bottom: 3vmax;
}

@media screen and (min-width: 1024px) {
    .footer-logo {
        margin: 0;
        margin-right: 85px;
        padding-top: 20px;
        ma
    }
}

.footer-logo a img{
    height: 80px;
    object-fit: contain;
}

.footer-social{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap:10px;
    margin-top: 40px;
}

.footer-social a span{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    background-color: #6d6d6d;
    border-radius: 9999px;
}

.footer-social a span:before{
    content: "";
    text-indent: 0;
    display: inline-block;
    font-family: "omelet" !important;
    font-size: 1.4rem;
    color: var(--primary-color);
    text-indent: 0;
    transition:var(--transition);
    text-indent: 0;
}

.footer-social a.-facebook  span:before{
    content: "\e907";
}

.footer-social a.-instagram  span:before{
    content: "\e908";
}

.footer-info{
    width: 100%;
}

.footer-top{
    display: flex;
    flex-flow: column;
    align-items: center;
    position: relative;
    padding: 0 20px
}

@media screen and (min-width: 1024px) {
    .footer-top{
        flex-flow: row;
    }
}

.footer-top > h2{
    font-size: 4.4rem;
    font-family: var(--secondary-font);
    flex-shrink: 0;
    margin-right: 70px;
    text-transform: uppercase;
    line-height: 1.1;
    display: none;
}

@media screen and (min-width: 1024px) {
    .footer-top > h2{
        display: block;
    }
}

.footer-menu{
    display: flex;
    flex-flow: column;
    justify-content: center;
    gap:25px;
    width: 100%;
}

@media screen and (min-width: 580px) {
    .footer-menu{
        flex-flow: row;
    }
}

@media screen and (min-width: 1024px) {
    .footer-menu{
        gap:65px;
        width: auto;
    }
}

.footer-menu-item a{
    color:#fff;
    font-weight: 200;
    text-transform: uppercase;
    margin-bottom: 16px;
    display: block;
    text-align: center;
}

@media screen and (min-width: 1024px) {
    .footer-menu-item a{
        text-align: left;
    }
}

.footer-reclamaciones{
    margin: 0 auto;
    margin-top: 3vmax;
}

@media screen and (min-width: 1024px) {
    .footer-reclamaciones{
        position: absolute;
        right: 20px;
        top:50%;
        transform: translateY(-50%);
        margin: 0;
    }
}

.footer-reclamaciones img{
    height: 80px;
}

.footer-disclaimer{
    padding: 20px 0;
    margin-top: 20px;
    border-top:1px solid #7a7a7a;
}

.footer-disclaimer p{
    color: #fff;
    letter-spacing: 1px;
    font-weight: 300;
    text-align: left;
}

@media screen and (min-width: 1024px) {
    .footer-disclaimer p{
        text-align: center;
    }
}

.logo-omelet:before{
    content: "\e909";
    text-indent: 0;
    display: inline-block;
    font-family: "omelet" !important;
    font-size: 1.2rem;
    color: #fff;
    text-indent: 0;
    transition:var(--transition);
    text-indent: 0;
    margin-left: 5px;
}

/* LISTINGS */

.listings-grid{
    display:flex;
    flex-wrap:wrap;
    margin:-10px;
}

@media screen and (min-width: 580px) {
    .listings-grid{
        margin:-30px;
    }
}

.listings-item{
    width:100%;
    padding:10px;
}
.listings-grid .products-grid{
	width: 100%;
}
@media screen and (min-width: 580px) {
    .listings-item{
        width:50%;
    }
}

@media screen and (min-width: 1280px) {
    .listings-item{
        padding:30px;
    }
}

.listings-image{
    position:relative;
    padding-bottom:65%;
    overflow:hidden;
}

.listings-image:before{
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 38.4868%;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.65)), to(rgba(0, 0, 0, 0)));
    background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
    background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
    background: linear-gradient(to top, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
    display: block;
    z-index: 3;
    opacity:0;
    visibility:hidden;
    transition:var(--transition);
    pointer-events:none;
}

.listings-item:hover .listings-image:before{
    opacity:1;
    visibility:visible;
}

.listings-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    position:absolute;
    top:0;
    left:0;
     transition:var(--transition);
}

.listings-item:hover .listings-image  img{
    transform:scale(1.1);
}

.listings-header .section-title{
    padding:3vmax 0;
}

@media screen and (min-width: 1024px) {
    .listings-header .section-title{
        padding:90px 0;
    }
}

.listings-header .section-title:after{
    content:"";
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    height:65px;
    background-color:var(--light-background);
}

.listings-header .section-title h2{
    margin-bottom:30px;
}

.listings-header .section-title p{
    max-width:500px;
    margin:0 auto;
}

.listings-info{
    padding:10px;
    padding-bottom:0;
}

@media screen and (min-width: 1024px) {
    .listings-info{
        padding:25px 35px;
        padding-bottom:0;
    }
}

.listings-title{
    font-size:1.9rem;
}

.listings-title:not(.-with-heart){
    text-transform:uppercase;
    letter-spacing:1px;
    font-weight:500;
}

.listings-title.-with-heart{
    font-size: 3.2rem;
    font-family: var(--secondary-font);
}

@media screen and (min-width: 1024px) {
    .listings-title.-with-heart{
        font-size: 4.4rem;
    }
}

.listings-title.-with-heart:before{
    content:"\e90c";
    display: inline-block;
    font-family: "omelet" !important;
    font-size: 2.1rem;
    line-height: 1;
    color: var(--primary-color);
    text-align: center;
    margin-right:10px;
}

.listings-meta{
    display:flex;
    margin-top:20px;
   flex-wrap: wrap;
	    margin-bottom: 40px;
}

.listings-meta-item{
    margin-right:10px;
    margin-top:10px;
    position:relative;
}

@media screen and (min-width: 480px) {
    .listings-meta-item{
        margin:0;
        margin-right:18px;
        padding-right:18px;
        position:relative;
    }
}

.listings-meta-item:after{
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    width: 1px;
    height: 80%;
    background-color:  var(--text-color);
    display:none;
}

@media screen and (min-width: 480px) {
    .listings-meta-item:after{
        display:block;
    }
}

@media screen and (min-width: 480px) {
    .listings-meta-item:last-child{
          margin:0;
          padding:0;
    }
}

.listings-meta-item:last-child:after{
  display:none;
}

.listings-meta-item span{
    display:flex;
    gap:12px;
    font-weight:300;
    white-space: nowrap;
}

.listings-meta-item > span:before{
    content:"";
    display: inline-block;
    font-size: 1.9rem;
    font-family: 'omelet' !important;
    transition:var(--transition);
    color:var(--primary-color);
}

.listings-meta-item.-date span:before {
  content: "\e904";
}

.listings-meta-item.-time span:before {
  content: "\e90a";
}

.listings-meta-item.-price > span:before{
  content: "\e90b";
}
.listings-meta-item.-price bdi{
	display: flex;
}
.listings-tag{
    position:absolute;
    right:15px;
    top:15px;
    padding:4px 10px;
    color:#fff;
    background-color:var(--primary-color);
    z-index: 9;
    font-weight:300;
}
.shop-intern-item .listings-tag {
    position: relative; 
    right: 0;
    top: 0;
    padding: 4px 10px;
    color: #fff;
    background-color: var(--primary-color);
    z-index: 9;
    font-weight: 300;
    margin-bottom: 10px;
    width: fit-content;
}
.listings-button{
    display:flex;
    justify-content:center;
    margin:6rem 0;
}

/* SESIONES INTERNA */



@media screen and (min-width: 1024px) {
    .sessions-intro{
        padding-bottom:65px;
    }
}

.sessions-intro-grid{
    display:flex;
    flex-flow:column;
    align-items:center;
}

@media screen and (min-width: 1024px) {
    .sessions-intro-grid{
        flex-flow:row;
    }
}

.sessions-intro-info,
.sessions-intro-image{
    width:100%;
}

@media screen and (min-width: 1024px) {
    .sessions-intro-info,
    .sessions-intro-image{
        width:50%;
    }
}

.sessions-intro-info{
    padding-bottom:3vmax;
}

@media screen and (min-width: 1024px) {
    .sessions-intro-info{
        padding:0 50px;
        padding-right:65px;
    }
}

.sessions-intro-info .section-title h2{
    margin-bottom:35px;
}

.sessions-intro-image img{
    width:100%;
    max-width:100%;
    height:auto;
}

#sessionsPackagesSlider .slick-list{
    margin:-10px;
}

@media screen and (min-width: 1024px) {
    #sessionsPackagesSlider .slick-list{
        margin:-23px;
    }
}

.session-packages{
    padding-bottom:0;
}

.session-packages .container{
    z-index:9;
}

.session-packages:after{
    content:"";
    position:absolute;
    bottom:0;
    width:100%;
    height:90px;
    background-color:#fff;
    z-index:1;
}

.sessions-packages-item{
    padding:10px;
}

@media screen and (min-width: 1024px) {
    .sessions-packages-item{
        padding:23px;
    }
}

.sessions-packages-arrows{
    margin-bottom:38px;
}

.sessions-packages-wrapper{
    padding:36px;
    background-color:#fff;
    min-height:660px;
    border:1px solid var(--primary-color);
    position:relative;
        padding-bottom: 162px;
}

.sessions-packages-button{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:90px;
    background-color:var(--primary-color);
    display:flex;
    align-items:center;
    justify-content:center;
}

.sessions-packages-button span{
    font-size:1.9rem;
    color:#fff;
    text-transform:uppercase;
   
}

.sessions-packages-button span:after{
    content:"\e902";
    display: inline-block;
    font-size: 1.2rem;
    font-family: 'omelet' !important;
    margin-left: 10px;
    transition:var(--transition);
    color:#fff;
    transform: rotate(-45deg);
}

.sessions-packages-button:hover span::after{
    transform: rotate(0);
}

.sessions-packages-title{
    font-size: 3.2rem;
    margin-bottom: 3vmax;
    line-height: 1.1;
    font-family: var(--secondary-font);
    font-weight: 500;
    display:flex;
    flex-flow:column;
    align-items:center;
    color:#000;
}

@media screen and (min-width: 1024px) {
    .sessions-packages-title{
        font-size: 4.4rem;
        margin-bottom: 40px;
    }
}

.sessions-packages-title:before{
    content:"\e90c";
    display: block;
    font-family: "omelet" !important;
    font-size: 2.1rem;
    line-height: 1;
    color: var(--primary-color);
    margin-right: 10px;
}

.sessions-packages-info li {
    margin-bottom: 5px;
    padding-bottom: 20px;
    line-height: 1.5;
    text-align: center;
    position: relative;
    font-weight: 300;
}

.sessions-packages-info li:after{
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    margin:0 auto;
    width:10px;
    height:10px;
    background-color:var(--primary-color);
    border-radius:9999px;
}

.sessions-packages-footer{
    text-align:center;
}

.sessions-packages-price{
    
    font-size:2.2rem;
    font-weight:700;
}

.sessions-packages-gallery .gallery{
    display:flex;
    flex-wrap:wrap;
}

.sessions-packages-gallery .gallery-item {
  flex-basis: 100%;
  cursor:pointer;
}

.sessions-packages-gallery .gallery-item:nth-child(4n-3),
.sessions-packages-gallery .gallery-item:nth-child(4n) {
  flex-basis: 100%;
}

.sessions-packages-gallery .gallery-item:nth-child(4n-2),
.sessions-packages-gallery .gallery-item:nth-child(4n-1) {
  flex-basis: 100%;
}

@media screen and (min-width: 600px) {
    .sessions-packages-gallery .gallery-item {
      flex-basis: 30%;
      cursor:pointer;
    }
    
    .sessions-packages-gallery .gallery-item:nth-child(4n-3),
    .sessions-packages-gallery .gallery-item:nth-child(4n) {
      flex-basis: 70%;
    }
    
    .sessions-packages-gallery .gallery-item:nth-child(4n-2),
    .sessions-packages-gallery .gallery-item:nth-child(4n-1) {
      flex-basis: 30%;
    }
}

.sessions-packages-gallery .gallery-item-image{
    position:relative;
    height:440px;
}

.sessions-packages-gallery .gallery-item-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    position:absolute;
    top:0;
    left:0;
}

.sessions-packages-msj .intro-msj h2:before{
    display:none;   
}

.sl-wrapper .sl-close, .sl-wrapper .sl-navigation button, .sl-wrapper .sl-counter {
    color: #fff !important;
}

.sl-overlay {
    background-color: #000 !important;
}

/* ABOUT US */

.about-us-intro-grid{
    display:flex;
    flex-flow:column;
}

@media screen and (min-width: 1024px) {
    .about-us-intro-grid{
        flex-flow:row;
    }
}

.about-us-intro-image{
    width:100%;
    flex-shrink:0;
	position:relative;
	margin-bottom:3vmax;
}

@media screen and (min-width: 1024px) {
    .about-us-intro-image{
        max-width:665px;
		margin-bottom:65px;
    }
}

.about-us-intro-image img{
	object-fit:contain;
	width:100%;
}

@media screen and (min-width: 1024px) {
    .about-us-intro-image img:nth-child(1){
		width:450px;
		height:520px;
	}
}

.about-us-intro-image img:nth-child(2){
    width:195px;
	height:290px;
	position: absolute;
    top: 50px;
    right: 0;
	display:none;
}

.about-us-intro-image img:nth-child(3){
    width:195px;
	height:225px;
	position: absolute;
    bottom: -65px;
    right: 0;
	display:none;
}

@media screen and (min-width: 1024px) {
    .about-us-intro-image img:nth-child(2),
	.about-us-intro-image img:nth-child(3){
		display:block;
	}
}

.about-us-intro-content{
    padding-bottom:45px;
}


@media screen and (min-width: 1024px) {
    .about-us-intro-content{
        padding:0;
        padding-left:45px;
    }
}

.about-us-studio .section-title{
    margin-bottom:4vmax;
}

@media screen and (min-width: 1024px) {
    .about-us-studio .section-title{
        margin-bottom:100px;
    }
}

.about-us-studio-arrow{
    margin-top:45px;
}

.about-us-studio .section-title p{
    max-width:520px;
    margin: 0 auto;
}

#studioSlider .slick-list{
    margin:-24px;
}

.about-us-studio-slider-item{
    padding:24px;
}

.about-us-studio-slider-wrapper{
    position:relative;
    display:block;
    
}

.about-us-studio-slider-wrapper:after{
    content:"";
    display:block;
    padding-bottom: 100%;
}

.about-us-studio-slider-wrapper img{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

/* CONTACT */

.contact-info-grid{
    display:flex;
    flex-flow:column;
}

@media screen and (min-width: 1024px) {
    .contact-info-grid{
        flex-flow:row;
    }
}

.contact-info-form{
    width:100%;
    flex-shrink:0;
    margin-bottom:3vmax;
}

@media screen and (min-width: 1024px) {
    .contact-info-form{
        width:595px;
        margin:0;
        padding-right:120px;
    }
}

.contact-info-image{
    width:100%;
}

.contact-info-image img{
    width:100%;
}

@media screen and (min-width: 1024px) {
    .contact-info-form .section-title h2{
        margin-bottom:40px;
    }
}

.loader{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    display:flex;
    align-items: center;
    justify-content: center;
    text-indent:0;
    font-size:0;
    opacity:0;
    visibility:hidden;
}

.loader.active{
     opacity:1;
    visibility:visible;
}

.loader:before {
    content: "";
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 10px solid #ccc;
    border-top-color: var(--primary-color);
    border-width: 5px;
    -webkit-animation: spin 1s infinite linear;
    animation: spin 1s infinite linear;
    z-index: 2;
    display: block;
}

@-webkit-keyframes spin{
    0%{
        -webkit-transform:rotate(0deg);
        transform:rotate(0deg)
    }
    to{
        -webkit-transform:rotate(360deg);
        transform:rotate(360deg)
    }
}
@keyframes spin{
    0%{
        -webkit-transform:rotate(0deg);
        transform:rotate(0deg)
    }
    to{
        -webkit-transform:rotate(360deg);
        transform:rotate(360deg)
    }
}

/* TALLER SINGLE */

.taller-wrap{
    display:flex;
    flex-flow:column;
}

@media screen and (min-width: 1024px) {
    .taller-wrap{
        flex-flow:row;
    }

}

.taller-gallery{
    width:100%;
    flex-shrink:0;
    margin-bottom:3vmax;
}

@media screen and (min-width: 1024px) {
    .taller-gallery{
        width:700px;
    }
}

.taller-gallery .product-carousel-slider-wrapper{
    display:flex;
}

.taller-info{
    width:100%;
}

@media screen and (min-width: 1024px) {
    .taller-info{
        width:100%;
        padding:0 60px;
        padding-top:35px;
    }
}


.taller-info .listings-info{
    padding:0;
}

.taller-info .listings-tag{
    position:relative;
    display: inline-block;
    top:0;
    left:0;
    margin-bottom:15px
}

.taller-info .listings-title{
    font-size:1.8rem;
}

.listing-text{
    margin-top:45px;
    padding-bottom: 40px;
    margin-bottom: 35px;
    position:relative;
}

.listing-text:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 65px;
    height: 4px;
    background-color: #6d6d6d;
}

.listing-text p{
    line-height:2;
    font-weight:300;
    text-align:justify
}

/* MODAL */

.custom_modal {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(122, 122, 122, 0.8)!important;
    visibility: hidden;
    z-index: 1002;
    opacity: 0;
    position: fixed;
    overflow: scroll;
    display: flex;
    align-items: center;
    justify-content: center;
    align-items: center;
}

.custom_modal.active_modal {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity .4s;
    -o-transition: opacity .4s;
    transition: opacity .4s;
    overflow:hidden;
    overflow-y: auto;
}

.modal_cm{
    position: fixed;
    z-index: 2;
    /*top: 0;*/
    /*left: 0;*/
    /*margin:0 auto;*/
    max-width: 820px;
    min-height:auto;
    width: 90%!important;
    background-color: #fff;
    height: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    box-shadow:var(--box-shadow);
    transform: translateY(20%);
    transition: all 0.3s;
    padding:25px;
}

@media screen and (min-width: 1280px){
    .modal_cm{
      
        padding:45px;
    }
}

.active_modal .modal_cm{
        transform: translateY(0);
}

.content_md,
.body_md{
    height:100%;
}

.close.close-modal{
    width: 40px;
    height: 40px;
    transform: none;
    filter: none;
    top: -15px;
    right: -15px;
    opacity: 1;
    position: absolute;
    text-indent: -99999px;
    cursor: pointer;
    box-shadow: none;
    display: flex;
    align-items:center;
    justify-content:center;
	z-index: 999;
	background-color:#6d6d6d;
	border-radius:9999px;
}

@media screen and (min-width: 1280px){
    .close.close-modal{
        top: 40px;
        right: 40px;
        
    }
}

.close.close-modal span{
    text-indent:0;
}

.close.close-modal span:after{
    content:"\e905";
    display: inline-block;
    font-size: 1.8rem;
    font-family: 'omelet' !important;
    transition:var(--transition);
    color:var(--primary-color);
    text-indent:0;
    transform: translateY(2px);
}


/* FAQ */



@media screen and (min-width: 1024px){
    #modal-faq .modal-cm{
          min-height:490px;
    }
}

#modal-faq .section-title h2{
    margin-bottom:30px;
}

#modal-faq .section-title h2:before{
    display:none;
}

#modal-faq .accordion{
    width: 100%;
    border-radius: 0;
    background-color: #fFF;
    padding: 0;
    margin-bottom: 0;
    font-size:1.6rem;
    color: var(--text-color);
}

#modal-faq .accordion-item{
    border-bottom:1px solid var(--text-color);
    padding: 18px 0;
}

#modal-faq .accordion-header{
    padding: 0;
    margin: 0;
    background: #fff;
    color: var(--text-color);
    cursor: pointer;
    font-size: 2rem;
    text-transform: unset;
    font-family: var(--secondary-font);
    letter-spacing: 0;
    position:relative;
    padding-right:45px;
}

#modal-faq .accordion-header:before{
    content:"\e90c";
    display: inline-block;
    font-family: "omelet" !important;
    font-size: 1.6rem;
    line-height: 1;
    color: var(--primary-color);
    margin-right: 10px;
}

#modal-faq .accordion-header:after{
    content:"\e900";
    font-family: "omelet" !important;
    font-size: 1rem;
    position:absolute;
    top:50%;
    right:15px;
    transform:translateY(-50%);
    color: var(--primary-color);
    transition:var(--transition);
}

#modal-faq .accordion-item.active .accordion-header:after{
     transform:translateY(-50%) scaley(-1);
}

#modal-faq .accordion-body{
    font-size:1.6rem;
    margin-top:15px;
    line-height:1.8;
    color: var(--text-color);
    background: #fff;
    font-weight:300;
}


@media screen and (min-width: 1024px){

    .accordion-scroll-wrap{
        height:280px;
        overflow:hidden;
        overflow-y:auto;
    }
    
    .accordion-scroll{
        padding-right:60px;
    }
}

/* Firefox */
.accordion-scroll-wrap{
  scrollbar-width: thin;
  scrollbar-color: var(--primary-color) var(--light-background);
}

/* Chrome, Edge and Safari */
.accordion-scroll-wrap::-webkit-scrollbar {
  width: 4px;
  width: 4px;
}
.accordion-scroll-wrap::-webkit-scrollbar-track {
  border-radius: 5px;
  background-color: var(--light-background);
}

.accordion-scroll-wrap::-webkit-scrollbar-track:hover {
  background-color: var(--light-background);
}

.accordion-scroll-wrap::-webkit-scrollbar-track:active {
  background-color: var(--light-background);
}

.accordion-scroll-wrap::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background-color: var(--primary-color);
}

/* MODAL POPUP */

#modal-popup .popup-form-wrap{
    display:flex;
    justify-content:flex-end;
    position:relative;
}

#modal-popup .form-group-button:before{
    display:none;
}

.popup-form-image{
    position:absolute;
    left:-100px;
    top:50%;
    transform:translateY(-50%);
    width:422px;
    height:380px;
    display:none;
}

@media screen and (min-width: 1280px){
   .popup-form-image{
        display:block
    }
}

.popup-form-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

@media screen and (min-width: 1280px){
    #modal-popup .popup-form{
        max-width:365px;
    }
}

.popup-form-title h2{
    font-size:1.8rem;
    margin-bottom:10px;
    letter-spacing:2px;
}

.popup-form-title p{
    margin-bottom:20px;
}

.popup-form-title p{
    line-height:1.8;
    text-align:justify;
    font-weight:300;
}

#modal-popup .popup-form .form-group-button{
    margin-top: 0px;
    padding-top: 0;
    margin-top:20px
}


#modal-popup .popup-form .form-control {
    border-bottom: 1px solid var(--text-color);
}

@media screen and (min-width: 1280px){
    #modal-popup .modal_cm {
        padding-top: 65px;
        padding-bottom: 65px;
    }
}

/* ------------ Legales ---------------- */

/*.page-legal{*/
/*    margin:4rem 0;*/
/*}*/

.page-legal .section-title{
    margin-bottom:40px;
}

.page-legal .site-section-header h1{
    margin: 0;
    font-size: 3rem;
    text-align: center;
    font-weight: 700;
    margin-bottom:45px;
    color:var(--primary-color);
}

.page-legal:not(.lista-deseos) .container{
    max-width:980px!important;
}

.text-legal{
    font-weight: 400;
    line-height:1.8;
    text-align: justify;
    font-size: 1.5rem;
}

.text-legal h1,
.text-legal h2,
.text-legal h3,
.text-legal h4,
.text-legal h5{
    margin:20px 0;
    font-size: 2rem;
   color: var(--primary-color)!important;
    font-weight: 700!important;
    line-height: 1.2!important;
}

.text-legal h1 strong,
.text-legal h2 strong,
.text-legal h3 strong,
.text-legal h4 strong,
.text-legal h5 strong{
    font-weight: 700!important;
}

.text-legal ol,
.text-legal ul{
    margin-left:16px!important;
    list-style:disc!important;
}

.text-legal ol li,
.text-legal ul li{
    margin-bottom:10px;
    list-style: disc;
}

.text-legal a{
    font-weight:700;
    text-decoration: underline;
     color: var(--primary-color)!important;
}

.form-group-wrapper h2{
    margin-bottom: 15px;
    font-size: 2rem;
    font-weight: 400;
    color: var(--primary-color)!important;
    font-family:var(--secondary-font);
}

.libro-reclamaciones-form{
    position:relative;
}

.libro-reclamaciones-form .wpcf7-form-control-wrap br{
    display:none!Important;
}

.libro-reclamaciones-form .form-row{
    margin:0;
    display: grid;
    grid-template-columns: repeat(1,1fr);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom:20px;
    width:100%;
}

@media screen and (min-width : 580px) {
    .libro-reclamaciones-form .form-row{
        grid-template-columns: repeat(2,1fr);
        grid-column-gap: 25px;
        grid-row-gap: 25px;
    }
}
@media screen and (min-width: 980px) {

}

@media screen and (min-width: 1280px) {
    
}


.libro-reclamaciones-form .form-row .form-group{
    margin: 0;
}

.libro-reclamaciones-form .form-group-wrapper{
    margin-bottom:30px;
    font-size: 1.8rem;
    font-weight:300;
}

.libro-reclamaciones-form .form-group-wrapper-last{
    margin:0;
}

.libro-reclamaciones-form br{
    display:none;
}

.libro-reclamaciones-form .form-group br{
    display:none!important;
}

.libro-reclamaciones-form .small,
.libro-reclamaciones-form small{
   
    font-size: 12px;
    margin-top: 10px;
    display: block;
}

.libro-reclamaciones-form .wpcf7-list-item-label{
    margin:0;
    
}

.libro-reclamaciones-form input::-webkit-outer-spin-button,
.libro-reclamaciones-form input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.libro-reclamaciones-form input[type=number] {
  -moz-appearance: textfield;
}


.form-group-check span{
    margin:0;
    margin-bottom:10px;
    font-size:1.6rem;
    font-weight:400;
}

@media screen and (min-width : 580px) {
    .form-group-check span{
        margin:0;
    }
}
@media screen and (min-width: 980px) {

}

@media screen and (min-width: 1280px) {
    
}

.form-group-check span:last-child{
    margin:0;
}

.form-group-check .wpcf7-list-item label{
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    margin:0;
    margin-right: 40px;
}

.form-group-check .wpcf7-list-item input{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width:21px!important;
    height:21px!important;
    padding:0;
    flex-shrink: 0;
    position:relative;
    margin-right:10px!important;
    cursor:pointer;
}

.form-group-check .wpcf7-list-item input::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    transition:all .3s ease;
    background-size: 75%;
    background-repeat: no-repeat;
    background-position: center;
    background-color:#fff;
    border: 1px solid #808080;
}

.form-group-check .wpcf7-list-item input:checked::before{
    background-image: url(../images/checked-white.svg);
    background-color:var(--primary-color);
    border-color:var(--primary-color);
   
}

.libro-reclamaciones-form .wpcf7-response-output{
    margin:0px!important;
    margin-top:20px!important;
}

.libro-reclamaciones-form  form.wpcf7-form {
    position:relative;
    margin:0!important;
    display:block;
}

.libro-reclamaciones-form  form.submitting:after{
    content:"";
    width:100%;
    height:100%;
    background-color:rgba(255,255,255,.8);
    position: absolute;
    top:0;
    left:0;
    background-image: url(../images/loader.gif);
    background-size: 20%;
    background-repeat: no-repeat;
    background-position: center;
    z-index:2;
}

.libro-reclamaciones-form  form.wpcf7-form .ajax-loader{
    display:none!important;
}

.libro-reclamaciones-form .form-group-info{
    display:flex;
    flex-direction:column;
}


.libro-reclamaciones-form .form-group-info span{
    margin-bottom:10px;
}


.libro-reclamaciones-form .form-group-info span:last-child{
    margin:0;
}

.form-group-wrapper-title{
    height: 26px!important;
    position: relative!important;
    overflow: hidden!important;
    margin-bottom: 15px;
}

.form-group-wrapper-title > div{
    transform: none!important;
    background-color: #fff!important;
    margin: 0!important;
    padding: 0!important;
    height: 100%!important;
    position:absolute;
    top:0;
    transition:none!important;
    opacity:1;
    visibility:visible;
}

.form-group-wrapper-title > div h2{
    margin:0;
}
.form-group-wrapper-title > div.wpcf7cf-hidden{
    opacity:0;
    visibility:hidden;
}



.libro-reclamaciones-form  .form-group > label > span,
.libro-reclamaciones-form  .form-group > [data-class="wpcf7cf_group"] > label > span{
    width:auto;
    margin-left:2px;
    color:#ffc6c4;
}

/*.libro-reclamaciones-form .form-group .wpcf7-not-valid {*/
/*    border: 1px solid #f14040!important;*/
/*}*/

.libro-reclamaciones-form .wpcf7-not-valid-tip{
    display:none!important;
}

#tipo_respuesta{
    height:65px;
    position:relative;
}
#tipo_respuesta [data-class="wpcf7cf_group"]{
    position:absolute;
    top:0;
    height:100%!Important;
    width:100%;
    margin:0!important;
    padding:0!important;
    opacity:1;
    visibility:visible;
    background-color: #fff!important;
}
 
#tipo_respuesta [data-class="wpcf7cf_group"].wpcf7cf-hidden{
    opacity:0;
    visibility:hidden;
}

.libro-reclamaciones-info{
    margin: 20px 0;
    line-height: 1.5;
    font-size: 1.8rem;
    text-align: justify;
    font-weight:300;
}

.libro-reclamaciones-info p{
    margin-bottom:20px;
    line-height: 1.4;
}

.libro-reclamaciones-info p span{
    color:#ffc6c4;
}

.libro-reclamaciones-info br{
    display:block;
}

.libro-reclamaciones-section{
    display: flex;
    justify-content: center;
    margin-top: 15px;
}

.libro-reclamaciones-section img{
     max-width: 125px;
    border-radius: 8px;
    background-color:#fff;
    padding: 4px;
}

.page-info-wrapper{
    width:100%;
    max-width:100%;
    margin:0 auto;
    text-align: justify;
}

@media screen and (min-width: 580px) {
    .page-info-wrapper{
        max-width:720px;
    }

}

@media screen and (min-width: 980px) {
    
}

@media screen and (min-width: 1280px) {
    .page-info-wrapper{
        max-width:960px;
    }

}

.text-legal-tabs-single .text-legal-tabs-content{
    padding:0;
}

.text-legal-tabs-content .card,
.text-legal-tabs-content .card-header{
    padding:0;
    background-color:transparent;
    border:0;
    box-shadow:none;
    color:#565656;
    font-size:1.4rem;
    font-weight:400;
}

.text-legal-tabs-content .card{
    margin-bottom:20px;
    padding:25px;
    background-color:#fff;
    box-shadow:0 2px 20px 0 rgb(31 38 135 / 7%);
    border-radius:12px;
}

.text-legal-tabs-content .card:last-child{
    border:0;
}

.text-legal-tabs-content .card-header span{
    font-weight:500;
    cursor: pointer;
    position:relative;
    transition:all .3s ease;
    padding-right:30px;
    width: 100%;
    display: block;
    /*text-transform: uppercase;*/
    /*letter-spacing: 1px;*/
    font-size:1.5rem;
}

.text-legal-tabs-content .card-header span:after{
    content:"";
    width:12px;
    height: 12px;
    position: absolute;
    top:4px;
    right:0;
    background-image: url(../images/select-arrow.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    transition:all .3s ease;
}

.text-legal-tabs-content .card-header span[aria-expanded="true"]:after{
    transform:scaley(-1);
    
}

.text-legal-tabs-content .card-header span[aria-expanded="false"]:after{
    transform:scaley(1);
}

.text-legal-tabs-content .card-body{
    padding:0;
    border-top: 1px solid #f6f6f6;
    padding-top:25px;
    margin-top:25px;
}

.text-legal-tabs-content .card-body .card-body-content{
    display:flex;
    align-items:center;
    flex-direction:column;
    max-width:680px;
    margin:0 auto;
}

@media screen and (min-width : 580px) {
  .text-legal-tabs-content .card-body .card-body-content{
        flex-direction:row;
        max-width:100%;
    }
}
@media screen and (min-width: 980px) {
    
}

@media screen and (min-width: 1280px) {
   
}

.text-legal-tabs-content .card-body .card-body-content-image{
    flex-shrink:0;
    position:relative;
}

.text-legal-tabs-content .card-body .card-body-content-image:after{
    content:"";
    position:absolute;
    right: 24px;
    top:50%;
    transform:translateY(-50%)scalex(-1);
    width: 150px;
    height: 210px;
    background-image: url(../images/adorno.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    z-index:-1;
}

.text-legal-tabs-content .card-body .card-body-content-image img{
    width:100%;
    margin:0 auto;
    margin-bottom:25px;
}

@media screen and (min-width : 580px) {
  .text-legal-tabs-content .card-body .card-body-content-image img{
        width:200px;
        margin:0;
        margin-right:150px;
    }
}
@media screen and (min-width: 980px) {
    
}

@media screen and (min-width: 1280px) {
   .text-legal-tabs-content .card-body .card-body-content-image img{
        width:340px;
    }
}

.text-legal-tabs-content .card-body .card-body-content-info{
    width:100%;
}


.text-legal-tabs-content .card-body .card-body-content-info p{
    margin-bottom:20px;
}

.text-legal-tabs-content .card-body .card-body-content-info ul li{
    margin-bottom:20px;
    padding-left:30px;
    position:relative;
}

.text-legal-tabs-content .card-body .card-body-content-info ul li:last-child{
    margin:0;
}

.text-legal-tabs-content .card-body .card-body-content-info ul li:after{
    content:"";
    position:absolute;
    top:2px;
    left:0;
    width:16px;
    height:16px;
    background-image: url(../images/check-list-full.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

/* -------------- --------------------- */
/* ----------Animaciones --- -----------*/
/* -------------- --------------------- */

[data-animation-direction]{
    transition: opacity 2s ease-out .1s, 2s transform 1s ease-out ;
}

[data-animation-direction="up"]{
    transform: translate(0%, 20px) matrix(1, 0, 0, 1, 0, 0);
    opacity: 0;
}

[data-animation-direction="left"]{
    transform: translate(-20px, 0) matrix(1, 0, 0, 1, 0, 0);
    opacity: 0;
}


[data-animation-direction="right"]{
    transform: translate(20px, 0) matrix(1, 0, 0, 1, 0, 0);
    opacity: 0;
    visibility: hidden;
}


[data-animation="true"] [data-animation-direction="up"],
[data-animation="true"] [data-animation-direction="right"],
[data-animation="true"] [data-animation-direction="left"]{
    transform: matrix(1, 0, 0, 1, 0, 0);
    opacity: 1;
    visibility: visible;
}


.content-presentacion{
	padding-bottom: 40px;
    margin-bottom: 35px;
    position: relative;
}
.content-presentacion p{
	padding-bottom: 0!important;
	margin-bottom: 25px!important;
}
.content-presentacion p:after{
	display:none;
}
.content-presentacion:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 65px;
    height: 4px;
    background-color: #6d6d6d;
}
.d-none{
	display: none;
}