/*************** CSS DEFAULT  ***************/
.row-large>.col, .row-large>.flickity-viewport>.flickity-slider>.col{
    padding:0px 15px;
}
html{
    background: #FFF !important;
}
.line3,
.line2,
.line1{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical
}
.line2{
    -webkit-line-clamp: 2;
}
.line3{
    -webkit-line-clamp: 3;
}
.h1,h1{
    font-size: 1.5em;
}
.h2,h2{
    font-size: 1.4em;
}
.h3,h3{
    font-size: 1.3em;
}
.h4,.h5,.h6,h6,h5,h4{
    font-size: 1.2em;
}
.h100-inner .col-inner,
.h100{
    height: 100%;
}
.w100{
    width:100%;
}
.m0,
.m0 *{
  margin:0px !important;
}
.p0,
.p0 *{
  padding:0px !important;
}

.m-0{
    margin:0px !important;
}
.p-0{
    padding:0px !important;
}

.mt-0{
    margin-top:0px !important;
}
.mt-1{
    margin-top:5px !important;
}
.mt-2{
    margin-top:10px !important;
}
.mt-3{
    margin-top:15px !important;
}
.mt-4{
    margin-top:20px !important;
}

.ms-0{
    margin-left:0px !important;
}
.ms-1{
    margin-left:5px !important;
}
.ms-2{
    margin-left:10px !important;
}
.ms-3{
    margin-left:15px !important;
}
.ms-4{
    margin-left:20px !important;
}

.mb-0{
    margin-bottom:0px !important;
}
.mb-1{
    margin-bottom:5px !important;
}
.mb-2{
    margin-bottom:10px !important;
}
.mb-3{
    margin-bottom:15px !important;
}
.mb-4{
    margin-bottom:20px !important;
}

.me-0{
    margin-right:0px !important;
}
.me-1{
    margin-right:5px !important;
}
.me-2{
    margin-right:10px !important;
}
.me-3{
    margin-right:15px !important;
}
.me-4{
    margin-right:20px !important;
}

.ps-0{
    padding-left:0px !important;
}
.ps-1{
    padding-left:5px !important;
}
.ps-2{
    padding-left:10px !important;
}
.ps-3{
    padding-left:15px !important;
}
.ps-4{
    padding-left:20px !important;
}

.pe-0{
    padding-right:0px !important;
}
.pe-1{
    padding-right:5px !important;
}
.pe-2{
    padding-right:10px !important;
}
.pe-3{
    padding-right:15px !important;
}
.pe-4{
    padding-right:20px !important;
}


.pb-0{
    padding-bottom:0px !important;
}
.pb-1{
    padding-bottom:5px !important;
}
.pb-2{
    padding-bottom:10px !important;
}
.pb-3{
    padding-bottom:15px !important;
}
.pb-4{
    padding-bottom:20px !important;
}

.pt-0{
    padding-top:0px !important;
}
.pt-1{
    padding-top:5px !important;
}
.pt-2{
    padding-top:10px !important;
}
.pt-3{
    padding-top:15px !important;
}
.pt-4{
    padding-top:20px !important;
}

.shadow{
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
    border-radius: 10px;
}
.box-shadow-1, .box-shadow-1-hover,
.box-shadow-2, .box-shadow-2-hover,
.box-shadow-3, .box-shadow-3-hover,
.box-shadow-4, .box-shadow-4-hover,
.box-shadow-5, .box-shadow-5-hover,
.row-box-shadow-1 .col-inner,
.row-box-shadow-1-hover .col-inner,
.row-box-shadow-2 .col-inner,
.row-box-shadow-2-hover .col-inner,
.row-box-shadow-3 .col-inner,
.row-box-shadow-3-hover .col-inner,
.row-box-shadow-4 .col-inner,
.row-box-shadow-4-hover .col-inner,
.row-box-shadow-5 .col-inner,
.row-box-shadow-5-hover .col-inner{
    box-shadow: 2px 2px 30px #00000015;
}
.box-shadow-2, .box-shadow-2-hover,
.row-box-shadow-2 .col-inner,
.row-box-shadow-2-hover .col-inner{
    box-shadow: 2px 2px 30px #00000020;
}
.box-shadow-3, .box-shadow-3-hover,
.row-box-shadow-3 .col-inner,
.row-box-shadow-3-hover .col-inner{
    box-shadow: 2px 2px 20px #00000025;
}
.box-shadow-4, .box-shadow-4-hover,
.row-box-shadow-4 .col-inner,
.row-box-shadow-4-hover .col-inner{
    box-shadow: 2px 2px 30px #00000030;
}
.box-shadow-5, .box-shadow-5-hover,
.row-box-shadow-5 .col-inner,
.row-box-shadow-5-hover .col-inner{
    box-shadow: 2px 2px 30px #00000035;
}
.radius5{
    border-radius: 5px;
    overflow: hidden;
}
.radius10{
    border-radius: 10px;
    overflow: hidden;
}
.radius15{
    border-radius: 15px;
    overflow: hidden;
}
.radius20{
    border-radius: 20px;
    overflow: hidden;
}
.radius25{
    border-radius: 25px;
    overflow: hidden;
}
.radius30{
    border-radius: 30px;
    overflow: hidden;
}
.radius35{
    border-radius: 35px;
    overflow: hidden;
}
.radius40{
    border-radius: 40px;
    overflow: hidden;
}
.radius99{
    border-radius: 99px;
    overflow: hidden;
}
.circle{
    border-radius: 50%;
    overflow: hidden;
}
.overflow-hidden{
    overflow: hidden;
}
.position-relative{
    position: relative;
}
.position-absolute{
     position: absolute;
 }
.lightbox-content{
    border-radius: 5px;
}
.flex-row{
    flex-direction:row;
}
.d-flex{
    display: flex;
}
.d-block{
    display: block;
}
.d-inline-block{
    display: inline-block;
}
.d-inline-flex{
    display: inline-flex;
}
.flex-wrap{
    flex-wrap: wrap;
}
.align-center{
    align-items: center;
}
.align-flex-start{
    align-items: flex-start;
}
.align-flex-end{
    align-items: flex-end;
}
.justify-content-center{
    justify-content: center;
}
.justify-content-flex-start{
    justify-content: flex-start;
}
.justify-content-flex-end{
    justify-content: flex-end;
}
.header-block{
    min-height: auto !important;
}
.header-block{
    min-height: auto !important;
}
.font-weight-900 *{
    font-weight: 900;
}
.font-weight-700 *{
    font-weight: 700;
}
.font-weight-600 *{
    font-weight: 600;
}
.font-weight-500 *{
    font-weight: 500;
}
.font-weight-400 *{
    font-weight: 400;
}
.font-weight-300 *{
    font-weight: 300;
}
.font-weight-200 *{
    font-weight: 200;
}
.font-weight-100 *{
    font-weight: 100;
}
.hidden-divider .is-divider{
    display: none;
}
.font10{
    font-size:10px;
}
.font11{
    font-size:11px;
}
.font12{
    font-size:12px;
}
.font13{
    font-size:13px;
}
.font14{
    font-size:14px;
}
.font15{
    font-size:15px;
}
.font16{
    font-size:16px;
}
.font17{
    font-size:17px;
}
.font18{
    font-size:18px;
}
.font19{
    font-size:19px;
}
.font20{
    font-size:20px;
}
.font21{
    font-size:21px;
}
.font22{
    font-size:22px;
}
.font23{
    font-size:23px;
}
.font24{
    font-size:24px;
}
.font25{
    font-size:25px;
}
.font26{
    font-size:26px;
}
.font27{
    font-size:27px;
}
.font28{
    font-size:28px;
}
.font29{
    font-size:29px;
}
.font30{
    font-size:30px;
}
.font35{
    font-size:35px;
}
.font40{
    font-size:40px;
}
.font45{
    font-size:45px;
}
.font50{
    font-size:50px;
}
.zindex1{
    z-index: 1;
}
.zindex2{
    z-index: 2;
}
.zindex3{
    z-index: 3;
}
.zindex4{
    z-index: 4;
}
.zindex5{
    z-index: 5;
}
.zindex6{
    z-index: 6;
}
.zindex7{
    z-index: 7;
}
.zindex8{
    z-index: 8;
}
.zindex9{
    z-index: 9;
}
.zindex10{
    z-index: 10;
}
.zindex100{
    z-index: 100;
}
.zindex99{
    z-index: 99;
}
.zindex999{
    z-index: 999;
}
.zindex9999{
    z-index: 9999;
}
.background-inherit,
.background-inherit .bg-fill{
    background-size: inherit !important;
    background-repeat: inherit !important;
    background-position: inherit !important;
}
/***************  CSS CONTACT FORM 7  ***************/

.wpcf7 .col{
    padding-bottom: 10px;
}
.wpcf7 .col input{
    margin-bottom: 5px !important;
}
.wpcf7-spinner,
.wpcf7 .wpcf7-not-valid-tip{
    display: none !important;
}
.wpcf7 .wpcf7-submit{
        border-radius: 30px;
    padding: 2px 20px;
}
.wpcf7 form .wpcf7-response-output{
    margin: 10px 0px;
    font-size: 14px !important;
    border-radius: 0px !important;
}

.wpcf7 .wpcf7-form-control-wrap{
    margin-bottom: 5px;
}
.wpcf7 .wpcf7-form-control{
    margin-bottom: 5px;
}
.wpcf7 .wpcf7-validates-as-required.wpcf7-not-valid{
    border-color: var(--fs-color-alert) !important;
    color: var(--fs-color-alert) !important;
}
/***************  CSS SLIDER IMAGE BOX  ***************/

.row-slider-image-box{
    padding-bottom: 40px;
}
.row-slider-image-box .flickity-page-dots{
    bottom:15px;
}
.row-slider-image-box .flickity-slider .col{
    padding:10px;
}
.row-slider-image-box .flickity-slider .col-inner{
    border:1px solid #EEE;
    padding: 10px;
}
/*************** FIX CSS MENU  ***************/
.nav.header-nav .nav-dropdown li.menu-item{
display: inline-block;
    width: 100%;
    position: relative;
}
.nav.header-nav .nav-dropdown li.menu-item ul{
    display: none;
}
.nav.header-nav .nav-dropdown li.menu-item.nav-dropdown-col a{
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    text-transform: inherit;
}
.nav.header-nav .nav-dropdown li.menu-item ul {
    position: absolute;
    left: 100%;
    top: 0px;
    display: none;
    visibility: inherit;
    opacity: 1;
    min-width: 260px;
    background: #FFF;
    box-shadow: 1px 1px 15px rgba(0, 0, 0, .15);
    padding:20px;
}
.nav.header-nav .nav-dropdown li.menu-item ul li{
    display: block;
}
.nav.header-nav .nav-dropdown li.menu-item:hover ul{
    display: table;
}
.nav.header-nav .nav-dropdown li.menu-item ul li ul{
    display: none !important;
}
/***************  FIX CSS SIDEBAR  ***************/
.widget_price_filter form{
    margin-top:20px;
}
.post-sidebar{
    padding: 0px 15px !important;
    border: 0px !important;
}
#main #product-sidebar,
#main .post-sidebar,
#main #shop-sidebar{
    font-size:0.9em;
}
#main span.widget-title{
    font-size:1.2em;
    display: block;
    padding:10px 0px;
}
.category-filtering{
    display: none;
}
@media (max-width:849px){
    form.woocommerce-ordering,
    .woocommerce-result-count,
    #product-sidebar,
    .post-sidebar,
    #shop-sidebar{
        display: none;
    }
}
.sidebar-inner button{
    float: none !important;
}

/***************  FIX CSS RELATED TITLE SIDEBAR  ***************/
.post-item .box-text .from_the_blog_excerpt,
.line2,
ul.product_list_widget li .product-title,
.post-title a,
#shop-sidebar .recent-blog-posts a,
.post-sidebar .recent-blog-posts a{
  overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp:2;
-webkit-box-orient: vertical;
}
.post-item .box-text .from_the_blog_excerpt{
    -webkit-line-clamp:3;
}

/***************  CSS FOOTER  ***************/

.footer p{
    margin-bottom: 5px;
}
.footer .textwidget{
    font-size: 14px;
}

/***************  CSS RELATED POST SHORTCODE  ***************/
.related-post{
    background: #FFF;
}
.related-post .row{
    margin:0px !important;
}
.feature-related-post {
    position: relative;
    overflow: hidden;
}
.feature-related-post::before {
 content: "";
 display: block;
 padding-top: 56.25%;
}
.feature-related-post .image-related-post{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background-size: cover;
    background-position: center;
}
.title-related-post {
    line-height: 1.3 !important;
    margin-top: 10px !important;
      overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp:2;
-webkit-box-orient: vertical;
}

/***************  CSS LOOP PRICE PRODUCT  ***************/

.price-wrapper {
    margin:15px 0px;
}
.price-wrapper .price {
    display: block;
}

span.amount {
    color: #FF0000;
}
del span.amount {
    color: #333;
}

.badge{
    width:inherit !important;
    height: inherit !important;
    display: inline-block !important;
}
.badge .badge-inner{
    padding:5px 10px;
    font-size: 14px;
}
.products.row .product .price-wrapper{
    margin:7px 0px !important;
}

.product-info .price{
    margin:20px 0px;
}
.woocommerce-variation-price{
    padding:20px 0px;
}
.add_to_cart_button.loading,
.add_to_cart_button.added{
    display: inline-block;
    color:var(--fs-color-primary);
}

.woocommerce-grouped-product-list-item__quantity{
    display: none;
}
/***************  CSS SIDEBAR BADGE  ***************/

#product-sidebar .badge .badge-inner,
#shop-sidebar .badge .badge-inner,
.post-sidebar .badge .badge-inner{
    width:50px !important;
    height:50px !important;
}

/***************  CSS MODAL PRODUCT LIGHTBOX  ***************/

.product-lightbox .product-quick-view-container .product-gallery{
    padding:30px !important;
}
.lightbox-content{
    border-radius: 5px;
}
/***************  CSS WOOCOMMERCE ALERT  ***************/

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  padding: 1em;
  margin: 0 0 2em;
  position: relative;
  background-color: #f6f5f8;
  color: #515151;
  border-top: 3px solid #7f54b3;
  list-style: none outside;
  width: auto;
  word-wrap: break-word;
}
.woocommerce-error .button,
.woocommerce-info .button,
.woocommerce-message .button {
  float: right;
}
.woocommerce-error li,
.woocommerce-info li,
.woocommerce-message li {
  list-style: none outside !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.woocommerce-message {
  border-top-color: #8fae1b;
}

.woocommerce-info {
  border-top-color: #1e85be;
}
.woocommerce-info::before {
  color: #1e85be;
}
.woocommerce-error {
  border-top-color: #b81c23;
}

/***************  CSS WOOCOMMERCE ERROR  ***************/
.cross-sells,
.message-wrapper li{
    display: none;
}
.message-wrapper li:first-child{
    display: block;
}

/***************  CSS SINGLE PRODUCT  ***************/
.accordion .accordion-inner{
    padding-left:0px;
    padding-right: 0px;
}

.product-section{
    padding-top: 20px;
}
.added_to_cart.wc-forward{
    display: none !important;
}
.sticky-add-to-cart--active{
    background: #FFF !important;
}

.full-screen-add-to-cart .add-to-cart-container .quantity{
    display: none;
}
.full-screen-add-to-cart .add-to-cart-container button{
    width:100%;
}
.has-sticky-product-cart .full-screen-add-to-cart .add-to-cart-container button{
    width:inherit;
    margin-left:10px !important;
}
body .nav .menu-item-has-block .sub-menu.nav-dropdown li{
    margin-left:0px !important;
    margin-right: 0px !important;
}

.woocommerce #review_form #respond p.form-submit input#submit, .woocommerce #reviews #comments ol.commentlist #respond p.form-submit input#submit,
#comments a.btn-reviews-now{
    background: var(--fs-color-secondary);
}

body.single-product .product-page-sections .product-section{
    border:0px;
    padding:0px;
}
body.single-product .product-page-sections .product-section .col{
    width:100%;
    flex-basis: 100%;
    max-width: 100%;
}
body.single-product .product-page-sections .product-section .col .mt{
    margin-top:0px;
    padding:10px 15px 10px 5px;
    border-bottom: 1px solid #00000026;
    color: var(--fs-color-primary);
}
div#reviews.woocommerce-Reviews .woocommerce-Reviews-title{
    text-transform: uppercase;
}

/***************  CSS WOOCOMMERCE DETAIL ORDER  ***************/

.woocommerce-thankyou-order-received,
.woocommerce-order-details__title{
    text-transform: uppercase;
}
.woocommerce-thankyou-order-details *{
    font-size:14px;
}
.product-quick-view-container .product-gallery{
    padding:20px;
}
/***************  CSS CHILD FLATSOME LOGO  ***************/

.child-flatsome-logo img{
    max-width:70%;
}
.child-flatsome-logo{
    width:100%;
    text-align: center;
}
/***************  CSS CHILD FLATSOME SEARCH LIVE ***************/

.col .live-search-results, .header .search-form .live-search-results, .header-block .live-search-results {
    background: #FFF;
}
.autocomplete-suggestion .search-price del{
    display: none !important;
}
.autocomplete-suggestion img{
    width:30px;
    height: 30px;
}
.has-box-vertical .col{
    flex-basis: 100%;
}
.has-box-vertical .col .col-inner{
    border:1px solid #EEE;
}

@media (max-width:849px){
    .live-search-results{
        display: none;
    }
}
/***************  CSS ARCHIVE PRODUCT  ***************/
.woocommerce-result-count,
.woocommerce-ordering{
    font-size:14px;
}
/***************  CSS ARCHIVE BLOG  ***************/

body.search .blog-wrapper.blog-archive,
body.archive .blog-wrapper.blog-archive{
    padding:0px;
}
body.search .blog-wrapper.blog-archive .archive-page-header,
body.archive .blog-wrapper.blog-archive .archive-page-header{
    padding-top:35px;
    padding-bottom: 30px;
}