/*
Theme Name: joyas

WooCommerce styles override
*/
.woocommerce .products ul li img,
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product a img,
.woocommerce li.product figure{
    margin: 0px!important;
}
.woocommerce li.product figure{
    overflow: hidden;
    position: relative;
}
#customer_details .col-1, #customer_details .col-2{
    padding: 15px;
}
.woocommerce li.product .product-image img{
    width: 100%;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    transition: 500ms ease-in-out;
    opacity:1;
    position:relative;
    z-index:2;
}
.woocommerce li.product .hover_hide img.woo-entry-image-secondary{
    position:absolute;
    left:0px;
    top:0px;
    opacity:0;
    z-index:1;
    
}

.woocommerce li.product:hover .hover_hide img.attachment-woocommerce_thumbnail,
.woocommerce li.product:hover .hover_hide img{
    opacity:0;
}
.woocommerce li.product:hover .hover_hide img.woo-entry-image-secondary{
    opacity: 1!important;
}
.woocommerce ul.products li.product .onsale,
.woocommerce-page ul.products li.product .onsale{
    border-radius: 3px;
    padding: 12px 10px;
    margin: 0px;
    min-height:auto;
    min-width: auto;
    line-height: 0px;
    font-weight: normal;
    border: 1px solid #8F8F8F;
    text-transform: uppercase;
    background: #fff;
    color: #000;
    display: block;
    font-size: 12px;
    top: 14px;
    right: 8px;
    letter-spacing: 2px;
    position:absolute;
    z-index:99;
    left: auto;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce-pagination {
    display: block;
    margin: 0px;
    padding: 0px;
    text-align: center;
    clear: both;
    border: none;
    padding-top: 20px;
}
.woocommerce nav.woocommerce-pagination ul li {
    
    padding: 0;
    margin: 0;
    display:inline-block;
    overflow: hidden;
    float: none;
}
.woocommerce nav.woocommerce-pagination ul li a, 
.woocommerce nav.woocommerce-pagination ul li span {
    margin: 0;
    text-decoration: none;
    padding: 0;
    line-height: 1;
    font-size: 1rem;
    font-weight: 400;
    padding:15px 18px;
    min-width: 1em;
    display: block;
    border: 1px solid var( --secondary-color );
    background: var( --quaternary-color );
    color: var( --secondary-color );
    border-radius: 3px;
    -webkit-border-radius: 3px;
}
.woocommerce nav.woocommerce-pagination ul li a.current, 
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus{
    background: var( --secondary-color );
    color: var( --quaternary-color );
}
form.processing{
    position: relative;
}
form.processing:after{
    background:url(assets/image/loader.svg) no-repeat;
    content:"";
    position:absolute;
    width:50px;
    right:0px;
    top:45%;
    bottom:0px;
    left:48%;
    z-index: 9;
}
form.processing:before{
    content: "";
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: 0px;
    top: 0px;
    background:#000;
    opacity: 0.5;
}



.woocommerce li.product ul.product-action-link li .alert{
    position: absolute;
    left: -50%;
    right: -50%;
    top: 30%;
    text-align: center;
    font-size: 90%;
}
.woocommerce li.product .removewhlist{
    position: absolute;
    font-size: 20px;
    right: 0px;
    top: 0px;
    z-index: 99;
}
/*
toolbar
*/
.joyas-shop-toolbar {
    margin-bottom: 40px;
    background:#FFF;
    padding:10px;
}
.woocommerce .joyas-shop-toolbar .woocommerce-ordering{
    margin-bottom:0
}
.joyas-shop-toolbar{
    display:block;
    padding:10px 0;
    border-top:1px solid #eaeaea;
    border-bottom:1px solid #eaeaea;
    margin-bottom:40px
}
.woocommerce .joyas-shop-grid-list{
    float:left;
    margin:0 20px 0 0
}
.woocommerce .joyas-shop-grid-list a{
    display:inline-block;
    width:34px;
    height:34px;
    line-height:34px;
    color:var(--primary-color);
    border:1px solid var(--primary-color);
    text-align:center;
    font-size:19px
}
.woocommerce .joyas-shop-grid-list a:last-child{
    margin-left:10px
}
.woocommerce .joyas-shop-grid-list a.active{
    color:var(--secondary-color);
    border-color:var(--secondary-color);
}
.woocommerce .joyas-shop-grid-list a:hover{
   color:var(--secondary-color);
    border-color:var(--secondary-color);
}
.woocommerce .woocommerce-ordering{
    float:left
}
.customSelect.orderby{
    font-size:13px;
    color:#999
}
.orderby.hasCustomSelect{
    width:100%;
    z-index:2
}
.customSelect.orderby{
    position:relative;
    border:1px solid #ddd;
    color:#555;
    height:34px;
    line-height:32px;
    padding:0 45px 0 15px;
    width:100%;
    z-index:1
}
.customSelect.orderby::after{
    font-family:fontawesome;
    content:'\f107';
    position:absolute;
    right:0;
    top:0;
    display:block;
    height:32px;
    width:32px;
    font-size:11px;
    color:#929292;
    border-left:1px solid #ddd;
    text-align:center
}
.woocommerce .woocommerce-ordering .orderby{
    width:auto;
    min-width:166px
}
.woocommerce .woocommerce-ordering .orderby span{
    width:auto;
    min-width:166px
}
.woocommerce .result-count{
    float:right;
    font-size:12px;
    line-height:34px;
    text-transform:uppercase;
    list-style:none;
    margin:0;
    padding:0
}
.woocommerce .result-count li{
    float:left
}
.woocommerce .result-count li.view-title{
    margin-right:6px;
    color:#555;
    letter-spacing:.6px
}
.woocommerce .result-count li.view-title:after{
    display:none
}
.woocommerce .result-count li:after{
    content:'/';
    color:#999;
    margin:0 3px
}
.woocommerce .result-count li a{
    color:#999
}
.woocommerce .result-count li a:hover{
    color:#555
}
.woocommerce .result-count li a.active{
    color:#555
}
.woocommerce .result-count li:last-child:after{
    display:none
}

/*
Tab
*/
.woocommerce div.product .woocommerce-tabs .panel{
    min-height: 280px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs{
    margin:0px;
    padding:0px;    
    border-top: 1px solid #e8e8e8;
    margin-right: -35px;
    margin-top: 10px;
    border-left: 1px solid #e8e8e8;
}
.woocommerce #content div.product .woocommerce-tabs ul.tabs li, .woocommerce div.product .woocommerce-tabs ul.tabs li, .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li, .woocommerce-page div.product .woocommerce-tabs ul.tabs li{
    display: block;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
    display:block;
    float:none;
    padding:0px;
    margin:0px;
        -webkit-border-radius:0px;
    -moz-border-radius:0px;
    border-radius:0px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
    display:block;
    font-size: 16px;
    text-align:left;
    color: #151515;
    border-bottom: 1px solid #e8e8e8;
   /* font-family: 'Roboto Condensed', sans-serif;*/
    padding: 23px 45px 23px 27px;
    outline:none;
    -webkit-border-radius:0px;
    -moz-border-radius:0px;
    border-radius:0px;
    position:relative;
    background: #fff;
    box-shadow: 0px 0px 131px 0px rgba(74,74,74,0.1);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
    border:none;
    background:none;

}
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
    display:none;
    border:none;    
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li:focus a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:focus{
    color: #fff;
    background-color:var(--secondary-color);
   
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after{
    display:none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a:after{
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "\ea7c";
    display: inline-block;
     font-family: 'IcoFont';
    color: #fff;
    font-size: 40px;
    
}
#reviews #comments{
    padding:0px;    
}
#reviews button.theme-btn{
    margin-left:0px;    
}

.woocommerce-product-gallery__image,
.woocommerce div.product div.images .flex-control-thumbs li img{
     border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    overflow: hidden;
}
 .woocommerce-page div.product div.summary{
    margin-top: 0px;
 }
 .woocommerce div.product div.images .flex-control-thumbs{
    margin: 0 -5px;
 }
.woocommerce div.product div.images .flex-control-thumbs li{
    padding: 5px;
 }
 .woocommerce #content div.product .woocommerce-tabs, .woocommerce div.product .woocommerce-tabs, .woocommerce-page #content div.product .woocommerce-tabs, .woocommerce-page div.product .woocommerce-tabs{
    padding-top: 50px;
    clear: both;
 }
.woocommerce .product .product_meta span.sku_wrapper, 
.woocommerce .product .product_meta span.posted_in,
ul.compare-wishlist-single-post,
.woocommerce .product .product_meta span.tagged_as {
    padding: 15px;
    border-bottom: 1px solid #dbdbdb!important;
    display: block;
    width: 100%;
    margin-bottom: 0px;
}
.woocommerce .product .product_meta span.tagged_as {
    border-bottom: none!important;
}
/*--------------------------------------------------------------
# quantity
--------------------------------------------------------------*/
.single.single-product .quantity {
    display: inline-block;
    margin: 1px 20px 0px 0 !important;
    padding: 0px;
}

button.plus, button.minus {
    border: 1px solid #dbdbdb;
    background: #f1f2f1;
    color:#000;
    font-size: 16px;
    line-height: 5px!important;
    min-width: 48px;
    vertical-align: top;
    float: left;
    max-width: 40px;
    padding:14px 15px;
    margin-top: 0px;
    -webkit-border-radius: 0px; 
    -moz-border-radius: 0px;
     border-radius: 0px;
}
button.plus:hover, button.minus:hover {
    background:var(  --secondary-color );
    color:var(  --quaternary-color );
}

button.plus {
    margin-left: -4px!important;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    -webkit-border-top-left-radius: 25px;
    -webkit-border-bottom-left-radius: 25px;
}


button.minus {
    margin-right: -4px!important;
     border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    -webkit-border-top-right-radius: 25px;
    -webkit-border-bottom-right-radius: 25px;
}
button.plus i{
    display: block;
    padding-left: 3px;
}
button.minus i{
    display: block;
    padding-right: 3px;
}
.single.single-product .quantity .input-text.qty.text,
.p-quantity .input-text.qty.text,
.woocommerce .quantity input.qty {
    -moz-appearance: textfield;
     -webkit-appearance: textfield;
    border: 1px solid #dbdbdb;
    color: #55595d;
    min-height: 34px;
    float: left;
    line-height:34px;
    width:50px;
    padding:5px;
    font-size:16px;
    background:#FFF;
    text-align: center;
    border-left: none;
    border-right:none;
    border-radius: 0px;
    margin-bottom: 0px;
}
.woocommerce #content div.product div.summary .btn{
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
    float: right;

}
.woocommerce div.product form.cart{
    text-align: center;

}

table.variations th, table.variations td {
    text-align: left!important;
    padding-left: 10px;
    padding-right: 10px;
    border-bottom: 1px solid #EAEAEA!important;
    vertical-align:middle;
    font-weight: normal;
}
.woocommerce div.product form.cart .variations select{
    border: 1px solid #ccc;
    padding: 10px;
    width:100%;
    display: block;
}
.woocommerce div.product form.cart .variations label{
    font-weight: normal;
}
.woocommerce-variation-add-to-cart.variations_button{
    clear: both;
    
}
.woocommerce-variation.single_variation{
    text-align: left;
    font-size: 90%;
    padding-bottom: 20px;
    color: var(--tertiary-color);
    min-height: 50px;
}
.related.products h2,
.upsells.products h2,
.cross-sells h2 {
    margin: 30px auto 30px auto;
    clear: both;
}

.woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
    float: right;
    width: 48%;
    clear: none;
}
.woocommerce #content div.product div.images, .woocommerce div.product div.images, .woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images {
    float: left;
    width: 48%;
}
.woocommerce div.product figure{
    margin: 0px auto;
}
.woocommerce div.product{
    position: relative;
}
.woocommerce .product .onsale{
    border-radius: 3px;
    padding: 12px 10px;
    margin: 0px;
    min-height:auto;
    min-width: auto;
    line-height: 0px;
    font-weight: normal;
    border: 1px solid #8F8F8F;
    text-transform: uppercase;
    background: #fff;
    color: #000;
    display: block;
    font-size: 12px;
    top: 14px;
    left: 8px;
    letter-spacing: 2px;
    position:absolute;
    z-index:99;
    right: auto;
}
.page-content, .entry-content, .entry-summary{
    margin-top: 0px;
}
#commentform input[type="text"],#commentform input[type="email"],#commentform textarea{
  
    margin-bottom: 0px;
}
#review_form p.form-submit{
    margin-left: 0px;
}
.comment-form-rating label,
.comment-form-rating p.stars{
    float: left;
}

p.comment-form-comment{
    clear: both;
}
#content div.product div.summary .star-rating{
    float: left;
}
#content div.product div.summary .woocommerce-review-link{
    float: right;
}

/*--------------------------------------*/
    /*Reivew
/*---------------------------------*/

#reviews h4.comments-title{
    margin-bottom:0px!important;
        
}
#reviews .comments-area{
    padding: 0px;
}

#reviews [class^="col-"], #reviews [class*=" col-"]{
    position: relative;
}
#commentform [class^="col-"] span.required, #commentform [class*=" col-"] span.required{
    position: absolute;
    right: 25px;
    top:15px;
}
#reviews .stars,
.woocommerce #reviews p.stars{
    float: left;
    margin-left: 15px;
    padding: 0px;
    margin-bottom:0px;
    margin-top:5px;
}
.comment-form-rating label{
    float: left;
}
#reviews .comment-form .comment-form-cookies-consent{
    padding-left: 20px;
    display: block;
    clear: both;
    width: 100%;
    padding-bottom: 0px;
}

#reviews .comment-meta img {width: 60px;height: 60px;border-radius: 50%;  float: left;}

#reviews .comment-text {
  width: calc(100% - 60px);
  padding-left: 20px;
  position: relative;
   float: right;
}
#reviews .comment-meta  .comment h6 a {
  text-transform: uppercase;
  color: #313131;
  margin: 10px 0 8px 0;
}
#reviews .comment-meta  .comment .date {
  text-transform: uppercase;
  font-size: 14px;
}
#reviews .comment-meta  .comment-text {margin-top:10px;}
#reviews .comment-text .meta{
    float:left;
}
#reviews .comment-text .star-rating {
    float: right;
}
#reviews .comment-text .description{
    clear: both;
    
}
#reviews .woocommerce-review__author{
    display: block;;
}
#reviews  .woocommerce-review__dash, #reviews .woocommerce-review__published-date{
    font-size: 11px;
}
#reviews .commentlist {
    display:block;
    margin:0px;
    padding:0px;
}
#reviews .commentlist li{
    padding-bottom: 35px;
    clear: both;
    list-style: none;

}
#reviews .commentlist p.meta{
    margin-bottom: 0px;
}
#reviews .space-margin{
    padding-bottom: 50px;
    clear: both;
    display: block;
}
#review_form_wrapper{
    clear: both;
}
#review_form .comment-reply-title{
    font-size: 1.5rem;
    padding-top: 30px;
    clear: both;
    display: block;
    padding-bottom:20px;
}
#review_form .comment-notes{
    padding-bottom: 0px;
    margin-bottom: 0px;
    font-size: 12px;
    padding-bottom: 10px;
}
#review_form p.comment-form-author{
    margin-right: 1.8%;
}
#review_form p.comment-form-author,
#review_form p.comment-form-email{
    width: 48%;
    display: inline-block;
}

/*--------------
# CART
--------------*/
dl.variation{
    margin: 0px;
    padding: 0px;
    display: block;
}
.variation dt,
.variation dd{
    display: inline-block;
    font-size: 14px;
    margin: 0px;
    padding: 0px;
}
dl.variation p{
    margin-bottom: 0px;
}
.woocommerce-cart .woocommerce table.shop_table.cart{
    border:none;    
}
.woocommerce-cart .woocommerce table.shop_table.cart tr th,
.content-area table.woocommerce-checkout-review-order-table th.product-name,
.content-area table.woocommerce-checkout-review-order-table th.product-total,
table.shop_table_responsive tr th {
    background-color:rgba(var(--secondary-color-rgb ),0.2);
    text-align:center;
    border:none;
    padding:15px 10px;
    color: var(--secondary-color);
    font-family: var(--heading-fonts);
    font-size: 14px;
    text-transform: uppercase;
    background-color: #f2f2f2;
}
.woocommerce-cart .woocommerce table.shop_table.cart tr th.product-name{
    text-align: left;
   
}
.woocommerce-cart-form table.shop_table.cart tr td{
    border:none;
    vertical-align:center;
    border-bottom: 1px solid #d6d6d6;
    vertical-align:middle!important;
    text-align: center;
    padding: 30px 15px!important;


}
.woocommerce-cart-form table.shop_table_responsive tr td{
    padding: 30px 15px!important;
}
.woocommerce-cart table.shop_table_responsive tr td.product-remove,
.woocommerce-cart .woocommerce table.shop_table.cart tr th.product-remove{
    padding:0px 5px!important;
    width: 10px;
     
}
.woocommerce-cart .woocommerce table.shop_table.cart tr td.product-name {
    text-align: left;
}
.woocommerce-cart .woocommerce table.shop_table.cart tr td.actions{
    border-bottom:none; 

}
.woocommerce table.shop_table tr td.product-remove .remove,
.woocommerce table.shop_table tbody td.product-remove .remove {
    
    background-color: transparent;
    font-size: 30px;
}
td.product-name a{
    color:var(--primary-color);
    font-family: var(--heading-fonts);
    margin-bottom: 5px;
    display: block;
}
td.product-name a:hover{
    color:var(--secondary-color);
}

#add_payment_method table.cart img, .woocommerce-cart table.cart img, .woocommerce-checkout table.cart img {
    width:100%;
    max-width:125px;    
}
.woocommerce-cart .woocommerce table.shop_table.cart tr td.product-thumbnail{
    width:130px;    
}
.woocommerce-cart .woocommerce table.shop_table.cart tr td.product-quantity{
    width:190px;
}
.shop_table .actions label{
    display: none;
}
.woocommerce-cart table.cart td.actions .coupon .input-text {
   border:1px solid var(--secondary-color);
    min-width: 200px;
    float: left;
    max-width: 200px;
    padding: 11.5px 15px;
}

.shop_table .actions .button{
    font-family: var( --heading-fonts );
    text-transform: uppercase;
    letter-spacing:2px;
    color: var(--quaternary-color);
    border:1px solid var(--secondary-color);
    background:var(--secondary-color);
    outline: none;
    cursor: pointer;
    padding: 12px 30px;
    display: inline-block;
    position: relative;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    overflow: hidden;
    font-size:14px;
    position: relative;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    z-index: 1;
    -moz-osx-font-smoothing: grayscale;
    overflow: hidden;
    margin: 0px;
    line-height: 22px;
    float: right;
}

.shop_table .actions .coupon .button {
    float: left;
  
    margin-left: -3px;
    border-bottom-left-radius: 0px;
     border-top-left-radius: 0px;
}
.shop_table .actions .button:hover,
.shop_table .actions .button:focus{
    background: var( --quaternary-color );
    color: var(--secondary-color);
    border:1px solid var(--secondary-color);
}
.shop_table .actions .button:disabled, .shop_table .actions .button[disabled] {
    opacity: 0.5;
}
.shop_table .actions .button:disabled:hover, .shop_table .actions .button[disabled]:hover {
  
    color: var(--quaternary-color);
    border:1px solid var(--secondary-color);
    background:var(--secondary-color);
}


/*-----------------*/
.woocommerce-cart .woocommerce .cart-collaterals{
    float: right;
    width: 100%;
    max-width: 420px;

}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table.shop_table {
    border: 1px solid #ccc;
    background-color: #f6f6f6;
    border-radius: 0;
    padding: 0 30px;
   
}

.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table.shop_table th,
.content-area table.woocommerce-checkout-review-order-table th,
.content-area table.woocommerce-checkout-review-order-table td.product-name {
    background-color: transparent;
    color: #000;
    font-weight: 400;
    padding: 15px;
    border-top: 0;
    text-align:left;
    font-size:16px;
    vertical-align:top;
    border-bottom: 1px solid #d6d6d6;
    border-left: 1px solid #ccc;
    text-align: right;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table.shop_table td {
    text-align: right;
    padding: 15px;
    border-top: 0;
    border-bottom: 1px solid #d6d6d6;
    color:#000;
    vertical-align:top;
    text-align: left;
}

.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table.shop_table label {
    font-weight:normal; 
}

.woocommerce ul#shipping_method{
    display: block;
    text-align:right;
    margin:0px;
    padding:0px;
    font-size: 12px;    
}
.woocommerce ul#shipping_method label{
    margin-left: 10px;
    display: inline-block;
    margin-top: -1px;
}
.woocommerce ul#shipping_method li{
    list-style: none;
    text-align: left;
}
p.woocommerce-shipping-destination{
    clear:both;
    text-align:left;
    font-size: 12px;    
}
.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals {
    width:100%;
    float:none;
    display:block;  
}
.woocommerce .cart-collaterals .cart_totals h2{
    display:none;   
}

.shipping-calculator-form{
    display:block!important;    
}
.woocommerce form .form-row .select2-container .select2-selection--single {
    border: 1px solid #ccc;
    padding: 9px 5px;
    height: auto;
    border-radius: 0;
    margin-bottom:5px;
}

.woocommerce form .form-row .select2-container .select2-selection--single .select2-selection__arrow {
    top: 12px;
}
.woocommerce-cart .woocommerce .cart-collaterals .woocommerce-shipping-calculator .input-text, .woocommerce-cart .woocommerce .cart-collaterals .woocommerce-shipping-calculator select {
    width: 100%;
    border: 1px solid #ccc;
    padding:12px;
    margin-bottom:5px;
}
.shipping-calculator-button{
    display:none!important; 
}
#theme-cart-total .shipping-calculator-form{
    display:none!important;
}
.wc-proceed-to-checkout .checkout-button.theme-btn,
.place_order_btn.theme-btn{
    font-size: 16px;
    padding: 15px 30px;
    color: var(  --quaternary-color )!important;
}
.place_order_btn.theme-btn{
    width: auto;
}
.wc-proceed-to-checkout .checkout-button.theme-btn:before,
.place_order_btn.theme-btn:before  {
    -webkit-transform: scale3d(-13, 9, 1);
    transform: scale3d(-13, 9, 1);

}
.wc-proceed-to-checkout .checkout-button.theme-btn span,
.place_order_btn.theme-btn span{
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
}
.wc-proceed-to-checkout .checkout-button.theme-btn i,
.place_order_btn.theme-btn i{

    -webkit-transform: translateX(5px) scale(1.9); 
    -moz-transform: translateX(5px) scale(1.9); 
    -ms-transform: translateX(5px) scale(1.9); 
    transform: translateX(5px) scale(1.9);
}
.wc-proceed-to-checkout .checkout-button.theme-btn:hover:before,
.place_order_btn.theme-btn:hover:before,
.wc-proceed-to-checkout .checkout-button.theme-btn:focus:before,
.place_order_btn.theme-btn:focus:before   {
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scale3d(1, 2, 1);
    transform: scale3d(1, 2, 1);
    -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
    transition: transform 0.3s, opacity 0.3s;
    -webkit-transition-timing-function: cubic-bezier(0.7,0,0.9,1);
    transition-timing-function: cubic-bezier(0.7,0,0.9,1);
}
.wc-proceed-to-checkout .checkout-button.theme-btn:hover,
.place_order_btn.theme-btn:hover,
.wc-proceed-to-checkout .checkout-button.theme-btn:focus,
.place_order_btn.theme-btn:focus{
    color: var( --secondary-color )!important
}
.cross-sells{
    clear: both;
    display: block;
    padding-top: 100px;
}
.woocommerce-pagination{
    padding-bottom: 30px;
}
#customer_details .col-1,
#customer_details .col-2{
    width:50%;
    max-width:50%;
    float:left;
}
#customer_details .form-row input, #customer_details .form-row textarea {
    display: block;
    width: 100%;
    padding: 9px;
    border: 1px solid #ccc;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    border: solid 1px #cfcfcf;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background: rgba(255,255,255,0.7);
    -webkit-box-shadow: 0px;
    -moz-box-shadow: 0px;
    box-shadow: 0;
}
.checkout_coupon{
    position: relative;
    margin-bottom: 50px;
}
.checkout_coupon p.form-row {
    margin-bottom: 0px;
}
.checkout_coupon button.button{
    position: absolute;
    right: 2px;
    bottom: 2px;
}
.checkout_coupon .input-text{
    margin-bottom: 0px;
}
.blockUI.blockOverlay{
    z-index: 99!important;
}
.content-area table.woocommerce-checkout-review-order-table th.product-name,
.content-area table.woocommerce-checkout-review-order-table td.product-name{
    text-align: right;
}
.content-area table.woocommerce-checkout-review-order-table th.product-total,
.content-area table.woocommerce-checkout-review-order-table td {
    text-align: left;
}
ul.wc_payment_methods{
    display: block;
    margin: 30px 0px;
    padding: 0px;
     background:#d6d6d6;
    padding: 15px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
}
ul.wc_payment_methods li{
    border:none;
    list-style: none;
    list-style: none;
    margin-bottom: 10px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
}
ul.wc_payment_methods li p,
ul.wc_payment_methods li label{
    margin-bottom: 0px!important;
    padding-bottom: 0px!important;
}

ul.wc_payment_methods li p{
    padding-left: 35px;
    padding-top: 5px;
    font-size: 12px;
}
.woocommerce-columns .col-1,
.woocommerce-columns .col-2{
    width: 50%!important;
    max-width: 100%;
    float: left;
}
#place_order.button{
    text-transform: uppercase;
    letter-spacing: 3px;
    word-spacing: 3px;
    padding: 15px 25px;
}
.woocommerce-form.woocommerce-form-login.login{
    display: block;
}
.woocommerce-form.woocommerce-form-login.login input{
    margin-bottom: 0px;
}
/*.woocommerce-form.woocommerce-form-login.login .form-row.woocommerce-form-row{
    width: 50%;
    float: left;
    clear: none;
}*/
.woocommerce-form.woocommerce-form-login.login label{
    font-weight: normal;
    clear:both;
    display: block;
    width: 100%;
}
.woocommerce-form.woocommerce-form-login.login span.password-input{
    display: block;
    width: 100%;
}
.woocommerce-form.woocommerce-form-login.login .form-row{
    clear: both;
}

.woocommerce-MyAccount-navigation{
    width: 25%;
    float: left;
}
.woocommerce-MyAccount-content{
    width: 70%;
    float: right;
}
.woocommerce-MyAccount-navigation ul{
    margin: 0px;
    padding: 0px;
}
.woocommerce-MyAccount-navigation li{
    list-style: none;
}
.woocommerce-MyAccount-navigation li a{
    display: block;
    padding: 10px;
}
.woocommerce-MyAccount-navigation li a{
    display: block;
    padding: 10px;
    border-bottom: solid 1px #eee;
    padding-left: 20px;
    position: relative;
    font-weight: normal;
}
.woocommerce-MyAccount-navigation li a:after{
    font-family: 'IcoFont' !important;
    content: "\ea98";
    position: absolute;
    left: 0px;
    top: 10px;
}
.woocommerce-orders-table.woocommerce-MyAccount-orders td{
    border-bottom: 1px solid #eee;
    padding: 5px;
    font-weight: normal;
}
.woocommerce-MyAccount-content .col-1,
.woocommerce-MyAccount-content .col-2{
    width: 50%;
    float: left;
    max-width: 50%;
}
.woocommerce-MyAccount-content label{
    display: block;
    clear: both;
    width: 100%;
}
.woocommerce-MyAccount-content input{
    margin-bottom: 0px;
}
.woocommerce-MyAccount-content .form-row span.woocommerce-input-wrapper{
    width: 100%;
}
.edit-account fieldset,
.woocommerce-order-details,
.woocommerce-customer-details{
    background: #eee;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    padding: 0px 20px;
    margin-bottom: 30px;
    position: relative;
}
.edit-account legend,
.woocommerce-order-details h2,
.woocommerce-customer-details h2{  
    display: inline-block;
    padding: 5px 10px;
    color: #FFF;
    background: var(--secondary-color);
    width: auto;
     border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    font-weight:normal;
    text-transform:capitalize;
    font-size: 16px;
    letter-spacing: 2px;
    word-spacing: 3px;
}
.woocommerce-order-details h2,
.woocommerce-customer-details h2{ 
    position: absolute;
    top: -20px;
}
.woocommerce-order-details,
.woocommerce-customer-details{ 
    padding: 20px;
    margin-top:50px;
}
.woocommerce-form-login__submit{
    display: block;
}
.rd-navbar-static .rd-navbar-subpanel{
    width: 100%;
}
.wc-proceed-to-checkout .button,
.components-button.wc-block-components-button{
    width: 100%!important;
    display: block;
    text-align: center;
    text-transform: uppercase;
    font-size: 110%;
    word-spacing: 2px;
    letter-spacing: 2px;
}
.components-button.wc-block-components-button{
    font-size: 90%;
    border-radius: 5px;
    text-decoration:none;
}

.woocommerce-checkout-review-order td{
    border-bottom: 1px solid #d6d6d6;
    border-right: 1px solid #ccc;

    padding-left: 10px;
    padding-right: 10px;
}
table.woocommerce-checkout-review-order-table th{
     border:1px solid #d6d6d6!important;
}

/*--------------------------------
        # CART
--------------------------------*/
#customer_details .form-row{
    padding-left: 0px;
}
#customer_details .form-row label,
#customer_details .form-row .woocommerce-input-wrapper{
    display: block;
    font-weight: normal;
    clear: both;
    width: 100%;
}
#customer_details .form-row.form-row-wide{
    clear: both;
}
#customer_details .form-row input, #customer_details .form-row textarea{
    margin-bottom: 0px;
}

/*---------------------------------------
# Widgets
-----------------------------------------*/
#secondary ul.product_list_widget li:hover,
#colophon.site-footer ul.product_list_widget li:hover,
#secondary ul.product_list_widget li.focus,
#colophon.site-footer ul.product_list_widget li.focus{
    padding-left: 0px;
    text-align: left;
}
#secondary ul.product_list_widget li:before,
#colophon.site-footer ul.product_list_widget li:before{
    display: none;
}
#secondary ul.product_list_widget li img,
#colophon.site-footer ul.product_list_widget li img{
  
    border-radius: 5px;
    -webkit-border-radius: 5px;
}
#secondary ul.product_list_widget li a{
    font-weight:bold;
    word-spacing: 2px;
}
.checkout.woocommerce-checkout{
    margin:0px -15px;
}
@media only screen and (max-width : 600px) {
   .checkout.woocommerce-checkout{
    margin: 0px;
   }
    .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%;
        float: none;
        display: block;
       
        clear: both;
    }
    .single.single-product .quantity{
        display: block;
        margin: 0px auto!important;
        float: none!important;
        width: 140px;
       
    }
    .woocommerce #content div.product div.summary .btn{
        float: none;
        margin: 0px auto;
        margin-top: 15px;
    }
    .woocommerce div.product .woocommerce-tabs ul.tabs{
        margin-right: 0px;
    }
    .woocommerce-cart .woocommerce table.shop_table.cart tr td.product-thumbnail,
    .woocommerce-cart table.shop_table_responsive tr td.product-remove, .woocommerce-cart .woocommerce table.shop_table.cart tr th.product-remove{
        width: 100%;
    }
    .woocommerce-cart .woocommerce table.shop_table.cart tr td.product-quantity{
        width: auto;
    }
    td.product-quantity .quantity{
        float: right;
        transform: translate(10px,-22px);
    }
    .shop_table .actions .button{
        display: block;
        float: none;
        margin: 15px 0px;
        width: 200px;
    }
    .shop_table .actions .coupon .button{
        border-radius: 5px;
        -webkit-border-radius: 5px;
    }
    .woocommerce-cart .woocommerce .cart-collaterals .cart_totals table.shop_table td{
        text-align: right;
    }
    #customer_details .col-1, #customer_details .col-2{
        width: 100%;
        max-width: 100%;
    }
    .woocommerce-form.woocommerce-form-login.login .form-row.woocommerce-form-row{
        width: 100%;
        float: none;
        clear: both;
    }
    .woocommerce-LostPassword.lost_password{
       transform: translateY(0px);
       float: none;
    }
    .woocommerce-MyAccount-navigation{
        margin-bottom: 30px;
    }
    .woocommerce-MyAccount-navigation,
    .woocommerce-MyAccount-content{
        width: 100%;
        float: none;
    }
    .woocommerce.joyas-shop-product-carousel-wrap ul.products li.product,
    .woocommerce ul.products.ata-product-sidebar-carousel li.product{
        width:100%!important;   
    }
    .ata-sidebar-info{
        min-height:250px;
        display:block;
        margin-bottom:20px; 
    }
    ul.products.ata-product-sidebar-carousel .owl-nav {
        display:none;
        visibility:hidden;
    }
    ul.smart_attribute li{
        width:48%;  
    }
    ul.products.ata-product-sidebar-carousel li.product{
        margin-bottom:30px; 
    }
}

/*------------------------ -----------------
    Product list
----------------------------------------*/

ul.products li.product.do-to-list{
    float: none!important;
    width:100%!important;
    overflow: hidden;
    padding: 15px;
}

ul.products li.product.do-to-list .woocommerce-LoopProduct-link{
    max-width: 260px;
    display: table-cell;
    width: 260px;
    vertical-align: middle;
}
ul.products li.product.do-to-list .product_wrap{
    vertical-align: middle;
    display: table-cell;
    text-align: left;
    height:100%;
    vertical-align: middle;
    margin-top: 0px;
    padding-top: 0px;
}
ul.products li.product.do-to-list .product_wrap .price{
    margin-bottom: 10px;
}
ul.products li.product .show-on-list{
    display: none!important;
}
ul.products li.product .show-on-list.show{
    display:block!important;
    clear: both;
    margin-bottom: 30px;
}
ul.products li.product.do-to-list .show-on-list{
    display: block;
}

ul.products li.product.do-to-list .product-image{
   
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px);
}
ul.products li.product.do-to-list .btn,
.woocommerce li.product.do-to-list .btn.product_type_variable{
    max-width: 70%;
    min-width: 250px;
    width: auto;
}
.woocommerce li.product.do-to-list ul.product-action-link{
    left: 50px;
    transform: translate(0,0);
}
.woocommerce li.product.do-to-list:hover ul.product-action-link {
    opacity: 1;
    visibility:visible;
 
}
.woocommerce li.product.do-to-list .show-on-list{
    display: block!important;
    margin-bottom: 30px;
    clear: both;
}
.woocommerce li.product a.xoo-qv-button{
    border:none;
}
.woocommerce li.product.do-to-list .button-wrap{
    max-width: 280px;
}
ul.compare-wishlist-single-post{
    clear: both;

}
ul.compare-wishlist-single-post li{
    display:inline-block;
    list-style: none;
    clear: both;
    position: relative;
    width: 49%;
    
}
ul.compare-wishlist-single-post li i{
    
    margin-right:5px;
}
ul.compare-wishlist-single-post a{
    color: var(--tertiary-color);
}
ul.compare-wishlist-single-post a:hover,
ul.compare-wishlist-single-post a:focus{
    color: var(--secondary-color);
}
h6.heading-share{
    margin:0px;
    padding:10px 0px;
    float:left;
    margin-right:30px;
    margin-top:20px;
}
ul.single-product-extra-container{
    margin:0px;
    padding:0px;
    float:left;
    margin-top:20px;
}
.single-product-extra-container li {
    float: left;
    margin-bottom: 5px;
    margin-right: 5px;
    list-style:none;
}
.single-product-extra-container li a{
    border: 1px solid var( --secondary-color );
    color: var( --secondary-color );
    height: 45px;
    line-height: 45px;
    text-align: center;
    transition: all 0.3s ease 0s;
    width: 45px;
    display:inline-block;

}
.single-product-extra-container li a:hover{
    background:var( --secondary-color );
    color:#FFF;
}
h2.woocommerce-Reviews-title{
    font-size:22px;
    margin-bottom: 30px!important;
}
.woocommerce-product-attributes p{
    display:block;
    margin-bottom:0px;
    padding-bottom:0px;
}

.woocommerce-product-attributes td,
.woocommerce-product-attributes th{
    border-bottom:1px solid #D7D7D7;
    padding:15px;
}
.mwae-product-list-button .input-text{
    width:80px !important;
    float:left;
    min-height:46px;
    padding:0px;
    border-left:0px;
    border-right:0px;
    border-radius:0px;
}
.mwae-product-list-button .quantity{
    float:right;    
}
.mwae-product-lists .row{
    margin-bottom:30px; 
}
.mwae-product-list-button .single_add_to_cart_button{
    max-width:165px;    
}

.ata-product-carousel.products{
    width:100%!important;
    display:block;  
}

@media only screen and (max-width: 600px) {
  .woocommerce ul.products.ata-product-sidebar-carousel li.product {
      padding-bottom:20px;
  }
  .elementor ul.smart_attribute li{
      width:45%;  
  }
  ul.products li.product.do-to-list .woocommerce-LoopProduct-link,
  ul.products li.product.do-to-list .product_wrap{
      display:block;
      width:100%;
      max-width:100%;
      clear:both;
  }
  .list-grid-nav,
  .woocommerce .woocommerce-ordering,
  .woocommerce .result-count {
    float: none;
    display: block;
    text-align: center;
    padding-bottom:10px;
    }
  .woocommerce .result-count li{
      float:none;
      display:inline-block;
  }
  .woocommerce ul.products li.do-to-list.product, .woocommerce-page ul.products li.do-to-list.product {
        width: 100% !important;
        clear: none !important;
        margin: 0% !important;
        display:block !important;
  }
}

.summary.entry-summary {
  background-color: #EEEFF1;
  padding: 30px;
  border-radius: 8px;
  
}
.summary.entry-summary .woocommerce-product-details__short-description{
    clear: both;
    min-width: 0;
    overflow-wrap: anywhere;
}

.summary.entry-summary .woocommerce-product-details__short-description img,
.summary.entry-summary .woocommerce-product-details__short-description video,
.summary.entry-summary .woocommerce-product-details__short-description iframe,
.summary.entry-summary .woocommerce-product-details__short-description embed,
.summary.entry-summary .woocommerce-product-details__short-description object {
    max-width: 100%;
    height: auto;
}
table.variations{
    background: #fff;
    border-radius: 8px;
    -webkit-border-radius: 8px;
}
table.variations select{
    margin-top: 10px;
}
table.variations th{
    color: var(--tertiary-color);
    width: 25%;
    padding-left: 30px;
}
.product_meta > span{
     color: var(--tertiary-color);
}
.product_meta span > span{
    margin-right: 10px;
   
}
.summary.entry-summary .price, .summary.entry-summary .price ins {
  font-size: 20px;
  float: left;

}
.summary.entry-summary .woocommerce-product-rating{
    float: right;
}

ul.product-action-link li a.loading::after, .woocommerce li.product .button.loading::after {
  background: url(assets/image/loader-h.svg) no-repeat;
  content: "";
  position: absolute;
  width: 50px;
  right: 0;
  top: -15px;
  bottom: 0;
}
.woocommerce-NoticeGroup{
    padding: 15px;
}
.pswp{
    z-index: 9999;
}

#page table.wc-block-cart-items,
.wp-block-woocommerce-cart-totals-block .wc-block-cart__totals-title{
    border:1px solid hsla(0,0%,7%,.11)!important;
}
#page table.wc-block-cart-items th,
.wp-block-woocommerce-cart-totals-block .wc-block-cart__totals-title{
    background:#EDEDED!important;
    text-align: left;
    border: none;
    padding: 15px!important;
    font-family: var(--heading-font);
    font-size: 14px!important;
    color: var(--secondary-color)!important;
}

#page table.wc-block-cart-items .wc-block-cart-item__total{
    border-left:1px solid hsla(0,0%,7%,.11)!important;
}
.wp-block-woocommerce-cart-totals-block .wc-block-cart__totals-title{
    border-bottom: none!important;
}
.wp-block-woocommerce-cart-totals-block .wc-block-components-totals-wrapper,
.wp-block-woocommerce-cart-totals-block .wp-block-woocommerce-cart-order-summary-totals-block{
    border-left:1px solid hsla(0,0%,7%,.11)!important;
    border-right:1px solid hsla(0,0%,7%,.11)!important;
}
.wp-block-woocommerce-cart-totals-block .wc-block-components-totals-wrapper:last-child{
    border-bottom: 1px solid hsla(0,0%,7%,.11)!important;
}
.wp-block-woocommerce-cart-totals-block .wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-wrapper{
    border:none!important;
}
#page table.wc-block-cart-items .wc-block-cart-items__header-total{
    text-align: right;
}
table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-product{
    visibility: visible!important;
}
table.wc-block-cart-items .wc-block-cart-item__prices{
    float: left;
}
table.wc-block-cart-items .wc-block-components-product-badge{
    float: left;
    transform: translateY(-2px);
    margin-left: 30px;
}
table.wc-block-cart-items .wc-block-components-product-metadata__description{
    padding-top: 5px;
    padding-bottom: 10px;
}
table.wc-block-cart-items .wc-block-components-product-metadata__description,
table.wc-block-cart-items .wc-block-cart-item__quantity{
    clear: both;
}
table.wc-block-cart-items input.wc-block-components-quantity-selector__input{
    height: 26px;
    min-height: 26px;
    font-size: 16px;
    font-weight: normal;
    color: #000;
    box-shadow:none!important;
}
table.wc-block-cart-items td.wc-block-cart-item__product{
    padding-bottom: 5px!important;
}
table.wc-block-cart-items .wc-block-components-quantity-selector{
    float:left;
}
table.wc-block-cart-items .wc-block-cart-item__remove-link{
    float: left!important;
    margin-left: 20px!important;
    margin-top: 8px!important;
}
table.wc-block-cart-items .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button{
    font-size: 20px;
     color: #000;
}
table.wc-block-cart-items .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:focus {
    box-shadow:none!important;
    background:var(--secondary-color);

}
.wc-block-components-sidebar .wc-block-cart__submit{
    padding-top: 30px;
}
.wc-block-cart table.wc-block-cart-items td,
.wp-block-woocommerce-cart-order-summary-block,
.wc-block-checkout .wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-checkout .wp-block-woocommerce-checkout-order-summary-block{
    background: var(--bg-color)!important;
}
.wc-block-checkout .wc-block-components-sidebar-layout .wc-block-components-main{
    padding: 20px!important;
}
.wc-block-components-sidebar{
    padding: 20px;
    margin-top: 0px!important;
    border-radius: 0px!important;
    padding-top: 0px;
}
.wp-block-woocommerce-cart-totals-block .wc-block-components-totals-wrapper{
    padding:10px;
}
#customer_login .col-1 .woocommerce-form.woocommerce-form-login.login{
    padding-right: 20px;
}
.woocommerce-form.login label,
.woocommerce-form.woocommerce-form-register label{
    display: block;
    width: 100%;
}
.woocommerce-form.woocommerce-form-login.login span.password-input,
.woocommerce-form.woocommerce-form-register .password-input,
span.password-input{
    width: 100%;
    display: block;
    position: relative;
}
.woocommerce-form.woocommerce-form-login.login span.password-input .show-password-input,
.woocommerce-form.woocommerce-form-register span.password-input .show-password-input,
span.password-input .show-password-input{
    position: absolute;
    right: 00px;
    bottom: 0px;
    top: 0px;
    height:auto;
    margin:0px;
    border: none!important;
    outline: none!important;
    color: var(--secondary-color);
    background:none!important;
}

.woocommerce-form.woocommerce-form-login.login span.password-input .show-password-input:before,
.woocommerce-form.woocommerce-form-register span.password-input .show-password-input:before,
span.password-input .show-password-input:before{
    font-family: "bootstrap-icons";
    content: "\f340";
    background: none!important;
    
}
.woocommerce-form.woocommerce-form-login.login span.password-input .show-password-input.display-password:before,
.woocommerce-form.woocommerce-form-register span.password-input .show-password-input.display-password:before,
span.password-input .show-password-input.display-password:before{
   content: "\f341";
}
.woocommerce-form.woocommerce-form-login.login .form-row{
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    width: auto;
}
.woocommerce-form.woocommerce-form-login.login .form-row.form-row-wide{
    display: block;
}
.woocommerce-form.woocommerce-form-register .form-row{
    display:block!important;
}
.woocommerce-form.woocommerce-form-login.login .woocommerce-form-login__rememberme{
    width: auto;
    margin-bottom: 0px;
    margin-right: auto;
    margin-left: 10px;
    display: flex;
}
.woocommerce-button.button.woocommerce-form-login__submit{
    margin-top: 0px;
}
.woocommerce-form.woocommerce-form-login.login input[type="checkbox"]{
    margin: 0px 3px!important;
}

.woocommerce-form.woocommerce-form-register input{ margin-bottom:0px }

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity{
    display: flex!important;
    flex-direction: initial!important;
    vertical-align: center;
}
#page table.wc-block-cart-items{
    margin-top: 0px!important;
}
#page table.wc-block-cart-items td{
    border: 1px solid #EDEDED;
}
#page table.wc-block-cart-items .wc-block-cart-item__total{
    display: table-cell;
}
.wc-block-cart table.wc-block-cart-items td{
    padding: 10px!important;
}
 table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link{
    margin-top: 0px!important;
 }

/* Keep every product image window consistent across the store. */
.woocommerce ul.products li.product:not(.do-to-list) {
    display: flex;
    flex-direction: column;
}
.woocommerce ul.products li.product:not(.do-to-list) > .woocommerce-LoopProduct-link {
    display: block;
    flex: 0 0 auto;
}
.woocommerce ul.products li.product:not(.do-to-list) .product-image,
.woocommerce ul.products li.product:not(.do-to-list) .product-image figure {
    width: 100%;
    height: 280px !important;
    margin: 0 !important;
    overflow: hidden;
    background: #fff;
}
.woocommerce ul.products li.product:not(.do-to-list) .product-image figure {
    display: flex;
    align-items: center;
    justify-content: center;
}
.woocommerce ul.products li.product:not(.do-to-list) .product-image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}
.woocommerce ul.products li.product:not(.do-to-list) .product_wrap {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}
.woocommerce ul.products li.product:not(.do-to-list) .button-wrap {
    margin-top: auto;
}
@media (min-width: 768px) and (max-width: 1199px) {
    .woocommerce ul.products li.product:not(.do-to-list) .product-image,
    .woocommerce ul.products li.product:not(.do-to-list) .product-image figure {
        height: 220px !important;
    }
}
@media (max-width: 767px) {
    .woocommerce ul.products li.product:not(.do-to-list) .product-image,
    .woocommerce ul.products li.product:not(.do-to-list) .product-image figure {
        height: 180px !important;
    }
}

/* Product description: keep the reading column focused and replace the oversized pill tab. */
.single-product.woocommerce div.product .woocommerce-tabs {
    width: 100%;
    max-width: 1180px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 42px;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex;
    width: min(100%, 920px);
    max-width: 920px;
    margin: 0 auto !important;
    padding: 0 0 12px !important;
    align-items: flex-end;
    border: 0 !important;
    border-bottom: 1px solid #e9edef !important;
    gap: 0;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li,
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li.description_tab {
    position: relative;
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li:focus a,
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a:focus {
    display: inline-block;
    height: auto;
    padding: 0 0 11px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #69232e !important;
    color: color-mix(in srgb, var(--joyas-theme-dark, var(--primary-color, #762536)) 96%, #000 4%) !important;
    font-family: var(--heading-font, inherit);
    font-size: 24px !important;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after {
    position: absolute;
    right: 0;
    bottom: -13px;
    left: 0;
    height: 4px;
    border-radius: 999px;
    background: var(--secondary-color, #f34f6b);
    content: "";
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active a::after {
    display: none !important;
}

.single-product.woocommerce div.product .woocommerce-tabs .product-details-wrap {
    width: 100%;
    max-width: 920px;
    margin: 0 auto;
    padding-top: 30px;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description {
    box-sizing: border-box;
    width: min(100%, 820px);
    max-width: 820px;
    min-height: 0;
    min-width: 0;
    margin: 0 auto !important;
    color: #25282b;
    font-size: 16px;
    line-height: 1.85;
    display: flow-root;
    overflow-wrap: anywhere;
    isolation: isolate;
}

/* Keep oversized content inside the description column as a second safety net. */
.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > * {
    max-width: 100%;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description img,
.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description video,
.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description iframe,
.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description embed,
.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description object {
    max-width: 100%;
    height: auto;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > div:first-child {
    margin: 0;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description p {
    margin: 0 0 26px !important;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > div:first-child ul {
    margin: 0;
    padding-left: 25px;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > div:first-child li {
    margin: 0 0 8px;
    padding-left: 4px;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section {
    margin: 43px 0 0;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section h2 {
    display: flex;
    margin: 0 0 17px !important;
    align-items: center;
    color: #69232e;
    color: color-mix(in srgb, var(--joyas-theme-dark, var(--primary-color, #762536)) 96%, #000 4%);
    font-family: var(--heading-font, inherit);
    font-size: 27px !important;
    font-weight: 700;
    line-height: 1.25;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section h2 button {
    display: none !important;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section:first-of-type > div {
    overflow-x: auto;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    background: #fff;
    font-size: 14px;
    line-height: 1.45;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description table td {
    padding: 14px 15px;
    border: 1px solid #e8edef;
    color: #25282b;
    vertical-align: middle;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description table tr:first-child td {
    background: #fff7f8;
    color: #15191b;
    font-weight: 650;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section:last-of-type {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 34px;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section:last-of-type h2 {
    grid-column: 1 / -1;
}

.single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section:last-of-type > div {
    min-width: 0;
    padding: 10px 0;
    border-bottom: 1px solid #f0e3e5;
    line-height: 1.6;
}

@media (max-width: 767px) {
    .single-product.woocommerce div.product .woocommerce-tabs {
        padding-top: 30px;
    }

    .single-product.woocommerce div.product .woocommerce-tabs ul.tabs {
        width: calc(100% - 28px);
        padding-bottom: 10px !important;
    }

    .single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a,
    .single-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
        padding-bottom: 9px !important;
        font-size: 21px !important;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .product-details-wrap {
        width: calc(100% - 28px);
        padding-top: 24px;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description {
        width: 100%;
        font-size: 15px;
        line-height: 1.9;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section {
        margin-top: 34px;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section h2 {
        margin-bottom: 13px !important;
        font-size: 23px !important;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description table {
        min-width: 430px;
        font-size: 13px;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description table td {
        padding: 12px 13px;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section:last-of-type {
        display: block;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--description > section:last-of-type > div {
        padding: 8px 0;
    }
}

/* Empty cart: a calm, useful entry point with compact product cards. */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
    box-sizing: border-box;
    width: min(100%, 1120px);
    margin: 0 auto;
    padding: clamp(44px, 7vw, 78px) clamp(16px, 4vw, 34px) 76px;
    text-align: center;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wc-block-cart__empty-cart__title {
    margin: 0 !important;
    color: #762536;
    font-size: clamp(25px, 3vw, 34px);
    font-weight: 750;
    line-height: 1.2;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wc-block-cart__empty-cart__title::before {
    display: block;
    margin: 0 auto 19px;
    color: var(--secondary-color, #f34f6b);
}

body.woocommerce-cart .joyas-empty-cart__prompt {
    max-width: 560px;
    margin: 15px auto 0;
}

body.woocommerce-cart .joyas-empty-cart__prompt p {
    margin: 0 0 20px !important;
    color: #74777e;
    font-size: 15px;
    line-height: 1.55;
}

body.woocommerce-cart .joyas-empty-cart__button {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 0 25px;
    border: 1px solid var(--secondary-color, #f34f6b);
    border-radius: 999px;
    background: var(--secondary-color, #f34f6b);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

body.woocommerce-cart .joyas-empty-cart__button:hover,
body.woocommerce-cart .joyas-empty-cart__button:focus-visible {
    border-color: #762536;
    background: #762536;
    color: #fff;
    transform: translateY(-1px);
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > hr {
    display: none;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) {
    position: relative;
    max-width: 1040px;
    margin: 68px auto 22px !important;
    padding-bottom: 14px;
    color: #15191b;
    font-size: clamp(22px, 2.3vw, 28px);
    font-weight: 750;
    line-height: 1.25;
    text-align: left;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title)::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: #f3dbe0;
    content: "";
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title)::before {
    position: absolute;
    bottom: -1px;
    left: 0;
    z-index: 1;
    width: 72px;
    height: 4px;
    border-radius: 999px;
    background: var(--secondary-color, #f34f6b);
    content: "";
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-product-new {
    max-width: 1040px;
    margin: 0 auto;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
    box-sizing: border-box;
    display: flex;
    width: auto !important;
    min-width: 0;
    min-height: 100%;
    margin: 0 !important;
    padding: 14px 14px 16px !important;
    flex-direction: column;
    border: 1px solid #e8edef;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(25, 35, 42, .055);
    text-align: left;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    flex-direction: column;
    color: inherit;
    text-decoration: none;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
    display: flex;
    width: 100%;
    height: 190px;
    align-items: center;
    justify-content: center;
    margin: 0 0 14px !important;
    overflow: hidden;
    border-radius: 10px;
    background: #fff;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: contain;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale {
    position: absolute;
    top: 13px;
    right: 13px;
    z-index: 2;
    margin: 0;
    padding: 5px 8px;
    border: 1px solid #7b8085;
    border-radius: 4px;
    background: #fff;
    color: #34383c;
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 1.25px;
    line-height: 1;
    text-transform: uppercase;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale span:first-child {
    font-size: inherit;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
    display: -webkit-box;
    min-height: 3.75em;
    overflow: hidden;
    color: #15191b;
    font-size: 15px;
    font-weight: 650;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
    min-height: 24px;
    margin: 12px 0 15px !important;
    color: var(--secondary-color, #f34f6b);
    font-size: 14px;
    line-height: 1.4;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price del {
    margin-right: 4px;
    color: #f34f6b;
    font-size: 12px;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price ins {
    padding: 2px 4px;
    background: #fff6bf;
    color: #f34f6b;
    text-decoration: none;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
    width: 100%;
    margin: auto 0 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a {
    display: flex;
    width: 100%;
    min-height: 42px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border: 1px solid #e3e8ea;
    border-radius: 0;
    background: #fff;
    color: #15191b;
    font-size: 13px;
    font-weight: 400;
    line-height: 1;
    text-decoration: none;
    transition: border-color .2s ease, background .2s ease, color .2s ease;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a:hover,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a:focus-visible {
    border-color: var(--secondary-color, #f34f6b);
    background: var(--secondary-color, #f34f6b);
    color: #fff;
}

@media (max-width: 900px) {
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
        padding: 39px 14px 58px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wc-block-cart__empty-cart__title {
        font-size: 24px;
    }

    body.woocommerce-cart .joyas-empty-cart__prompt p {
        font-size: 13px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) {
        margin-top: 52px !important;
        margin-bottom: 16px !important;
        font-size: 21px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        gap: 14px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
        padding: 10px 9px 11px !important;
        border-radius: 11px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
        height: 145px;
        margin-bottom: 10px !important;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale {
        top: 9px;
        right: 9px;
        padding: 5px 6px;
        font-size: 8px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
        min-height: 3.75em;
        font-size: 13px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
        margin: 9px 0 12px !important;
        font-size: 12px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a {
        min-height: 40px;
        font-size: 12px;
    }
}

/* Product detail card: the same structured layout used by 4.de, localized
 * through the active 1.dk theme. */
body.single-product div.product div.summary.entry-summary {
  box-sizing: border-box;
  container-name: product-summary;
  container-type: inline-size;
  margin-top: 0 !important;
  padding: 24px 26px !important;
  border: 1px solid #e5eaec !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.single-product div.product .summary .product_title {
  margin: 0 0 12px;
  color: #172126;
  font-size: clamp(20px, 1.55vw, 25px);
  font-weight: 500;
  line-height: 1.35;
}

body.single-product div.product .summary p.price {
  position: static !important;
  display: block;
  float: none !important;
  clear: both;
  box-sizing: border-box;
  width: 100%;
  margin: 0 !important;
  color: var(--secondary-color, #f34f6b);
  line-height: 1.2;
}

body.single-product div.product .summary .joyas-product-price__rrp {
  display: flex;
  margin-bottom: 2px;
  align-items: baseline;
  gap: 4px;
  color: #7b8387;
  font-size: 16px;
  font-weight: 600;
  line-height: 2;
}

body.single-product div.product .summary .joyas-product-price__rrp del {
  color: inherit;
  font-size: inherit;
  font-weight: 600;
  opacity: 1;
}

body.single-product div.product .summary .joyas-product-price__current-row {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
}

body.single-product div.product .summary .joyas-product-price__current-row ins,
body.single-product div.product .summary .joyas-product-price__standard-value {
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: var(--secondary-color, #f34f6b);
  font-size: 28px;
  font-weight: 800;
  line-height: 1.08;
  text-decoration: none;
}

body.single-product div.product .summary .joyas-product-price__legal {
  color: #737e84;
  font-size: 11.5px;
  font-weight: 400;
  line-height: 1.4;
}

body.single-product div.product .summary .joyas-product-availability {
  display: flex;
  width: fit-content;
  max-width: 100%;
  margin: 14px 0 0 !important;
  align-items: center;
  gap: 7px;
  color: #7da400;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.45;
}

body.single-product div.product .summary .joyas-product-availability__dot {
  display: block;
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;
  background: currentColor;
}

body.single-product div.product .summary form.cart:not(.variations_form):not(.grouped_form),
body.single-product div.product .summary .woocommerce-variation-add-to-cart {
  position: static !important;
  display: flex;
  float: none !important;
  clear: both;
  box-sizing: border-box;
  width: 100%;
  margin: 18px 0 0 !important;
  align-items: center;
  justify-content: flex-start !important;
  gap: 12px;
  flex-wrap: wrap;
  text-align: left !important;
  transform: none !important;
}

body.single-product div.product .summary form.cart .quantity {
  display: inline-flex !important;
  float: none !important;
  width: auto !important;
  height: 40px;
  margin: 0 !important;
  padding: 0 !important;
  align-items: stretch;
  flex: 0 0 auto;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--secondary-color, #f34f6b) 24%, #d8e0e4);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(20, 32, 38, .03);
}

body.single-product div.product .summary form.cart .quantity button.plus,
body.single-product div.product .summary form.cart .quantity button.minus {
  box-sizing: border-box;
  display: inline-flex !important;
  width: 36px;
  min-width: 36px;
  max-width: 36px;
  height: 38px;
  min-height: 38px;
  margin: 0 !important;
  padding: 0 !important;
  align-items: center;
  justify-content: center;
  border: 0 !important;
  border-radius: 0 !important;
  background: #f7f9fa !important;
  color: var(--secondary-color, #f34f6b);
  line-height: 1 !important;
  box-shadow: none !important;
}

body.single-product div.product .summary form.cart .quantity button.minus { order: 1; }
body.single-product div.product .summary form.cart .quantity input.qty { order: 2; }
body.single-product div.product .summary form.cart .quantity button.plus { order: 3; }

body.single-product div.product .summary form.cart .quantity button i {
  display: block;
  padding: 0 !important;
  font-size: 13px;
  font-weight: 400;
  line-height: 1;
}

body.single-product div.product .summary form.cart .quantity input.qty {
  box-sizing: border-box;
  width: 40px !important;
  min-width: 40px;
  height: 38px;
  min-height: 38px;
  margin: 0 !important;
  padding: 0 4px !important;
  border: 0 !important;
  border-right: 1px solid color-mix(in srgb, var(--secondary-color, #f34f6b) 18%, #e2e7e9) !important;
  border-left: 1px solid color-mix(in srgb, var(--secondary-color, #f34f6b) 18%, #e2e7e9) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: #26343a;
  font-size: 14px;
  font-weight: 400;
  line-height: 38px;
  box-shadow: none !important;
}

body.single-product div.product .summary .single_add_to_cart_button {
  display: inline-flex !important;
  float: none !important;
  min-width: 190px;
  height: 40px;
  min-height: 40px;
  margin: 0 !important;
  padding: 10px 22px !important;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--secondary-color, #f34f6b) !important;
  background: transparent !important;
  color: var(--secondary-color, #f34f6b) !important;
  flex: 1 1 190px;
  line-height: 1.2 !important;
  text-align: center !important;
  white-space: nowrap;
  box-shadow: none !important;
}

body.single-product div.product .summary .single_add_to_cart_button:hover,
body.single-product div.product .summary .single_add_to_cart_button:focus-visible {
  background: var(--secondary-color, #f34f6b) !important;
  color: #fff !important;
}

body.single-product div.product .summary form.cart .clearfix { display: none; }

.joyas-product-promo {
  position: relative;
  width: 100%;
  margin: 14px 0 0;
  padding: 11px 14px 12px;
  box-sizing: border-box;
  border-radius: 5px;
  background: #fff8e7;
  color: #737e84;
}

.joyas-product-promo__title,
.joyas-product-promo__copy { margin: 0 !important; }

.joyas-product-promo__title {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: 6px;
  color: #c47f08;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.45;
}

.joyas-product-promo__brand {
  display: inline-block;
  color: #a86600;
  font-weight: 800;
  white-space: nowrap;
}

.joyas-product-promo__copy {
  margin-top: 5px !important;
  color: #7f888d;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.55;
}

body.single-product div.product .summary .product_meta {
  margin-top: 18px;
  padding-top: 10px;
  border-top: 1px solid #e8edef;
  color: #707d83;
  font-size: 13px;
}

body.single-product div.product .summary .product_meta > span {
  display: block;
  padding: 7px 0;
  border: 0 !important;
  line-height: 1.45;
}

body.single-product div.product .summary .product_meta a {
  color: var(--secondary-color, #f34f6b);
  text-decoration: none !important;
}

.joyas-product-aftercare {
  width: 100%;
  margin-top: 18px;
  color: #20272b;
}

.joyas-product-aftercare__deal,
.joyas-product-aftercare__benefits {
  margin: 0 !important;
  border: 1px solid #e5e8ea;
  border-radius: 8px;
  background: #fff;
  list-style: none;
  overflow: hidden;
}

.joyas-product-aftercare__deal {
  padding: 14px 14px 12px;
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
}

.joyas-product-aftercare__deal-copy h3 {
  margin: 0 !important;
  color: #3b3f42;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.2;
}

.joyas-product-aftercare__deal-copy h3 sup {
  top: -.45em;
  color: var(--secondary-color, #f34f6b);
  font-size: 45%;
}

.joyas-product-aftercare__benefits {
  margin-top: 0 !important;
  padding: 0 !important;
  border-radius: 0 0 8px 8px;
}

.joyas-product-aftercare__benefit {
  margin: 0 !important;
  padding: 0;
  border-bottom: 1px solid #ecedef;
}

.joyas-product-aftercare__benefit:last-child { border-bottom: 0; }

.joyas-product-aftercare__benefit-inner {
  display: flex;
  width: 100%;
  margin: 0 !important;
  padding: 13px 14px;
  align-items: center;
  gap: 12px;
}

.joyas-product-aftercare__benefit-icon {
  display: inline-flex;
  width: 36px;
  height: 36px;
  min-width: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  background: color-mix(in srgb, var(--secondary-color, #f34f6b) 7%, #fff);
  color: var(--secondary-color, #f34f6b);
}

.joyas-product-aftercare__benefit-icon svg {
  display: block;
  width: 17px;
  height: 17px;
  fill: currentColor;
}

.joyas-product-aftercare__benefit-icon-cutout {
  fill: color-mix(in srgb, var(--secondary-color, #f34f6b) 7%, #fff);
}

.joyas-product-aftercare__benefit-copy { display: block; min-width: 0; }
/* Delivery-led assurance card: one generous feature and two quiet benefits. */
.joyas-shopping-assurance {
  box-sizing: border-box;
  padding: 20px;
  border: 1px solid color-mix(in srgb, var(--secondary-color, #f34f6b) 16%, #fff);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 24px #18202a06;
}
.joyas-shopping-assurance .joyas-shopping-assurance__eyebrow {
  margin: 0 0 15px !important; padding: 0;
  color: #74777e; font-size: 10px; font-weight: 650;
  line-height: 1.5; letter-spacing: .12em;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefits {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 16px; border: 0; border-radius: 0; background: transparent; overflow: visible;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit { border: 0; min-width: 0; list-style: none; }
.joyas-shopping-assurance .joyas-product-aftercare__benefit:first-child {
  grid-column: 1 / -1; padding-bottom: 18px; margin-bottom: 18px !important;
  border-bottom: 1px solid color-mix(in srgb, var(--secondary-color, #f34f6b) 12%, #eee);
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit-inner {
  box-sizing: border-box; padding: 0; align-items: flex-start; gap: 10px; height: 100%;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit:first-child .joyas-product-aftercare__benefit-inner { align-items: center; gap: 14px; }
.joyas-shopping-assurance .joyas-product-aftercare__benefit:not(:first-child) .joyas-product-aftercare__benefit-inner { flex-direction: column; }
.joyas-shopping-assurance .joyas-product-aftercare__benefit-icon {
  width: 32px; height: 32px; min-width: 32px; border-radius: 10px;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit:first-child .joyas-product-aftercare__benefit-icon {
  width: 48px; height: 48px; min-width: 48px; border-radius: 15px;
  background: var(--secondary-color, #f34f6b); color: #fff;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit:first-child .joyas-product-aftercare__benefit-icon svg { width: 24px; height: 24px; }
.joyas-shopping-assurance .joyas-product-aftercare__benefit-icon .joyas-assurance-detail-icon {
  width: 25px; height: 25px; fill: none; stroke: currentColor;
  stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit:first-child .joyas-assurance-detail-icon { width: 31px; height: 31px; }
.joyas-assurance-detail-icon .joyas-icon-tint { fill: currentColor; fill-opacity: .14; stroke: none; }
.joyas-assurance-detail-icon .joyas-icon-solid { fill: currentColor; stroke: none; }
.joyas-assurance-detail-icon .joyas-icon-hub { fill: var(--secondary-color, #f34f6b); stroke: none; }
.joyas-assurance-detail-icon .joyas-icon-panel { fill: #fff; stroke: none; }
.joyas-shopping-assurance .joyas-product-aftercare__benefit:first-child strong {
  color: #24252b; font-size: 20px; line-height: 1.25; font-weight: 750; overflow-wrap: anywhere;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit-copy small { margin-top: 5px; font-size: 12px; line-height: 1.5; }
@container product-summary (max-width: 320px) {
  .joyas-shopping-assurance { padding: 16px; }
  .joyas-shopping-assurance .joyas-product-aftercare__benefit:first-child strong { font-size: 18px; }
}
.joyas-product-aftercare__benefit-copy strong,
.joyas-product-aftercare__benefit-copy small { display: block; }
.joyas-product-aftercare__benefit-copy strong {
  color: #303336;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.35;
}
.joyas-product-aftercare__benefit-copy small {
  margin-top: 2px;
  color: #737d82;
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1.45;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit-inner[href] {
  color: inherit;
  text-decoration: none !important;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit-action {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 7px;
  color: var(--secondary-color, #f34f6b);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.3;
  white-space: nowrap;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit-action svg {
  display: block;
  width: 14px;
  height: 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .2s ease;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit-inner[href]:hover .joyas-product-aftercare__benefit-action svg,
.joyas-shopping-assurance .joyas-product-aftercare__benefit-inner[href]:focus-visible .joyas-product-aftercare__benefit-action svg {
  transform: translateX(2px);
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit-inner[href]:hover .joyas-product-aftercare__benefit-action,
.joyas-shopping-assurance .joyas-product-aftercare__benefit-inner[href]:focus-visible .joyas-product-aftercare__benefit-action {
  color: var(--secondary-color, #f34f6b);
}

/* Keep product searches on the standard WooCommerce product grid. */
body.search-results .joyas-search-products__header {
  margin: 0 0 28px;
  padding: 30px 0 20px;
  border-bottom: 1px solid #eeeeee;
}
body.search-results .joyas-search-products__header h1 {
  margin: 0;
  color: #24252b;
  font-size: 28px;
  line-height: 1.35;
  font-weight: 600;
  letter-spacing: -0.3px;
  overflow-wrap: anywhere;
}
body.search-results .joyas-search-products__count {
  margin: 8px 0 0;
  color: #72747a;
  font-size: 14px;
  line-height: 1.5;
}
body.search-results ul.products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px 18px;
  margin-right: 0;
  margin-left: 0;
}
body.search-results ul.products::before,
body.search-results ul.products::after {
  display: none;
}
body.search-results ul.products li.product {
  width: auto !important;
  margin: 0 !important;
  float: none !important;
  clear: none !important;
}

@media (max-width: 600px) {
  body.search-results .joyas-search-products__header {
    padding: 20px 0 16px;
    margin-bottom: 20px;
  }
  body.search-results .joyas-search-products__header h1 {
    font-size: 22px;
  }
  body.search-results ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 12px;
  }
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit:last-child .joyas-product-aftercare__payments {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
  max-width: 100%;
  margin-top: 10px;
}
.joyas-shopping-assurance .joyas-product-aftercare__benefit:last-child .joyas-product-aftercare__payments img {
  display: block;
  width: auto;
  height: 20px;
  max-width: 36px;
  object-fit: contain;
  padding: 2px 4px;
  border: 1px solid #e6e9eb;
  border-radius: 4px;
  background: #fff;
  box-sizing: border-box;
}

@media (min-width: 601px) {
  body.single-product div.product div.images.woocommerce-product-gallery {
    width: 56% !important;
    float: left;
  }
  body.single-product div.product div.summary.entry-summary {
    width: 40% !important;
    float: right;
  }
}

@container product-summary (max-width: 400px) {
  body.single-product div.product div.summary.entry-summary { padding: 20px 18px !important; }
  body.single-product div.product .summary .product_title { font-size: 20px; }
  body.single-product div.product .summary form.cart:not(.variations_form):not(.grouped_form),
  body.single-product div.product .summary .woocommerce-variation-add-to-cart {
    display: grid;
    grid-template-columns: 108px minmax(0, 1fr);
    gap: 10px;
  }
  body.single-product div.product .summary form.cart .quantity { width: 108px !important; }
  body.single-product div.product .summary form.cart .quantity button.plus,
  body.single-product div.product .summary form.cart .quantity button.minus {
    width: 34px;
    min-width: 34px;
    max-width: 34px;
  }
  body.single-product div.product .summary .single_add_to_cart_button {
    width: 100% !important;
    min-width: 0;
    padding-right: 8px !important;
    padding-left: 8px !important;
    font-size: 10px !important;
    letter-spacing: .45px !important;
  }
}

@media (max-width: 600px) {
  body.single-product div.product div.images.woocommerce-product-gallery {
    width: 100% !important;
    float: none;
  }
  body.single-product div.product div.summary.entry-summary {
    width: 100% !important;
    float: none;
    margin-top: 18px !important;
  }
}

@media (max-width: 575px) {
  body.single-product div.product div.summary.entry-summary {
    padding: 19px 18px !important;
    border-radius: 10px !important;
  }
  body.single-product div.product .summary .product_title { font-size: 20px; }
  body.single-product div.product .summary form.cart:not(.variations_form):not(.grouped_form),
  body.single-product div.product .summary .woocommerce-variation-add-to-cart {
    flex-wrap: nowrap;
  }
  body.single-product div.product .summary .single_add_to_cart_button {
    width: auto !important;
    min-width: 0;
    padding-right: 10px !important;
    padding-left: 10px !important;
    flex: 1 1 0;
    font-size: 11px !important;
    letter-spacing: .8px;
  }
  .joyas-product-promo__title { display: block; font-size: 15px; }
  .joyas-product-promo__brand { margin-right: 5px; }
  .joyas-product-aftercare__deal-copy h3 { font-size: 16px; }
}

@media (max-width: 359px) {
  body.single-product div.product .summary form.cart:not(.variations_form):not(.grouped_form),
  body.single-product div.product .summary .woocommerce-variation-add-to-cart { flex-wrap: wrap; }
  body.single-product div.product .summary .single_add_to_cart_button {
    width: 100% !important;
    flex-basis: 100%;
  }
}

/* Remove the parent theme's nested Bootstrap gutter on product pages so the
 * copied card follows the viewport at every mobile width. */
@media (max-width: 767px) {
  body.single-product #primary.content-area.container {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  body.single-product #primary > .row {
    width: 100%;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  body.single-product #primary > .row > .bcf-main-content {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    flex: 0 0 100%;
  }

  body.single-product #main,
  body.single-product #main > .product,
  body.single-product div.product div.summary.entry-summary {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  body.single-product #main > .product {
    display: block !important;
  }

  body.single-product div.product .summary .product_title {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  body.single-product div.product div.summary.entry-summary {
    width: calc(100vw - 32px) !important;
    overflow: hidden;
  }
}

/* Use one consistent three-line title slot for every product thumbnail. */
.woocommerce ul.products li.product:not(.do-to-list) .product_wrap .woocommerce-loop-product__title,
.woocommerce ul.products li.product:not(.do-to-list) .woocommerce-loop-product__title {
    display: -webkit-box !important;
    min-height: calc(1.2em * 3) !important;
    max-height: calc(1.2em * 3) !important;
    margin-bottom: 10px !important;
    overflow: hidden !important;
    line-height: 1.2 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

/* Keep the related-card grid centered as its own content block. */
body.single-product .related.products ul.products {
    box-sizing: border-box;
    max-width: 1120px;
    margin-right: auto !important;
    margin-left: auto !important;
    justify-content: center;
}

body.single-product .related.products ul.products li.product {
    justify-self: stretch;
}

@media (max-width: 767px) {
    .woocommerce ul.products li.product:not(.do-to-list) .product_wrap .woocommerce-loop-product__title,
    .woocommerce ul.products li.product:not(.do-to-list) .woocommerce-loop-product__title,
    body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
        min-height: calc(1.18em * 3) !important;
        max-height: calc(1.18em * 3) !important;
        margin-bottom: 8px !important;
        line-height: 1.18 !important;
        -webkit-line-clamp: 3;
    }

    body.single-product .related.products ul.products {
        width: 100%;
        max-width: 440px;
        margin-right: auto !important;
        margin-left: auto !important;
    }
}

/* Compact related-product cards on the single-product page. */
body.single-product .related.products {
    clear: both;
    margin-top: 34px;
}

body.single-product .related.products h2 {
    margin: 0 0 24px !important;
}

body.single-product .related.products ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    width: 100%;
    margin: 0 !important;
    padding: 0;
}

body.single-product .related.products ul.products li.product {
    display: flex !important;
    position: relative;
    width: auto !important;
    min-width: 0;
    height: 100%;
    margin: 0 !important;
    padding: 12px 12px 14px !important;
    flex-direction: column;
    border: 1px solid #edf0f2;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(26, 39, 45, .05);
}

body.single-product .related.products ul.products li.product > .onsale {
    top: 12px;
    right: 12px;
    z-index: 3;
    margin: 0 !important;
    padding: 5px 9px;
    border: 1px solid #7b7f82;
    border-radius: 3px;
    background: #fff;
    color: #303336;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 1.4px;
    line-height: 1.2;
    text-transform: uppercase;
}

body.single-product .related.products ul.products li.product .woocommerce-loop-product__link {
    display: flex;
    min-width: 0;
    flex: 0 0 auto;
    flex-direction: column;
    color: inherit;
    text-decoration: none;
}

body.single-product .related.products ul.products li.product .woocommerce-loop-product__link > .onsale {
    display: none !important;
}

body.single-product .related.products ul.products li.product .product-image {
    display: flex;
    width: 100%;
    height: 176px;
    margin: 0 0 13px;
    align-items: center;
    justify-content: center;
    background: #fff;
}

body.single-product .related.products ul.products li.product .product-image figure {
    display: flex;
    width: 100%;
    height: 100%;
    margin: 0;
    align-items: center;
    justify-content: center;
}

body.single-product .related.products ul.products li.product .product-image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

body.single-product .related.products ul.products li.product .product_wrap {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    flex-direction: column;
}

body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
    display: -webkit-box;
    min-height: 42px;
    margin: 0 0 10px !important;
    overflow: hidden;
    color: #15191b;
    font-size: 15px !important;
    font-weight: 600;
    line-height: 1.2;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.single-product .related.products ul.products li.product .price {
    display: flex;
    min-height: 24px;
    margin: 0 !important;
    align-items: baseline;
    gap: 4px;
    color: var(--secondary-color, #f34f69) !important;
    font-size: 14px !important;
    line-height: 1.35;
}

body.single-product .related.products ul.products li.product .price del {
    color: #f34f69;
    font-size: 13px;
}

body.single-product .related.products ul.products li.product .price ins {
    padding: 1px 3px;
    background: #fff5bd;
    color: #f34f69;
    text-decoration: none;
}

body.single-product .related.products ul.products li.product .button-wrap {
    display: flex;
    width: 100%;
    max-width: 100% !important;
    margin: auto auto 0 !important;
    padding-top: 17px;
    justify-content: center;
}

body.single-product .related.products ul.products li.product .button-wrap .button {
    display: flex;
    width: 150px !important;
    max-width: 100%;
    flex: 0 0 150px;
    min-height: 44px;
    margin: 0 !important;
    align-items: center;
    justify-content: center;
    border: 1px solid #e3e8ea !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #15191b !important;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}

body.single-product .related.products ul.products li.product .button-wrap .button:hover,
body.single-product .related.products ul.products li.product .button-wrap .button:focus-visible {
    border-color: var(--secondary-color, #f34f69) !important;
    background: var(--secondary-color, #f34f69) !important;
    color: #fff !important;
}

@media (max-width: 991px) {
    body.single-product .related.products ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    body.single-product .related.products {
        margin-top: 26px;
    }

    body.single-product .related.products h2 {
        margin-bottom: 18px !important;
    }

    body.single-product .related.products ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 14px;
    }

    body.single-product .related.products ul.products li.product {
        padding: 9px 9px 11px !important;
        border-radius: 8px;
        box-shadow: 0 3px 12px rgba(26, 39, 45, .045);
    }

    body.single-product .related.products ul.products li.product > .onsale {
        top: 9px;
        right: 9px;
        padding: 5px 7px;
        font-size: 9px;
        letter-spacing: 1.15px;
    }

    body.single-product .related.products ul.products li.product .product-image {
        height: 164px;
        margin-bottom: 10px;
    }

    body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
        min-height: 36px;
        margin-bottom: 8px !important;
        font-size: 14px !important;
        line-height: 1.18;
    }

    body.single-product .related.products ul.products li.product .price {
        font-size: 13px !important;
    }

    body.single-product .related.products ul.products li.product .price del {
        font-size: 12px;
    }

    body.single-product .related.products ul.products li.product .button-wrap {
        padding-top: 13px;
    }

    body.single-product .related.products ul.products li.product .button-wrap .button {
        min-height: 42px;
        font-size: 13px;
    }
}

@media (max-width: 359px) {
    body.single-product .related.products ul.products {
        gap: 14px 10px;
    }

    body.single-product .related.products ul.products li.product .product-image {
        height: 142px;
    }

    body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
        font-size: 13px !important;
    }
}

/* Seasonal promotion: compact dark banner with an independent price note. */
.joyas-seasonal-promo { width: 100%; margin-top: 16px; }
.joyas-seasonal-promo__banner {
    display: flex; align-items: center; gap: 16px; padding: 18px 16px;
    background: repeating-linear-gradient(90deg, transparent 0 22px, #ffffff04 22px 23px), linear-gradient(110deg, #1d272e, #10151b);
    color: #fff; min-width: 0;
}
.joyas-seasonal-promo__badge {
    flex: 0 0 76px; height: 76px; display: flex; flex-direction: column;
    align-items: center; justify-content: center; background: #ffad17;
    clip-path: polygon(50% 0%,60% 7%,73% 3%,79% 15%,92% 18%,92% 32%,100% 42%,94% 54%,98% 67%,85% 73%,81% 87%,67% 88%,57% 100%,45% 94%,32% 98%,25% 86%,12% 82%,12% 68%,1% 59%,6% 45%,2% 32%,15% 25%,19% 12%,33% 12%,42% 2%);
}
.joyas-seasonal-promo__badge small { font-size: 9px; font-weight: 800; color: #432900; line-height: 1.2; }
.joyas-seasonal-promo__badge strong { font-size: 29px; font-weight: 900; line-height: 1.1; color: #fff; }
.joyas-seasonal-promo__content { min-width: 0; flex: 1; }
.joyas-seasonal-promo p { padding: 0; }
.joyas-seasonal-promo .joyas-seasonal-promo__label { margin: 0 0 5px !important; color: #ffb32b; font-size: 13px; font-weight: 800; line-height: 1.3; }
.joyas-seasonal-promo .joyas-seasonal-promo__headline { margin: 0 0 5px !important; color: #fff; font-size: 16px; font-weight: 800; line-height: 1.3; }
.joyas-seasonal-promo .joyas-seasonal-promo__limited { margin: 0 !important; color: #d0d6db; font-size: 12px; line-height: 1.4; }
.joyas-seasonal-promo .joyas-seasonal-promo__note { margin: 14px 0 0 !important; color: #171b20; font-size: 13px; font-weight: 700; line-height: 1.5; }
@container product-summary (max-width: 340px) {
    .joyas-seasonal-promo__banner { gap: 10px; padding: 14px 10px; }
    .joyas-seasonal-promo__badge { flex-basis: 62px; height: 62px; }
    .joyas-seasonal-promo__badge strong { font-size: 24px; }
    .joyas-seasonal-promo .joyas-seasonal-promo__headline { font-size: 14px; }
    .joyas-seasonal-promo .joyas-seasonal-promo__label { font-size: 12px; }
}

/* Keep the single product gallery in a fixed white frame as well. */
.single-product.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.single-product.woocommerce div.product div.images .woocommerce-product-gallery__image,
.single-product.woocommerce div.product div.images .woocommerce-product-gallery__image a {
    width: 100%;
    height: 460px !important;
    margin: 0 !important;
    background: #fff;
}
.single-product.woocommerce div.product div.images .woocommerce-product-gallery__image {
    display: flex !important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.single-product.woocommerce div.product div.images .woocommerce-product-gallery__image a {
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.single-product.woocommerce div.product div.images .woocommerce-product-gallery__image img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
}
.single-product.woocommerce div.product div.images .flex-viewport {
    height: 460px !important;
    background: #fff;
}
.single-product.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__wrapper,
.single-product.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__image {
    height: 100% !important;
}
.single-product.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__image {
    position: relative !important;
    width: 100% !important;
}
.single-product.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__image img {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    margin: 0 !important;
    width: auto !important;
    height: 460px !important;
    max-width: 100% !important;
    max-height: 460px !important;
    transform: translate(-50%, -50%) !important;
}
@media (min-width: 768px) and (max-width: 1199px) {
    .single-product.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
    .single-product.woocommerce div.product div.images .woocommerce-product-gallery__image,
    .single-product.woocommerce div.product div.images .woocommerce-product-gallery__image a {
        height: 380px !important;
    }
    .single-product.woocommerce div.product div.images .flex-viewport {
        height: 380px !important;
    }
    .single-product.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__image img {
        height: 380px !important;
        max-height: 380px !important;
    }
}
@media (max-width: 767px) {
    .single-product.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
    .single-product.woocommerce div.product div.images .woocommerce-product-gallery__image,
    .single-product.woocommerce div.product div.images .woocommerce-product-gallery__image a {
        height: 320px !important;
    }
    .single-product.woocommerce div.product div.images .flex-viewport {
        height: 320px !important;
    }
    .single-product.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__image img {
        height: 320px !important;
        max-height: 320px !important;
    }
}
