/*
 Theme Name: Botainca Day Spa
 Version: 1.0.0
*/

/* =============================================== */
/* GENERAL */
/* =============================================== */


*{
    box-sizing: border-box;
}

body{
    font-family: 'Crimson Text', sans-serif;
    font-size: 17px;
    line-height:1.6;
    font-weight: 400;
    color: #707070;
    background-color: #fbfbfb;
}

p{
    margin-bottom: 20px;
}

a{
    color: #98c6d8;
}

i,em{
    font-style: italic;
}

strong{ font-weight: 700; }

ul, ol{
    margin-bottom: 12px;
    padding-inline-start: 40px;
}
    li{
        list-style-type: disc;   
    }

h1,h2,h3,h4,h5,h6{
    font-family: 'Lato', sans-serif;
    letter-spacing: 3px;
    font-weight: 700;
    text-transform: uppercase;
    color: #333333;
}

h1.page-title{
    margin:30px 0 50px;
    letter-spacing: 0.3em;
    font-size: 26px;
    line-height: 1.4;
    color: #333333;
    text-align: center;
}
h2{ font-size: 24px; }


button,
a.btn{
    display: inline-block;
    margin-right:5px;
    padding: 5px 20px 6px;
    color: #fff;
    font-family: 'Montserrat',sans-serif;
    font-size: 16px;
    line-height: 25px;
    font-weight: 300;
    border-radius: 3px;
    background-color: #00aef1;
    transition: all .2s;
}

.section{
    width: 100%;
}

.container{
    display: block;
    max-width: 100%;
    width: 1200px;
    margin: 0 auto;
    padding: 0 15px
}
.container.flex-row{
    display: flex;
    flex-direction: row;
}

.page-content{
    background-color: ;
}

.sidebar-cart-btn{}
    .sidebar-cart-btn h3{ font-size: 18px; }
    .sidebar-cart-btn .fancy-line-small{ margin-bottom: 25px; }
    .sidebar-cart-btn a.btn{
        background-color: initial;
        border: 2px solid #333333;
        border-radius: 0;
        color: #333333;
        font-weight: 500;
    }



.wp-block-gallery{
    margin-bottom: 30px;
}
.wp-block-gallery.has-nested-images figure.wp-block-image>a{
    max-height: 350px;
}

iframe{ max-width: 100%; }

.featured-image{
    display: inline-block;
    width: 100%;
    height: 450px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


/* YouTube Player */
.youtube-player {
    position: relative;
    padding-bottom: 56.23%;
    /* Use 75% for 4:3 videos */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
    margin: 5px;
}

.youtube-player iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    background: transparent;
}

.youtube-player img {
    bottom: 0;
    display: block;
    left: 0;
    margin: auto;
    max-width: 100%;
    width: 100%;
    position: absolute;
    right: 0;
    top: 0;
    border: none;
    height: auto;
    cursor: pointer;
    -webkit-transition: .4s all;
    -moz-transition: .4s all;
    transition: .4s all;
}

.youtube-player img:hover {
    -webkit-filter: brightness(75%);
}

.youtube-player .play {
    height: 72px;
    width: 72px;
    left: 50%;
    top: 50%;
    margin-left: -36px;
    margin-top: -36px;
    position: absolute;
    background: url("//i.imgur.com/TxzC70f.png") no-repeat;
    cursor: pointer;
}

#cff .cff-masonry-posts, #cff .cff-posts-wrap, .cff-wrapper-ctn{
    height: initial!important;
}


.CTAButton a{
    display: inline-block;
    margin-top: 5px;
    padding: 5px 20px 6px;
    text-align: center;
    color: #fff;
    font-family: 'Montserrat',sans-serif;
    font-size: 16px;
    line-height: 25px;
    font-weight: 300;
    color: #FFF;
    background: #633d18;
    border-radius: 3px;
    transition: all .2s;
}

.grecaptcha-badge{ display: none; }

/* =============================================== */
/* HEADER */
/* =============================================== */
header{
    position: relative;
    display: block;
    padding: 35px 0 15px;
    background-color: #FFF;
    /*border-bottom: 1px solid #fbfbfb;*/
}
    .header-top{
        display: flex;
        flex-direction: row;
    }
        .header-top .logo{
            display: flex;
            flex-direction: column;
            width: 350px;
            margin-right:25px;
        }
            .header-top .logo a{
                display: inline-block;
            }
                .header-top .logo img{
                    width: 100%;
                }
        .header-top .search{
            display: flex;
            flex-direction: column;
            width: 255px;
            margin-left: auto;
            margin-right:5px;
        }
            .header-top .search .header-search{
                display:inline-block;
                width:100%;
            }
                .header-top .search form{
                    position:relative;
                    display: flex;
                    width: 100%;
                }
                    .header-top .search form input{
                        width:100%;
                        padding:6px 5px;
                        font-family: 'Crimson Text', serif;
                        font-size:20px;
                        border: 1px solid #d5d5d5;
                    }
                    .header-top .search form button{
                        position: absolute;
                        right:0;
                        top:calc(50% - 12px);
                        background:none;
                        border:0;
                        cursor: pointer;
                        z-index:2;
                    }
                        .header-top .search form button i{
                            font-size: 21px;
                            color: #707070;
                        }
        .header-top .header-social{
            display: flex;
            flex-direction: column;
            text-align: center;
            width:390px;
        }
            .header-top .header-social ul{
                display: flex;
                justify-content: center;
                height: 40px;
                padding:6px 0;
                border: 1px solid #d5d5d5;
                text-align: center;
            }
                .header-top .header-social ul li{
                    list-style-type: none;
                    display: inline-block;
                    padding: 0 8px;
                    border-right: 1px solid #d5d5d5;
                }
                .header-top .header-social ul li:last-child{
                    border: none;
                }
                    .header-top .header-social ul li a{
                        font-family: 'Crimson Text', serif;
                        font-size:20px;
                        line-height: 1;
                        color: #98c6d8;
                        transition: all .2s;
                    }
                    .header-top .header-social ul li a:hover{ opacity: .7; }
                        .header-top .header-social ul li a i{
                            
                        }
            .header-top .header-social .buttons{
                display: flex;
                align-items:center;
                margin-top: 5px;
            }
                .header-top .header-social .buttons a.btn{
                    display: inline-block;
                    float: left;
                    margin-right:5px;
                    padding: 5px 20px 6px;
                    color: #fff;
                    font-family: 'Montserrat',sans-serif;
                    font-size: 16px;
                    line-height: 25px;
                    font-weight: 300;
                    border-radius: 3px;
                    background-color: #00aef1;
                    transition: all .2s;
                }
                .header-top .header-social .buttons a.btn.brown{
                    background-color: #633d18;
                }
                .cart-contents{
                    display: inline-block;
                    position: relative;
                    color: #98c6d8;
                }
                .cart-contents:before{
                    font-family: WooCommerce;
                    content: "\e01d";
                    font-size: 28px;
                    margin-top: 10px;
                    font-style: normal;
                    font-weight: 400;
                    padding-right: 5px;
                    vertical-align: bottom;
                }
                    .cart-contents-count{
                        position: absolute;
                        top: 4px;
                        right: 1px;
                        padding: 5px 7px;
                        border-radius: 50%;
                        color: #fff;
                        background-color: #98c6d8;
                        font-family: Arial, Helvetica, sans-serif;
                        font-size: 10px;
                        font-weight: bold;
                        line-height: 1;
                    }
    .header-bottom{}
        .header-bottom .menu-navigation-container{
            margin-top: 15px;
        }
            .header-bottom .menu-navigation-container #main-menu{
                display: flex;
                grid-gap: 10px;
                padding: 0;
            }
                .menu-navigation-container #main-menu li{
                    position: relative;
                    display: inline-block;
                }
                    .menu-navigation-container #main-menu > li > a{
                        display: inline-block;
                        padding:10px 3px;
                        font-family: 'Montserrat',sans-serif;
                        font-size: 15px;
                        color: #707070;
                    }
                    .menu-navigation-container #main-menu li a:hover{
                        color: #98c6d8;
                    }
                    .menu-navigation-container #main-menu li ul.sub-menu{
                        display:none;
                        position: absolute;
                        top: 100%;
                        left: 0;
                        width: 250px;
                        padding: 0;
                        background-color: #FFF;
                        z-index: 3;
                    }
                    .menu-navigation-container #main-menu > li:hover > ul.sub-menu{
                        display: block;
                    }
                    .menu-navigation-container #main-menu li ul.sub-menu li{
                        display:inline-block;
                        width:100%;
                        padding: 6px 20px;
                        border-bottom: 1px solid #f0f0f0;
                    }
                    .menu-navigation-container #main-menu li ul.sub-menu li:last-child{
                        border-bottom: none;
                    }
                        .menu-navigation-container #main-menu li ul.sub-menu li a{
                            display: inline-block;
                            font-family: 'Montserrat',sans-serif;
                            font-size: 15px;
                            color: #707070;
                        }
                        .menu-navigation-container #main-menu li ul.sub-menu li a:hover{
                            color: #98c6d8;
                        }
                        .menu-navigation-container #main-menu li > ul.sub-menu > li .sub-menu{
                            display: none;
                            position: absolute;
                            top: 0;
                            left: 100%;
                            width: 250px;
                            background-color: #FFF;
                            z-index: 3;
                        }
                        .menu-navigation-container #main-menu li > ul.sub-menu > li:hover .sub-menu{
                            display: block;
                        }

.sub-menu-toggle{ display: none; }
.header-bottom .mobile-header-items{
    display: none;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}  
    .mobile-header-items .buttons{
        width: 200px;
        text-align: center;
    }
        .mobile-header-items .buttons a.btn{
            width: 100%;
            margin-bottom: 5px;
            font-size: 14px;
        }
    .header-bottom .mobile-header-items .toggle-menu{
        font-size: 28px;
        line-height: 1;
        color: #98c6d8;
    }

@media(max-width: 1100px){
    .header-top .search{ display:none; }
    .header-top .header-social{ margin-left: auto; }
}
@media(max-width: 800px){
    .header-top .header-social .buttons a.btn{ font-size: 14px; }
    .header-bottom .menu-navigation-container #main-menu{ grid-gap: 7px; }
}
@media(max-width: 767px){
    .header-top{
        justify-content: center;
        margin-bottom: 15px;
    }
    .header-top .logo{
        max-width: 100%;
        width: 350px;
        margin-right: 0;
    }
    .header-top .header-social{ display: none; }

    .header-bottom .mobile-header-items{ display: flex; }

    .header-bottom .menu-navigation-container{
        position: absolute;
        top: 100%;
        left: 0;
        display: none;
        width: 100%;
        margin-top: 0;
        padding: 15px;
        background-color: #FFF;
        z-index: 3;
    }
        .header-bottom .menu-navigation-container #main-menu{
            flex-direction: column;
        }
            .header-bottom .menu-navigation-container #main-menu li{
                position: relative;
                padding: 10px 0;
                line-height: 30px;
                border-bottom: 1px solid #f0f0f0;
            }
            .header-bottom .menu-navigation-container #main-menu li.menu-item-has-children .sub-menu-toggle{
                display: block;
                position: absolute;
                top: 10px;
                right: 15px;
                padding: 0 15px;
            }
            .header-bottom .menu-navigation-container #main-menu ul.sub-menu > li.menu-item-has-children .sub-menu-toggle{
                top: 7px;
            }
            .menu-navigation-container #main-menu > li:hover > ul.sub-menu,
            .menu-navigation-container #main-menu li > ul.sub-menu > li:hover .sub-menu{ display: none; }

                .header-bottom .menu-navigation-container #main-menu > li > .sub-menu,
                .header-bottom .menu-navigation-container #main-menu > li > .sub-menu > li > .sub-menu{
                    position: initial!important;
                    display: none;
                    padding: 10px 0;
                }
                .header-bottom .menu-navigation-container #main-menu > li > .sub-menu.open,
                .header-bottom .menu-navigation-container #main-menu > li > .sub-menu > li > .sub-menu.open{
                    /*display: block;*/
                    /*height: 100%;*/
                    /*transition: all .5s ease-in-out;*/
                }
                .header-bottom .menu-navigation-container #main-menu li.menu-item-has-children .sub-menu-toggle i{

                }
                .header-bottom .menu-navigation-container #main-menu li a{
                    padding: 0;
                    font-size: 15px;
                }
                    .menu-navigation-container #main-menu > li:hover > ul.sub-menu{ position: initial; }
}


/* =============================================== */
/* FOOTER */
/* =============================================== */
footer{
    padding: 50px 0;
    background-color: #333333;
}
    footer .menu-footer-container{
        display: inline-block;
        width: 100%;
        text-align: center;
    }
        .menu-footer-container #footer-menu{
            display: inline-block;
        }
            .menu-footer-container #footer-menu li{
                list-style-type: none;
                display: inline-block;
                float:left;
            }
                .menu-footer-container #footer-menu li a{
                    display: inline-block;
                    padding: 0 5px;
                    font-family: 'Crimson Text', sans-serif;
                    font-size: 17px;
                    line-height: 1;
                    color: #98c6d8;
                    border-right: 1px solid #768a93;
                    transition: all .2s;
                }
                .menu-footer-container #footer-menu li a:hover{
                    opacity: .7;
                }
                .menu-footer-container #footer-menu li:last-child a{
                    border-right: none;
                }
    
    .footer-columns{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
        .footer-columns .column{
            display: flex;
            flex-direction: column;
            width: 33.3333%;
        }

.footer-header{
    color: #8F8072;
    font-weight: 700;
    text-align: left;
    text-transform: uppercase;
}
    .fancy-line-inverse{
        height: 2px;
        width: 80px;
        background-color: #8F8072;
        margin: 30px auto 30px;
    }
    .fancy-line-small{
        height: 2px;
        width: 40px;
        margin: 0.5em 0;
        background-color: #98c6d8;
    }




.sitemap{
    display: inline-block;
    width: 100%;
    font-size: 18px;
    text-align: center;
}    


.wpcf7-form{
    max-width: 300px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}
    .wpcf7-form .nl-title{
        margin-bottom: 10px;
        font-size: 17px;
        color: #ffffff;
        text-transform: uppercase;
        font-family: Lato;
        letter-spacing: 1.3px;
        line-height: 1.1;
    }
    .wpcf7-form label{
        display: block;
        margin-bottom: 4px;
    }
    .wpcf7-form input:not([type=submit]),
    .wpcf7-form textarea,
    .wpcf7-form select{
        display: inline-block;
        width: 100%;
        padding: 3px 10px;
        font-family: 'Lato', sans-serif;
        font-size: 18px;
        font-weight: normal;
        border: 1px solid #0f80ab;
        border-radius: 2px;
        background: #f5f5f5;
    }
    .wpcf7-form input[type=submit]{
        display: block;
        width: initial;
        margin: 0 auto;
        padding: 10px 15px;
        border: none;
        background: #00aef1;
        color: #FFF;
        font-family: Lato;
        font-size: 14px;
        line-height: 2;
        line-height: 1;
        text-transform: uppercase;
    }
    .wpcf7-form .small{
        display: inline-block;
        width: 100%;
        margin-bottom: 20px;
        font-size: 13px;
        color: #FFF;
    }

.site-copy{
    text-align: center;
}

@media(max-width: 767px){
    .footer-columns .column{ width: 100%; }
}


/* =============================================== */
/* WOOCOMMERCE */
/* =============================================== */
.woocommerce-container{

}
    .woocommerce-page .product:after{
        content: '';
        display: block;
        width: 100%;
        clear: both;
    }

    .woocommerce .site-main,
    div.woocommerce{
        margin-bottom: 60px;
        padding: 40px 40px 40px;
        background-color: rgba(213,213,213,0.17);
    }

    .giftcard-ul,
    .giftcard-sub-select,
    .single-product .widget-area{display:none;}

    .giftcard-ul,
    .giftcard-sub-select,
    .giftcard-sub-select li,
    .tip-select,
    .tip-select option{cursor:pointer;}

    .showthis{display:block;}

    .woocommerce .woocommerce-breadcrumb,
    .product_meta{display:none;}

    .jquery_form_help_giftcard-amount{display:inline-block;padding:0 0 0 20px;}
    .send-friend{width:100%}
    div.input-row{
        position:relative;
        display:inline-block;
        width:100%;
        float:left;
        margin-bottom:35px;
    }
    .send-friend div.input-row{
        margin-bottom:0;
    }
    .product_cat-gift-card .price{
        font-family:'Lato',sans-serif;
        font-size:24px;
        color:#77a467;
    }
    .product_cat-gift-card label{
        display:inline-block;
        width:100%;
        font-family:'Lato',sans-serif;
        font-size:18px;
        font-weight:400;
        color:#707070;
    }
    .send-friend > label{margin-bottom:15px;}
    label.gift-input-label{
        position:relative;
        display:inline-block;
        float:left;
        max-width:49%;
        width:100%;
        margin:0 1% 0px;
    }
    label.gift-input-label:nth-child(odd){margin:0 1% 0 0;}
    label.gift-input-label:nth-child(even){margin:0 0 0 1%;}
    label.gift-input-label.whole{max-width:100%;margin:0 0 10px 0;}

    .send-friend div.input-row label.gift-input-label{margin-bottom:15px;}

    div.input-row label.gift-input-label.has-error,
    label.gift-input-label.has-error{margin-bottom:25px;}

    label.gift-input-label input,
    label.gift-input-label textarea,
    label.gift-input-label select{
        display:inline-block;
        width:100%;
        float:left;
        margin:0 0 0 0!important;
        padding:6px 10px;
        font-family:'Lato',sans-serif;
        font-size:18px;
        font-weight:400;
        color:#707070;
        border:none;
        background:#FFF;
    }

    label.gift-input-label input:focus,
    label.gift-input-label textarea:focus,
    label.gift-input-label select:focus{
        outline:none;
    }
    label.gift-input-label input:focus,
    label.gift-input-label textarea:focus{
        border-bottom:2px solid #a7cad8;
    }
    div.input-row label.gift-input-label.has-error input,
    div.input-row label.gift-input-label.has-error textarea{
        background-color:#fff5f5;
        border-bottom:2px solid #e89090;
    }

    label.gift-input-label input::placeholder,
    label.gift-input-label textarea::placeholder{
        font-weight:200;
        color:#cccccc;
    }

    label.gift-input-label select{
        display:inline-block;
        width:100%;
        position:relative;

        -moz-appearance:none;
        -webkit-appearance:none;
        appearance:none;
    }
    label.gift-input-label .select-box{
        position:absolute;
        top:0;
        left:0;
        display:inline-block;
        float:left;
        width:100%;
        height:100%;
        pointer-events:none;
        cursor:pointer;
    }
    label.gift-input-label .select-box:before{
        content:'';
        position:absolute;
        top:0;
        right:18px;
        display:flex;
        width:13px;
        height:100%;
        align-items:center;
        color:#FFF;
        background-image:url(/wp-content/plugins/woocommerce-giftcard/assets/arrow-down-gray.png);
        background-repeat:no-repeat;
        background-position:center;
        z-index:1;
        pointer-events:none;
        cursor:pointer;
    }
    label.gift-input-label select:focus + .select-box:before{background-image:url(/wp-content/plugins/woocommerce-giftcard/assets/gray-bar.png);}


    label.gift-input-label.gift-cert-price:before,
    label.gift-input-label.gift-cert-tip:before,
    label.gift-input-label.gift-cert-sub-price:before{
        content:'$';
        position:absolute;
        left:0;
        top:0;
        display:flex;
        align-items:center;
        justify-content:center;
        height:40px;
        width:30px;
        font-weight:200;
        font-size:18px;
    }
        label.gift-input-label.gift-cert-price input,
        label.gift-input-label.gift-cert-tip input,
        label.gift-input-label.gift-cert-sub-price input{padding-left:30px;}

        label.gift-input-label.gift-cert-price{
            position:relative;
            font-size:26px;
        }
        label.gift-input-label.gift-cert-price:before{
            height:55px;
            font-size:26px;
        }
            label.gift-input-label.gift-cert-price input{
                appearance: none;
                -moz-appearance: none;
                -webkit-appearance: none;
                font-size:26px;
                background:none;
                color:#707070;
            }
            label.gift-input-label.gift-cert-price input:focus{
                border:none;
            }

        label.gift-input-label.gift-cert-price input{
            pointer-events:none;
            cursor:initial;
        }

    .tip-perc-boxes{
        display:flex;
        flex-direction:row;
        flex:0 0 100%;
        width:100%;
    }
        .tip-perc-boxes .tip-perc-box{
            display:flex;
            flex-direction:column;
            flex:0 0 25%;
            width:25%;
            align-items:center;
            justify-content:center;
            padding:5px;
            background-color:#FFF;
            border:1px solid #e3e3e3;
            cursor:pointer;
            transition:all .2s;
        }
        .tip-perc-boxes .tip-perc-box:hover{
            background:#e3e3e3;
        }
        .tip-perc-boxes .tip-perc-box:nth-child(1){}
        .tip-perc-boxes .tip-perc-box:nth-child(2){border-left:0;}
        .tip-perc-boxes .tip-perc-box:nth-child(3){border-left:0;}
            .tip-perc-boxes .tip-perc-box .tip-amount{
                font-size:16px;
            }
            .tip-perc-boxes .tip-perc-box .tip-perc{
                font-size:12px;
            }
            .tip-perc-boxes .tip-perc-box.selected{
                background-color:#f9f9f9;
                border-bottom:3px solid #98c6d8;
            }
                .tip-perc-boxes .tip-perc-box.selected .tip-perc{
                }


    label.gift-input-label .help-block{
        position:absolute;
        left:0;
        bottom:calc(100% + 0px);
        margin:0;
        padding:5px;
        border:1px solid #e3e3e3;
        background:#fff;
        font-family:'Lato',sans-serif;
        font-size:14px;
        font-weight:200;
        line-height:1.2;
    }
    label.gift-input-label .help-block.help:before{
        content:'\f05a  ';  
        display:inline;
        font-family:FontAwesome;
    }
    label.gift-input-label .help-block.form-error{
        top:calc(100% + 2px);
        bottom:initial;
        left:0;
        color:#e89090;
    }
    label.gift-input-label .help-block.form-error:before{
        content:'\f071  ';  
        display:inline;
        font-family:FontAwesome;
    }

    .woocommerce div.product form.cart .button{
        position:relative;
        padding-right:35px;
        font-family:'Lato',sans-serif;
        font-size:18px;
        font-weight:400;
        color:#FFF;
        background:#11aeee;
        border-radius:0;
        transition:all .2s;
    }
    .woocommerce div.product form.cart .button:before{
        content:'';
        position:absolute;
        top:0;
        right:18px;
        display:flex;
        width:8px;
        height:100%;
        align-items:center;
        color:#FFF;
        background-image:url(/wp-content/plugins/woocommerce-giftcard/assets/arrow-right-white.png);
        background-repeat:no-repeat;
        background-position:center;
        outline:none!important;
    }
    .woocommerce div.product form.cart .button:hover{opacity:.7;}


    .woocommerce button.button.alt:disabled,
    .woocommerce button.button.alt:disabled:hover,
    .woocommerce input.button.alt.disabled,
    .woocommerce button.button.alt.disabled:hover,
    .woocommerce button.button.alt:disabled[disabled],
    .woocommerce button.button.alt:disabled[disabled]:hover{
        background: #11aeee;
    }


    dt{ font-weight: 700; }

    .woocommerce-cart table.cart .product-thumbnail{
        max-width: 150px;
/*        min-width: 150px;*/
        padding-top: 6px;
    }
        .woocommerce-cart table.cart .product-thumbnail a{ width: 100%; }
        .woocommerce-cart table.cart .product-thumbnail a img{ width: 100%; }
    @media(max-width: 700px){
        .woocommerce-cart table.cart .product-thumbnail{ display: none; }
    }
    @media(max-width:991px) and (min-width:700px){
        .giftcard-sub-select{width:165%;}
    }
    @media(max-width:494px){
        .product_cat-gift-card .cart.has-validation-callback{text-align:left;}
        .giftcard-service-button,
        label.gift-input-label,
        .giftcard-ul, .giftcard-sub-select{max-width:100%;width:100%;}
        label.gift-input-label:nth-child(even),
        label.gift-input-label:nth-child(odd){margin-left:0;margin-right:0;}
    }

    .product{max-width:96%;width:100%;margin:0 auto;}
    .stars span{font-size:15px;}
    .input-text.qty.text{padding:4px;}
    .giftcard-sub-select:focus{max-width:197px;}
    .giftcardhelpicon{display:none!important;}
    .this-is-my-button{margin:0 4px 0 1px;display:inline-block;}
    .woocommerce a.remove{line-height:.95;}
    .product-name a{font-size:20px;font-weight:700;}

    #giftcard-apply-form{ margin-bottom: 20px; }

    .woocommerce-cart table.cart td.actions .coupon .input-text,
    .giftcard #giftcard_code{
        display: inline-block;
        width: 150px;
        float: left;
        margin: 0 4px 0 0;
        padding: 10px 5px!important;
        line-height: 1em;
        outline: 0 none;
        border: 1px solid #E0DADF;
        box-shadow: 0 1px 4px 0 rgb(0 0 0 / 10%) inset;
        box-sizing: border-box;
    }

    .woocommerce .col2-set, .woocommerce-page .col2-set{
        margin-bottom: 40px;
    }

    .woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
    .woocommerce #payment #place_order,
    .woocommerce-page #payment #place_order{
        padding-right: 35px;
        font-family: 'Lato',sans-serif;
        font-size: 18px;
        font-weight: 400;
        color: #FFF;
        background: #11aeee;
        border-radius: 0;
        transition: all .2s;
    }
    .woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
    .woocommerce #payment #place_order:hover,
    .woocommerce-page #payment #place_order:hover{
        background: #11aeee;
        opacity: .7;
    }
        .woocommerce-cart .wc-proceed-to-checkout a.checkout-button:before,
        .woocommerce #payment #place_order:before,
        .woocommerce-page #payment #place_order:before{
            content: '';
            position: absolute;
            top: 0;
            right: 18px;
            display: flex;
            width: 8px;
            height: 100%;
            align-items: center;
            color: #FFF;
            background-image: url(/wp-content/plugins/woocommerce-giftcard/assets/arrow-right-white.png);
            background-repeat: no-repeat;
            background-position: center;
            outline: none!important;
        }


    .woocommerce form .form-row input.input-text,
    .woocommerce form .form-row textarea,
    .woocommerce form .form-row select{
        margin: 0 0 0 0!important;
        padding: 6px 10px;
        font-family: 'Lato',sans-serif;
        font-size: 18px;
        font-weight: 400;
        color: #707070;
        border: none;
        background: #FFF;
    }

#ui-datepicker-div{
    background:#FFF;
    border:1px solid #000;
    padding:15px;
}
    #ui-datepicker-div td,
    #ui-datepicker-div th{padding:2px 5px;}
    
    #ui-datepicker-div .ui-datepicker-prev,
    #ui-datepicker-div .ui-datepicker-next{float:left;cursor:pointer;}
    #ui-datepicker-div .ui-datepicker-next{float:right;}

    #ui-datepicker-div .ui-datepicker-title{
        display:inline-block;
        width:100%;
        text-align:center;
    }
    
@media(max-width: 767px){
    .woocommerce .site-main,
    div.woocommerce{
        width: calc(100% + 20px);
        margin: 0 -10px;
        padding: 40px 10px 40px;
    }
    .woocommerce #content div.product div.images,
    .woocommerce div.product div.images,
    .woocommerce-page #content div.product div.images,
    .woocommerce-page div.product div.images,
    .woocommerce #content div.product div.summary,
    .woocommerce div.product div.summary,
    .woocommerce-page #content div.product div.summary,
    .woocommerce-page div.product div.summary{
        width: 100%;
    }
}

.woocommerce div.product .product_title{
    margin-bottom: 35px;
}

.single-product.woocommerce form.cart.gift-cards_form{
    display: flex!important;
    flex-direction: column;
}
    .gift-cards-list,
    #yith-wapo-container{
        order: 0;
    }
    .gift-card-content-editor.step-content,
    .gift_card_template_button{
        order: 1;
        margin-top: 0;
    }

.wc-tabs-wrapper{ display: none; }
.ywgc-main-form-preview-container{ display: none; }

.gift-card-content-editor.step-content{ margin-bottom: 0; }

.gift-cards_form h3,
.gift-cards_form h5{
    display: inline-block;
    width: 100%;
    font-family: 'Lato',sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #707070;
    text-transform: initial;
    letter-spacing: initial;
}

.gift-cards_form h3.ywgc_delivery_info_title,
.gift-cards_form h5.ywgc-sender-info-title,
.gift-cards_form h5.ywgc_recipient_info_title{ display: none; }

.gift-cards_form .gift-cards-list,
/*.gift-cards_form .ywgc-single-recipient,*/
.gift-cards_form .ywgc-message,
.gift-cards_form .ywgc-postdated,
.gift-cards_form .ywgc-sender-name,
.gift-cards_form #yith-wapo-container{
    display: inline-block;
    width: 100%;
    margin-bottom: 35px;
}
    .gift-cards_form .ywgc-single-recipient > div:not(.ywgc-message){
        display: inline-block;
        width: calc(50% - 1%);
        float: left;
    }
    .gift-cards_form .ywgc-single-recipient > div:not(.ywgc-message):nth-child(odd){ margin: 0 1% 15px 0; }
    .gift-cards_form .ywgc-single-recipient > div:not(.ywgc-message):nth-child(even){ margin: 0 0 15px 1%; }

    .yith-wapo-block .yith-wapo-addon{margin-bottom: 0!important;}
        .yith-wapo-block .yith-wapo-addon .options.grid.per-row-1 .yith-wapo-option{ width:100%!important; margin-right: 0!important; }
        .yith-wapo-addon-type-html_text > p{display: none!important;}

        .gift-cards_form .ywgc-postdated label,
        .gift-cards_form .ywgc-single-recipient label,
        .gift-cards_form .ywgc-sender-name label,
        .gift-cards_form .ywgc-message label,
        .yith-wapo-option .label{ display: none; }

            #ywgc-manual-amount,
            .gift-cards_form .gift-cards-list input,
            .gift-cards_form .ywgc-postdated input,
            .gift-cards_form .ywgc-single-recipient input,
            .gift-cards_form .ywgc-sender-name input,
            .gift-cards_form .ywgc-message textarea{ max-width: initial; width: 100%; }
                .ywgc-manual-currency-symbol{ display: none!important; }


.gift-cards_form input:not([type=submit]),
.gift-card-content-editor.step-content textarea{
    display: inline-block;
    width: 100%;
    float: left;
    margin: 0 0 0 0!important;
    padding: 6px 10px;
    font-family: 'Lato',sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #707070;
    border: none;
    border-bottom: 2px solid transparent;
    background: #FFF;
}
#ywgc-manual-amount{
    padding: 6px 10px!important;
    border: none!important;
    border-bottom: 2px solid transparent!important;
}
.gift-cards_form input:not([type=submit])::placeholder,
.gift-card-content-editor.step-content textarea::placeholder,
#ywgc-delivery-date::placeholder{
    font-size: 16px;
    font-weight:200;
    color:#cccccc!important;
}

.gift-cards_form input:not([type=submit]):focus,
.gift-cards_form textarea:focus{
    outline: none;
    border-bottom: 2px solid #a7cad8;
}
#ywgc-manual-amount:focus{
    outline: none!important;
    border-bottom: 2px solid #a7cad8!important;
}

.ywgc-manual-amount-error{
    display: inline-block;
    margin: 2px 0 0;
    padding: 5px;
    border: 1px solid #e3e3e3;
    background: #fff;
    font-family: 'Lato',sans-serif;
    font-size: 14px;
    font-weight: 200;
    line-height: 1.2;
    color: #e89090;
}
.ywgc-manual-amount-error:before{
    content: '\f071 ';
    display: inline;
    font-family: FontAwesome;
    padding-right: 2px;
}

.gift-cards-list,
.yith-wapo-option{ position: relative; }
    .gift-cards-list:before,
    #yith-wapo-option-1-0:before{
        content: '$';
        position: absolute;
        left: 0;
        top: -3px;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 40px;
        width: 30px;
        font-family: 'Lato', sans-serif;
        font-weight: 200;
        font-size: 18px;
    }
    .gift-cards-list:before{
        top: 33px;
    }
    #ywgc-manual-amount,
    #yith-wapo-1-0{ padding-left: 25px!important; }


/* =============================================== */
/* BLOCKS */
/* =============================================== */


/* HERO BANNER */
.hero-banner-slider{
    position: relative;
    margin-bottom: 30px;
    max-height: 600px;
    overflow: hidden;
}
    .hero-banner-slider .banner-slide{
        position: relative;
        height: 600px;
    }
    .hero-banner-slider .banner-slide{ opacity: 0; }
    .hero-banner-slider .banner-slide:first-child,
    .hero-banner-slider.slick-initialized .banner-slide{ opacity: 1; }

        .hero-banner-slider .banner-slide .image{
            width: 100%;
            height: 100%;
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
        }
        .hero-banner-slider .banner-slide .button{
            position: absolute;
            top: 0;
            left: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 100%;
        }
            .hero-banner-slider .banner-slide .button a{
                display: inline-block;
                padding:12px 24px;
                font-family: 'Montserrat',sans-serif;
                font-size: 16px;
                font-weight: 700;
                color:#FFF;
                border: 2px solid #FFF;
                border-radius: 99px;
                transition: all .2s;
            }
            .hero-banner-slider .banner-slide .button a:hover{
                background-color: #FFF;
                color: #000;
            }

    .hero-banner-slider .slick-arrow{
        position: absolute;
        top: calc(50% - 10px);
        left: 15px;
        width: 32px;
        cursor: pointer;
        z-index: 2;
    }
        .hero-banner-slider .slick-arrow i{
            font-size:30px;
            color: #FFF;
        }
    .hero-banner-slider .slick-prev{

    }
    .hero-banner-slider .slick-next{
        left: initial;
        right: 15px;
    }

    .hero-banner-slider .slick-dots{
        position: absolute;
        bottom: 10px;
        left: 0;
        width: 100%;
        padding: 0;
        text-align: center;

    }
        .hero-banner-slider .slick-dots li{
            display: inline-block;

        }
            .hero-banner-slider .slick-dots li button{
                font-size: 0;
                line-height: 0;
                display: block;
                width: 20px;
                height: 20px;
                padding: 5px;
                cursor: pointer;
                color: transparent;
                border: 0;
                outline: none;
                background: transparent;
             }  
             .hero-banner-slider .slick-dots li button:before{
                font-family: 'slick';
                font-size: 40px;
                line-height: 20px;
                width: 20px;
                height: 20px;
                content: '•';
                text-align: center;
                opacity: .5;
                color: #FFF;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
             }
             .hero-banner-slider .slick-dots li.slick-active button:before,
             .hero-banner-slider .slick-dots li:hover button:before{
                opacity: 1;
             }
@media(max-width: 767px){
    .hero-banner-slider .banner-slide{
        height:initial;
    }
    .hero-banner-slider .banner-slide .image{
        height: 0;
        padding-bottom: 54.6875%;
    }
    .hero-banner-slider .slick-dots{
        bottom: 0;
        margin-bottom: 0;
    }
}


/* IMAGE SLIDER */
.image-slider-slider{
    position: relative;
    margin-bottom: 30px;
}
    .image-slider-slider .banner-slide{
        position: relative;
        /*height: 600px;*/
    }
    .image-slider-slider .banner-slide{ opacity: 0; }
    .image-slider-slider .banner-slide:first-child,
    .image-slider-slider.slick-initialized .banner-slide{ opacity: 1; }
        .image-slider-slider .banner-slide .image{
            width: 100%;
            height: 0;
            padding-bottom: 49.08256880733945%;
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
        }
        .image-slider-slider .banner-slide .text{
            position: absolute;
            top: 0;
            left: 0;
            display: flex;
            justify-content: center;
            width: 100%;
            height: 100%;
            font-family: 'Raleway', sans-serif;
            font-size:34px;
            background: rgba(0,0,0,.35);
            z-index: 2;
            color: #FFF;
        }
            .image-slider-slider .banner-slide .text a{
                display: inline-block;
            }
                .image-slider-slider .banner-slide .text .title{
                    margin-top: 20px;
                }

    .image-slider-slider .slick-dots{
        position: absolute;
        bottom: 10px;
        left: 0;
        width: 100%;
        padding: 0;
        text-align: center;

    }
        .image-slider-slider .slick-dots li{
            display: inline-block;

        }
            .image-slider-slider .slick-dots li button{
                font-size: 0;
                line-height: 0;
                display: block;
                width: 20px;
                height: 20px;
                padding: 5px;
                cursor: pointer;
                color: transparent;
                border: 0;
                outline: none;
                background: transparent;
             }  
             .image-slider-slider .slick-dots li button:before{
                font-family: 'slick';
                font-size: 40px;
                line-height: 20px;
                width: 20px;
                height: 20px;
                content: '•';
                text-align: center;
                opacity: .5;
                color: #FFF;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
             }
             .image-slider-slider .slick-dots li.slick-active button:before,
             .image-slider-slider .slick-dots li:hover button:before{
                opacity: 1;
             }
@media(max-width: 767px){
    .image-slider-slider .banner-slide .text{
        font-size: 22px;
    }

    .image-slider-slider .slick-dots{
        bottom: 0;
        margin-bottom: 0;
    }
}


/* SERVICES SLIDER */
.services-slider{
    position: relative;
    margin-bottom: 30px;
}
    .services-slider .banner-slide{
        position: relative;    }
        .services-slider .banner-slide .image{
            width: 100%;
            height: 0;
            padding-bottom: 63.02521008403362%;
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
        }
        .services-slider .banner-slide .text{
            position: absolute;
            top: 0;
            left: 0;
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100%;
            height: 100%;
            font-family: 'Raleway', sans-serif;
            font-size:34px;
            background: rgba(152,198,216,0.88);
            z-index: 2;
            color: #FFF;
            opacity:0;
            transition: all .35s;
        }
        .services-slider .banner-slide:hover .text{
            opacity: 1;
        }
            .services-slider .banner-slide .text a{
                display: inline-block;
            }
                .services-slider .banner-slide .text .title{
                    margin-top: 20px;
                }

    .services-slider .slick-dots{
        width: 100%;
        padding: 0;
        text-align: center;

    }
        .services-slider .slick-dots li{
            display: inline-block;

        }
            .services-slider .slick-dots li button{
                font-size: 0;
                line-height: 0;
                display: block;
                width: 20px;
                height: 20px;
                padding: 5px;
                cursor: pointer;
                color: transparent;
                border: 0;
                outline: none;
                background: transparent;
             }  
             .services-slider .slick-dots li button:before{
                font-family: 'slick';
                font-size: 40px;
                line-height: 20px;
                width: 20px;
                height: 20px;
                content: '•';
                text-align: center;
                opacity: .5;
                color: #98c6d8;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
             }
             .services-slider .slick-dots li.slick-active button:before,
             .services-slider .slick-dots li:hover button:before{
                opacity: 1;
             }
@media(max-width: 767px){
    .services-slider .banner-slide{

    }
}


/* Service Block */
.service-block-inner{
    margin-bottom: 30px;
    padding: 20px 20px;
    border: 2px solid #d5d5d5;
}
    .service-block-inner .title{
        display: inline-block;
        width: 100%;
        margin-bottom: 20px;
        text-align: center;
        font-family: 'Lato', sans-serif;
        font-size: 18px;
        letter-spacing: 3px;
        font-weight: 700;
        color: #333333;
    }
    .service-block-inner .description{
        display: inline-block;
        width: 100%;
        text-align: center;
        font-family: 'Crimson Text', sans-serif;
        font-size: 17px;
    }

    .service-block-inner .fancy-line{
        display: flex;
        flex-direction: row;
        width: 100%;
        margin-bottom: 25px ;
        align-items: center;
        justify-content: center;
    }
        .service-block-inner .fancy-line .line{
            display: flex;
            flex-direction: column;
            width:35%;
            height: 1px;
            background-color: #d5d5d5;
        }
        .service-block-inner .fancy-line .x{
            display: flex;
            flex-direction: column;
            width: 10%;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            color: #d5d5d5;
        }
    .service-block-inner ul{
        display:inline-block;
        width:100%;
        margin-bottom: 20px;
        padding: 0;
        text-align:center;
    }
        .service-block-inner ul li{
            list-style-type: none;
            display:inline-block;
            width:100%;
            padding:7px 0;
            text-align: center;
            font-family: 'Crimson Text', sans-serif;
            font-size: 17px;
        }

    .service-block-inner .price{
        display: inline-block;
        width: 100%;
        padding: 10px;
        text-align: center;
        font-size: 20px;
        color: #707070;
        background-color: #efefef;
    }
        .service-block-inner .price span{}

    .service-block-inner .link{
        display: inline-block;
        width: 100%;
        margin-bottom: 10px;
        text-align: center;
    }
        .service-block-inner .link a{
            display: inline-block;
            padding: 5px 16px;
            color: #333333;
            border: 2px solid #333333;
        }



/* BLOG */
.sidebar-container{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
    .main-content{
        display: flex;
        flex-direction: column;
        width: 75%;
    }
    .sidebar{
        display: flex;
        flex-direction: column;
        width: 25%;
        padding: 0 10px;
    }
    .single .sidebar{ margin-top: 30px; }

.blog-posts{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: calc(75% + 25px);
    margin: 0 -12.5px 45px;
}
    .post{
        display: flex;
        flex-direction: column;
        width: calc(50% - 25px);
        margin: 0 12.5px 25px;
        background-color: rgba(213,213,213,0.17);
    }
    .post .image{
        display: inline-block;
        width: 100%;
    }
    .post .image img{
        width: 100%;
        height: auto;
    }
    .post .entry-content{
        padding: 40px 40px 40px;
    }
        .post .title-box{
            margin-bottom: 20px;
        }
        .post .title a{
            font-family: 'Lato', sans-serif;
            font-size: 18px;
            font-weight: 700;
            letter-spacing: 3px;
            color: #98c6d8;
            text-transform: uppercase;
        }
        .post .excerpt{}
            .post .excerpt .read-more{
                color: #98c6d8;
            }
        .post .date{
            margin-top: 60px;
            padding-top: 20px;
            border-top: 1px solid #d5d5d5;
        }
            .post .date a{
                font-family: 'Lato', sans-serif;
                font-size: 16px;
                font-weight: 700;
                letter-spacing: 3px;
                text-transform: uppercase;
                color: #333333;
            }

@media(max-width: 1000px){
    .post{
        width: calc(50% - 25px);
    }
}

@media(max-width: 767px){
    .blog-posts{ width: calc(100% + 25px); }
    .sidebar,
    .main-content{ width: 100%; }

    .sidebar,
    .single .sidebar{
        padding:0 10px;
        margin: 45px 0;
    }

    .post{
        width: calc(100% - 25px);
    }
}

/*Single Post*/
.single-post{
    background-color: rgba(213,213,213,0.17);
}
    .single-post .single-content{
        padding: 40px 40px 60px;
    }
    .meta{
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        margin-top: 40px;
        padding-top: 20px;
        border-top: 1px solid #d5d5d5;
        font-family: 'Lato', sans-serif;
    }
        .meta .date{
            letter-spacing: 3px;
            font-weight: 700;
            text-transform: uppercase;
            color: #333333;
        }
        .meta .cat{
            font-family: 'Crimson Text', serif;
            color: #d5d5d5;
        }
    .post-additional{
        margin-bottom: 30px;
        padding: 30px 0 20px;
        border-bottom: 1px solid #d5d5d5;
    }
        .post-share{
            display: inline-block;
            margin: 0;
            padding: 0;
        }
            .post-share li{
                list-style-type: none;
                display: inline-block;
                padding-right: 5px;
            }
                .post-share li a{
                    width: 40px;
                    height: 40px;
                    display: table-cell;
                    vertical-align: middle;
                    text-align: center;
                    border: 1px solid;
                }

.comment-form{
    margin-bottom: 45px;
}
    .comment-form .comment-form-comment label{ display: none; }
    .comment-form textarea{
        border: 0;
        border-bottom: 1px solid #d5d5d5;
    }
    .comment-form .form-submit input[type=submit]{
        padding: 5px 15px;
        box-shadow: none;
        border: none;
        color: #8f8072;
        border: 2px solid;
        border-color: #8f8072;
        background: none;
        cursor: pointer;
    }


/* RECENT POSTS BOX */
.recent-posts{
    margin-top: 25px;
}
.recent-posts-box{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: calc(100% + 25px);
    margin: 0 -12.5px 45px;
}
    .recent-posts h3{
        display: inline-block;
        width: 100%;
        margin-bottom: 10px;
        text-align: center;
        font-family: 'Lato', sans-serif;
        font-size: 22px;
        font-weight: 700;
        letter-spacing: 3px;
        text-transform: uppercase;
        color: #333333;
    }
    .recent-posts .fancy-line-center{
        display: block;
        width: 80px;
        height: 2px;
        margin: 0 auto 20px;
        background-color: #333333;
    }
    .recent-posts .post{
        width: calc(33.3333% - 25px);
        margin: 0 12.5px 20px;
    }

@media(max-width: 1000px){
    .recent-posts .post{ width: calc(50% - 25px); }
}
@media(max-width: 767px){
    .recent-posts .post{ width: calc(100% - 25px); }
}
    


/* Spa Links */
.spa-links-section{

}
    .spa-links-section h3{
        display: inline-block;
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }
    .spa-links-section .spa-links{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        width: calc(100% + 30px);
        margin: 0 -15px;
    }
        .spa-links-section .spa-links .spa-link{
            position: relative;
            display: flex;
            flex-direction: column;
            width: calc(50% - 30px);
            margin: 15px;
            background-position: center;
            background-size: 100% 100%;
            background-repeat: no-repeat;
            transition: all .2s;
        }
        .spa-links-section .spa-links .spa-link:hover{
            background-size: calc(100% * 1.1) calc(100% * 1.1);
        }
            .spa-links-section .spa-links .spa-link a{
                display: inline-block;
                height: 0;
                padding-bottom: 66.66666666666666%;
            }
            .spa-links-section .spa-links .spa-link .title{
                position: absolute;
                bottom: 0;
                left: 0;
                display: inline-block;
                width: 100%;
                padding: 15px;
                font-size: 30px;
                text-align: center;
                color: #FFF;
                background-color: rgba(27, 27, 27, 0.5);E
            }

@media(max-width: 767px){
    .spa-links-section .spa-links .spa-link{ width: calc(100% - 30px); }
    .spa-links-section .spa-links .spa-link .title{ padding: 10px; font-size: 26px; }
}



