/* Veridian Health 2.4.0: base.css inlined to avoid a serial CSS @import request. */
body{

    color: #333;

    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;

    font-style: normal;

    font-weight: 400;

    line-height: 1.42857143;

    font-size: 14px;

}

body#checkout {

    color: #333333;

}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {

    font-weight: 600;

}

.form-control:focus {

    color: #333333;

}

.form-control:focus, .input-group.focus {

    outline: none;

    border-color: #e1e1e1;

}

.label, label {

    color: #333333;

}

.separator {

    border-color: #e1e1e1;

}

.btn-primary, .btn-secondary, .btn-tertiary {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    outline: none;

}

.btn:focus, button:focus, .btn, button {

    outline:none; 

}

.bootstrap-touchspin input.form-control, .bootstrap-touchspin input.input-group {

    border-color: #e1e1e1;

    color: #333333;

}

.form-control {

    color: #666666;

    border: 1px solid #e1e1e1;

    padding: 6px 15px;

    font-size: 15px;

    height: 38px;

}

.input-group .input-group-btn > .btn,

.input-group .input-group-btn > .btn[data-action="show-password"] {

    height: 38px;

    font-size: 13px;

    padding: 6px 15px;

    line-height: 25px;

    font-weight: 600;

}

.form-control-comment {

    font-size: 13px;

    padding-top: .5rem;

    color: #999999;

}

.h1, .h2, .h3 {

    color: #333333;

}

*{

    box-sizing: border-box;

}

p {

    color: #666666;

    font-size: 14px;

    line-height: 1.45;

}

.carousel {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    margin-bottom: 0;

}

.owl-theme .owl-controls .owl-pagination {

    margin-top: 15px;

    display: block;

}

.page-index #wrapper {

    padding-top: 0;

}

#wrapper {

    background-color: #fff;

    box-shadow: none;

    padding-top: 22px;

    float: left;

    width: 100%;

    clear: both;

}

#products {

    color: #666666;

}

#wrapper .breadcrumb {

    margin-bottom: 22px;

}

#wrapper .breadcrumb li {

    font-size: 13px;

}

.block-categories {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    background: #f9f9f9;

    padding: 15px;

}

#search_filters, #search_filters_brands, #search_filters_suppliers {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    background: #f9f9f9;

    padding: 15px;

}

.block-categories .category-top-menu {

    margin-bottom: 5px;

}

.block-categories .category-top-menu > li > a {

    display: block;

    margin-bottom: 10px;

    padding-bottom: 10px;

    border-bottom: 1px solid #d1d1d1;

    font-size: 14px;

    font-weight: 600;

}

#left-column .block-categories .category-sub-menu li > a {

    margin-top: 0;

    border-bottom: none;

    padding: 6px 0;

    margin-bottom: 0;

}

.block-categories .collapse-icons {

    width: 18px;

    height: 18px;

    line-height: 12px;

    border: none;

    font-size: 18px;

    text-align: center;

    top: 7px;

}

.block-categories .collapse-icons .material-icons {

    font-size: 18px;

    line-height: 18px;

}

#search_filters h4, 

#search_filters_brands h4, 

#search_filters_suppliers h4 {

    display: block;

    margin-bottom: 10px;

    padding-bottom: 10px;

    border-bottom: 1px solid #d1d1d1;

    font-size: 14px;

    font-weight: 600;

}

.clear-all-wrapper .btn-tertiary {

    float: right;

    margin: 0 0 5px;

    padding: 0;

    background: transparent;

    border: none;

    box-shadow: none;

}

#search_filters .facet {

    clear: both;

}

#search_filters .facet .facet-title, 

#search_filters_brands .facet .facet-title, 

#search_filters_suppliers .facet .facet-title {

    color: #333333;

    font-weight: 600;

    font-size: 14px;

    margin-bottom: 13px;

}

#search_filters .facet .collapse, 

#search_filters_brands .facet .collapse, 

#search_filters_suppliers .facet .collapse {

    margin-bottom: 12px;

}

#search_filters .facet .facet-label a, #search_filters_brands .facet .facet-label a, #search_filters_suppliers .facet .facet-label a {

    font-size: 13px;

    margin-top: 0;

    color: #555555;

}

#search_filters .custom-checkbox input[type="checkbox"] + span {

    margin-right: 5px;

    width: 14px;

    height: 14px;

    border-color: #666666;

    margin-left: 0;

    margin-bottom: 0;

    margin-top: 0;

}

#search_filters .custom-checkbox input[type="checkbox"] + span .checkbox-checked {

    font-size: 16px;

}

#search_filters .facet .facet-label, 

#search_filters_brands .facet .facet-label, 

#search_filters_suppliers .facet .facet-label {

    margin-bottom: 5px;

}

#search_filters .facet .facet-label a:active,

#search_filters .facet .facet-label a:visited,

#search_filters .facet .facet-label a:focus,

#search_filters_brands .facet .facet-label a:active,

#search_filters_brands .facet .facet-label a:visited,

#search_filters_brands .facet .facet-label a:focus,

#search_filters_suppliers .facet .facet-label a:active,

#search_filters_suppliers .facet .facet-label a:visited,

#search_filters_suppliers .facet .facet-label a:focus {

    color: #555555;

}

#search_filters .facet .facet-label a:hover, 

#search_filters_brands .facet .facet-label a:hover, 

#search_filters_suppliers .facet .facet-label a:hover {

    color: #5f752e;

}

#search_filters .facet .facet-label.active a, 

#search_filters_brands .facet .facet-label.active a, 

#search_filters_suppliers .facet .facet-label.active a {

    color: #5f752e;

}

.block-category {

    margin-bottom: 20px;

    padding: 0px;

    border: none;

}

.block-category .category-cover {

    margin-bottom: 25px;

    margin-top: 20px;

    position: static;

}

.block-category .category-cover img {

    display: block;

    margin: 0 auto;

    max-width: 100%;

}

.block-category #category-description p strong,

.block-category #category-description p,

.block-category #category-description p:first-child {

    font-size: 14px;

    margin-bottom: 4px;

    color: #666666;

    line-height: 20px;

    display: block;

}

.block-category #category-description p:first-child {

    margin-bottom: 12px;

}



/*product list/grid*/

.show_list, .show_grid {

    cursor:pointer;

    opacity:1.0;

}

.show_list:hover, .show_grid:hover {

    opacity:0.7;

}

.product_show_list {

    width:100%;

}

.product_show_list .highlighted-informations, .product_show_list .product-description, .product_show_list .thumbnail-container {

    width:100%!important;

}

.product_show_list .product-thumbnail {

    text-align:center;

}



/*product list page*/

#products .products-grid .product-item .product-miniature .product-description .product-short-desc {

    display: none;

}

#products .products-grid .product-item.list-view .product-miniature .product-description .product-short-desc {

    display: block;

}

#products .row.products-selection {

    margin-left: 0;

    margin-right: 0;

    background: #f9f9f9;

    padding-top: 15px;

    padding-bottom: 15px;

    margin-bottom: 30px;

}

#products .row.products-selection .display-mode,

#products .row.products-selection .total-products {

    display: inline-block;

    vertical-align: middle;

}

#products .row.products-selection .display-and-count {

    padding-top: 7px;

    padding-bottom: 7px;

}

#products .row.products-selection .total-products {

    padding-top: 0;

}

#products .row.products-selection .total-products > p {

    margin-bottom: 0;

    margin-left: 15px;

    font-size: 14px;

}

#products .products-selection .display-mode .show_grid {

    margin-right: 10px;

}

#products .products-selection .display-mode .show_grid.active {

    color: #5f752e;

}

#products .products-selection .display-mode .show_list.active {

    color: #5f752e;

}

#products .products-selection .display-mode .show_grid,

#products .products-selection .display-mode .show_list {

    font-size: 20px;

    display: inline-block;

    vertical-align: middle;

    line-height: 20px;

    color: #333333;

}

#products .products-selection .products-sort-order .select-title {

    padding-top: 5px;

    padding-bottom: 5px;

    border-color: #e1e1e1;

}

.active_filters {

    background: #5f752e;

    padding: 12px 15px 8px;

    margin-bottom: 30px;

    margin-top: -15px;

}

.active_filters .active-filter-title {

    margin: 0 15px 0 0;

    color: #ffffff;

}

.active_filters ul {

    margin: 0;

}

.active_filters .filter-block {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    font-size: 13px;

    padding: 4px 8px;

    margin-right: 5px;

    margin-bottom: 5px;

}

#products .products-grid .products .product-item {

    width: 33.3333%;

}

#products .product-miniature .discount-percentage.discount-percentage, 

#products .product-miniature .on-sale.discount-percentage, 

#products .product-miniature .online-only.discount-percentage, 

#products .product-miniature .pack.discount-percentage, 

#products .product-miniature .product-flags .new.discount-percentage, 

.featured-products .product-miniature .discount-percentage.discount-percentage, 

.featured-products .product-miniature .on-sale.discount-percentage, 

.featured-products .product-miniature .online-only.discount-percentage, 

.featured-products .product-miniature .pack.discount-percentage, 

.featured-products .product-miniature .product-flags .new.discount-percentage, 

.product-accessories .product-miniature .discount-percentage.discount-percentage, 

.product-accessories .product-miniature .on-sale.discount-percentage, 

.product-accessories .product-miniature .online-only.discount-percentage, 

.product-accessories .product-miniature .pack.discount-percentage, 

.product-accessories .product-miniature .product-flags .new.discount-percentage,

.product-miniature .product-miniature .discount-percentage.discount-percentage, 

.product-miniature .product-miniature .on-sale.discount-percentage, 

.product-miniature .product-miniature .online-only.discount-percentage, 

.product-miniature .product-miniature .pack.discount-percentage, 

.product-miniature .product-miniature .product-flags .new.discount-percentage {

    top: 0 !important;

    position: absolute;

    right: 0;

    left: auto;

    box-shadow: none;

    font-size: 13px;

    text-align: center;

    line-height: 18px;

    min-height: auto;

    min-width: auto;

    padding: 4px 8px;

    background: #5f752e;

}

#products .products-grid .products .product-item .discount-percentage,

.products-grid .products .product-item .discount-percentage {

    top: 0 !important;

    position: absolute;

    right: 0;

    left: auto;

    margin-top: .625rem;

    box-shadow: none;

    font-size: 14px;

    text-align: center;

    line-height: 18px;

    min-height: auto;

    min-width: auto;

    padding: 4px 8px;

    background: #f5f5f5;

    color: #333333;

}

#products .products-grid .products .product-item .product-flags > li,

.products-grid .products .product-item .product-flags > li {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    font-size: 13px;

    text-align: center;

    line-height: 18px;

    min-height: auto;

    min-width: auto;

    padding: 4px 8px;

}

#products .products-grid .products .product-item.list-view {

    width: 100%;

}

#products .products-grid .products .product-item.list-view .product-miniature .thumbnail-container .product-image-block {

    float: left;

    width: 30%;

    border: 1px solid #e1e1e1;

    position: relative;

}

#products .products-grid .products .product-item.list-view .product-miniature .thumbnail-container .product-description {

    float: left;

    width: 70%;

    text-align: left;

    padding-left: 25px;

}

#products .products-grid .products .product-item.list-view .product-description .product-title {

    text-align: left;

    margin-top: 0;

}

#products .products-grid .products .product-item.list-view .product-description .product-title > a {

    font-weight: 600;

}

#products .products-grid .products .product-item.list-view .product-description .product-price-and-shipping {

    text-align: left;

}

#products .products-grid .products .product-item.list-view .product-miniature .thumbnail-container .product-description .add {

    text-align: left;

}

/*product detail page*/

#product #content {

    max-width: 100%;

}

.product-cover img {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    border: 1px solid #e1e1e1;

}

.product-images > li.thumb-container > .thumb {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    border: 2px solid #f1f1f1;

}

.product-images > li.thumb-container > .thumb.selected, .product-images > li.thumb-container > .thumb:hover {

    border: 2px solid #5f752e;

}

li.product-flag {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

.product-variants > .product-variants-item select {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

.product-variants > .product-variants-item {

    margin: 15px 0;

}

.has-discount.product-price, .has-discount p {

    color: #5f752e;

}

.has-discount .discount {

    background:#5f752e;

}

.product-variants > .product-variants-item ul li > label {

    margin-bottom: 0;

}

.color, .custom-checkbox input[type="checkbox"] + span.color {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

.bootstrap-touchspin {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

.bootstrap-touchspin .btn-touchspin {

    border-color: #e1e1e1;

}

.product-quantity #quantity_wanted {

    text-align: center;

    color: #333333;

    border-color: #e1e1e1;

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

.product-quantity .input-group-btn-vertical .btn {

    color: #666666;

}

.product-quantity .qty {

    margin-right: 20px;

    margin-bottom: 0;

}

.product-add-to-cart .product-quantity {

    display: inline-block;

    vertical-align: middle;

}

#product-availability {

    margin: 0 0 0 15px;

}

#product-availability .material-icons {

    height: auto;

    font-size: 20px;

    font-weight: 700;

    margin-right: 2px;

}

.product-additional-info .social-sharing li {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

.product-additional-info .social-sharing li a:hover {

    color: #5f752e;

}

.tabs {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    padding: 0;    

    margin-top: 20px;

    float: left;

    width: 100%;

    clear: both;

}

.tabs .nav-tabs .nav-link {

    padding: 10px 18px;

    font-size: 16px;

}

.product-manufacturer > a {

    display: block;

}

.product-manufacturer > a > img {

    padding: 15px;

    border-color: #e1e1e1;

    max-width: 200px;

    margin-bottom: 15px;

}

#product-details .product-features {

    margin-left: 0;

    margin-top: 13px;

}

/*shopping cart page*/

.card.cart-container {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

.card.cart-summary {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

.cart-overview .cart-items .cart-item {

    border-bottom: 1px solid #e1e1e1;

    margin-bottom: 10px;

    padding-bottom: 10px;

    padding-top: 10px;

}

.cart-overview .cart-items .cart-item:last-child {

    border-bottom: none;

    margin-bottom: 0;

    padding-bottom: 0;

}

.cart-overview .cart-item .js-cart-line-product-quantity {

    text-align: center;

}

.product-line-grid-right .cart-line-product-actions, .product-line-grid-right .product-price {

    color: #333333;

}

.product-line-grid-right .cart-line-product-actions .remove-from-cart, 

.product-line-grid-right .product-price .remove-from-cart {

    color: #333333;

}

.product-line-grid-right .cart-line-product-actions .remove-from-cart:hover, 

.product-line-grid-right .product-price .remove-from-cart:hover {

    color: #5f752e;

}

.cart-summary .cart-detailed-totals .cart-summary-line > .label {

    font-weight: 600;

    padding-bottom: 2px;

    padding-top: 2px;

    font-size: 15px;

}

.cart-summary .cart-detailed-totals .cart-summary-line > .value {

    padding-bottom: 2px;

    padding-top: 2px;

    font-size: 15px;

}

.cart-summary .cart-detailed-totals > .card-block {

    padding: 15px 20px;

}

/*checkout page*/

/*content: "\f078";

content: "\f077";*/

.js-cart .cart-summary-products > p > a {

    display: block;

    padding: 5px 10px;

    font-size: 14px;

    text-transform: uppercase;

    color: #333333;

    font-weight: 600;

    background: #f9f9f9;

    border: 1px solid #e1e1e1;

}

.js-cart .cart-summary-products > p > a:focus {

    text-decoration: none;

}

.js-cart .cart-summary-products > p > a:hover {

    text-decoration: none;

    color: #5f752e;

}

body#checkout a:hover {

    color: #5f752e;

}

.card.js-cart {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

}

body#checkout section.checkout-step:last-child,

body#checkout section.checkout-step {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    border: 1px solid #e1e1e1;

    padding: 10px 15px 0;

    margin-bottom: 15px;

}

.js-cart .cart-summary-products > p > a:after {

    float: right;

    content: "\f078";

    font-family: "Fontawesome";

    font-size: 11px;

    font-weight: normal;

}

.js-cart .card-block {

    padding: 15px 20px;

}

.js-cart .cart-summary-products > p:first-child {

    margin-bottom: 10px;

}

.js-cart .cart-summary-products > p {

    color: #333333;

    font-weight: 600;

    margin-bottom: 15px;

}

.js-cart .cart-summary-line > .label {

    font-weight: 600;

    padding-bottom: 2px;

    padding-top: 2px;

    font-size: 15px;

}

.js-cart .cart-summary-line > .value {

    padding-bottom: 2px;

    padding-top: 2px;

    font-size: 15px;

}

body#checkout section.checkout-step .content {

    padding: 15px 10px 15px;

}

body#checkout section.checkout-step .step-title {

    padding-bottom: 7px;

}

body#checkout section.checkout-step.-current .step-title {

    border-bottom: 1px solid #e1e1e1;    

}

.checkout-step .content > .nav-inline {

    margin: 15px 0 !important;

}

.checkout-step .content > .nav-inline > .nav-item {

    margin-right: 3px;

}

.checkout-step .content > .nav-inline > .nav-item .nav-link {

    padding: 7px 18px;

    background: #f9f9f9;

    color: #333333;

    display: block;

    border: 1px solid #e1e1e1;

    font-weight: 600;

    text-transform: uppercase;

}

.checkout-step .content > .nav-inline > .nav-item .nav-link.active {

    border-color: #5f752e;

    background: #5f752e;

    color: #ffffff !important;

}

.checkout-step .content > .nav-inline > .nav-item .nav-link:hover {

    border-color: #5f752e;

    background: #5f752e;

    color: #ffffff !important;

}

.checkout-step .content > .nav-inline > .nav-item > span {

    display: none;

}

.nav-inline .nav-item + .nav-item, .nav-inline .nav-link + .nav-link{

    margin-left: 0;

}

body#checkout section.checkout-step .radio-inline {

    margin-right: 10px;

}

body#checkout section.checkout-step .radio-inline .custom-radio {

    height: 15px;

    width: 15px;

}

body#checkout section.checkout-step .radio-inline input[type="radio"]:checked + span {

    display: block;

    background-color: #5f752e;

    width: 9px;

    height: 9px;

    border-radius: 50%;

    position: absolute;

    left: 1px;

    top: 1px;

}

.js-customer-form .custom-checkbox input[type="checkbox"] + span {

    width: 14px;

    height: 14px;

    border-color: #666666;

    margin-right: 6px;

}

.js-customer-form .custom-checkbox input[type="checkbox"]:checked + span .checkbox-checked {

    font-size: 16px;

}

.js-customer-form .custom-checkbox > label {

    color: #666666;

    margin-bottom: 0;

}

.js-customer-form .custom-checkbox > label > em {

    color: #666666;

    margin-top: 8px;

    display: block;

    font-size: 13px;

}

body#checkout section.checkout-step .forgot-password {

    margin-left: 0;

}

body#checkout section.checkout-step .address {

    line-height: 24px;

}

body#checkout section.checkout-step .radio-block {

    margin-bottom: 0;

}

body#checkout section.checkout-step .delete-address, 

body#checkout section.checkout-step .edit-address {

    color: #666666;

    margin: 0 3px;

    display: inline-block;

}

body#checkout section.checkout-step .delete-address:hover, 

body#checkout section.checkout-step .edit-address:hover {

    color: #5f752e !important;

}

body#checkout #delivery textarea, body#checkout #gift_message textarea {

    padding: 15px;

    border: 1px solid #e1e1e1;

}

body#checkout section.checkout-step .payment-options .custom-radio {

    margin-right: 10px;

}

body#checkout section.checkout-step .payment-options label {

    color: #666666;    

}

body#checkout section.checkout-step #conditions-to-approve {

    padding-top: 10px;

}

body#checkout section.checkout-step #customer-form, body#checkout section.checkout-step #delivery-address, 

body#checkout section.checkout-step #invoice-address, body#checkout section.checkout-step #login-form {

    margin-top: 18px;

    margin-left: 0;

}

/*my account page*/

.page-my-account #content .links a span.link-item {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    border: 1px solid #e1e1e1;

}

.layout-full-width #wrapper #content-wrapper {

    padding-left: 15px;

    padding-right: 15px;

}

.layout-full-width.page-index #wrapper #content-wrapper {

    padding-left: 0 !important;

    padding-right: 0 !important;

}

#main .page-footer {

    margin-bottom: 5px;

}

.page-customer-account #content {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    border: 1px solid #e1e1e1;

}

.page-addresses .address, .page-authentication #content {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    border: 1px solid #e1e1e1;

}

.page-addresses .address .address-footer {

    border-top-color: #e1e1e1;

    text-align: center;

}

.page-addresses .address .address-body address {

    line-height: 24px;

    margin-bottom: 10px;

}

.page-order-detail .box {

    box-shadow: none;

    -moz-box-shadow: none;

    -webkit-box-shadow: none;

    border: 1px solid #e1e1e1;

}

.page-order-detail {

    color: #666666;

}

.page-order-detail .page-header h1 {

    color: #333333;

    font-weight: 600;

}

#toTop {

    display:none;

    text-decoration:none;

    position:fixed;

    bottom:10px;

    right:10px;

    overflow:hidden;

    width:51px;

    height:51px;

    border:none;

    text-indent:100%;

    background:url(../img/ui.totop.png) no-repeat left top;
    background-image:image-set(url(../img/ui.totop.webp) type('image/webp'),url(../img/ui.totop.png) type('image/png'));

}



#toTopHover {

    background:url(../img/ui.totop.png) no-repeat left -51px;
    background-image:image-set(url(../img/ui.totop.webp) type('image/webp'),url(../img/ui.totop.png) type('image/png'));

    width:51px;

    height:51px;

    display:block;

    overflow:hidden;

    float:left;

    opacity: 0;

    -moz-opacity: 0;

    filter:alpha(opacity=0);

}



#toTop:active, #toTop:focus {

    outline:none;

}

@media(max-width: 991px) {

    #products .products-grid .products .product-item {

        width: 50%;

    }

    #category #left-column {

        width: 35%;

    }

    #category #content-wrapper, #category #search_filter_toggler {

        width: 65%;

    }

    #products .row.products-selection .sort-by {

        padding-left: 0;

    }

    #products .row.products-selection .total-products {

        display: none;

    }

    #products .row.products-selection .sort-by-row {

        margin-bottom: 13px;

    }

}

@media(max-width: 767px) {

    .js-customer-form .form-group .form-control-label {

        padding-top: 0;

    }

    .js-customer-form .form-group .form-control-valign {

        padding-top: 5px;

    }

    .js-customer-form .form-group .form-control-comment {

        padding-top: 4px;

        font-size: 12px;

    }

    .js-customer-form .form-group {

        margin-bottom: 12px;

    }

    .address-form .form-group .form-control-label {

        padding-top: 0;

    }

    .address-form .form-group .form-control-valign {

        padding-top: 5px;

    }

    .address-form .form-group .form-control-comment {

        padding-top: 4px;

        font-size: 12px;

    }

    .address-form .form-group {

        margin-bottom: 12px;

    }

    #category #left-column {

        width: 100%;

    }

    #category #content-wrapper, #category #search_filter_toggler {

        width: 100%;

    }

    #products .row.products-selection .display-and-count {

        display: none !important;

    }

    .products-selection .showing {

        text-align: center;

        padding-top: 8px;

    }

    #search_filter_toggler.btn.btn-secondary {

        box-shadow: none;

        padding-top: 8px;

        padding-bottom: 8px;

        border: 1px solid #d1d1d1;

        font-size: 14px;

    }

    #products .row.products-selection .sort-by-row {

        margin-bottom: 6px;

    }

    #wrapper {

        padding-top: 15px;

    }

    #category #left-column #search_filter_controls .btn.btn-tertiary {

        box-shadow: none;

        padding: 6px 15px;

        border: 1px solid #d1d1d1;

        font-size: 14px;

    }

    #category #left-column #search_filter_controls .btn.btn-secondary.ok {

        box-shadow: none;

        padding: 6px 15px;

        border: 1px solid #d1d1d1;

        font-size: 14px;

    }

    #category #left-column #search_filter_controls .btn.btn-secondary.ok .material-icons {

        font-size: 16px;

        margin: 0 5px 0 0;

    }

    #category #left-column #search_filters .facet ul li {

        padding: 2px 10px;

    }

    #category #left-column #search_filters .facet {

        border-bottom: 1px solid #e1e1e1;

        padding-bottom: 2px;

        margin-bottom: 2px;

    }

    #category #left-column #search_filters .facet .navbar-toggler {

        padding: 5px;

    }

    #category #left-column #search_filters {

        border-top: 1px solid #e1e1e1;

    }

    body#checkout section.checkout-step.-reachable.-complete h1 .step-edit {

        float: right;

        margin-top: 0;

    }

    body#checkout section.checkout-step .step-title {

        font-size: 15px;

    }

    body#checkout section.checkout-step.-reachable.-complete h1 .done {

        display: inline-block;

        font-size: 18px;

        font-weight: 700;

        margin-right: 5px;

    }

}

@media(max-width: 575px) {

    #content-wrapper, #left-column {

        padding-left: 15px !important;

        padding-right: 15px !important;

    }

    #category #left-column #search_filters_wrapper {

        margin-left: 0;

        margin-right: 0;

    }

}

@media(max-width: 479px) {

    #product-availability {

        display: block;

        margin-left: 0;

    }

    .product-add-to-cart .product-quantity {

        margin-bottom: 10px;

    }

    body#checkout section.checkout-step .step-title {

        font-size: 14px;

    }

    body#checkout section.checkout-step.-reachable.-complete h1 .done {

        display: inline-block;

        font-size: 16px;

        font-weight: 700;

        margin-right: 3px;

    }

    body#checkout section.checkout-step:last-child, body#checkout section.checkout-step {

        padding: 10px 10px 0;

    }

    body#checkout section.checkout-step.-reachable.-complete h1 .step-edit {

        margin-left: 4px;

    }

}

.top-menu .sub-menu .cat-top-block {

    display: none;

}

.top-menu .sub-menu .cat-bottom-block {

    display: none;

}

#header .navbar-block .top-menu .level0 > a .cat-extra-label {

    display: none;

}

/*megamenu*/ 

@media(min-width: 768px) {

    #header .navbar-block .top-menu .level0.current > a {

        color: #5f752e;

    }

    #header .navbar-block .top-menu .level0 > a {

        position: relative;

    }

    #header .navbar-block .top-menu .level0 > a .cat-extra-label {

        position: absolute;

        font-size: 10px;

        font-weight: 600;

        padding: 2px 4px;

        line-height: 10px;

        background: #EB2771;

        display: block;

        border-radius: 2px;

        right: 8px;

        top: 2px;

    }

    #header .navbar-block .top-menu .level0 > a .cat-extra-label:after {

        content: '';

        display: block;

        height: 0;

        width: 0;

        position: absolute;

        top: 100%;

        border-style: solid;

        border-width: 4px;

        border-color: #EB2771 transparent transparent transparent;

    }

    .top-menu .classic-list {

        position: relative;

    }

    .top-menu .sub-menu.classic-menu {

        width: max-content;

        width: -moz-max-content;

        padding: 15px;

    }

    .top-menu .sub-menu.classic-menu > .top-menu > li.level1 {

        display: block;

        margin: 0;

        float: none;

        min-width: 150px;

    }

    .top-menu .sub-menu.classic-menu > .top-menu > li.level1.has-child {

        display: inline-block;

        margin: 0px 15px;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1.has-child {

        margin-bottom: 8px;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1.has-child:last-child {

        margin-bottom: 0;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1.has-child > a {

        display: block;

        font-size: 14px;

        color: #333333;

        text-transform: capitalize;

        padding: 4px 0;

        font-weight: 600;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1.has-child > a:active,

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1.has-child > a:visited,

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1.has-child > a:focus {

        color: #333333;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1.has-child > a:hover {

        color: #5f752e;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 > a {

        display: block;

        font-size: 14px;

        color: #666666;

        text-transform: capitalize;

        padding: 4px 0;

        font-weight: normal;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 > a:active,

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 > a:visited,

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 > a:focus {

        color: #666666;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 > a:hover {

        color: #5f752e;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 li {

        margin-left: 0;        

        display: block;

        margin-bottom: 0;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 li > a {

        padding: 0;

        display: block;

        font-size: 14px;

        color: #666666;

        text-transform: capitalize;

        font-weight: normal;

        padding: 4px 0;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 li > a:active,

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 li > a:visited,

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 li > a:focus {

        color: #666666;

    }

    #header .navbar-block .top-menu .sub-menu.classic-menu > .top-menu li.level1 li > a:hover {

        color: #5f752e;

    }

    .top-menu .classic-list.full-width-list {

        position: static;

    }

    .top-menu .sub-menu.full-width-menu.classic-menu {

        width: 100%;

        min-width: 100%;

        max-width: 100%;

        padding: 15px;

    }

    .top-menu .sub-menu .cat-top-block p,

    .top-menu .sub-menu .cat-bottom-block p {

        margin: 0 !important;

    }

    .top-menu .sub-menu .cat-top-block {

        display: block;

        clear: both;

        width: 100%;

        padding-bottom: 15px;

    }

    .top-menu .sub-menu .cat-bottom-block {

        display: block;

        clear: both;

        width: 100%;

        padding-top: 15px;

    }



    .top-menu .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1 {

        padding-left: 15px;

        padding-right: 15px;

        width: 20%;

    }

    .top-menu .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1:first-child {

        padding-left: 0;

    }

    .top-menu .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1:last-child {

        padding-right: 0;

    }



    .top-menu .menu-width-2 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1 {

        padding-left: 15px;

        padding-right: 15px;

        width: 50%;

    }

    .top-menu .menu-width-2 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1:first-child {

        padding-left: 0;

    }

    .top-menu .menu-width-2 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1:last-child {

        padding-right: 0;

    }



    .top-menu .menu-width-3 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1 {

        padding-left: 15px;

        padding-right: 15px;

        width: 33.3333%;

    }

    .top-menu .menu-width-3 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1:first-child {

        padding-left: 0;

    }

    .top-menu .menu-width-3 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1:last-child {

        padding-right: 0;

    }



    .top-menu .menu-width-4 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1 {

        padding-left: 15px;

        padding-right: 15px;

        width: 25%;

    }

    .top-menu .menu-width-4 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1:first-child {

        padding-left: 0;

    }

    .top-menu .menu-width-4 .sub-menu.classic-menu.full-width-menu > .top-menu > li.level1:last-child {

        padding-right: 0;

    }



    .top-menu .static-width-list {

        position: relative;

    }

    .top-menu .sub-menu.static-width-menu.classic-menu {

        width: 525px;

        max-width: 525px;

        padding: 15px;

    }

    .top-menu .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1 {

        padding-left: 15px;

        padding-right: 15px;

        width: 20%;

    }

    .top-menu .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1:first-child {

        padding-left: 0;

    }

    .top-menu .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1:last-child {

        padding-right: 0;

    }



    .top-menu .menu-width-2 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1 {

        padding-left: 15px;

        padding-right: 15px;

        width: 50%;

    }

    .top-menu .menu-width-2 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1:first-child {

        padding-left: 0;

    }

    .top-menu .menu-width-2 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1:last-child {

        padding-right: 0;

    }



    .top-menu .menu-width-3 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1 {

        padding-left: 15px;

        padding-right: 15px;

        width: 33.3333%;

    }

    .top-menu .menu-width-3 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1:first-child {

        padding-left: 0;

    }

    .top-menu .menu-width-3 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1:last-child {

        padding-right: 0;

    }



    .top-menu .menu-width-4 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1 {

        padding-left: 15px;

        padding-right: 15px;

        width: 25%;

    }

    .top-menu .menu-width-4 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1:first-child {

        padding-left: 0;

    }

    .top-menu .menu-width-4 .sub-menu.classic-menu.static-width-menu > .top-menu > li.level1:last-child {

        padding-right: 0;

    }

}

#product-modal .modal-dialog {

    max-width: 732px;

}

#product-modal .modal-content .modal-body {

    margin: 0;

    background-color: #ffffff;

}

#product-modal .modal-content .modal-body .product-cover-modal {

    max-width: 100%;

}

#product-modal .modal-content .modal-body .image-caption {

    width: 513px;

}

#products .thumbnail-container .product-thumbnail img, .featured-products .thumbnail-container .product-thumbnail img, .product-accessories .thumbnail-container .product-thumbnail img, .product-miniature .thumbnail-container .product-thumbnail img{

    position: relative;

}

#header .header-nav #_desktop_contact_link #contact-link{

    margin-top: 0;

}

#blockcart-modal .modal-title {

    color: #333333;

}

#blockcart-modal .modal-title i.material-icons {

    margin-right: 0.875rem;

    color: #333333;

}

/*********
Header
*********/
* {
    font-family: 'Jost', 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    box-sizing: border-box;
}

.btn {
    background-image: none;
    background: #5f752e;
    border: 1px solid #5f752e;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-family: 'Jost', 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: 400;
    padding: 9px 20px;
    font-size: 15px;
    box-sizing: border-box;
    vertical-align: middle;
    border-radius: 3px;
}

.btn-primary:active:focus {
    background: #5f752e;
    border: 1px solid #5f752e;
    color: #fff;
}

.btn-primary:hover,
.btn-primary.active:hover,
.btn-primary:active:hover,
.open>.btn-primary.dropdown-toggle:hover {
    background-color: #333333;
    border-color: #333333;
}

.btn-primary.focus,
.btn-primary:focus,
.btn-primary,
.btn-primary.active.focus,
.btn-primary.active:focus,
.btn-primary:active.focus,
.btn-primary:active:focus,
.open>.btn-primary.dropdown-toggle.focus,
.open>.btn-primary.dropdown-toggle:focus {
    background: #5f752e;
    border-color: #5f752e;
}

@media (max-width: 1199px) {
    .container {
        width: 100%;
        max-width: 970px;
        box-sizing: border-box;
    }
}

@media (max-width: 991px) {
    .container {
        width: 100%;
        max-width: 750px;
        box-sizing: border-box;
    }
}

@media (max-width: 767px) {
    .container {
        width: 100%;
        max-width: 620px;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }
}

@media (max-width: 639px) {
    .container {
        width: 100%;
        max-width: 460px;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }
}

@media (max-width: 479px) {
    .container {
        width: 100%;
        max-width: 370px;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }

    .row {
        margin-right: -10px;
        margin-left: -10px;
    }
}

@media (max-width: 379px) {
    .container {
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }
}

.top-padding {
    padding-top: 35px;
}

.bottom-padding {
    padding-bottom: 35px;
}

.top-margin {
    margin-top: 35px;
}

.bottom-margin {
    margin-bottom: 35px;
}

@media(max-width: 991px) {
    .top-padding {
        padding-top: 25px;
    }

    .bottom-padding {
        padding-bottom: 25px;
    }

    .top-margin {
        margin-top: 25px;
    }

    .bottom-margin {
        margin-bottom: 25px;
    }
}

@media(max-width: 767px) {
    .top-padding {
        padding-top: 20px;
    }

    .bottom-padding {
        padding-bottom: 20px;
    }

    .top-margin {
        margin-top: 20px;
    }

    .bottom-margin {
        margin-bottom: 20px;
    }
}

@media(max-width: 479px) {
    .top-padding {
        padding-top: 10px;
    }

    .bottom-padding {
        padding-bottom: 10px;
    }

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

    .bottom-margin {
        margin-bottom: 10px;
    }
}

#header {
    float: left;
    width: 100%;
    display: block;
    clear: both;
    position: relative;
}

#header .header-nav {
    float: left;
    width: 100%;
    display: block;
    padding-bottom: 0;
    border-bottom: 1px solid #e8e8e8;
    max-height: none;
    margin: 0;
}

#_desktop_language_selector,
#_desktop_currency_selector {
    float: left;
    position: relative;
}

.payment-currency-block>div {
    margin-left: 10px;
    padding-left: 18px;
}

.payment-currency-block>div:first-child {
    margin-left: 0;
    padding-left: 0;
}

.payment-currency-block>div:first-child::after {
    display: none;
}

.payment-currency-block>div::after {
    position: absolute;
    height: 12px;
    width: 1px;
    background: #888888;
    left: 0;
    top: 50%;
    content: "";
    display: block;
    transform: translate(0, -50%);
}

#header .header-nav .currency-selector,
#header .header-nav .language-selector {
    padding-right: 0;
    letter-spacing: 0.5px;
    margin: 0;
}

#header .header-nav .currency-selector>button,
#header .header-nav .language-selector>button {
    cursor: pointer;
    color: #333333;
    padding: 10px 0;
    line-height: 1;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

#header .header-nav .currency-selector>button .expand-more,
#header .header-nav .language-selector>button .expand-more {
    color: #333333;
}

#header .header-nav .currency-selector>button:hover .expand-more,
#header .header-nav .language-selector>button:hover .expand-more {
    color: #5f752e;
}

#header .header-nav .currency-selector>.dropdown-menu .dropdown-item,
#header .header-nav .language-selector>.dropdown-menu .dropdown-item {
    padding: 4px 10px;
    font-size: 13px;
}

#header .header-nav .right-nav .user-info .material-icons {
    display: none;
}

#_desktop_user_info {
    float: right;
}

#header .header-nav .right-nav .user-info,
#header .header-nav .right-nav #contact-link {
    margin: 0;
    padding-left: 15px;
    letter-spacing: 0.5px;
}

#header .header-nav .user-info .account {
    margin-left: 0;
    /* margin-right: 10px; */
}

#_desktop_user_info a {
    padding: 12px 6px;
    display: inline-block;
    vertical-align: middle;
    color: #333333;
    text-decoration: none;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

#header .header-nav .right-nav .user-info>a:active,
#header .header-nav .right-nav .user-info>a:focus,
#header .header-nav .right-nav .user-info>a:visited,
#header .header-nav .right-nav #contact-link>a:active,
#header .header-nav .right-nav #contact-link>a:visited,
#header .header-nav .right-nav #contact-link>a:focus {
    color: #333333;
}

#header .header-nav .right-nav .user-info>a:hover,
#header .header-nav .right-nav #contact-link>a:hover {
    color: #5f752e;
}

#header .header-nav .material-icons.expand-more,
#header .header-nav .material-icons {
    margin: 0;
    line-height: 21px;
}

.dropdown:hover .expand-more {
    color: #5f752e;
}

.btn-unstyle:focus .expand-more {
    color: #5f752e;
}

#header .header-top {
    float: left;
    width: 100%;
    display: block;
    padding: 0;
}

#_desktop_logo {
    float: left;
    display: table;
    height: 100px;
    margin-top: 0;
    margin-bottom: 0;
}

#_desktop_logo>a {
    margin: 0;
    max-width: 100%;
    display: table-cell;
    vertical-align: middle;
    float: none;
}

#header a:hover {
    color: #5f752e;
}

.search-widget form button[type="submit"] .search:hover,
.search-widget form input[type="text"]:focus+button .search {
    color: #5f752e;
}

#_desktop_cart {
    margin-left: 30px;
    padding: 30px 0;
    position: relative;
    float: right;
}

#_desktop_cart .header>a {
    position: relative;
    display: block;
    padding-left: 50px;
}

#_desktop_cart .header>a .text {
    position: static;
    height: auto;
    width: auto;
    color: #333;
    font-weight: 600;
    display: block;
    text-transform: capitalize;
    font-size: 14px;
    line-height: 20px;
}

#_desktop_cart .header>a .cart-qty {
    display: block;
    margin: 0;
    padding: 0;
    font-size: 14px;
    line-height: 20px;
    color: #333333;
    font-weight: 400;
}

#_desktop_cart .header>a::before {
    font-size: 18px;
    color: #ffffff;
    content: "\f290";
    font-family: 'Fontawesome';
    background: #2d3d15;
    height: 40px;
    width: 40px;
    line-height: 40px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
}

#_desktop_cart .header>a:hover::before {
    background: #5f752e;
}

#_desktop_cart .header {
    line-height: 45px;

}

#header .header-top .search-widget {
    float: right;
    position: relative;
    width: 370px;
    margin-left: 15px;
    padding: 29px 0;
}

.search-widget form button[type="submit"] {
    right: 0;
    text-align: center;
    height: 42px;
    width: 40px;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    bottom: 0;
    padding: 0;
}

.header-top .search-widget form input[type="text"] {
    margin: 0;
    padding-right: 43px;
    position: static;
    border: none;
    height: 42px;
    border-radius: 0;
    padding-left: 15px;
    font-size: 14px;
    background-color: #ececec;
}

.search-widget form input[type="text"]:focus {
    outline: none;
}

#pagenotfound .page-not-found .search-widget,
#products .page-not-found .search-widget {
    float: none;
    padding: 0;
    min-width: 100%;
}

.page-not-found .search-widget form {
    display: inline-block;
    width: 100%;
}

#pagenotfound .page-not-found .search-widget input,
#products .page-not-found .search-widget input {
    width: 100%;
    padding-right: 40px;
}

#header .header-contact-block {
    float: right;
    margin-left: 30px;
    padding: 30px 0;
}

#header .header-contact-block .item {
    display: inline-block;
    vertical-align: middle;
    font-size: 0;
    box-sizing: border-box;
}

#header .header-contact-block .item .icon-block {
    display: inline-block;
    vertical-align: middle;
    font-size: 18px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background: #2d3d15;
    color: #ffffff;
    border-radius: 50%;
    margin-right: 10px;
    box-sizing: border-box;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

#header .header-contact-block .item:hover .icon-block {
    background: #5f752e;
}

#header .header-contact-block .item .text-block {
    display: inline-block;
    vertical-align: middle;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
}

#header .header-contact-block .item .text-block>a {
    color: #333333;
    display: block;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0;
    text-transform: initial;
    text-decoration: none;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

#header .header-navfullwidth {
    display: block;
    background: #2d3d15;
    float: left;
    width: 100%;
    clear: both;
}

.top-navigation-menu {
    display: block;
    background: #2d3d15;
}

.top-navigation-menu #_desktop_top_menu {
    float: none;
    width: 100%;
    padding: 0;
}

#header .top-navigation-menu .top-menu {
    margin: 0;
    display: block;
}

.top-menu .sub-menu {
    margin-left: 0;
}

#header .top-navigation-menu .top-menu .level0 {
    margin: 0;
    display: inline-block;
    position: relative;
}

#header .top-navigation-menu .top-menu .level0:hover>a,
#header .top-navigation-menu .top-menu .level0:active>a {
    color: #5f752e;
}

#header .top-navigation-menu .top-menu .level0:hover>.sub-menu {
    display: block;
    top: 100% !important;
}

#header .top-navigation-menu .top-menu .level1 a:hover,
#header .top-navigation-menu .top-menu .level1 a:active {
    color: #5f752e;
}

#header .top-navigation-menu .top-menu .level0:first-child>a {
    padding-left: 0;
}

#header .top-navigation-menu .top-menu .level0>a {
    position: relative;
    display: block;
    font-size: 16px;
    font-weight: 500;
    padding: 17px 20px;
    letter-spacing: 0.5;
    color: #fff;
    line-height: 20px;
    transition: all .3s ease-in 0s;
    -moz-transition: all .3s ease-in 0s;
    -webkit-transition: all .3s ease-in 0s;
}

#header .top-navigation-menu .top-menu .level1 {
    position: relative;
}

#header .top-navigation-menu .top-menu .level1>a {
    font-size: 14px;
    position: relative;
    font-weight: 600;
    padding: 18px 20px;
    letter-spacing: 0.5;
    color: #333333;
    line-height: 20px;
    transition: all .3s ease-in 0s;
    -moz-transition: all .3s ease-in 0s;
    -webkit-transition: all .3s ease-in 0s;
}

#header .top-navigation-menu .top-menu .level2 {
    margin-left: 30px;
}

#header .top-navigation-menu .top-menu .level3 {
    margin-left: 5px;
    position: relative;
}

#header .top-navigation-menu .top-menu .level3>a {
    color: #4c4c4c;
    font-size: 13px;
}

#header .top-navigation-menu .top-menu .level4 {
    margin-left: 15px;
    position: relative;
}

#header .top-navigation-menu .top-menu .level4>a {
    color: #4c4c4c;
    font-size: 12px;
}

/*
#header .navbar-block .top-menu .category .sub-menu{
    display: block;
    top: 56px;
    width: auto;
    margin: 0;
}
#header .navbar-block .top-menu .category .sub-menu .top-menu .category a{
    position: relative;
    display: block;
    font-size: 14px;
    font-weight: 600;
    padding: 18px 20px;
    letter-spacing: 0.5;
    color: #222;
    line-height: 20px;
    transition: all .3s ease-in 0s;
    -moz-transition: all .3s ease-in 0s;
    -webkit-transition: all .3s ease-in 0s;
}
*/
.image-slider-block {
    float: left;
    width: 100%;
    clear: both;
    display: block;
    margin-bottom: 35px;
}

.image-slider-block .carousel-item .caption {
    display: block;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 0;
    right: 0;
    text-align: center;
    bottom: unset;
    max-width: unset;
}

.image-slider-block .caption .caption-description {
    display: block;
    max-width: 425px;
    width: 100%;
    text-align: left;
    float: right;
    margin-right: 180px;
}

.image-slider-block .caption .caption-description h2 {
    margin-top: 0;
    margin-bottom: 30px;
    font-size: 58px;
    font-weight: normal;
    color: #2d3d15;
    display: block;
}

.image-slider-block .caption .caption-description h2 span {
    color: #5f752e;
}

.image-slider-block .caption .caption-description h2 strong {
    font-weight: 600;
}

.image-slider-block .caption .caption-description .action.primary {
    background: #5f752e;
    border: 1px solid #5f752e;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-weight: 400;
    font-size: 15px;
    box-sizing: border-box;
    vertical-align: middle;
    padding: 13px 20px;
    min-width: 160px;
    text-transform: uppercase;
    border-radius: 3px;
    text-align: center;
}

.image-slider-block .caption .caption-description .action.primary:hover {
    background: #333;
    border-color: #333;
}

.image-slider-block ul>li:first-child .caption .caption-description {
    float: left;
    margin-left: 180px;
    margin-right: 0;
}

.image-slider-block .caption .caption-description h2 i {
    font-family: "pristina";
    font-weight: 500;
}

.image-slider-block .caption .caption-description h3 {
    font-weight: 500;
    font-size: 31px;
    padding-bottom: 9px;
    margin-bottom: 10px;
    color: #fff;
}

.image-slider-block .caption .caption-description .slider-btn {
    display: block;
    width: 100%;
    float: left;
}

.image-slider-block .caption .caption-description .btn.btn-primary {
    text-align: center;
    margin-top: 25px;
    margin-bottom: 0px;
    background: #fabd48;
    color: #111;
    font-size: 20px;
    font-weight: 700;
    padding: 15px 34px;
    text-transform: capitalize;
}

.image-slider-block .caption .caption-description .btn.btn-primary:hover {
    opacity: 0.8;
}

.image-slider-block .carousel .carousel-inner {
    height: auto;
    margin-bottom: 0;
}

.image-slider-block .carousel-control .icon-next {
    margin-right: 0;
    width: 35px;
    height: 35px;
    background-color: transparent;
    right: 30px;
    border: 1px solid #5f752e;
}

.image-slider-block .carousel-control .icon-prev {
    width: 35px;
    height: 35px;
    background-color: transparent;
    left: 30px;
    margin-left: 0;
    border: 1px solid #5f752e;
    transition: 0.5s;
}

.image-slider-block .carousel .carousel-control .icon-prev i,
.image-slider-block .carousel .carousel-control .icon-next i {
    font-size: 25px;
    transition: 0.5s;
    vertical-align: inherit;
    line-height: 35px;
    color: #5f752e;
}

.carousel .carousel-control .icon-next:hover,
.carousel .carousel-control .icon-prev:hover {
    background-color: #5f752e;
}

.image-slider-block .carousel .carousel-control .icon-prev:hover i,
.image-slider-block .carousel .carousel-control .icon-next:hover i {
    color: #ffffff;
}

@media (max-width: 1199px) {
    .image-slider-block .slider-description .desc-content h2 {
        font-size: 48px;
    }
}

@media (max-width: 991px) {
    .image-slider-block .caption .caption-description h2 {
        font-size: 42px;
        margin-bottom: 20px;
    }

    .image-slider-block ul>li:first-child .caption .caption-description {
        margin-left: 120px;
    }

    .image-slider-block .caption .caption-description {
        margin-right: 15px;
    }

    .image-slider-block .caption .caption-description .action.primary {
        font-size: 13px;
        padding: 7px 10px;
        min-width: 130px;
    }

    .image-slider-block {
        margin-bottom: 20px;
    }
}

@media (max-width: 767px) {
    .image-slider-block .caption .caption-description h2 {
        font-size: 34px;
        padding-bottom: 5px;
        margin-bottom: 5px;
    }

    .image-slider-block .caption .caption-description {
        max-width: 300px;
    }
}

@media (max-width: 639px) {
    .image-slider-block .caption .caption-description h2 {
        font-size: 24px;
        padding-bottom: 0px;
        margin-bottom: 5px;
    }

    .image-slider-block ul>li:first-child .caption .caption-description {
        margin-left: 90px;
        text-align: left;
    }

    .image-slider-block .caption .caption-description {
        max-width: 100%;
        text-align: right;
        margin-right: 90px;
    }

    .image-slider-block {
        margin-bottom: 10px;
    }
}

@media (max-width: 479px) {
    .image-slider-block .caption .caption-description h2 {
        font-size: 16px;
        padding-bottom: 0px;
        margin-bottom: 5px;
    }

    .image-slider-block .caption .caption-description .action.primary {
        font-size: 13px;
        padding: 5px 10px;
        min-width: 100px;
    }
}

/********
promotion-block
********/
.home-images-block-one {
    float: left;
    width: 100%;
    clear: both;
    display: block;
}

.home-images-block-one .row {
    font-size: 0;
}

.home-images-block-one .item {
    padding-left: 15px;
    padding-right: 15px;
    display: inline-block;
    vertical-align: top;
    width: 50%;
    font-size: 14px;
}

.home-images-block-one .item .item-inner {
    display: block;
    position: relative;
}

.home-images-block-one .item .item-inner .img-responsive {
    width: 100%;
    height: auto;
    display: block;
}

.home-images-block-one .item .item-inner .text-content {
    position: absolute;
    top: 50%;
    left: 9%;
    color: #2d3d15;
    font-weight: 400;
    transform: translate(0, -50%);
}

.home-images-block-one .item .item-inner .text-content p {
    font-size: 30px;
    line-height: 1.3;
    margin-bottom: 28px;
    color: #2d3d15;
}

.home-images-block-one .item .item-inner .text-content p>span {
    color: #5f752e;
}

.home-images-block-one .item .item-inner .text-content strong {
    font-weight: 600;
}

.action.btn-primary {
    vertical-align: middle;
    display: inline-block;
    padding: 9px 20px;
    line-height: 22px;
    border-radius: 3px;
    background: #5f752e;
    border: 1px solid #5f752e;
    font-weight: 400;
    font-size: 15px;
}

.action.btn-primary:hover {
    background: #333;
    border-color: #333;
}

@media (max-width: 1199px) {
    .home-images-block-one .item .item-inner .text-content p {
        font-size: 24px;
    }
}

@media (max-width: 991px) {
    .home-images-block-one .item .item-inner .text-content p {
        font-size: 18px;
        margin-bottom: 15px;
    }

    .action.btn-primary {
        padding: 5px 14px;
    }
}

@media (max-width: 639px) {
    .home-images-block-one .item:last-child {
        margin-bottom: 0;
    }

    .home-images-block-one .item {
        width: 100%;
        margin-bottom: 15px;
    }
}

@media (max-width: 479px) {
    .home-images-block-one .item {
        padding: 0 10px;
    }
}

/*******lookbook-section*******/
.home-images-block-two {
    float: left;
    width: 100%;
    background-image: url('../img/parallax-bg.jpg');
    background-image: image-set(url('../img/parallax-bg.webp') type('image/webp'), url('../img/parallax-bg.jpg') type('image/jpeg'));
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    clear: both;
    display: block;
    padding: 110px 0;
    text-align: center;
}

.home-images-block-two .content-main h3 {
    font-size: 58px;
    color: #fff;
    margin-top: 0;
    margin-bottom: 20px;
    font-weight: 500;
}

.home-images-block-two .content-main>a.link-btn {
    font-size: 28px;
    color: #fff;
    font-weight: 500;
    text-decoration: none;
    position: relative;
    display: inline-block;
    line-height: 34px;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

.home-images-block-two .content-main>a.link-btn::after {
    content: "\f101";
    font-family: "Fontawesome";
    display: inline-block;
    vertical-align: middle;
    font-size: 24px;
    margin-left: 5px;
}

.home-images-block-two .content-main>a.link-btn>span {
    border-bottom: 1px solid #fff;
    line-height: 34px;
    display: inline-block;
}

.home-images-block-two .content-main>a.link-btn:hover {
    color: #fff;
    text-decoration: none;
    opacity: 0.8;
}

@media (max-width: 991px) {
    .home-images-block-two .content-main h3 {
        font-size: 48px;
    }
}

@media (max-width: 767px) {
    .home-images-block-two .content-main h3 {
        font-size: 34px;
    }

    .home-images-block-two {
        padding: 80px 0;
    }
}

@media (max-width: 639px) {
    .home-images-block-two .content-main h3 {
        font-size: 30px;
    }
}

/*title*/
.section-title {
    display: block;
    position: relative;
    text-align: center;
    margin-bottom: 50px;
    color: #2d3d15;
    font-size: 40px;
    font-weight: 400;
}

.section-title>span {
    position: relative;
}

.section-title>span::after {
    left: 100%;
    background-image: linear-gradient(to right, #5f752e, #babdc2);
    margin-left: 20px;
}

.section-title>span::before,
.section-title>span::after {
    background-color: #babdc2;
    position: absolute;
    content: "";
    top: 50%;
    height: 1px;
    width: 200px;
    display: block;
}

.section-title>span::before {
    right: 100%;
    background-image: linear-gradient(to right, #babdc2, #5f752e);
    margin-right: 20px;
}

.section-title>span>i {
    color: #5f752e;
    font-style: italic;
}

/*navigation arrow*/
.owl-theme .owl-controls .owl-pagination .owl-page {
    box-shadow: none;
    border-radius: 25px;
    margin: 0 6px;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

.owl-theme .owl-controls .owl-pagination .owl-page>span {
    width: 7px;
    height: 7px;
    margin: 6px 6px;
    background: #c3c4c8;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    border-radius: 30px;
    border: none;
}

.owl-theme .owl-controls .owl-page.active {
    background: #c3c4c8;
}

.owl-theme .owl-controls.clickable .owl-page:hover {
    background: #c3c4c8;
}

.owl-theme .owl-controls .owl-page.active span,
.owl-theme .owl-controls.clickable .owl-page:hover span {
    background: #2d3d15;
}

.owl-theme .owl-controls.clickable .owl-buttons>div {
    box-shadow: none;
    border-radius: 0;
    background: transparent;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    font-size: 0;
}

.owl-theme .owl-controls.clickable .owl-buttons .owl-prev {
    left: -10px;
}

.owl-theme .owl-controls.clickable .owl-buttons .owl-next {
    right: -10px;
}

.owl-theme .owl-controls.clickable .owl-buttons>div .prev-arrow {
    background-repeat: no-repeat;
    background-position: center center;
    width: 50px;
    height: 50px;
    border: 1px solid #eef0dd;
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 3px;
    background-image: url(../img/arrow-left.png);
    background-image: image-set(url(../img/arrow-left.webp) type('image/webp'), url(../img/arrow-left.png) type('image/png'));
}

.owl-theme .owl-controls.clickable .owl-buttons .owl-next .next-arrow {
    background-repeat: no-repeat;
    background-position: center center;
    width: 50px;
    height: 50px;
    border: 1px solid #eef0dd;
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 3px;
    background-image: url(../img/arrow-right.png);
    background-image: image-set(url(../img/arrow-right.webp) type('image/webp'), url(../img/arrow-right.png) type('image/png'));
}

@media (max-width: 1199px) {
    .section-title {
        font-size: 30px;
    }

    .owl-theme .owl-controls.clickable .owl-buttons .owl-prev {
        left: 0;
    }

    .owl-theme .owl-controls.clickable .owl-buttons .owl-next {
        right: 0;
    }
}

@media (max-width: 991px) {

    .section-title>span::before,
    .section-title>span::after {
        width: 100px;
    }
}

@media (max-width: 639px) {

    .section-title>span::before,
    .section-title>span::after {
        display: none;
    }

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

/*******
products
*******/
#products .product-title a,
.featured-products .product-title a,
.product-accessories .product-title a,
.product-miniature .product-title a {
    color: #555555;
    font-size: 16px;
    text-decoration: none;
    font-weight: 500;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

#products .product-title a:hover,
.featured-products .product-title a:hover,
.product-accessories .product-title a:hover,
.product-miniature .product-title a:hover {
    color: #5f752e;
}

#products .products-grid .products .product-item.list-view .product-description .product-title>a {
    color: #333333;
}

#products .products-grid .products .product-item.list-view .product-description .product-title>a:hover {
    color: #5f752e;
}

.products-grid .btn-primary.add-to-cart .material-icons {
    display: none;
}

#products .product-title,
.featured-products .product-title,
.product-accessories .product-title,
.product-miniature .product-title {
    margin-bottom: 15px;
    text-align: left;
}

#products .highlighted-informations,
.featured-products .highlighted-informations,
.product-accessories .highlighted-informations,
.product-miniature .highlighted-informations {
    box-shadow: none;
}

#products .product-description,
.featured-products .product-description,
.product-accessories .product-description,
.product-miniature .product-description {
    width: 100%;
}

#products .highlighted-informations,
.featured-products .highlighted-informations,
.product-accessories .highlighted-informations,
.product-miniature .highlighted-informations {
    width: 100%;
}

.featured-products .products-grid .products .product-item .product-miniature .thumbnail-container .product-description .product-short-desc {
    display: none !important;
}

.product-flags li.product-flag,
#products .products-grid .products .product-item .product-flags>li,
.products-grid .products .product-item .product-flags>li {
    background: #2d3d15;
    color: #ffffff;
    font-weight: 500;
    padding: 2px 8px 2px;
    position: absolute;
    right: 10px;
    left: auto;
    text-transform: uppercase;
    top: 10px;
    font-size: 13px;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    z-index: 1;
    margin: 0;
    min-height: auto;
    min-width: auto;
    line-height: 18px;
    box-shadow: none;
}

.product-flags li.product-flag.new,
.products-grid .products .product-item .product-flags>li.new,
#products .products-grid .products .product-item .product-flags>li.new {
    position: absolute;
    left: 10px;
    top: 10px;
    right: auto;
    background: #5f752e;
}

.product-flags li.product-flag.pack,
.products-grid .products .product-item .product-flags>li.pack,
#products .products-grid .products .product-item .product-flags>li.pack {
    position: absolute;
    left: 10px;
    top: 10px;
    right: auto;
}

.product-flags li.product-flag.new+.product-flag.pack,
.products-grid .products .product-item .product-flags>li.new+.product-flag.pack,
#products .products-grid .products .product-item .product-flags>li.new+.product-flag.pack {
    left: 10px;
    top: 45px;
}

.product-flags li.product-flag.pack,
.products-grid .products .product-item .product-flags>li.pack,
#products .products-grid .products .product-item .product-flags>li.pack {
    background: #8b8f98;
}

.product-flags li.product-flag.on-sale,
.products-grid .products .product-item .product-flags>li.on-sale,
#products .products-grid .products .product-item .product-flags>li.on-sale {
    background: #8b8f98;
}

.product-flags li.product-flag.on-sale+.product-flag.discount,
.products-grid .products .product-item .product-flags>li.on-sale+.product-flag.discount,
#products .products-grid .products .product-item .product-flags>li.on-sale+.product-flag.discount {
    right: 10px;
    top: 45px;
}

#products .products-grid .products .product-item .product-flags li.product-flag.on-sale {
    width: max-content !important;
    width: -moz-max-content;
    left: auto;
}

#product #content .product-flags .product-flag {
    font-size: 16px;
    font-weight: 700;
    padding: 6px 15px 5px;
}

.discount-percentage {
    top: -210px !important;
}

#products .product-miniature .on-sale.on-sale,
li.product-flag.on-sale {
    width: max-content !important;
    width: -moz-max-content;
    left: auto;
}

.product-flags li.product-flag.discount,
.product-flags li.product-flag.discount-amount,
.product-flags li.product-flag.discount-percentage {
    background-color: #2d3d15;
}

#search_filters>.h6,
#search_filters_brands>.h6,
#search_filters_suppliers>.h6 {
    display: block;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #d1d1d1;
    font-size: 14px;
    font-weight: 600;
    color: #232323;
}

.featured-products .all-products .material-icons {
    display: none;
}

.featured-products .all-products {
    text-align: -moz-center;
    margin-top: 30px;
    margin-bottom: 0;
    display: block;
}

.featured-products .all-products>a {
    background: #5f752e;
    font-size: 14px;
    letter-spacing: 1px;
    margin: 0;
    padding: 10px 20px;
    font-weight: 600;
    line-height: 20px;
    display: block;
    width: -moz-max-content;
    color: #fff;
    box-sizing: border-box;
    text-transform: uppercase;
    float: none !important;
}

.all-products>a:hover,
.featured-products .all-products a:hover {
    background-color: #333;
}

#products img,
.featured-products img,
.product-accessories img,
.product-miniature img {
    margin: 0;
    display: block;
    height: auto;
    max-width: 100%;
}

#products .thumbnail-container,
.featured-products .thumbnail-container,
.product-accessories .thumbnail-container,
.product-miniature .thumbnail-container {
    height: 100%;
}

#products .products-grid {
    font-size: 0;
}

.products-grid .products .product-item {
    padding-left: 15px;
    padding-right: 15px;
    display: inline-block;
    font-size: 14px;
}

.products-grid .products .product-item .product-miniature,
#products .products-grid .products .product-item .product-miniature {
    margin: 0;
}

.products-grid .products .product-item .product-miniature .thumbnail-container,
#products .products-grid .products .product-item .product-miniature .thumbnail-container {
    width: 100%;
    height: 100%;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    margin: 0;
    background: transparent;
}

.products-grid .products .product-item .product-miniature .thumbnail-container .product-image-block,
#products .products-grid .products .product-item .product-miniature .thumbnail-container .product-image-block {
    position: relative;
    display: block;
    overflow: hidden;
    border: none;
}

#products .highlighted-informations,
.featured-products .highlighted-informations,
.product-accessories .highlighted-informations,
.product-miniature .highlighted-informations {
    background: #e1e1e1;
    opacity: 0.95;
}

.products-grid .products .product-item .product-miniature .thumbnail-container .product-image-block .highlighted-informations,
#products .products-grid .products .product-item .product-miniature .thumbnail-container .product-image-block .highlighted-informations {
    bottom: -90px;
    height: auto;
    padding: 8px 0;
}

.products-grid .products .product-item:hover .product-miniature .thumbnail-container .product-image-block .highlighted-informations,
#products .products-grid .products .product-item:hover .product-miniature .thumbnail-container .product-image-block .highlighted-informations {
    bottom: 0px;
}

#products .variant-links,
.featured-products .variant-links,
.product-accessories .variant-links,
.product-miniature .variant-links {
    background: transparent;
}

.products-grid .products .product-item .product-miniature .thumbnail-container .product-description,
#products .products-grid .products .product-item .product-miniature .thumbnail-container .product-description {
    position: static;
    background: transparent;
    height: auto;
}

.products-grid .products .product-item .product-miniature .thumbnail-container .product-description:after,
#products .products-grid .products .product-item .product-miniature .thumbnail-container .product-description:after {
    display: none;
}

.products-grid .products .product-item .product-miniature .thumbnail-container .product-description .add,
#products .products-grid .products .product-item .product-miniature .thumbnail-container .product-description .add {
    margin: 6px 0 0;
    text-align: left;
}

.products-grid .products .product-item .product-miniature .thumbnail-container .product-description .product-price-and-shipping,
#products .products-grid .products .product-item .product-miniature .thumbnail-container .product-description .product-price-and-shipping {
    margin: 9px 0 15px;
    font-size: 18px;
    font-weight: 600;
    white-space: nowrap;
    color: #000000;
    text-align: left;
}

#products .regular-price,
.featured-products .regular-price,
.product-accessories .regular-price,
.product-miniature .regular-price {
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
    color: #555555;
    line-height: 24px;
}

#products .highlighted-informations .quick-view:hover,
.featured-products .highlighted-informations .quick-view:hover,
.product-accessories .highlighted-informations .quick-view:hover,
.product-miniature .highlighted-informations .quick-view:hover {
    color: #5f752e;
}

.color.active,
.color:hover,
.custom-checkbox input[type="checkbox"]+span.color.active,
.custom-checkbox input[type="checkbox"]+span.color:hover,
.facet-label.active .custom-checkbox span.color,
.facet-label:hover .custom-checkbox span.color {
    border-color: #5f752e;
}

#product .add {
    width: auto;
    margin: 0;
}

#product .add .btn {
    line-height: 24px;
}

.add .btn {
    font-weight: 500;
    padding: 9px 13px;
    font-size: 14px;
    box-shadow: none;
}

.featured-products {
    display: block;
    clear: both;
    float: left;
    width: 100%;
}

/*******
latest-offer
*******/
.latest-offer-section {
    display: block;
    float: left;
    clear: both;
    max-width: 100%;
    width: 100%;
    margin: 25px 0;
}

.latest-offer-section .offer-inner {
    background-position: center center;
    background-repeat: no-repeat;
    clear: both;
    background-image: url(../img/bizkick-parralex-image.jpg);
    float: left;
    padding: 90px 0;
    text-align: center;
    width: 100%;
    background-size: cover;
}

.latest-offer-section .offer-inner>p {
    color: white;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
    margin-top: 0;
}

.latest-offer-section .offer-inner>h1 {
    color: #ffffff;
    font-size: 60px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-top: 0;
    margin-bottom: 36px;
    line-height: 1.1;
}

.latest-offer-section .offer-inner>a {
    background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
    font-size: 14px;
    letter-spacing: 1.5px;
    margin: 0;
    padding: 15px 25px;
    border: 2px solid #5f752e;
    color: #fff;
    font-weight: 700;
    box-sizing: border-box;
    text-transform: uppercase;
}

.latest-offer-section .offer-inner>a:hover {
    background-color: #5f752e;
}

/*********
block-reassurance
*********/
#product #block-reassurance {
    box-shadow: none;
    border: 0;
    overflow: visible;
    background: transparent;
}

#block-reassurance ul {
    margin: 0;
    border: 0;
}

.block-reassurance-item .icon-img {
    display: inline-block;
}

#block-reassurance li {
    border: 0;
}

#product #block-reassurance li span {
    font-weight: 500;
}

.blockreassurance_product {
    margin-top: 25px;
    box-shadow: none;
    border: 0;
    overflow: visible;
    background: transparent;
}

.blockreassurance_product>div {
    border: 0;
    padding: 1rem 1.5rem;
}

.blockreassurance_product>div>p {
    margin-bottom: 0;
}

.blockreassurance_product>div:last-child {
    border: 0;
    padding: 0;
}

.blockreassurance_product>div:nth-last-child(2) {
    border: 0;
}

/*******
custom-text
*******/

/*******
blogpost-block
*******/
.blog-section {
    display: block;
    clear: both;
    float: left;
    width: 100%;
}

.blogpost-block .blog-block .blog-inner {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 0;
    box-sizing: border-box;
    display: block;
}

.blogpost-block .blog-block .blog-inner .blog-inner-block {
    display: block;
    position: relative;
}

.blogpost-block .blog-block .blog-inner .blog-image {
    display: block;
    position: relative;
}

.blogpost-block .blog-block .blog-inner .blog-image>a {
    display: block;
}

.blogpost-block .blog-block .blog-inner .blog-image>a>img {
    display: block;
    width: 100%;
    height: auto;
}

.blogpost-block .blog-block .blog-inner .blog-image .post-date {
    position: absolute;
    bottom: 20px;
    left: 20px;
}

.blogpost-block .blog-block .blog-inner .blog-image .post-date>span {
    display: block;
    padding: 3px 10px;
    background: #2d3d15;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
}

.blogpost-block .blog-block .blog-inner .blog-content {
    display: block;
    text-align: center;
    padding: 25px 10px 0;
    box-sizing: border-box;
}

.blogpost-block .blog-block .blog-inner .blog-content>h3 {
    display: block;
    margin-bottom: 12px;
    color: #333;
    font-size: 16px;
    text-transform: uppercase;
    line-height: 1.5;
    font-weight: 600;
    text-decoration: none;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

.blogpost-block .blog-block .blog-inner .blog-content>h3>a {
    color: #333;
}

.blogpost-block .blog-block .blog-inner .blog-content>h3>a:hover {
    color: #5f752e;
}

.blogpost-block .blog-block .blog-inner .blog-content>p {
    display: block;
    margin-bottom: 18px;
    font-size: 14px;
    font-weight: 500;
    color: #555;
}

.blogpost-block .blog-block .blog-inner .blog-content .action.primary {
    padding: 5px 15px;
    font-size: 13px;
    font-weight: 500;
}

@media(max-width: 767px) {
    .blog-section {
        margin: 20px 0;
    }
}

/*******
brand-section
*******/
.brand-section {
    float: left;
    clear: both;
    width: 100%;
    padding: 25px 0;
}

.brand-section .brand-section-title {
    position: relative;
    display: none;
    margin-bottom: 25px;
    text-align: center;
}

.brand-section .brand-section-title>h4 {
    border-bottom: 2px solid #555;
    display: inline-block;
    font-size: 20px;
    margin-top: 0;
    padding-bottom: 10px;
    letter-spacing: 0.5px;
    color: #222222;
    margin-bottom: 0;
    text-align: left;
    text-transform: uppercase;
    line-height: 24px;
    font-weight: 600;
}

.brand-section .brand-section-title>h4 a:visited,
.brand-section .brand-section-title>h4 a:active,
.brand-section .brand-section-title>h4 a:focus,
.brand-section .brand-section-title>h4 a:hover,
.brand-section .brand-section-title>h4 a {
    color: #222222;
}

.brand-content {
    float: left;
    width: 100%;
    clear: both;
}

.brand-content .brand-row {
    margin-left: -10px;
    margin-right: -10px;
}

.brands-slider {
    position: relative;
    list-style: none;
    padding: 0;
    margin: 0;
}

.brand-content .brands-list {
    display: block;
    float: left;
    margin: 0;
}

.brand-content .brands-list li {
    display: block;
    float: left;
    padding: 0 10px;
}

.brand-content .brands-list li a {
    display: block;
}

.brands-slider li {
    padding-left: 10px;
    padding-right: 10px;
    display: block;
}

.brands-slider li a {
    display: block;
}

.brands-slider li img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
}

.brands-slider .owl-controls.clickable {
    display: none !important;
    margin: 0;
    position: absolute;
    right: 10px;
    top: -65px;
}

.brands-slider .owl-controls.clickable .owl-buttons>div {
    background: #333333;
    padding: 7px 12px;
    opacity: 1;
    font-size: 14px;
    line-height: 16px;
    margin: 0 0 0 3px;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    transition: all .3s ease 0s;
    -moz-transition: all .3s ease 0s;
    -webkit-transition: all .3s ease 0s;
    color: #ffffff;
}

.brands-slider .owl-controls.clickable .owl-buttons>div:hover {
    background: #5f752e;
}

#products .row.products-selection {
    border: 1px solid #e1e1e1;
}

.page-manufacturer #wrapper #content-wrapper ul {
    margin: 0 -15px;
    display: block;
    font-size: 0;
}

.page-manufacturer #wrapper #content-wrapper ul .brand {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    font-size: 14px;
    width: 25%;
    text-align: center;
    padding: 0 15px;
    margin-bottom: 15px;
}

.page-manufacturer #wrapper #content-wrapper ul .brand .brand-img {
    display: block;
    border: 1px solid #e1e1e1;
    margin-bottom: 10px;
}

@media (max-width: 767px) {
    .page-manufacturer #wrapper #content-wrapper ul .brand {
        width: 33.33%;
    }
}

@media (max-width: 479px) {
    .page-manufacturer #wrapper #content-wrapper ul .brand {
        width: 50%;
    }
}

/******
footer
*****/
#footer {
    margin-top: 25px;
    float: left;
    clear: both;
    width: 100%;
    padding: 0;
    background: #F5F5F5;
}

#footer .footer-top {
    padding-top: 60px;
    padding-bottom: 60px;
    display: block;
    background: #fff;
    float: left;
    width: 100%;
    clear: both;
    border-top: 1px solid #e1e1e1;
}

#footer .footer-top .block_newsletter {
    display: block;
    width: 100%;
    float: left;
    clear: both;
    border: none;
    margin: 0;
    padding: 0 15px;
    max-width: unset;
}

#footer .footer-top .block_newsletter .newsletter-title {
    display: block;
    position: relative;
    text-align: center;
    margin-bottom: 35px;
}

#footer .footer-top .block_newsletter .newsletter-title h2 {
    position: relative;
    color: #2d3d15;
    font-size: 40px;
    font-weight: 400;
    margin-bottom: 0;
}

#footer .footer-top .block_newsletter .newsletter-title h2 span {
    position: relative;
}

#footer .footer-top .block_newsletter .newsletter-title h2 i {
    color: #5f752e;
}

#footer .footer-top .block_newsletter .newsletter-title h2 span::after {
    left: 100%;
    background-image: linear-gradient(to right, #5f752e, #babdc2);
    margin-left: 20px;
}

#footer .footer-top .block_newsletter .newsletter-title h2 span::after,
#footer .footer-top .block_newsletter .newsletter-title h2 span::before {
    background-color: #babdc2;
    position: absolute;
    content: "";
    top: 50%;
    height: 1px;
    width: 200px;
    display: block;
}

#footer .footer-top .block_newsletter .newsletter-title h2 span::before {
    right: 100%;
    background-image: linear-gradient(to right, #babdc2, #5f752e);
    margin-right: 20px;
}

#footer .footer-top .block_newsletter .footer-block-toggle-content {
    display: block;
    clear: both;
}

#footer .footer-top .block_newsletter .footer-block-toggle-content p {
    max-width: 375px;
    text-align: center;
    display: block;
    margin: 0 auto 35px;
    color: #555;
    font-weight: 500;
    font-size: 14px;
}

#footer .footer-top .block_newsletter .footer-block-toggle-content form {
    float: none;
    max-width: 100%;
    width: auto;
    margin: 0;
}

#footer .footer-top .block_newsletter .footer-block-toggle-content form .subscribe-block {
    display: block;
    margin: 0 auto;
    max-width: 570px;
    float: none;
    padding: 0;
}

#footer .footer-top .block_newsletter form .condition {
    padding: 0;
}

#footer .footer-top .block_newsletter form input[type="email"] {
    margin: 0;
    padding: 8px 165px 8px 20px;
    height: 58px;
    box-sizing: border-box;
    width: 100%;
    border-color: #e1e1e1;
}

#footer .footer-top .block_newsletter form .btn.btn-primary {
    display: block;
    width: auto;
    position: absolute;
    top: 8px;
    right: 10px;
    margin-left: 0;
    white-space: nowrap;
    border-radius: 3px;
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: normal;
    border: none;
    padding: 11px 15px;
    min-width: 145px;
}

#footer .footer-top .block_newsletter form .condition p {
    color: #333;
    margin-bottom: 0;
    max-width: 100%;
    padding-top: .625rem;
}

#footer .block-social {
    width: 100%;
    text-align: center;
    margin-top: 18px;
}

#footer .block-social>ul {
    margin-bottom: 0;
    display: block;
}

#footer .block-social ul>li {
    background-color: #5f752e;
    color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-size: 35px;
    background-position: center;
}

#footer .footer-container {
    float: left;
    width: 100%;
    margin: 0;
    padding: 70px 0 0;
    box-shadow: none;
}

#footer .footer-container .links {
    float: left;
    width: 50%;
    margin-bottom: 40px;
}

#footer .footer-container .h3.hidden-sm-down {
    color: #000;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 600;
    display: block;
    margin-bottom: 35px;
}

.footer-container li {
    display: block;
    margin-bottom: 9px;
}

.footer-container li a {
    color: #555;
    font-weight: 500;
    display: block;
    font-size: 15px;
    text-decoration: none;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    padding-left: 0;
}

#footer .footer-container #block_myaccount_infos {
    width: 25%;
    margin-bottom: 40px;
}

#footer .footer-container #block_myaccount_infos>h3 {
    color: #000;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 600;
    display: block;
    margin-bottom: 35px;
}

#footer .footer-container #block_myaccount_infos>h3>a {
    font-size: 16px;
    font-weight: 600;
}

#footer .footer-container .footer-link {
    float: left;
    display: block;
    width: 20%;
    padding: 0 15px;
    margin-bottom: 25px;
}

#footer .footer-container .footer-link .footer-title {
    float: left;
    display: block;
    width: 100%;
}

#footer .footer-container .footer-link .footer-title>h3 {
    margin: 0;
    display: block;
    margin-bottom: 25px;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 600;
    color: #222222;
    line-height: 1.1;
}

#footer .footer-container .footer-link .footer-title>h3:after {
    background: #222222;
    bottom: 0;
    content: "";
    display: block;
    height: 2px;
    width: 25px;
    margin-top: 13px;
}

#footer .footer-container .footer-link .footer-content {
    float: left;
    display: block;
    width: 100%;

}

#footer .footer-container .footer-link .footer-content>ul>li {
    color: #555555;
    display: block;
    margin-bottom: 14px;
    font-weight: 400;
    line-height: 1.42857;
}

#footer .footer-container .links ul>li>a:hover {
    color: #5f752e;
    text-decoration: none;
    padding-left: 8px;
}

#footer .footer-container .footer-link .footer-content>ul>li>a>span>i {
    margin-right: 8px;
}

#footer .footer-container .footer-link .footer-content .contact {
    margin-bottom: 15px;
    position: relative;
    color: #555555;
    margin-top: 0;
}

#footer .footer-container .footer-link .footer-content .contact>strong {
    font-weight: 600;
    display: block;
    margin-bottom: 6px;
    color: #333333;
    font-size: 13px;
}

#footer .footer-container .footer-link .footer-content .contact>span {
    display: block;
    padding-left: 22px;
}

#footer .footer-container .contactinfo-section .links {
    width: 100%;
}

#footer .footer-bottom .copyright {
    display: inline-block;
    vertical-align: middle;
    padding-right: 10px;
    box-sizing: border-box;
    width: 50%;
}

#footer .footer-bottom .copyright .copyright-block {
    line-height: 30px;
    margin-bottom: 0;
    display: block;
    padding: 5px 0;
    text-align: left;
    font-size: 14px;
    font-weight: 500;
}

#footer .footer-bottom .copyright .copyright-block>a {
    color: #555555;
}

#footer .footer-bottom .cards {
    display: inline-block;
    vertical-align: middle;
    padding-left: 10px;
    box-sizing: border-box;
    width: 50%;
}

#footer .footer-bottom .cards .footer-payment-icon {
    display: block;
    padding: 5px 0;
    margin: 0;
    text-align: right;
}

#footer .footer-bottom .cards .footer-payment-icon>li {
    display: inline-block;
    list-style-type: none;
    margin-bottom: 0;
    position: relative;
}

#footer .footer-bottom .cards .footer-payment-icon>li>a {
    display: block;
    padding: 0 3px;
    box-sizing: border-box;
    color: #555555;
    font-size: 28px;
    line-height: 30px;
    text-decoration: none;
    transition: all .2s ease-in 0s;
    -moz-transition: all .2s ease-in 0s;
    -webkit-transition: all .2s ease-in 0s;
}

.cards .footer-payment-icon>li>a:before {
    display: none;
}

#footer .footer-bottom .cards .footer-payment-icon>li>a:hover {
    color: #555555;
    text-decoration: none;
}

#footer .footer-bottom .cards .footer-payment-icon>li:last-child>a {
    padding-right: 0;
}

#footer .footer-bottom {
    float: left;
    width: 100%;
    clear: both;
    display: block;
    padding: 0;
}

#footer .footer-bottom .footer-inner {
    border-top: 1px solid #d1d1d1;
    padding: 20px 0;
    display: block;
    font-size: 0;
}

.contactinfo-section {
    float: left;
    width: 25%;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 13px;
    margin-bottom: 40px;
}

.contactinfo-section .footer-links-column .footer-colum-title {
    display: block;
    position: relative;
}

.contactinfo-section .footer-links-column .footer-colum-title>h3 {
    color: #000;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 600;
    display: block;
    margin-bottom: 35px;
}

.contactinfo-section .footer-links-column .footer-column-content .content .add-item {
    display: block;
    position: relative;
    margin-bottom: 16px;
}

.contactinfo-section .footer-links-column .footer-column-content .content .add-item:last-child {
    margin-bottom: 0;
}

.contactinfo-section .footer-links-column .footer-column-content .content .add-item .icon {
    position: absolute;
    left: 0;
    top: 0;
    color: #5f752e;
    font-size: 16px;
    width: 16px;
    text-align: center;
}

.contactinfo-section .footer-links-column .footer-column-content .content .add-item .text {
    padding-left: 28px;
    display: block;
    box-sizing: border-box;
}

.contactinfo-section .footer-links-column .footer-column-content .content .add-item .text>strong {
    font-weight: 600;
    font-size: 15px;
    display: block;
    margin-bottom: 4px;
    color: #333;
}

.contactinfo-section .footer-links-column .footer-column-content .content .add-item .text>p {
    color: #555;
    font-weight: 500;
    display: block;
    font-size: 15px;
}

.contactinfo-section .footer-links-column .footer-column-content .content .add-item .text>a {
    color: #555;
    font-weight: 500;
    display: block;
    font-size: 15px;
}

/*logo social*/
#footer .footer-text-content {
    display: block;
    clear: both;
    padding: 0 15px;
}

#footer .footer-text-content .logo-socials {
    display: block;
    text-align: center;
    padding-top: 50px;
    padding-bottom: 50px;
    border-top: 1px solid #ccc;
}

#footer .footer-text-content .logo-socials>img {
    max-width: 100%;
    margin-bottom: 30px;
    display: inline-block;
    height: auto;
}

#footer .footer-text-content .logo-socials p {
    display: block;
    max-width: 625px;
    margin: 0 auto 25px;
    color: #555;
    font-weight: 500;
    font-size: 14px;
}

#footer .footer-text-content .social-block {
    margin: 0;
    float: none;
    padding: 0;
    clear: both;
}

#footer .footer-text-content .social-block>ul {
    list-style: none;
    padding: 0;
    margin: 0 -3px 0;
    display: block;
}

#footer .footer-text-content .social-block>ul>li {
    display: inline-block;
    margin-left: 3px;
    margin-right: 3px;
    margin-bottom: 4px;
}

#footer .footer-text-content .social-block>ul>li>a {
    display: block;
    width: 30px;
    height: 30px;
    line-height: 28px;
    border: 1px solid #333;
    color: #333333;
    font-size: 16px;
    text-align: center;
    box-sizing: border-box;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}

#footer .footer-text-content .social-block>ul>li>a:hover {
    color: #ffffff;
    background-color: #5f752e;
    border-color: #5f752e;
    text-decoration: none;
}

@media(max-width: 1199px) {
    #footer .footer-top .block_newsletter .newsletter-title h2 {
        font-size: 30px;
    }
}

@media(max-width: 991px) {

    #footer .footer-top .block_newsletter .newsletter-title h2 span::after,
    #footer .footer-top .block_newsletter .newsletter-title h2 span::before {
        width: 100px;
    }
}

@media only screen and (max-width: 767px) {
    #footer .footer-container .links {
        width: 100%;
        margin-bottom: 0;
    }

    #footer .footer-container #block_myaccount_infos {
        width: 100%;
        margin-bottom: 0;
    }

    #footer .footer-container .footer-link {
        width: 100%;
        margin-bottom: 0;
        padding: .625rem;
        font-size: 1rem;
    }

    #footer .footer-container .footer-link .footer-title>h3::after {
        display: none;
    }

    #footer .footer-text-content .logo-socials {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    #footer .footer-text-content {
        margin-top: 15px;
    }
}

/******
category-page
*******/
#content-wrapper .block-category {
    border: none;
    min-height: unset;
    box-shadow: none;
    max-height: unset;
    margin-bottom: 20px;
}

.block-category .category-cover {
    margin-top: 0;
    margin-bottom: 0;
}

.block-category .category-cover-block {
    width: 100%;
    position: relative;
    z-index: 0;
    padding: 15px;
    border: 1px solid #e1e1e1;
    background: #f9f9f9;
}

#products .row.products-selection {
    border: 1px solid #e1e1e1;
}

.block-category #category-description {
    padding: 0;
    position: relative;
    box-sizing: border-box;
    display: block;
    text-align: left;
    margin: 20px 0 0;
    font-size: 14px;
    color: #666666;
}

.block-category #category-description>p {
    font-size: 14px;
    color: #666666;
    line-height: 20px;
    display: block;
    margin-bottom: 0;
}

#products .page-not-found {
    box-shadow: none;
    border: 1px solid rgba(0, 0, 0, .125);
}

#products .products-grid .products .product-item {
    margin-bottom: 40px;
}

.products-sort-order .select-title {
    box-shadow: none;
    line-height: 24px;
}

.products article .thumbnail-container .wishlist-button-add {
    top: 45px;
    left: 10px;
    right: auto;
}

.products-sort-order .dropdown-menu {
    width: 100%;
}

.products-sort-order .dropdown-menu .select-list:hover {
    color: #fff;
}

/*******
product-page
*******/
/*.images-container .product-cover img,
#product #block-reassurance,.bootstrap-touchspin,
.product-images > li.thumb-container > .thumb,
.product-variants > .product-variants-item select,
.product-information .tabs {
    box-shadow: none;
}
.product-information .tabs{
    padding: 0;
    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
.product-information .tabs p{
    font-size: 13px;
}
.product-information .tabs .nav-tabs .nav-link.active, .product-information .tabs .nav-tabs .nav-link:hover{
    border-color: #5f752e;
    color: #5f752e;
}
.product-images > li.thumb-container > .thumb.selected, .product-images > li.thumb-container > .thumb:hover,
.product-images > li.thumb-container > .thumb.selected, .product-images > li.thumb-container > .thumb:hover, .input-color:checked + span, .input-color:hover + span, .input-radio:checked + span, .input-radio:hover + span{
    border: 2px solid #5f752e;
}
#product #block-reassurance{
    margin-bottom: 25px;
}*/
.tabs {
    margin-top: 25px;
    margin-bottom: 25px;
}

.tabs .nav-tabs {
    border-bottom: none;
}

.tabs .nav-tabs .nav-item {
    margin: 0;
}

.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover {
    border: 1px solid #e1e1e1;
    background: #fff;
    color: #333;
    text-decoration: none;
}

.tabs .nav-tabs .nav-link {
    background: #f6f6f6;
    border: 1px solid #e1e1e1;
}

.tabs .tab-content {
    background: #fff;
    padding: 20px;
    border: 1px solid #e1e1e1;
}

#product .tabs .tab-pane {
    padding: 0;
}

#product .tabs .tab-pane .product-description>p {
    color: #333;
    margin-bottom: 10px;
}

#product .tabs .tab-pane .product-description>ul {
    text-align: justify;
    list-style-type: disc;
    padding-left: 30px;
}

#product .tabs .tab-pane .product-description>ul>li {
    margin-bottom: 10px;
}

#product .h1 {
    color: #333;
    font-size: 28px;
    font-weight: 600;
    text-transform: capitalize;
    line-height: 35px;
}

#product .product-discount .regular-price {
    color: #000;
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
}

#product .product-price {
    color: #5f752e;
    font-size: 28px;
    line-height: 28px;
    font-weight: 700;
    display: block;
    margin-bottom: 15px;
}

#product .product-price .current-price>span {
    display: inline-block;
    vertical-align: middle;
}

#product .product-information {
    margin: 18px 0 10px;
    border-top: 1px solid #e1e1e1;
    padding-top: 15px;
}

#product .product-actions .control-label {
    color: #333333;
    font-weight: 600;
    margin-bottom: 10px;
}

.social-sharing span {
    font-weight: 600;
}

.social-sharing ul>li>a {
    border: 1px solid #e1e1e1;
    border-radius: 3px;
}

.modal.quickview .social-sharing ul>li>a {
    border: none;
}

.product-short-desc p {
    margin-bottom: 10px;
    text-align: justify;
    font-size: 15px;
    color: #555555;
    line-height: 24px;
}

.product-short-desc ul {
    text-align: justify;
    list-style-type: disc;
    padding-left: 30px;
}

.product-short-desc ul>li {
    margin-bottom: 10px;
    font-size: 15px;
    color: #555555;
    line-height: 24px;
}

#blockcart-modal .modal-body .divide-right span.color {
    height: auto;
    width: auto;
    border: none;
    margin: 0 0 0.3125rem;
    cursor: auto;
}

/*service-block*/
.home-servives-block {
    clear: both;
    display: block;
    float: left;
    width: 100%;
}

.home-servives-block .services-main {
    display: block;
    font-size: 0;
}

.home-servives-block .services-main .services-inner {
    display: inline-block;
    width: 33.33%;
    padding-left: 15px;
    padding-right: 15px;
    vertical-align: top;
    font-size: 14px;
}

.home-servives-block .services-main .services-inner .services-inner-main {
    display: block;
    position: relative;
}

.home-servives-block .services-main .services-inner .services-inner-main .services-icon {
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 45px;
    transform: translate(0, -50%);
}

.home-servives-block .services-main .services-inner .services-inner-main .services-icon>img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

.home-servives-block .services-main .services-inner .services-inner-main .services-content {
    padding-left: 60px;
    box-sizing: border-box;
    position: relative;
}

.home-servives-block .services-main .services-inner .services-inner-main .services-content>strong {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 16px;
    color: #000000;
    display: block;
}

.home-servives-block .services-main .services-inner .services-inner-main .services-content>p {
    font-size: 14px;
    color: #555555;
    margin: 0;
}

@media (max-width: 991px) {
    .home-servives-block .services-main .services-inner .services-inner-main {
        text-align: center;
    }

    .home-servives-block .services-main .services-inner .services-inner-main .services-icon {
        position: relative;
        padding: 0;
        margin: 0 auto;
    }

    .home-servives-block .services-main .services-inner .services-inner-main .services-content {
        padding-left: 0;
    }
}

@media (max-width: 639px) {
    .home-servives-block .services-main .services-inner {
        width: 100%;
    }

    .home-servives-block .services-main .services-inner .services-inner-main {
        text-align: left;
        padding: 15px 0;
    }

    .home-servives-block .services-main .services-inner .services-inner-main .services-icon {
        margin: 0;
        position: absolute;
    }

    .home-servives-block .services-main .services-inner .services-inner-main .services-content {
        padding-left: 74px;
    }
}

/*fullwidth block*/
.home-fullwidth-block {
    background: #F5F5F5;
    clear: both;
    float: left;
    padding: 65px 0;
    text-align: center;
    width: 100%;
    margin: 25px 0;
}

.home-fullwidth-block h1 {
    color: #333333;
    font-size: 34px;
    font-weight: 600;
    margin-bottom: 30px;
}

.home-fullwidth-block ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.home-fullwidth-block ul li {
    display: block;
    margin: 0;
}

.home-fullwidth-block ul li h1 {
    color: #5f752e;
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 18px;
}

.home-fullwidth-block ul li p {
    color: #666666;
    font-size: 16px;
    line-height: 28px;
    display: block;
    max-width: 80%;
    margin: 0 auto 30px;
}

.home-fullwidth-block .action.primary {
    background: #333333;
    border-color: #333333;
    border-width: 2px;
    font-size: 14px;
    letter-spacing: 1.5px;
    margin: 0;
    padding: 15px 25px;
    color: #ffffff;
    display: inline-block;
    vertical-align: middle;
    text-transform: uppercase;
}

.home-fullwidth-block .action.primary:active,
.home-fullwidth-block .action.primary:visited,
.home-fullwidth-block .action.primary:focus {
    background: #333333;
    border-color: #333333;
    color: #ffffff;
}

.home-fullwidth-block .action.primary:hover {
    background: #5f752e;
    border-color: #5f752e;
    color: #ffffff;
}

#header a {
    color: #333333;
}

.card {
    box-shadow: none;
    margin-top: 15px;
    margin-bottom: 0;
}

@media(min-width: 768px) {
    #header .header-top .position-static {
        width: 75%;
    }

    #_desktop_logo {
        width: 25%;
    }
}

@media(max-width: 1199px) {
    #header .header-top .search-widget {
        width: 220px;
    }

    #_desktop_cart {
        margin-left: 15px;
    }

    #header .header-contact-block {
        margin-left: 15px;
    }
}

@media(max-width: 767px) {
    #header .header-contact-block {
        display: none;
    }

    #header .header-nav>.container {
        max-width: 100%;
    }

    #header .header-top {
        position: relative;
        box-shadow: none;
        background: #fff;
    }

    #header .header-top>.container {
        max-width: 100%;
    }

    #header .header-nav .top-logo {
        float: left;
        display: table;
        height: 74px;
        padding-top: 0;
    }

    #header .header-nav .top-logo>a {
        margin: 0;
        float: none;
        display: table-cell;
        vertical-align: middle;
    }

    #header .header-nav .top-logo>a>img {
        max-height: 100%;
        max-width: 100%;
    }

    #header .header-nav #menu-icon {
        padding: 12px 0;
    }

    #header .header-nav #menu-icon .material-icons {
        color: #333333;
    }

    #header .header-nav #menu-icon .material-icons:hover {
        color: #5f752e;
    }

    #mobile_top_menu_wrapper {
        box-shadow: 0 5px 5px 1px rgba(0, 0, 0, 0.15);
        position: absolute;
        z-index: 100;
        left: 0;
        right: 0;
        margin: 0;
        top: 0;
    }

    #header #mobile_top_menu_wrapper .top-menu>li>a {
        text-transform: capitalize;
    }

    /*currency-language css*/
    #mobile_top_menu_wrapper .js-top-menu-bottom #_mobile_contact_link {
        display: none;
    }

    #mobile_top_menu_wrapper .js-top-menu-bottom #_mobile_currency_selector {
        border: 1px solid #e1e1e1;
        padding: 8px 10px;
    }

    #mobile_top_menu_wrapper .js-top-menu-bottom .currency-selector {
        padding: 0;
        display: block;
        cursor: pointer;
        width: 100%;
    }

    #mobile_top_menu_wrapper .js-top-menu-bottom .currency-selector select {
        padding: 8px 10px;
        background: #f6f6f6;
        border: 1px solid #e1e1e1;
        display: block;
        cursor: pointer;
        width: 100%;
    }

    #mobile_top_menu_wrapper .js-top-menu-bottom .language-selector-wrapper {
        padding: 8px 10px;
        background: #fff;
        border: 1px solid #e1e1e1;
        display: block;
        cursor: pointer;
        width: 100%;
    }

    #mobile_top_menu_wrapper .js-top-menu-bottom .language-selector-wrapper #language-selector-label {
        display: none;
    }

    #mobile_top_menu_wrapper .js-top-menu-bottom .currency-selector #currency-selector-label {
        display: none;
    }

    #mobile_top_menu_wrapper .js-top-menu-bottom .language-selector-wrapper .language-selector select {
        width: 100%;
        background: #f6f6f6;
        padding: 8px 10px;
        border: 1px solid #e1e1e1;
    }

    #mobile_top_menu_wrapper .top-menu .sub-menu li>a {
        border: none;
        font-weight: 500;
    }

    #products .thumbnail-container .product-description,
    .featured-products .thumbnail-container .product-description,
    .product-accessories .thumbnail-container .product-description {
        box-shadow: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
    }

    #products .product-title,
    .featured-products .product-title,
    .product-accessories .product-title,
    .product-miniature .product-title {
        margin-bottom: 10px;
        margin-top: 12px;
    }

    #products .products-grid .products .product-item {
        margin-bottom: 25px;
    }

    .products-grid .products .product-item .product-miniature .thumbnail-container .product-description .product-price-and-shipping,
    #products .products-grid .products .product-item .product-miniature .thumbnail-container .product-description .product-price-and-shipping {
        margin: 9px 0 10px;
    }

    #products .product-title a,
    .featured-products .product-title a,
    .product-accessories .product-title a,
    .product-miniature .product-title a {
        font-size: 14px;
    }

    #search_widget {
        margin: 10px 0;
    }

    #mobile_top_menu_wrapper .dropdown select {
        cursor: pointer;
    }

    #mobile_top_menu_wrapper .dropdown select:hover {
        color: #5f752e;
    }

    #_mobile_cart {
        margin-right: 15px;
        margin-top: 17px;
        margin-bottom: 17px;
    }

    #header .header-nav .blockcart {
        padding: 0;
        width: 40px;
        text-align: center;
        height: 40px;
        margin: 0;
        background: transparent;
    }

    #header .header-nav .blockcart .header {
        position: relative;
        display: inline-block;
        vertical-align: middle;
        font-size: 18px;
        width: 40px;
        height: 40px;
        line-height: 40px;
        text-align: center;
        background: #333333;
        color: #ffffff;
        border-radius: 50%;
        cursor: pointer;
        margin: 0;
    }

    #header .header-nav .cart-preview a {
        position: relative;
    }

    #header .header-nav .cart-preview a:before {
        color: #ffffff;
        line-height: 23px;
        content: "\f290";
        font-family: "Fontawesome";
        font-size: 18px;
        font-weight: normal;
    }

    #header .header-nav .cart-preview a:hover::before {
        color: #5f752e;
    }

    #header .header-nav .cart-preview a span {
        display: none;
    }

    #header .header-top #_desktop_cart {
        height: auto;
        padding: 0;
        margin: 0;
    }

    #header .header-nav .cart-preview.active {
        background: transparent;
        margin: 0;
    }

    #header .header-nav .cart-preview a,
    #header .header-nav .cart-preview a:active,
    #header .header-nav .cart-preview a:focus,
    #header .header-nav .cart-preview a:visited,
    #header .header-nav .cart-preview i {
        color: #333333;
    }

    #header .header-nav .cart-preview.active a,
    #header .header-nav .cart-preview.active a:active,
    #header .header-nav .cart-preview.active a:focus,
    #header .header-nav .cart-preview.active a:visited,
    #header .header-nav .cart-preview.active i {
        color: #333333;
    }

    #header .header-nav .cart-preview a .cart-products-count {
        color: #333333;
    }

    #header .header-nav .cart-preview a:hover,
    #header .header-nav .cart-preview i:hover {
        color: #5f752e;
    }

    #header .header-nav .cart-preview.active a:hover,
    #header .header-nav .cart-preview.active i:hover {
        color: #5f752e;
    }

    #header .header-nav .cart-preview a:hover .cart-products-count {
        color: #5f752e;
    }

    #_mobile_user_info {
        padding: 17px 0;
    }

    #header #_mobile_user_info .user-info {
        margin: 0;
    }

    #header #_mobile_user_info .user-info a {
        text-decoration: none;
        display: inline-block;
        float: right;
        width: 40px;
        height: 40px;
        line-height: 40px;
        text-align: center;
        border-radius: 50%;
        background: #333333;
        color: #ffffff;
        margin-top: 0;
        margin-bottom: 0;
        cursor: pointer;
        margin-left: 5px;
        margin-right: 5px;
    }

    #header .header-nav .user-info .account:visited,
    #header .header-nav .user-info .account:hover,
    #header .header-nav .user-info .account:active,
    #header .header-nav .user-info .account {
        color: #ffffff;
    }

    #header .header-nav .user-info .account:hover {
        color: #5f752e;
    }

    #header .header-nav .user-info .logged {
        color: #ffffff;
    }

    #header .header-nav .user-info .logged:hover {
        color: #5f752e;
    }

    #header .header-top .search-widget {
        width: 100%;
        margin: 0;
        padding: 15px 0;
    }

    #footer .footer-top {
        padding: 30px 0;
    }

    .footer-container .links .title {
        padding: 9px 15px;
    }

    .footer-container .links .h3 {
        margin-bottom: 0;
        color: #000000;
    }

    .footer-container .links ul {
        background: transparent;
    }

    .footer-container .links ul>li {
        padding: 4px 15px;
        margin-bottom: 0;
        border-bottom: none;
        font-weight: 400;
    }

    .footer-container .links .navbar-toggler {
        display: inline-block;
        padding: 0;
        height: 25px;
        width: 25px;
    }

    .contactinfo-section {
        width: 100%;
        margin-bottom: 0;
    }

    .contactinfo-section .footer-links-column .footer-colum-title>h3 {
        padding: 9px 0;
        margin-bottom: 0;
    }

    .contactinfo-section .footer-links-column .footer-column-content .content>p {
        margin-bottom: 8px;
    }

    #footer .block-social ul>li {
        width: 50px;
        height: 50px;
        margin: 0;
    }

    #footer .block-social {
        margin-top: 10px;
    }

    #footer .footer-container {
        padding: 25px 0 0;
    }

    #main .page-footer {
        margin-bottom: 0;
    }

    #footer .footer-container .footer-block-title:after {
        position: absolute;
        display: inline-block;
        content: "\f107";
        color: #333;
        top: 0;
        right: 6px;
        text-align: center;
        vertical-align: middle;
        line-height: 38px;
        font-size: 20px;
        font-family: FontAwesome;
        font-weight: 600;
        cursor: pointer;
    }

    #footer .footer-container .footer-colum-title.active-tab:after {
        content: "\f106";
    }

    #footer .footer-container .footer-block-toggle-content {
        display: none;
    }

    #footer .footer-bottom .copyright {
        padding-right: 0;
        width: 100%;
    }

    #footer .footer-bottom .copyright .copyright-block {
        text-align: center;
    }

    #footer .footer-bottom .cards {
        padding-left: 0;
        width: 100%;
    }

    #footer .footer-bottom .cards .footer-payment-icon {
        text-align: center;
    }

    #footer .footer-top .block_newsletter form .btn.btn-primary {
        min-width: 90px;
    }
}

@media(max-width: 639px) {
    #footer .footer-container {
        padding: 15px 0 0;
    }

    #main .page-footer {
        margin-bottom: 0;
    }

    #footer .footer-top .block_newsletter .newsletter-title h2 span::after,
    #footer .footer-top .block_newsletter .newsletter-title h2 span::before {
        display: none;
    }
}

@media(max-width: 479px) {
    #footer .footer-container .links {
        padding: 0 10px;
    }

    .products-grid .products .product-item {
        padding-left: 15px;
        padding-right: 15px;
    }

    #header .header-nav .top-logo>a>img {
        max-width: 120px;
    }
}

#blockcart-modal .cart-content .cart-content-btn .btn {
    font-size: 14px;
}

.card-block.checkout {
    padding: 15px;
    margin: 0;
}

body#checkout .top-navigation-menu {
    display: none;
}

body#checkout #header .header-nav {
    padding: 0;
}

body#checkout #header .header-nav .text-xs-right {
    display: none;
}

.contact-rich {
    background: #f9f9f9;
    padding: 15px;
}

#contact .contact-rich .block a {
    display: inline-block;
    vertical-align: middle;
    margin-top: 0;
}

/* 
.pagination .page-list {
    box-shadow: none;
}

.pagination .page-list li {
    display: inline-block;
    border: 1px solid #e1e1e1;
    height: 30px;
    width: 30px;
    vertical-align: middle;
    margin: 0 2px;
}

.pagination a {
    color: #000;
    font-weight: 500;
    font-size: 1.25rem;
}

.pagination .next {
    float: right;
    font-size: 0;
}

.pagination .next>i {
    font-size: 24px;
    vertical-align: middle;
    line-height: 30px;
    height: 30px;
    width: 30px;
}

.pagination .previous {
    float: left;
    font-size: 0;
}

.pagination .previous>i {
    font-size: 24px;
    vertical-align: middle;
    line-height: 30px;
    height: 30px;
    width: 30px;
} */

.pagination {
    background: #f9f9f9;
    padding: 0 15px;
    margin-top: 0;
}

.pagination .pagination-summary {
    margin: 0px;
    color: #666;
    font-size: 14px;
    line-height: inherit;
    padding: 5px 0;
}

.pagination .pagination-btn {
    margin: 0;
    width: 66.66667%;
    padding: 0px;
}

.pagination .pagination-btn ul {
    margin: 0;
    float: right;
    box-shadow: none;
    background: #f9f9f9;
    padding: 10px 0;
}

.pagination .page-list li {
    display: inline-block;
    margin: 0 2px;
    vertical-align: top;
    position: relative;
}

.pagination li a {
    cursor: pointer;
    display: inline-block;
    height: 30px;
    width: 30px;
    line-height: 30px;
    font-size: 13px;
    vertical-align: top;
    color: #222222;
    text-align: center;
}

.pagination li a i {
    color: #000000;
    cursor: default;
    height: 30px;
    width: 30px;
    line-height: 30px;
    position: absolute;
    left: 0;
    right: 0;
    font-size: 20px;
    cursor: pointer;
}

.pagination li a:hover,
.pagination li.current a,
.pagination li.current span,
.pagination li:hover span {
    color: #ffffff;
    font-size: 13px;
    background-color: #222222;
}

.pagination li a:hover i {
    color: #ffffff;
}

.pagination .page-list {
    box-shadow: none;
}

.pagination li a.next,
.pagination li a.previous {
    font-size: 0;
}


#toTop {
    z-index: 95;
    border-radius: 50%;
    text-align: center;
    width: 45px;
    height: 45px;
    bottom: 100px;
    right: 25px;
    text-indent: inherit;
    background: transparent;
    display: block;
}

#toTopHover::after {
    position: absolute;
    display: inline-block;
    color: #fff;
    opacity: 1;
    bottom: 0;
    left: 0;
    top: 0;
    right: 0;
    text-align: center;
    vertical-align: middle;
    line-height: 43px;
    font-size: 16px;
    font-family: FontAwesome;
    content: "\f077";
}

#toTopHover {
    height: 100%;
    width: 100%;
    display: block;
    background: #5f752e;
    border-radius: 50%;
    opacity: 1 !important;
}

#toTop:hover #toTopHover {
    opacity: 0.7 !important;
}

.btn.btn-comment.post-product-comment:hover {
    background: #333333;
    border-color: #333333;
}

.product-comment-list-item {
    padding: 20px 15px;
}

#product-comments-list .btn-comment.post-product-comment {
    margin: 0;
}

.product-comments {
    margin: 70px 0 55px;
    margin-top: 70px;
    float: left;
    width: 100%;
    clear: both;
    background-color: #fff;
    border: 2px solid #e1e1e1;
    margin-top: 40px;
}

#product-comments-list-header {
    padding: 15px;
    border-bottom: 1px solid #e1e1e1;
}

#product-comments-list-header .comments-nb {
    padding-left: 0;
    padding-top: 3px;
    font-size: 16px;
    font-weight: 700;
    color: #7a7a7a;
}

.comments-note {
    padding-left: 0;
    font-size: 16px;
    font-weight: 700;
    color: #7a7a7a;
}

#product-comments-list {
    padding: 0 15px;
}

.product-comment-list-item.row {
    padding: 20px 15px;
    background-color: #FFFFFF;
    text-align: left;
    border-bottom: 1px solid #e1e1e1;
}

.product-comment-list-item:last-child {
    border: none;
}

#product-comments-list-footer {
    border-top: none;
}

#product-comments-list-footer {
    min-height: 100%;
}

#product-comments-list-footer .post-product-comment {
    margin: 30px auto;
    display: block;
}


/*Home Page*/

.header-top .search-widget form input[type="text"] {
    min-width: 100%;
}

.header-top #search_widget input {
    padding-right: 43px !important;
}

.product-miniature .product-flags li.product-flag {
    min-width: unset;
    min-height: unset;
}

.product-miniature .product-price-and-shipping {
    text-align: left;
}

.featured-products.clearfix.top-margin.bottom-margin {
    margin-bottom: 0;
}


/*Newsletter*/
.block_newsletter form input[type="email"]:focus {
    border-width: 1px;
}


/*Product Page*/

.product-quantity .add {
    margin-right: 20px !important;
}

.product-images>li.thumb-container .thumb.selected,
.product-images>li.thumb-container .thumb:hover {
    border: 2px solid #5f752e;
}

.btn-primary.active,
.btn-primary:active,
.open>.btn-primary.dropdown-toggle,
.custom-radio input[type="radio"]:checked+span {
    background-color: #5f752e;
}


/*Category Page*/
.block-category .block-category-inner {
    flex-direction: column;
}

#subcategories {
    border: 0;
    padding: 0;
}

#subcategories ul li:hover .subcategory-image a {
    border: 0;
    padding: 0;
}

#products .row.products-selection {
    display: flex;
    align-items: center;
}

#subcategories ul li .subcategory-name {
    color: #333;
}

#subcategories ul li .subcategory-name:hover,
.block-categories .arrows .arrow-down:hover,
.block-categories .arrows .arrow-right:hover,
.block-categories .collapse-icons .add:hover,
.block-categories .collapse-icons .remove:hover,
.cart-grid-body a.label:hover {
    color: #5f752e;
}

.brands-sort .select-list:hover,
.products-sort-order .select-list:hover,
.suppliers-sort .select-list:hover,
.btn-secondary:hover,
.btn-tertiary:hover {
    background: #333;
}

.product-price {
    color: #5f752e;
}

#blockcart-modal .product-name {
    color: #333;
}

#blockcart-modal .cart-content .cart-content-btn .btn {
    display: flex;
    align-items: center;
}


/*Cart Page*/
.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down,
.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up {
    color: #333;
}

#cart .product-price {
    color: #333 !important;
}

/*Order Page*/

.js-cart .cart-summary-products>p>a::after {
    display: none;
}

.js-cart .cart-summary-products>p>a .material-icons {
    float: right;
}

body#checkout section.checkout-step.-reachable.-current .step-number {
    background-color: transparent;
    color: #333;
    font-size: 18px;
}

body#checkout section.checkout-step .step-title {
    font-size: 18px;
}

body#checkout section.checkout-step .radio-inline input[type="radio"]:checked+span {
    left: 0;
    top: 45%;
    right: 0;
    margin: 0 auto;
    transform: translate(0, -50%);
}

body#checkout section.checkout-step.-complete .step-title {
    padding-top: 0;
    border-bottom: 0;
}

body#checkout #cart-summary-product-list .media-body .product-name a,
#checkout-personal-information-step .content p a,
#cta-terms-and-conditions-0,
#cta-terms-and-conditions-footer-0 {
    color: #333;
}

body#checkout a:hover {
    color: #5f752e;
}

#product .featured-products.clearfix.mt-3,
#cart .featured-products {
    display: none;
}

#product .product-comment-list-item {
    padding: 20px 0px;
}

#product #empty-product-comment {
    text-align: left;
}

#cart .card-block.cart-detailed-subtotals+.cart-summary-totals .cart-total,
body#checkout section.checkout-step.-current+.checkout-step .step-title {
    border-top: none;
}

#cart .cart-detailed-totals.js-cart-detailed-totals .card-block,
#cart .card.cart-container {

    border: 1px solid #e1e1e1;
}

#cart .cart-grid-body .card-block h1 {
    font-weight: 600;
}

body#checkout section.checkout-step.-current+.checkout-step .step-title,
body#checkout section.checkout-step.-complete:first-of-type .step-title {
    padding-top: 0;
}

.btn-primary.active,
.btn-primary:active,
.open>.btn-primary.dropdown-toggle,
.custom-radio input[type="radio"]:checked+span {
    background-color: #333333;
}

.carousel .carousel-item figure {
    display: block;
    margin: 0;
}

#header .header-top .position-static {
    width: 100%;
}

.owl-theme .owl-controls.clickable .owl-buttons>div {
    top: 33%;
}

/* Login Page */
.forgot-password a,
.no-account a {
    color: #5f752e;
}

@media (max-width: 991px) {
    .image-slider-block .carousel-item .caption {
        top: 50%;
    }

    .image-slider-block .caption .caption-description {
        margin-right: -36px;
    }

    .carousel .direction .carousel-control i {
        background: transparent;
    }

    .carousel .direction .carousel-control .icon-next {
        right: 20%;
    }

    .carousel .direction .carousel-control .icon-prev {
        left: 20%;
    }

}

@media (max-width:767px) {
    #subcategories ul {
        justify-content: left;
    }

    .dropdown-item {
        color: #232323 !important;
    }

    .nav.nav-inline.my-2 {
        display: flex;
    }

    .col-xs-4.col-sm-3.hidden-md-up.filter-button {
        display: none;
    }

    .col-xs-8.col-sm-7.col-md-9.products-sort-order.dropdown {
        width: 100%;
    }

    #products .row.products-selection {
        flex-direction: column;
    }

    .products-selection .sort-by-row {
        justify-content: center;
    }

    #products .row.products-selection .col-lg-7 {
        width: 100%;
    }

    .pagination>div:first-child {
        text-align: center;
    }
}


@media (max-width: 639px) {
    .carousel .direction .carousel-control .icon-next {
        right: 10%;
    }

    .image-slider-block ul>li:first-child .caption .caption-description {
        margin-left: 58px;
    }

    .carousel .direction .carousel-control .icon-prev {
        left: 10%;
    }

    .image-slider-block .caption .caption-description {
        margin-right: 65px;
    }
}

@media (max-width:479px) {
    .image-slider-block .caption .caption-description {
        margin-right: 47px !important;
    }

    .image-slider-block .carousel-item .caption {
        top: 36%;
    }

    .image-slider-block ul>li:first-child .caption .caption-description {
        margin-left: 43px !important;
    }

}

/* Home Page */
.block_newsletter #block-newsletter-label {
	line-height:normal;
}
.blogpost-block {
	margin-bottom: 35px;
}
.brand-section {
	margin-top: 35px;
}

#header .top-menu a[data-depth="0"]:hover,
#header a:hover {
    color: #333333;
}

#products .up .btn-secondary {
    color: #fff;
}

.group-span-filestyle .btn-default {
    background: #5f752e;
}

#contact .block a {
    color: #333;
}

#contact #content {
    border: 1px solid #e1e1e1;
}

#content-hook_order_confirmation .card-title .done {
    padding-left: 0;
}

a {
    color: #5f752e;
}

.wishlist-modal .modal-cancel:hover {
    opacity: 1;
    color: #fff;
}

#footer .footer-text-content .social-block>ul>li>a {
    line-height: 30px;
}

.image-slider-block .caption .caption-description {
    margin-right: 85px;
}

.image-slider-block ul>li:first-child .caption .caption-description {
    margin-left: 85px;
}

.page-footer a,
.wishlist-footer-links a,
.wishlist-container-header a {
    color: #333333 !important;
}

.alert-info {
    background-color: rgba(255, 154, 82, .3);
    border-color: #ff9a52;
    color: #232323;
}

#product .product-price {
    color: #333333;
    font-size: 14px;
}

#blockcart-modal .product-name {
    color: #5f752e;
    font-size:  1.125rem;
}

.btn-primary.active,
.btn-primary:active,
.open>.btn-primary.dropdown-toggle,
.custom-radio input[type="radio"]:checked+span {
    background-color: #5f752e;
}

.btn-secondary:hover,
.btn-tertiary:hover {
    color: #fff;
}

/* Account Page   */


.carousel .carousel-control .icon-next:hover i,
.carousel .carousel-control .icon-prev:hover i,
.dropdown:hover .expand-more,
.page-my-account #content .links a:hover i,
.search-widget form button[type="submit"] .search:hover,
.top-menu .sub-menu a:hover {
    color: #5f752e;
}

/* cart  */
.product-line-grid-body>.product-line-info>.label {
    font-weight: 400;
}

/* order */

body#checkout section.checkout-step .step-title {
    font-weight: 600;
}

#js-checkout-summary {
    border: 1px solid #e1e1e1 !important;
}
body#checkout section.checkout-step .address-item.selected {

	border: #5f752e 3px solid;
}

.logo-socials .social-block {
	display: none;
}

#stores .page-stores .store-item {
	border: 1px solid #e1e1e1;
}
/* ======================================================================
   Veridian Health Medical Commerce Refresh
   Clean, clinical and premium storefront overrides
   ====================================================================== */
:root {
    --vh-ink: #2d3d15;
    --vh-ink-soft: #505c3c;
    --vh-muted: #707a4e;
    --vh-viridian: #5f752e;
    --vh-viridian-dark: #3f5220;
    --vh-viridian-soft: #eef0dd;
    --vh-sage: #d5d6b9;
    --vh-border: #dad9c2;
    --vh-surface: #fffef8;
    --vh-surface-alt: #f5f4e8;
    --vh-warm: #e9e8d7;
    --vh-danger: #a63f3f;
    --vh-radius-sm: 9px;
    --vh-radius: 14px;
    --vh-radius-lg: 20px;
    --vh-shadow: 0 14px 38px rgba(45, 61, 21, .09);
}

html {
    scroll-behavior: smooth;
}

body {
    background: var(--vh-surface);
    color: var(--vh-ink);
    font-family: 'Jost', 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

a,
button,
.btn,
input,
select,
textarea,
.product-miniature,
.vh-guidebar-item,
.vh-guide-panel,
.vh-guide-backdrop {
    transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease, opacity .18s ease;
}

::selection {
    background: var(--vh-sage);
    color: var(--vh-ink);
}

a {
    color: var(--vh-viridian);
}

a:hover,
a:focus {
    color: var(--vh-viridian-dark);
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    color: var(--vh-ink);
    letter-spacing: -.015em;
}

p {
    color: var(--vh-ink-soft);
}

/* Buttons */
.btn,
.btn-primary,
.featured-products .all-products > a {
    background: var(--vh-viridian) !important;
    border: 1px solid var(--vh-viridian) !important;
    border-radius: var(--vh-radius-sm) !important;
    box-shadow: none !important;
    color: #fff !important;
    font-weight: 600;
    letter-spacing: .01em;
    min-height: 42px;
    padding: 10px 20px;
    text-transform: none;
}

.btn:hover,
.btn:focus,
.btn-primary:hover,
.btn-primary:focus,
.featured-products .all-products > a:hover {
    background: var(--vh-viridian-dark) !important;
    border-color: var(--vh-viridian-dark) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.btn-secondary {
    background: #fff !important;
    border-color: var(--vh-border) !important;
    color: var(--vh-ink) !important;
}

.btn-secondary:hover,
.btn-secondary:focus {
    background: var(--vh-surface-alt) !important;
    border-color: #c9c9ad !important;
    color: var(--vh-ink) !important;
}

/* Forms */
.form-control,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
select,
textarea {
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius-sm);
    box-shadow: none;
    color: var(--vh-ink);
    background: #fff;
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus {
    border-color: var(--vh-viridian);
    box-shadow: 0 0 0 3px rgba(95, 117, 46, .13);
    outline: 0;
}

/* Header */
#header {
    background: #fff;
    box-shadow: none;
}

#header .header-nav {
    background: var(--vh-surface-alt);
    border-bottom: 1px solid var(--vh-border);
}

#header .header-nav .currency-selector > button,
#header .header-nav .language-selector > button,
#_desktop_user_info a,
#header .header-nav .right-nav .user-info > a,
#header .header-nav .right-nav #contact-link > a {
    color: var(--vh-ink-soft);
    font-size: 13px;
}

#header .header-nav .currency-selector > button:hover .expand-more,
#header .header-nav .language-selector > button:hover .expand-more,
#header .header-nav .right-nav .user-info > a:hover,
#header .header-nav .right-nav #contact-link > a:hover,
.dropdown:hover .expand-more,
.btn-unstyle:focus .expand-more,
#header a:hover {
    color: var(--vh-viridian) !important;
}

#header .header-top {
    background: #fff;
}

#_desktop_logo {
    height: 92px;
}

#_desktop_logo img {
    max-height: 58px;
    width: auto;
}

#header .header-top .search-widget {
    width: min(430px, 100%);
    padding: 24px 0;
}

.header-top .search-widget form input[type="text"] {
    background: var(--vh-surface-alt);
    border: 1px solid var(--vh-border);
    border-radius: 999px;
    color: var(--vh-ink);
    height: 46px;
    padding-left: 19px;
    padding-right: 52px;
}

.search-widget form button[type="submit"] {
    height: 46px;
    width: 48px;
    color: var(--vh-viridian);
}

.search-widget form button[type="submit"] .search:hover,
.search-widget form input[type="text"]:focus + button .search {
    color: var(--vh-viridian-dark);
}

#_desktop_cart {
    margin-left: 24px;
    padding: 25px 0;
}

#_desktop_cart .header > a::before,
#header .header-contact-block .item .icon-block {
    background: var(--vh-viridian-soft);
    color: var(--vh-viridian-dark);
    border: 1px solid var(--vh-sage);
}

#_desktop_cart .header > a:hover::before,
#header .header-contact-block .item:hover .icon-block {
    background: var(--vh-viridian);
    color: #fff;
}

#_desktop_cart .header > a .text,
#_desktop_cart .header > a .cart-qty,
#header .header-contact-block .item .text-block > a {
    color: var(--vh-ink);
}

#header .header-navfullwidth,
.top-navigation-menu {
    background: var(--vh-viridian-dark);
}

#header .top-navigation-menu .top-menu .level0 > a {
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: .01em;
    padding: 16px 18px;
}

#header .top-navigation-menu .top-menu .level0:hover > a,
#header .top-navigation-menu .top-menu .level0:active > a {
    color: #f0f1df;
}

#header .top-navigation-menu .top-menu .level1 > a {
    color: var(--vh-ink);
    font-weight: 600;
}

.top-menu .sub-menu {
    border: 1px solid var(--vh-border);
    border-radius: 0 0 var(--vh-radius) var(--vh-radius);
    box-shadow: var(--vh-shadow);
}

/* Medical utility line: intentionally factual and non-promotional */
.vh-medical-strip {
    background: var(--vh-warm);
    border-bottom: 1px solid var(--vh-border);
    color: var(--vh-ink-soft);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: .015em;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.vh-medical-strip .container {
    padding-top: 13px;
    padding-bottom: 13px;
}

.vh-medical-strip span {
    display: inline-block;
    margin: 0 10px;
    white-space: nowrap;
}

.vh-medical-strip span + span::before {
    color: #a9ab88;
    content: "•";
    margin-right: 20px;
}

/* Hero / banners */
.image-slider-block,
.carousel,
.carousel-inner,
.carousel-item {
    border-radius: var(--vh-radius-lg);
}

.image-slider-block {
    overflow: hidden;
    margin-bottom: 48px;
}

.carousel .carousel-item .caption,
.carousel .direction {
    text-shadow: none;
}

/* Section titles */
.section-title,
.products-section-title,
.featured-products .products-section-title {
    color: var(--vh-ink);
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -.025em;
    margin-bottom: 28px;
    text-transform: none;
}

.section-title > span::before,
.section-title > span::after,
#footer .footer-top .block_newsletter .newsletter-title h2 span::before,
#footer .footer-top .block_newsletter .newsletter-title h2 span::after {
    display: none !important;
}

/* Breadcrumbs */
#wrapper .breadcrumb,
.breadcrumb {
    background: transparent;
    color: var(--vh-muted);
    font-size: 13px;
    margin-bottom: 22px;
    padding-left: 0;
    padding-right: 0;
}

.breadcrumb a {
    color: var(--vh-muted);
}

.breadcrumb a:hover {
    color: var(--vh-viridian);
}

/* Category page */
#content-wrapper .block-category {
    background: transparent;
    margin-bottom: 28px;
}

.block-category .category-cover-block {
    background: var(--vh-surface-alt);
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius-lg);
    padding: 18px;
    overflow: hidden;
}

.block-category .category-cover-block img,
.block-category .category-cover img {
    border-radius: calc(var(--vh-radius-lg) - 4px);
}

.block-category #category-description,
.block-category #category-description > p {
    color: var(--vh-ink-soft);
    font-size: 15px;
    line-height: 1.7;
}

#products .row.products-selection {
    background: var(--vh-surface-alt);
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius);
    margin-bottom: 28px;
    padding-top: 10px;
    padding-bottom: 10px;
}

#search_filters,
#search_filters_brands,
#search_filters_suppliers {
    background: #fff;
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius);
    box-shadow: none;
}

#search_filters > .h6,
#search_filters_brands > .h6,
#search_filters_suppliers > .h6 {
    border-bottom-color: var(--vh-border);
    color: var(--vh-ink);
}

#search_filters .facet .facet-title,
#search_filters .facet .collapse {
    color: var(--vh-ink);
}

#search_filters .facet .facet-label a,
#search_filters .facet .facet-label {
    color: var(--vh-ink-soft);
}

/* Product cards */
.products-grid .products .product-item,
#products .products-grid .products .product-item {
    margin-bottom: 30px;
}

.products-grid .products .product-item .product-miniature,
#products .products-grid .products .product-item .product-miniature {
    background: #fff;
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius-lg);
    overflow: hidden;
}

.products-grid .products .product-item .product-miniature:hover,
#products .products-grid .products .product-item .product-miniature:hover {
    border-color: #c6c8a7;
    box-shadow: var(--vh-shadow);
    transform: translateY(-2px);
}

.products-grid .products .product-item .product-miniature .thumbnail-container,
#products .products-grid .products .product-item .product-miniature .thumbnail-container {
    background: #fff;
}

.products-grid .products .product-item .product-miniature .thumbnail-container .product-image-block,
#products .products-grid .products .product-item .product-miniature .thumbnail-container .product-image-block {
    background: var(--vh-surface-alt);
    border-bottom: 1px solid var(--vh-border);
    padding: 12px;
}

#products img,
.featured-products img,
.product-accessories img,
.product-miniature img {
    border-radius: var(--vh-radius-sm);
}

.products-grid .products .product-item .product-miniature .thumbnail-container .product-description,
#products .products-grid .products .product-item .product-miniature .thumbnail-container .product-description {
    background: #fff;
    padding: 18px 18px 20px;
}

#products .product-title,
.featured-products .product-title,
.product-accessories .product-title,
.product-miniature .product-title {
    margin-bottom: 9px;
    min-height: 44px;
    text-align: left;
}

#products .product-title a,
.featured-products .product-title a,
.product-accessories .product-title a,
.product-miniature .product-title a {
    color: var(--vh-ink);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
}

#products .product-title a:hover,
.featured-products .product-title a:hover,
.product-accessories .product-title a:hover,
.product-miniature .product-title a:hover {
    color: var(--vh-viridian);
}

#products .product-price-and-shipping,
.featured-products .product-price-and-shipping,
.product-accessories .product-price-and-shipping,
.product-miniature .product-price-and-shipping {
    color: var(--vh-ink);
    font-size: 16px;
    font-weight: 700;
    text-align: left;
}

#products .regular-price,
.featured-products .regular-price,
.product-accessories .regular-price,
.product-miniature .regular-price {
    color: var(--vh-muted);
    font-weight: 500;
}

#products .highlighted-informations,
.featured-products .highlighted-informations,
.product-accessories .highlighted-informations,
.product-miniature .highlighted-informations {
    background: rgba(255, 255, 255, .96);
    border-top: 1px solid var(--vh-border);
}

.featured-products .highlighted-informations .quick-view,
.product-miniature .highlighted-informations .quick-view {
    color: var(--vh-viridian-dark);
}

.featured-products .highlighted-informations .quick-view:hover,
.product-miniature .highlighted-informations .quick-view:hover {
    color: var(--vh-viridian);
}

.product-flags li.product-flag,
#products .products-grid .products .product-item .product-flags > li,
.products-grid .products .product-item .product-flags > li,
.product-flags li.product-flag.discount,
.product-flags li.product-flag.discount-amount,
.product-flags li.product-flag.discount-percentage {
    background: var(--vh-viridian-dark);
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .035em;
    padding: 4px 9px;
}

.product-flags li.product-flag.new,
.products-grid .products .product-item .product-flags > li.new,
#products .products-grid .products .product-item .product-flags > li.new {
    background: var(--vh-viridian);
}

.product-flags li.product-flag.pack,
.products-grid .products .product-item .product-flags > li.pack,
#products .products-grid .products .product-item .product-flags > li.pack,
.product-flags li.product-flag.on-sale,
.products-grid .products .product-item .product-flags > li.on-sale,
#products .products-grid .products .product-item .product-flags > li.on-sale {
    background: #65766f;
}

/* Product detail page */
#product .h1 {
    color: var(--vh-ink);
    font-size: 30px;
    font-weight: 700;
    line-height: 1.25;
    text-transform: none;
}

#product .product-price {
    color: var(--vh-viridian-dark);
    font-size: 29px;
    font-weight: 700;
}

#product .product-information {
    border-top-color: var(--vh-border);
}

.product-short-desc p,
.product-short-desc ul > li {
    color: var(--vh-ink-soft);
    font-size: 15px;
    line-height: 1.7;
    text-align: left;
}

.images-container .product-cover img,
.product-images > li.thumb-container > .thumb {
    background: var(--vh-surface-alt);
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius);
    box-shadow: none;
}

.product-images > li.thumb-container > .thumb.selected,
.product-images > li.thumb-container > .thumb:hover,
.input-color:checked + span,
.input-color:hover + span,
.input-radio:checked + span,
.input-radio:hover + span {
    border-color: var(--vh-viridian) !important;
}

.product-variants > .product-variants-item select,
.bootstrap-touchspin,
.product-quantity .qty,
.product-quantity .add {
    border-radius: var(--vh-radius-sm);
}

.tabs {
    margin-top: 32px;
}

.tabs .nav-tabs .nav-link {
    background: var(--vh-surface-alt);
    border-color: var(--vh-border);
    color: var(--vh-ink-soft);
    font-weight: 600;
}

.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover {
    background: #fff;
    border-color: var(--vh-border);
    color: var(--vh-viridian-dark);
}

.tabs .tab-content {
    border-color: var(--vh-border);
    border-radius: 0 0 var(--vh-radius) var(--vh-radius);
    color: var(--vh-ink-soft);
    padding: 24px;
}

/* Cart / checkout */
.cart-grid-body .card,
.cart-grid-right .card,
.checkout-step,
#order-items,
#order-details {
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius) !important;
    box-shadow: none !important;
}

.checkout-step.-current .step-title,
.checkout-step .step-title {
    color: var(--vh-ink);
}

.checkout-step .step-number {
    color: var(--vh-viridian-dark);
}

/* Alerts */
.alert-success {
    background: var(--vh-viridian-soft);
    border-color: var(--vh-sage);
    color: var(--vh-viridian-dark);
}

.alert-danger {
    background: #fbefef;
    border-color: #efd3d3;
    color: var(--vh-danger);
}

/* Newsletter */
#footer .footer-top {
    background: var(--vh-viridian-soft);
    border-top: 1px solid var(--vh-sage);
}

#footer .footer-top .block_newsletter .newsletter-title h2,
#footer .footer-top .block_newsletter .newsletter-title h2 span {
    color: var(--vh-ink);
    font-size: 26px;
    font-weight: 700;
    text-transform: none;
}

#footer .footer-top .block_newsletter .newsletter-title h2 i {
    color: var(--vh-viridian);
}

#footer .footer-top .block_newsletter form input[type="email"] {
    background: #fff;
    border: 1px solid #c9c9ad;
    border-radius: 999px 0 0 999px;
}

#footer .footer-top .block_newsletter form .btn.btn-primary {
    border-radius: 0 999px 999px 0 !important;
}

/* Footer */
#footer .footer-container {
    background: var(--vh-warm);
    padding-top: 54px;
}

#footer .footer-container .h3.hidden-sm-down,
#footer .footer-container #block_myaccount_infos > h3,
#footer .footer-container .footer-link .footer-title > h3,
.contactinfo-section .footer-links-column .footer-colum-title > h3 {
    color: var(--vh-ink);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .04em;
    margin-bottom: 22px;
    text-transform: uppercase;
}

#footer .footer-container .footer-link .footer-title > h3::after {
    background: var(--vh-viridian);
    height: 2px;
    width: 22px;
}

.footer-container li a,
#footer .footer-container .footer-link .footer-content > ul > li,
.contactinfo-section .footer-links-column .footer-column-content .content .add-item .text > p,
.contactinfo-section .footer-links-column .footer-column-content .content .add-item .text > a {
    color: var(--vh-ink-soft);
    font-size: 14px;
    font-weight: 400;
}

#footer .footer-container .links ul > li > a:hover {
    color: var(--vh-viridian);
    padding-left: 0;
}

.contactinfo-section .footer-links-column .footer-column-content .content .add-item .icon {
    color: var(--vh-viridian);
}

#footer .block-social ul > li {
    background-color: var(--vh-viridian);
}

#footer .footer-bottom {
    background: var(--vh-warm);
}

#footer .footer-bottom .footer-inner {
    border-top-color: var(--vh-border);
    padding: 16px 0;
}

#footer .footer-bottom .copyright .copyright-block,
#footer .footer-bottom .cards .footer-payment-icon > li > a {
    color: var(--vh-muted);
    font-size: 13px;
    font-weight: 500;
}

#footer .footer-text-content .logo-socials {
    border-top-color: var(--vh-border);
}

#footer .footer-text-content .logo-socials p {
    color: var(--vh-ink-soft);
}

#footer .footer-text-content .social-block > ul > li > a {
    border-color: var(--vh-border);
    border-radius: 50%;
    color: var(--vh-ink-soft);
}

#footer .footer-text-content .social-block > ul > li > a:hover {
    background: var(--vh-viridian);
    border-color: var(--vh-viridian);
    color: #fff;
}

/* Modal / dropdown polish */
.modal-content,
.dropdown-menu,
.popover {
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius);
    box-shadow: var(--vh-shadow);
}

/* Mobile */
@media (max-width: 767px) {
    #header .header-nav {
        background: #fff;
    }

    #header .header-top {
        padding-bottom: 8px;
    }

    #header .header-navfullwidth {
        background: #fff;
        border-bottom: 1px solid var(--vh-border);
    }

    #mobile_top_menu_wrapper {
        background: #fff;
        border-top: 1px solid var(--vh-border);
    }

    #mobile_top_menu_wrapper .top-menu a[data-depth="0"] {
        color: var(--vh-ink);
        font-weight: 600;
    }

    .vh-medical-strip {
        font-size: 14px;
        font-weight: 700;
        letter-spacing: .01em;
        overflow-x: auto;
        text-align: left;
        white-space: nowrap;
    }

    .vh-medical-strip .container {
        max-width: none;
        padding-left: 15px;
        padding-right: 15px;
        width: max-content;
    }

    .section-title,
    .products-section-title,
    .featured-products .products-section-title {
        font-size: 24px;
        margin-bottom: 22px;
    }

    #product .h1 {
        font-size: 25px;
    }

    #footer .footer-container {
        padding-top: 30px;
    }

    #footer .footer-bottom .copyright,
    #footer .footer-bottom .cards {
        display: block;
        padding: 0;
        text-align: center;
        width: 100%;
    }

    #footer .footer-bottom .copyright .copyright-block,
    #footer .footer-bottom .cards .footer-payment-icon {
        text-align: center;
    }
}

/* ======================================================================
   Veridian Health — Premium storefront layer (v2.2.0)
   Final overrides only. Keep this section at the end of custom.css.
   ====================================================================== */
:root {
    --vh-brand: #5f752e;
    --vh-brand-hover: #40521f;
    --vh-brand-dark: #2d3d15;
    --vh-brand-soft: #edf0df;
    --vh-sage: #a8ae82;
    --vh-ivory: #f8f7ef;
    --vh-surface: #fffef9;
    --vh-surface-soft: #f1f0e4;
    --vh-border: #d8d7c1;
    --vh-border-strong: #c3c5a4;
    --vh-ink: #263315;
    --vh-muted: #66705b;
    --vh-danger: #a84232;
    --vh-radius-sm: 8px;
    --vh-radius: 12px;
    --vh-radius-lg: 16px;
    --vh-shadow-sm: 0 4px 14px rgba(45, 61, 21, .06);
    --vh-shadow: 0 14px 36px rgba(45, 61, 21, .10);
    --vh-focus: 0 0 0 3px rgba(95, 117, 46, .20);
}

html {
    font-size: 16px;
    scroll-behavior: smooth;
}

body {
    background: var(--vh-ivory);
    color: var(--vh-ink);
    font-family: 'Jost', 'Open Sans', 'Helvetica Neue', Arial, sans-serif;
    font-size: 16px;
    line-height: 1.58;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

body,
input,
select,
textarea,
button {
    font-family: 'Jost', 'Open Sans', 'Helvetica Neue', Arial, sans-serif;
}

img {
    max-width: 100%;
    height: auto;
}

a {
    color: var(--vh-brand);
    text-decoration: none;
}

a:hover,
a:focus {
    color: var(--vh-brand-hover);
}

a:focus-visible,
button:focus-visible,
.btn:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 2px solid var(--vh-brand) !important;
    outline-offset: 2px;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    color: var(--vh-ink);
    font-weight: 600;
    letter-spacing: -.018em;
}

h1, .h1 {
    font-size: clamp(2rem, 3vw, 2.75rem);
    line-height: 1.12;
}

h2, .h2,
.section-title,
.products-section-title {
    font-size: clamp(1.55rem, 2.2vw, 2.1rem);
    line-height: 1.18;
}

p,
li,
.product-description,
.product-information {
    color: var(--vh-muted);
}

/* Layout width: remove the legacy narrow tablet/desktop container caps. */
.container {
    width: 100% !important;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

#wrapper,
main {
    background: var(--vh-ivory);
}

#wrapper {
    padding-top: 28px;
    padding-bottom: 48px;
}

#content-wrapper,
#main,
.page-content {
    color: var(--vh-ink);
}

/* Buttons */
.btn,
.btn-primary,
.btn-secondary,
.featured-products .all-products > a {
    min-height: 44px;
    border-radius: var(--vh-radius-sm) !important;
    padding: 10px 18px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: .005em;
    text-transform: none;
    box-shadow: none !important;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.btn,
.btn-primary,
.featured-products .all-products > a {
    background: var(--vh-brand) !important;
    border: 1px solid var(--vh-brand) !important;
    color: #fff !important;
}

.btn:hover,
.btn:focus,
.btn-primary:hover,
.btn-primary:focus,
.featured-products .all-products > a:hover {
    background: var(--vh-brand-hover) !important;
    border-color: var(--vh-brand-hover) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.btn-secondary {
    background: var(--vh-surface) !important;
    border: 1px solid var(--vh-border-strong) !important;
    color: var(--vh-ink) !important;
}

.btn-secondary:hover,
.btn-secondary:focus {
    background: var(--vh-brand-soft) !important;
    border-color: var(--vh-sage) !important;
    color: var(--vh-brand-dark) !important;
}

/* Forms: restore clear affordances after older borderless overrides. */
.form-control,
input[type='text'],
input[type='email'],
input[type='password'],
input[type='tel'],
input[type='number'],
input[type='search'],
input[type='url'],
select,
textarea,
.bootstrap-touchspin,
.input-group .form-control {
    min-height: 44px;
    background: var(--vh-surface) !important;
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius-sm) !important;
    color: var(--vh-ink) !important;
    box-shadow: none !important;
}

.form-control:focus,
input[type='text']:focus,
input[type='email']:focus,
input[type='password']:focus,
input[type='tel']:focus,
input[type='number']:focus,
input[type='search']:focus,
input[type='url']:focus,
select:focus,
textarea:focus {
    border-color: var(--vh-brand) !important;
    box-shadow: var(--vh-focus) !important;
    outline: 0 !important;
}

::placeholder {
    color: #87907d;
    opacity: 1;
}

/* Header */
#header {
    background: var(--vh-surface);
    box-shadow: 0 1px 0 rgba(45, 61, 21, .08);
}

#header .header-nav {
    min-height: 38px;
    background: #f2f1e6;
    border-bottom: 1px solid var(--vh-border);
}

#header .header-nav .container,
#header .header-top .container,
#header .header-navfullwidth .container {
    max-width: 1280px;
}

#header .header-nav .row > .hidden-sm-down {
    width: 100%;
}

#header .header-nav .currency-selector > button,
#header .header-nav .language-selector > button,
#header .header-nav .right-nav a {
    color: var(--vh-muted);
    font-size: 13px;
    font-weight: 500;
}

#header .header-top {
    background: var(--vh-surface);
    padding: 0;
}

#header .header-top .row {
    display: flex;
    align-items: center;
    min-height: 96px;
}

#_desktop_logo {
    width: 33.333333% !important;
    height: 96px;
    display: flex;
    align-items: center;
    float: none;
}

#_desktop_logo > a {
    display: block;
}

#_desktop_logo img {
    display: block;
    width: auto !important;
    max-width: 260px;
    max-height: 64px;
}

#header .header-top .header-top-right,
#header .header-top .position-static {
    width: 66.666667% !important;
    max-width: 66.666667%;
    flex: 0 0 66.666667%;
}

#header .header-top .search-widget {
    float: left;
    width: min(480px, calc(100% - 150px));
    margin: 0;
    padding: 24px 0;
}

.header-top .search-widget form {
    position: relative;
}

.header-top .search-widget form input[type='text'] {
    width: 100%;
    height: 48px;
    padding: 0 54px 0 18px;
    background: #f5f4ea !important;
    border: 1px solid var(--vh-border) !important;
    border-radius: 999px !important;
}

.search-widget form button[type='submit'] {
    top: 0;
    right: 0;
    bottom: auto;
    width: 50px;
    height: 48px;
    color: var(--vh-brand);
}

#_desktop_cart {
    float: right;
    margin-left: 22px;
    padding: 24px 0;
}

#_desktop_cart .header > a {
    min-height: 48px;
    padding-left: 56px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#_desktop_cart .header > a::before {
    width: 44px;
    height: 44px;
    line-height: 44px;
    background: var(--vh-brand-soft);
    border: 1px solid var(--vh-border-strong);
    color: var(--vh-brand-dark);
}

#_desktop_cart .header > a:hover::before {
    background: var(--vh-brand);
    border-color: var(--vh-brand);
    color: #fff;
}

#_desktop_cart .header > a .text {
    color: var(--vh-ink);
    font-size: 14px;
    font-weight: 600;
}

#_desktop_cart .header > a .cart-qty {
    color: var(--vh-muted);
    font-size: 13px;
}

#header .header-navfullwidth,
.top-navigation-menu {
    background: var(--vh-brand-dark);
}

.top-navigation-menu,
#_desktop_top_menu {
    width: 100% !important;
    max-width: none !important;
    float: none;
}

#header .top-navigation-menu .top-menu {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
}

#header .top-navigation-menu .top-menu .level0 > a {
    min-height: 52px;
    display: flex;
    align-items: center;
    padding: 14px 17px;
    color: #fffef6;
    font-size: 14.5px;
    font-weight: 600;
    line-height: 1.2;
}

#header .top-navigation-menu .top-menu .level0:hover > a,
#header .top-navigation-menu .top-menu .level0.current > a {
    background: rgba(255,255,255,.08);
    color: #fff;
}

.top-menu .sub-menu,
.dropdown-menu {
    background: var(--vh-surface);
    border: 1px solid var(--vh-border);
    border-radius: 0 0 var(--vh-radius) var(--vh-radius);
    box-shadow: var(--vh-shadow);
}

.vh-medical-strip {
    display: none !important;
}

/* Breadcrumbs + page rhythm */
.breadcrumb {
    margin: 0 0 22px;
    padding: 0;
    background: transparent;
    color: var(--vh-muted);
    font-size: 13px;
    font-weight: 500;
}

.breadcrumb a {
    color: var(--vh-muted);
}

.section-title,
.products-section-title,
.featured-products .products-section-title {
    margin: 0 0 26px;
    color: var(--vh-ink);
    text-transform: none;
}

/* Category pages: seamless copy + image-only subcategory covers. */
#category #js-product-list-header .vh-category-seamless,
#category #js-product-list-header .vh-category-seamless .block-category-inner,
#category #js-product-list-header #category-description,
body#category #js-product-list-footer,
body#category .category-additional-description {
    margin: 0;
    padding-left: 0 !important;
    padding-right: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#category #js-product-list-header .block-category h1 {
    margin-bottom: 14px;
}

#category #category-description {
    max-width: 900px;
    color: var(--vh-muted);
    font-size: 15.5px;
    line-height: 1.65;
}

#category #subcategories,
#category #subcategories.vh-subcategories-seamless,
#category #subcategories .subcategories-list,
#category #subcategories .subcategories-list > li,
#category #subcategories .subcategory-image,
#category #subcategories .vh-subcategory-cover {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#category #subcategories {
    margin: 22px 0 34px;
    padding: 0 !important;
}

#category #subcategories .subcategories-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
    padding: 0 !important;
    list-style: none;
}

#category #subcategories .subcategories-list > li {
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 0 !important;
    list-style: none;
}

#category #subcategories .subcategory-image {
    width: 100%;
    margin: 0;
    padding: 0;
}

#category #subcategories .vh-subcategory-cover {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 !important;
    overflow: hidden;
    text-decoration: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    aspect-ratio: 3 / 1;
    isolation: isolate;
    transform: translateZ(0);
}

#category #subcategories .vh-subcategory-cover picture {
    display: block;
    width: 100%;
    height: 100%;
}

#category #subcategories .vh-subcategory-cover-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    object-position: center;
    transition: transform 220ms ease, filter 220ms ease;
}

#category #subcategories .vh-subcategory-cover:hover .vh-subcategory-cover-image,
#category #subcategories .vh-subcategory-cover:focus-visible .vh-subcategory-cover-image {
    transform: scale(1.025);
    filter: saturate(1.03) contrast(1.02);
}

#category #subcategories .vh-subcategory-cover:focus-visible {
    outline: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
}

/* Names/descriptions are deliberately not rendered; the image alt text and link aria-label preserve context. */
#category #subcategories .subcategory-name,
#category #subcategories .cat_desc,
#category #subcategories h5 {
    display: none !important;
}

@media (max-width: 991.98px) {
    #category #subcategories .subcategories-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }
}

@media (max-width: 575.98px) {
    #category #subcategories {
        margin: 18px 0 28px;
    }

    #category #subcategories .subcategories-list {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    #category #subcategories .vh-subcategory-cover {
        border-radius: 0 !important;
    }
}

/* Listing controls + filters */
#products .row.products-selection {
    margin: 0 0 26px;
    padding: 12px 14px;
    background: var(--vh-surface-soft);
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius);
}

#products .products-selection .total-products p {
    margin: 9px 0 0;
    color: var(--vh-muted);
    font-size: 14px;
}

.pagination-summary,
.products-selection .showing,
#js-product-list-top .showing {
    display: none !important;
}

#search_filters,
#search_filters_brands,
#search_filters_suppliers {
    margin-bottom: 22px;
    padding: 18px;
    background: var(--vh-surface);
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius) !important;
    box-shadow: none !important;
}

#search_filters > .h6,
#search_filters_brands > .h6,
#search_filters_suppliers > .h6,
#search_filters .facet .facet-title {
    color: var(--vh-ink);
    font-weight: 600;
}

#search_filters .facet {
    border-color: var(--vh-border) !important;
}

#search_filters .facet .facet-label,
#search_filters .facet .facet-label a {
    color: var(--vh-muted);
    font-size: 14px;
}

/* Product grids: explicit responsive grid avoids legacy inline-block drift. */
.products-grid .products.row,
#products .products-grid .products.row,
.featured-products .products-grid .products.row,
.product-accessories .products-grid .products.row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    margin-left: 0;
    margin-right: 0;
}

#products .products-grid .products.row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.products-grid .products .product-item,
#products .products-grid .products .product-item,
.featured-products .products-grid .products .product-item,
.product-accessories .products-grid .products .product-item {
    display: block;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px;
}

.products-grid .product-miniature,
#products .products-grid .product-miniature,
.featured-products .product-miniature,
.product-accessories .product-miniature {
    height: 100%;
    margin: 0 !important;
    background: var(--vh-surface);
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius-lg);
    overflow: hidden;
    box-shadow: var(--vh-shadow-sm);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.products-grid .product-miniature:hover,
#products .products-grid .product-miniature:hover,
.featured-products .product-miniature:hover,
.product-accessories .product-miniature:hover {
    transform: translateY(-3px);
    border-color: var(--vh-border-strong);
    box-shadow: var(--vh-shadow);
}

.product-miniature .thumbnail-container {
    display: flex;
    flex-direction: column;
    height: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    background: var(--vh-surface) !important;
    box-shadow: none !important;
}

.product-miniature .thumbnail-top {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #f8f7ee 0%, #efeee1 100%);
    border-bottom: 1px solid var(--vh-border);
}

.product-miniature .product-thumbnail {
    display: block;
    aspect-ratio: 3 / 4;
    padding: 0;
    overflow: hidden;
    background: var(--vh-surface-alt, #f4f3e8);
}

.product-miniature .product-thumbnail picture,
.product-miniature .product-thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
}

.product-miniature .product-thumbnail img {
    max-width: none !important;
    object-fit: cover;
    object-position: center;
    transition: transform .28s ease;
}

.product-miniature:hover .product-thumbnail img {
    transform: scale(1.025);
}

.product-miniature .highlighted-informations {
    left: 12px;
    right: 12px;
    bottom: 12px;
    width: auto !important;
    height: auto !important;
    padding: 8px 10px !important;
    background: rgba(255, 254, 249, .96) !important;
    border: 1px solid rgba(195, 197, 164, .8);
    border-radius: var(--vh-radius-sm);
    box-shadow: var(--vh-shadow-sm) !important;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity .18s ease, transform .18s ease;
}

.product-miniature:hover .highlighted-informations,
.product-miniature:focus-within .highlighted-informations {
    opacity: 1;
    transform: translateY(0);
}

.product-miniature .highlighted-informations .quick-view {
    color: var(--vh-ink);
    font-size: 13px;
    font-weight: 600;
}

.product-miniature .product-description {
    position: static !important;
    display: flex;
    flex-direction: column;
    flex: 1;
    width: 100% !important;
    height: auto !important;
    padding: 16px 17px 18px;
    background: var(--vh-surface) !important;
}

.product-miniature .product-description::after {
    display: none !important;
}

.product-miniature .product-title {
    min-height: 44px;
    margin: 0 0 10px !important;
    text-align: left !important;
}

.product-miniature .product-title a,
#products .product-title a,
.featured-products .product-title a,
.product-accessories .product-title a {
    display: -webkit-box;
    overflow: hidden;
    color: var(--vh-ink) !important;
    font-size: 15.5px !important;
    font-weight: 600 !important;
    line-height: 1.4;
    letter-spacing: 0;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.product-miniature .product-price-and-shipping,
#products .product-price-and-shipping,
.featured-products .product-price-and-shipping,
.product-accessories .product-price-and-shipping {
    margin: 0 0 12px;
    color: var(--vh-ink);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3;
    text-align: left !important;
}

.product-miniature .regular-price {
    color: #8b9184;
    font-size: 13px;
    font-weight: 500;
}

.product-miniature .discount-product {
    color: var(--vh-danger);
    font-size: 12px;
    font-weight: 700;
}

.product-miniature .product-price-and-shipping .discount-product {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: inline-block;
    margin-left: 6px;
    transform: none !important;
}

.product-miniature .add {
    margin-top: auto !important;
    text-align: left !important;
}

.product-miniature .add .btn {
    width: 100%;
    min-height: 42px;
    padding: 9px 12px;
    font-size: 14px;
}

.product-flags li.product-flag,
#products .products-grid .products .product-item .product-flags > li,
.products-grid .products .product-item .product-flags > li {
    min-width: auto;
    min-height: auto;
    padding: 5px 9px;
    background: var(--vh-brand-dark);
    border-radius: 999px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .025em;
    box-shadow: none;
}

.product-flags li.product-flag.new,
.products-grid .products .product-item .product-flags > li.new,
#products .products-grid .products .product-item .product-flags > li.new {
    background: var(--vh-brand);
}

/* Product page */
#product .h1 {
    margin-bottom: 14px;
    color: var(--vh-ink);
    font-size: clamp(1.75rem, 2.7vw, 2.45rem);
}

#product .current-price,
#product .product-price {
    color: var(--vh-brand-dark);
    font-size: 1.65rem;
    font-weight: 700;
}

.images-container .product-cover img,
.product-images > li.thumb-container > .thumb {
    background: #f4f3e8;
    border: 1px solid var(--vh-border);
    border-radius: var(--vh-radius);
}

.product-information,
.product-description,
.tabs .tab-content {
    color: var(--vh-muted);
}

.tabs .nav-tabs {
    border-bottom: 1px solid var(--vh-border);
}

.tabs .nav-tabs .nav-link {
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--vh-muted);
    font-weight: 600;
}

.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover {
    background: transparent;
    border-bottom-color: var(--vh-brand);
    color: var(--vh-ink);
}

.tabs .tab-content {
    padding: 22px 0 0;
    background: transparent;
    border: 0;
}

/* Cart / checkout / account panels */
.card,
.cart-grid-body .card,
.cart-grid-right .card,
.checkout-step,
#order-items,
#order-details,
.modal-content,
.popover {
    background: var(--vh-surface);
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius) !important;
    box-shadow: none !important;
}

body#checkout .checkout-step {
    margin-bottom: 14px;
}

body#checkout .checkout-step .step-title,
body#checkout .checkout-step .step-number {
    color: var(--vh-ink);
}

/* Footer */
#footer {
    background: #eeede0;
}

#footer .footer-top {
    background: #e5e5d2;
    border-top: 1px solid #d0d0b5;
}

#footer .footer-container,
#footer .footer-bottom {
    background: #eeede0;
}

#footer .footer-container {
    padding: 40px 0 28px;
    border-top: 1px solid #dad9c2;
}

#footer .footer-container .h3,
#footer .footer-container .h4,
#footer .footer-block-title,
#footer .footer-block-title h3,
#footer .footer-container #block_myaccount_infos .myaccount-title > a,
#footer .footer-container .footer-title > h3 {
    color: var(--vh-ink) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: .075em !important;
    text-transform: uppercase !important;
}

#footer .footer-container a,
#footer .footer-container li,
#footer .footer-bottom,
#footer .copyright-block {
    color: var(--vh-muted);
    font-size: 14px !important;
    line-height: 1.6;
}

#footer .footer-container a:hover {
    color: var(--vh-brand-hover);
}

#footer .footer-bottom {
    padding: 0;
}

#footer .footer-bottom .footer-inner {
    padding: 17px 0;
    border-top: 1px solid #d4d3ba;
}

/* Desktop Quick Start guide: minimal, seamless left-side utility rail — refined to the 2.3.6 balanced scale. */
.vh-guidebar {
    position: fixed;
    left: 9px;
    top: 50%;
    width: 178px;
    z-index: 90;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 8px 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    transform: translateY(-50%);
}

.vh-guidebar-eyebrow {
    padding: 0 11px 7px;
    color: var(--vh-muted);
    font-size: 12.2px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: .11em;
    text-transform: uppercase;
    opacity: .85;
}

.vh-guidebar-item {
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 49px;
    padding: 8px 11px;
    color: var(--vh-muted);
    background: transparent;
    border: 0;
    border-radius: 9px;
    box-shadow: none;
    text-decoration: none !important;
    opacity: .85;
    transition: background-color .16s ease, color .16s ease, opacity .16s ease;
}

.vh-guidebar-item:hover,
.vh-guidebar-item:focus {
    color: var(--vh-ink);
    background: rgba(95, 117, 46, .07);
    opacity: 1;
    outline: none;
}

.vh-guidebar-item:focus-visible {
    box-shadow: 0 0 0 2px rgba(95, 117, 46, .28);
}

.vh-guidebar-icon {
    display: inline-flex;
    flex: 0 0 27px;
    align-items: center;
    justify-content: center;
    width: 27px;
    height: 27px;
    color: var(--vh-viridian-dark);
    background: transparent;
    border: 0;
    border-radius: 0;
    font-size: 17.5px;
    opacity: 1;
}

.vh-guidebar-sale .vh-guidebar-icon {
    color: var(--vh-viridian-dark);
    background: transparent;
    border: 0;
}

.vh-guidebar-label {
    color: inherit;
    font-size: 16.2px;
    font-weight: 500;
    line-height: 1.25;
    white-space: nowrap;
}

@media (max-height: 650px) and (min-width: 1200px) {
    .vh-guidebar {
        top: 54%;
        transform: translateY(-50%) scale(.94);
        transform-origin: left center;
    }
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .vh-guidebar {
        width: 57px;
    }

    .vh-guidebar-eyebrow,
    .vh-guidebar-label {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
    }

    .vh-guidebar-item {
        width: 49px;
        min-height: 49px;
        justify-content: center;
        padding: 8px;
    }
}

/* Owl controls */
.owl-theme .owl-controls.clickable .owl-buttons > div .prev-arrow,
.owl-theme .owl-controls.clickable .owl-buttons > div .next-arrow {
    width: 42px;
    height: 42px;
    background-color: rgba(255,255,255,.94);
    border: 1px solid var(--vh-border);
    border-radius: 50%;
    box-shadow: var(--vh-shadow-sm);
}

/* Responsive */
@media (max-width: 1199px) {
    .container {
        max-width: 1080px !important;
        padding-left: 22px;
        padding-right: 22px;
    }

    .featured-products .products-grid .products.row,
    .product-accessories .products-grid .products.row,
    .products-grid .products.row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 20px;
    }

    #products .products-grid .products.row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    #header .header-top .search-widget {
        width: min(390px, calc(100% - 140px));
    }

    .vh-guidebar {
        display: none !important;
    }
}

@media (max-width: 991px) {
    .container {
        max-width: 900px !important;
        padding-left: 20px;
        padding-right: 20px;
    }

    #products .products-grid .products.row,
    .featured-products .products-grid .products.row,
    .product-accessories .products-grid .products.row,
    .products-grid .products.row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    #_desktop_logo img {
        max-width: 210px;
    }

    #_desktop_cart {
        margin-left: 14px;
    }
}

@media (max-width: 767px) {
    html,
    body {
        font-size: 16px;
    }

    .container {
        max-width: 100% !important;
        padding-left: 16px;
        padding-right: 16px;
    }

    #wrapper {
        padding-top: 20px;
        padding-bottom: 34px;
    }

    #header .header-nav {
        min-height: 66px;
        background: var(--vh-surface);
    }

    #header .header-nav .mobile {
        position: relative;
        min-height: 66px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #header .header-nav #menu-icon,
    #header .header-nav #_mobile_cart,
    #header .header-nav #_mobile_user_info {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        min-height: 44px;
        padding: 0;
    }

    #header .header-nav .top-logo {
        position: absolute;
        left: 50%;
        top: 50%;
        width: auto;
        height: auto;
        min-height: 0 !important;
        transform: translate(-50%, -50%);
    }

    #header .header-nav .top-logo > a,
    #header .header-nav .top-logo img {
        display: block;
    }

    #header .header-nav .top-logo img {
        width: auto !important;
        max-width: 180px !important;
        max-height: 48px !important;
    }

    #header .header-top {
        min-height: 0;
        padding: 0;
    }

    #header .header-top > .container > .row > #_desktop_logo {
        display: none !important;
    }

    #header .header-top .row {
        display: block;
        min-height: 0;
    }

    #header .header-top .header-top-right,
    #header .header-top .position-static {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        padding-left: 0;
        padding-right: 0;
    }

    #header .header-top .search-widget {
        float: none;
        width: 100%;
        margin: 0;
        padding: 10px 0 12px;
    }

    #header .header-top .search-widget form input[type='text'] {
        height: 44px;
    }

    #header .header-top .search-widget form button[type='submit'] {
        height: 44px;
    }

    #mobile_top_menu_wrapper {
        margin: 0;
        padding: 10px 16px 18px;
        background: var(--vh-surface);
        border-top: 1px solid var(--vh-border);
        box-shadow: 0 12px 24px rgba(45, 61, 21, .08);
    }

    #mobile_top_menu_wrapper .top-menu a[data-depth='0'] {
        min-height: 46px;
        display: flex;
        align-items: center;
        color: var(--vh-ink);
        font-size: 15px;
        font-weight: 600;
    }

    .breadcrumb {
        margin-bottom: 18px;
        white-space: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    #products .row.products-selection {
        padding: 10px;
    }

    .products-grid .products.row,
    #products .products-grid .products.row,
    .featured-products .products-grid .products.row,
    .product-accessories .products-grid .products.row {
        gap: 14px;
    }

    .product-miniature .product-description {
        padding: 13px 12px 14px;
    }

    .product-miniature .product-title {
        min-height: 40px;
        margin-bottom: 8px !important;
    }

    .product-miniature .product-title a,
    #products .product-title a,
    .featured-products .product-title a,
    .product-accessories .product-title a {
        font-size: 14px !important;
        line-height: 1.4;
    }

    .product-miniature .product-price-and-shipping,
    #products .product-price-and-shipping,
    .featured-products .product-price-and-shipping,
    .product-accessories .product-price-and-shipping {
        font-size: 15.5px;
    }

    .product-miniature .highlighted-informations {
        display: none !important;
    }

    .product-miniature .add .btn {
        min-height: 40px;
        padding-left: 8px;
        padding-right: 8px;
        font-size: 13px;
    }

    #footer .footer-container {
        padding: 24px 0 12px;
    }

    #footer .footer-container .footer-block-title,
    #footer .footer-container .links .title,
    #footer .footer-container .footer-colum-title {
        position: relative;
        min-height: 44px;
        display: flex;
        align-items: center;
        margin: 0;
        padding: 9px 34px 9px 0;
        cursor: pointer;
    }

    #footer .footer-container .footer-block-title::after,
    #footer .footer-container .footer-colum-title::after {
        right: 2px;
        top: 50%;
        line-height: 1;
        transform: translateY(-50%);
    }

    #footer .footer-container .footer-block-toggle-content {
        padding-bottom: 14px;
    }
}

@media (max-width: 420px) {
    .container {
        padding-left: 13px;
        padding-right: 13px;
    }

    .products-grid .products.row,
    #products .products-grid .products.row,
    .featured-products .products-grid .products.row,
    .product-accessories .products-grid .products.row {
        gap: 10px;
    }

    .product-miniature {
        border-radius: 0 !important;
    }

    .product-miniature .product-description {
        padding: 11px 10px 12px;
    }

    .product-miniature .product-title a,
    #products .product-title a,
    .featured-products .product-title a,
    .product-accessories .product-title a {
        font-size: 13.5px !important;
    }

    .product-miniature .add .btn {
        font-size: 12.5px;
    }
}

@media (hover: none), (pointer: coarse) {
    .product-miniature:hover {
        transform: none !important;
    }
}



/* Veridian 2.5.8: CSS fallback for PrestaShop's dynamically-built TouchSpin.
   This applies before/without JS normalization so the decrease button can
   never remain stacked on the right side of the quantity input. */
#product .bootstrap-touchspin:not(.vh-horizontal-quantity),
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) {
    display: inline-flex !important;
    align-items: stretch !important;
    width: auto !important;
    min-width: 148px;
    min-height: 46px;
    overflow: hidden;
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius-sm) !important;
    background: var(--vh-surface) !important;
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) > #quantity_wanted,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) > #quantity_wanted {
    order: 2;
    flex: 0 0 64px !important;
    width: 64px !important;
    min-width: 64px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border: 0 !important;
    border-left: 1px solid var(--vh-border) !important;
    border-right: 1px solid var(--vh-border) !important;
    border-radius: 0 !important;
    text-align: center;
    box-shadow: none !important;
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) > .input-group-btn-vertical,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) > .input-group-btn-vertical {
    display: contents !important;
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down,
#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up {
    position: static !important;
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    max-width: none !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--vh-surface-alt) !important;
    color: var(--vh-ink) !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down {
    order: 1;
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up {
    order: 3;
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down i,
#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up i,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down i,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up i {
    position: static !important;
    top: auto !important;
    left: auto !important;
    display: block;
    font-size: 18px !important;
    line-height: 1 !important;
}

@media (max-width: 767.98px) {
    #product .bootstrap-touchspin:not(.vh-horizontal-quantity),
    .quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) {
        min-width: 140px;
    }

    #product .bootstrap-touchspin:not(.vh-horizontal-quantity) > #quantity_wanted,
    .quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) > #quantity_wanted {
        flex-basis: 58px !important;
        width: 58px !important;
        min-width: 58px !important;
    }

    #product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down,
    #product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up,
    .quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down,
    .quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up {
        flex-basis: 41px !important;
        width: 41px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

/* ================================================================
   Veridian Health 2.2.2 — product page cleanup
   ================================================================ */

/* Product social sharing is disabled at template/hook level above.
   Keep this fallback so cached/module markup never flashes on product pages. */
#product .product-additional-info .social-sharing,
#product .social-sharing {
    display: none !important;
}

/* Security / Delivery / Return reassurance must be fully borderless.
   Cover both core and module markup, including pseudo-elements and outlines,
   so no divider can reappear through compiled or module CSS. */
body#product #block-reassurance,
body#product #block-reassurance ul,
body#product #block-reassurance li,
body#product #block-reassurance .block-reassurance-item,
body#product .blockreassurance_product,
body#product .blockreassurance_product > div {
    border: 0 !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
}

body#product #block-reassurance::before,
body#product #block-reassurance::after,
body#product #block-reassurance ul::before,
body#product #block-reassurance ul::after,
body#product #block-reassurance li::before,
body#product #block-reassurance li::after,
body#product #block-reassurance .block-reassurance-item::before,
body#product #block-reassurance .block-reassurance-item::after,
body#product .blockreassurance_product::before,
body#product .blockreassurance_product::after,
body#product .blockreassurance_product > div::before,
body#product .blockreassurance_product > div::after {
    border: 0 !important;
    box-shadow: none !important;
}

body#product #block-reassurance,
body#product .blockreassurance_product {
    background: transparent !important;
    overflow: visible !important;
}



/* ==========================================================================
   VERIDIAN 2.2.4 — CATEGORY COVER RESTORE
   Keep PrestaShop category cover images visible on desktop and mobile.
   ========================================================================== */
body#category #js-product-list-header .block-category-inner {
    display: block;
}

body#category #js-product-list-header .category-cover.vh-category-cover {
    position: relative;
    display: block !important;
    float: none !important;
    width: 100%;
    max-width: none;
    margin: 18px 0 0;
    padding: 0;
    overflow: hidden;
    border: 0 !important;
    border-radius: 14px;
    box-shadow: none !important;
    background: transparent;
}

body#category #js-product-list-header .category-cover.vh-category-cover picture {
    display: block;
    width: 100%;
}

body#category #js-product-list-header .category-cover.vh-category-cover .vh-category-cover-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    margin: 0;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 767.98px) {
    body#category #js-product-list-header .category-cover.vh-category-cover {
        display: block !important;
        margin-top: 14px;
        border-radius: 10px;
    }

    body#category #js-product-list-header .category-cover.vh-category-cover .vh-category-cover-image {
        display: block !important;
        width: 100% !important;
        height: auto !important;
    }
}

/* ==========================================================================
   VERIDIAN 2.2.5 — SUBCATEGORY COVER IMAGE SOURCE
   Subcategory tiles use the category cover image; keep media visible even if
   legacy Classic/theme rules target .subcategory-image or .img.
   ========================================================================== */
body#category #subcategories .subcategory-image,
body#category #subcategories .subcategory-image > a.vh-subcategory-cover,
body#category #subcategories .subcategory-image picture,
body#category #subcategories .subcategory-image img.vh-subcategory-cover-image {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body#category #subcategories .subcategory-image {
    min-height: 1px !important;
}



/* ==========================================================================
   VERIDIAN 2.2.6 — DIRECT SUBCATEGORY COVER FILES
   The markup now loads /img/c/{id_image}.jpg directly. Keep the native image
   element independent of any Classic .img or generated-thumbnail rules.
   ========================================================================== */
body#category #subcategories .vh-subcategory-cover-image {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}


/* ==========================================================================
   VERIDIAN 2.2.7 — BORDERLESS SUBCATEGORY SECTION
   Remove the outer panel/outline while preserving the image-only tile grid.
   ========================================================================== */
body#category #subcategories.vh-subcategories-covers,
body#category #subcategories.vh-subcategories-seamless {
    border: 0 !important;
    border-width: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

body#category #subcategories.vh-subcategories-covers::before,
body#category #subcategories.vh-subcategories-covers::after,
body#category #subcategories.vh-subcategories-seamless::before,
body#category #subcategories.vh-subcategories-seamless::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* ==========================================================================
   VERIDIAN 2.2.8 — UNIFORM SUBCATEGORY COVER SIZE
   Lock every subcategory tile to the same 3:1 frame regardless of the source
   image dimensions. Images crop from the centre instead of changing tile size.
   ========================================================================== */
body#category #subcategories .subcategories-list {
    align-items: stretch !important;
}

body#category #subcategories .subcategories-list > li.vh-subcategory-item {
    display: flex !important;
    align-items: stretch !important;
    min-width: 0 !important;
}

body#category #subcategories .subcategory-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 3 / 1 !important;
    overflow: hidden !important;
}

body#category #subcategories .vh-subcategory-cover {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: auto !important;
}

body#category #subcategories img.vh-subcategory-cover-image {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
}



/* ==========================================================================
   VERIDIAN 2.2.9 — ABSOLUTELY BORDERLESS SUBCATEGORY AREA
   Remove every legacy Classic/theme frame from the section and image links.
   ========================================================================== */
body#category #main > #subcategories,
body#category #main > #subcategories.vh-subcategories-covers,
body#category #main > #subcategories.vh-subcategories-seamless,
body#category #main > #subcategories > ul.subcategories-list,
body#category #main > #subcategories > ul.subcategories-list > li.vh-subcategory-item,
body#category #main > #subcategories .subcategory-image,
body#category #main > #subcategories .subcategory-image > a.vh-subcategory-cover,
body#category #main > #subcategories .subcategory-image > a.vh-subcategory-cover:hover,
body#category #main > #subcategories .subcategory-image > a.vh-subcategory-cover:focus,
body#category #main > #subcategories .subcategory-image > a.vh-subcategory-cover:focus-visible,
body#category #main > #subcategories .subcategory-image > a.vh-subcategory-cover:active {
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    outline: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
}

body#category #main > #subcategories,
body#category #main > #subcategories > ul.subcategories-list,
body#category #main > #subcategories > ul.subcategories-list > li.vh-subcategory-item,
body#category #main > #subcategories .subcategory-image {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

body#category #main > #subcategories::before,
body#category #main > #subcategories::after,
body#category #main > #subcategories > ul.subcategories-list::before,
body#category #main > #subcategories > ul.subcategories-list::after,
body#category #main > #subcategories > ul.subcategories-list > li.vh-subcategory-item::before,
body#category #main > #subcategories > ul.subcategories-list > li.vh-subcategory-item::after,
body#category #main > #subcategories .subcategory-image::before,
body#category #main > #subcategories .subcategory-image::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}


/* ==========================================================================
   VERIDIAN 2.3.0 — REMOVE THE SUBCATEGORY OUTER BOX ENTIRELY
   display: contents keeps the PrestaShop wrapper in the DOM but prevents it
   from generating a visual box, so no inherited border/outline can render.
   ========================================================================== */
body#category #main > #subcategories.vh-subcategories-covers.vh-subcategories-seamless {
    display: contents !important;
}

body#category #main > #subcategories.vh-subcategories-covers.vh-subcategories-seamless > ul.subcategories-list {
    margin: 22px 0 34px !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

body#category #main > #subcategories.vh-subcategories-covers.vh-subcategories-seamless > ul.subcategories-list::before,
body#category #main > #subcategories.vh-subcategories-covers.vh-subcategories-seamless > ul.subcategories-list::after {
    content: none !important;
    display: none !important;
}

/* Prevent a one-pixel halo from the tile background around rounded images. */
body#category #main > #subcategories .vh-subcategory-cover {
    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 575.98px) {
    body#category #main > #subcategories.vh-subcategories-covers.vh-subcategories-seamless > ul.subcategories-list {
        margin: 18px 0 28px !important;
    }
}


/* ==========================================================================
   VERIDIAN 2.3.1 — BORDERLESS CHILD CATEGORY TILES
   Remove every visual frame from each individual child/subcategory cover.
   ========================================================================== */
body#category #main .subcategories-list > li.vh-subcategory-item,
body#category #main .subcategories-list > li.vh-subcategory-item .subcategory-image,
body#category #main .subcategories-list > li.vh-subcategory-item .vh-subcategory-cover,
body#category #main .subcategories-list > li.vh-subcategory-item .vh-subcategory-cover:hover,
body#category #main .subcategories-list > li.vh-subcategory-item .vh-subcategory-cover:focus,
body#category #main .subcategories-list > li.vh-subcategory-item .vh-subcategory-cover:focus-visible,
body#category #main .subcategories-list > li.vh-subcategory-item .vh-subcategory-cover:active,
body#category #main .subcategories-list > li.vh-subcategory-item picture,
body#category #main .subcategories-list > li.vh-subcategory-item img.vh-subcategory-cover-image {
    border: none !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

body#category #main .subcategories-list > li.vh-subcategory-item::before,
body#category #main .subcategories-list > li.vh-subcategory-item::after,
body#category #main .subcategories-list > li.vh-subcategory-item .subcategory-image::before,
body#category #main .subcategories-list > li.vh-subcategory-item .subcategory-image::after,
body#category #main .subcategories-list > li.vh-subcategory-item .vh-subcategory-cover::before,
body#category #main .subcategories-list > li.vh-subcategory-item .vh-subcategory-cover::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* ==========================================================================
   VERIDIAN 2.3.2 — TRUE BORDERLESS CHILD-CATEGORY GRID
   The legacy #subcategories wrapper has been removed from the template so
   Classic/older theme panel rules cannot encase the full child-category area.
   ========================================================================== */
body#category #main > ul.vh-subcategories-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 22px 0 34px !important;
    padding: 0 !important;
    list-style: none !important;
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

body#category #main > ul.vh-subcategories-grid::before,
body#category #main > ul.vh-subcategories-grid::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item,
body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item .subcategory-image,
body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item .vh-subcategory-cover,
body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item .vh-subcategory-cover:hover,
body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item .vh-subcategory-cover:focus,
body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item .vh-subcategory-cover:focus-visible,
body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item .vh-subcategory-cover:active,
body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item img.vh-subcategory-cover-image {
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    outline: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body#category #main > ul.vh-subcategories-grid .subcategory-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    aspect-ratio: 3 / 1 !important;
    overflow: hidden !important;
}

body#category #main > ul.vh-subcategories-grid .vh-subcategory-cover {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
}

body#category #main > ul.vh-subcategories-grid img.vh-subcategory-cover-image {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
}

body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item::before,
body#category #main > ul.vh-subcategories-grid > li.vh-subcategory-item::after,
body#category #main > ul.vh-subcategories-grid .subcategory-image::before,
body#category #main > ul.vh-subcategories-grid .subcategory-image::after,
body#category #main > ul.vh-subcategories-grid .vh-subcategory-cover::before,
body#category #main > ul.vh-subcategories-grid .vh-subcategory-cover::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 991.98px) {
    body#category #main > ul.vh-subcategories-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    body#category #main > ul.vh-subcategories-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
        margin: 18px 0 28px !important;
    }
}

/* ========================================================================== 
   Veridian 2.3.6 refinement
   Desktop category hover menus use an even, readable subcategory grid.
   ========================================================================== */
@media (min-width: 1200px) {
    /* Header categories: remove inherited offsets that create uneven spacing. */
    #header .top-navigation-menu .top-menu .level0 > .sub-menu {
        box-sizing: border-box;
        left: 0;
        width: min(880px, calc(100vw - 48px));
        min-width: 620px;
        margin: 0;
        padding: 24px 28px 26px;
        background: #fff;
    }

    #header .top-navigation-menu .top-menu .level0 > .sub-menu > .top-menu[data-depth="1"] {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
        align-items: start;
        column-gap: 30px;
        row-gap: 22px;
        width: 100%;
        margin: 0;
        padding: 0;
    }

    #header .top-navigation-menu .top-menu .level0 > .sub-menu > .top-menu[data-depth="1"] > li {
        float: none;
        width: auto;
        min-width: 0;
        margin: 0;
        padding: 0;
    }

    #header .top-navigation-menu .top-menu .level1 > a {
        display: block;
        margin: 0;
        padding: 0 0 9px;
        font-size: 14px;
        line-height: 1.35;
        letter-spacing: .01em;
        white-space: normal;
    }

    #header .top-navigation-menu .top-menu .level1 > .collapse {
        margin: 0;
        padding: 0;
    }

    #header .top-navigation-menu .top-menu[data-depth="2"],
    #header .top-navigation-menu .top-menu[data-depth="3"],
    #header .top-navigation-menu .top-menu[data-depth="4"] {
        display: flex;
        flex-direction: column;
        gap: 6px;
        width: 100%;
        margin: 0;
        padding: 0;
    }

    #header .top-navigation-menu .top-menu .level2,
    #header .top-navigation-menu .top-menu .level3,
    #header .top-navigation-menu .top-menu .level4 {
        margin: 0;
        padding: 0;
    }

    #header .top-navigation-menu .top-menu .level2 > a,
    #header .top-navigation-menu .top-menu .level3 > a,
    #header .top-navigation-menu .top-menu .level4 > a {
        display: block;
        margin: 0;
        padding: 3px 0;
        color: var(--vh-muted);
        font-size: 13.5px;
        font-weight: 400;
        line-height: 1.4;
        letter-spacing: 0;
        white-space: normal;
    }

    #header .top-navigation-menu .top-menu .level2 > a:hover,
    #header .top-navigation-menu .top-menu .level2 > a:focus,
    #header .top-navigation-menu .top-menu .level3 > a:hover,
    #header .top-navigation-menu .top-menu .level3 > a:focus,
    #header .top-navigation-menu .top-menu .level4 > a:hover,
    #header .top-navigation-menu .top-menu .level4 > a:focus {
        color: var(--vh-viridian-dark);
        text-decoration: none;
    }
}

@media (min-width: 1200px) and (max-width: 1399px) {
    #header .top-navigation-menu .top-menu .level0 > .sub-menu {
        width: min(760px, calc(100vw - 36px));
        min-width: 560px;
        padding: 22px 24px 24px;
    }

    #header .top-navigation-menu .top-menu .level0 > .sub-menu > .top-menu[data-depth="1"] {
        column-gap: 24px;
        row-gap: 20px;
    }
}


/* ========================================================================== 
   Veridian 2.3.8 — minimal floating wishlist integration
   Product-list wishlist lives in a dedicated image-corner layer.
   ========================================================================== */

/* Header shortcut: compact utility link beside the customer account control. */
#header .header-nav .right-nav .vh-header-wishlist {
    float: right;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 40px;
    margin: 0;
    padding: 9px 10px;
    color: var(--vh-ink-soft);
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

#header .header-nav .right-nav .vh-header-wishlist .material-icons {
    margin: 0;
    font-size: 18px;
    line-height: 1;
}

#header .header-nav .right-nav .vh-header-wishlist:hover,
#header .header-nav .right-nav .vh-header-wishlist:focus {
    color: var(--vh-viridian) !important;
    text-decoration: none;
}

#header .header-nav .right-nav .vh-header-wishlist:focus-visible {
    outline: 2px solid rgba(95, 117, 46, .35);
    outline-offset: -2px;
}

/* Product cards: cart returns to full width; wishlist floats over the image. */
.product-miniature .vh-product-card-actions {
    display: block;
    width: 100%;
    min-height: 42px;
    margin-top: auto;
}

.product-miniature .vh-product-card-actions .add {
    width: 100%;
    min-width: 0;
    margin: 0 !important;
}

.product-miniature .vh-product-card-actions .add form,
.product-miniature .vh-product-card-actions .add .btn {
    width: 100%;
    height: 100%;
}

/* The slot occupies only its own image-corner layer and never affects card flow. */
.product-miniature .thumbnail-top .vh-product-wishlist-slot {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin: 0;
    padding: 0;
    pointer-events: none;
}

/* Hide the module's temporary injected position until JS moves it into the slot. */
.product-miniature .thumbnail-container > .wishlist-button-add,
.product-miniature .thumbnail-top > .wishlist-button-add {
    opacity: 0 !important;
    pointer-events: none !important;
}

.product-miniature .vh-product-wishlist-slot .wishlist-button-add {
    position: static !important;
    inset: auto !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    color: var(--vh-ink-soft) !important;
    background: rgba(255, 254, 249, .92) !important;
    border: 1px solid rgba(195, 197, 164, .72) !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 8px rgba(30, 42, 24, .08) !important;
    transform: none !important;
    transition: color .16s ease, background-color .16s ease, border-color .16s ease, transform .16s ease, box-shadow .16s ease !important;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.product-miniature .vh-product-wishlist-slot .wishlist-button-add:hover,
.product-miniature .vh-product-wishlist-slot .wishlist-button-add:focus {
    color: var(--vh-viridian) !important;
    background: rgba(255, 254, 249, .98) !important;
    border-color: var(--vh-sage) !important;
    box-shadow: 0 3px 10px rgba(30, 42, 24, .11) !important;
    transform: translateY(-1px) !important;
}

.product-miniature .vh-product-wishlist-slot .wishlist-button-add:focus-visible {
    outline: 2px solid rgba(95, 117, 46, .38) !important;
    outline-offset: 2px !important;
}

/* Filled/selected wishlist states used across blockwishlist versions. */
.product-miniature .vh-product-wishlist-slot .wishlist-button-add.active,
.product-miniature .vh-product-wishlist-slot .wishlist-button-add.added,
.product-miniature .vh-product-wishlist-slot .wishlist-button-add.is-added,
.product-miniature .vh-product-wishlist-slot .wishlist-button-add.wishlist-button-added,
.product-miniature .vh-product-wishlist-slot .wishlist-button-add[aria-pressed="true"] {
    color: var(--vh-viridian) !important;
    background: rgba(241, 244, 231, .97) !important;
    border-color: rgba(95, 117, 46, .42) !important;
}

.product-miniature .vh-product-wishlist-slot .wishlist-button-add svg,
.product-miniature .vh-product-wishlist-slot .wishlist-button-add svg path {
    fill: currentColor !important;
}

/* Keep the heart itself visually light regardless of module markup. */
.product-miniature .vh-product-wishlist-slot .wishlist-button-add i,
.product-miniature .vh-product-wishlist-slot .wishlist-button-add svg {
    margin: 0 !important;
    font-size: 20px !important;
    width: 20px !important;
    height: 20px !important;
}

/* Reserve the upper-right badge lane below the wishlist so nothing overlaps it. */
.product-miniature .product-flags li.product-flag:not(.new):not(.pack),
#products .products-grid .products .product-item .product-flags > li:not(.new):not(.pack),
.products-grid .products .product-item .product-flags > li:not(.new):not(.pack) {
    top: 58px;
}

.product-miniature .product-flags li.product-flag.on-sale + .product-flag.discount,
#products .products-grid .products .product-item .product-flags li.product-flag.on-sale + .product-flag.discount,
.products-grid .products .product-item .product-flags li.product-flag.on-sale + .product-flag.discount {
    top: 91px;
}

/* Product and quick-view: keep the native wishlist hook in the purchase row with exact spacing. */
#product .product-quantity,
.quickview .product-quantity {
    align-items: stretch;
    gap: 8px;
}

#product .product-quantity .qty,
#product .product-quantity .add,
.quickview .product-quantity .qty,
.quickview .product-quantity .add {
    margin-right: 0 !important;
    margin-bottom: 0 !important;
}

#product .product-quantity .wishlist-button,
#product .product-quantity .wishlist-button-add,
#product .product-quantity .wishlist-button-product,
.quickview .product-quantity .wishlist-button,
.quickview .product-quantity .wishlist-button-add,
.quickview .product-quantity .wishlist-button-product {
    position: static !important;
    inset: auto !important;
    flex: 0 0 44px;
    align-self: stretch;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
}

#product .product-quantity .wishlist-button-add,
#product .product-quantity .wishlist-button-product,
.quickview .product-quantity .wishlist-button-add,
.quickview .product-quantity .wishlist-button-product {
    background: var(--vh-surface-alt) !important;
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius-sm) !important;
    box-shadow: none !important;
}

#product .product-quantity .wishlist-button-add:hover,
#product .product-quantity .wishlist-button-add:focus,
#product .product-quantity .wishlist-button-product:hover,
#product .product-quantity .wishlist-button-product:focus,
.quickview .product-quantity .wishlist-button-add:hover,
.quickview .product-quantity .wishlist-button-add:focus,
.quickview .product-quantity .wishlist-button-product:hover,
.quickview .product-quantity .wishlist-button-product:focus {
    background: var(--vh-viridian-soft) !important;
    border-color: var(--vh-sage) !important;
    box-shadow: none !important;
}

/* The account page module output should remain seamless with the Sage theme. */
.wishlist-container,
.wishlist-container-header,
.wishlist-footer-links {
    box-shadow: none !important;
}

.wishlist-modal .modal-content {
    border-color: var(--vh-border) !important;
    border-radius: var(--vh-radius) !important;
    box-shadow: var(--vh-shadow) !important;
}

.wishlist-modal .modal-header,
.wishlist-modal .modal-footer {
    border-color: var(--vh-border) !important;
}

@media (max-width: 767.98px) {
    /* Keep the compact mobile header unchanged to prevent crowding. */
    #header .header-nav .right-nav .vh-header-wishlist {
        display: none !important;
    }

    .product-miniature .thumbnail-top .vh-product-wishlist-slot {
        top: 10px;
        right: 10px;
        width: 36px;
        height: 36px;
    }

    .product-miniature .vh-product-wishlist-slot .wishlist-button-add {
        width: 36px !important;
        min-width: 36px !important;
        max-width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
    }

    .product-miniature .vh-product-wishlist-slot .wishlist-button-add i,
    .product-miniature .vh-product-wishlist-slot .wishlist-button-add svg {
        width: 19px !important;
        height: 19px !important;
        font-size: 16px !important;
    }
}


/* Veridian 2.4.0 — product imagery fills its visual frame instead of being inset/shrunk. */
.product-miniature .thumbnail-top,
.product-miniature .product-thumbnail,
.product-miniature .product-thumbnail picture {
    width: 100%;
}

.product-miniature .product-thumbnail picture {
    height: 100%;
}

.product-miniature .product-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
}

#product .images-container .product-cover,
.quickview .images-container .product-cover {
    overflow: hidden;
    aspect-ratio: 3 / 4;
    background: var(--vh-surface-alt, #f4f3e8);
}

#product .images-container .product-cover img,
.quickview .images-container .product-cover img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
}

#product .product-images > li.thumb-container > .thumb,
.quickview .product-images > li.thumb-container > .thumb {
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover !important;
    object-position: center center !important;
}

/* Veridian 2.4.2: product cards open the product directly; Quick View is intentionally disabled. */
.product-miniature .quick-view,
.product-miniature .js-quick-view {
    display: none !important;
}

/* Veridian 2.4.3 — balanced product-detail imagery.
   Keep the main product clear and prominent without allowing it to dominate the viewport. */
#product .images-container {
    width: 100%;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
}

#product .images-container .product-cover {
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(100%, 540px);
    aspect-ratio: 1 / 1;
    margin: 0 auto 14px;
    overflow: hidden;
    background: var(--vh-surface-alt, #f4f3e8);
    border-radius: var(--vh-radius);
}

#product .images-container .product-cover img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    padding: 6px;
    object-fit: contain !important;
    object-position: center center !important;
    image-rendering: auto;
}

/* Product-page thumbnail strip: show the full pack/image instead of cropping it. */
#product .product-images > li.thumb-container > .thumb {
    width: 86px !important;
    height: 104px !important;
    aspect-ratio: auto !important;
    padding: 3px;
    object-fit: contain !important;
    object-position: center center !important;
    background: var(--vh-surface-alt, #f4f3e8);
}

/* Short desktop/laptop screens get a more compact hero image automatically. */
@media (min-width: 768px) and (max-height: 760px) {
    #product .images-container {
        max-width: 470px;
    }

    #product .images-container .product-cover {
        width: min(100%, 450px);
    }
}

@media (max-width: 991.98px) {
    #product .images-container {
        max-width: 500px;
    }

    #product .images-container .product-cover {
        width: min(100%, 480px);
    }
}

@media (max-width: 767.98px) {
    #product .images-container {
        max-width: 440px;
    }

    #product .images-container .product-cover {
        width: min(100%, 420px);
        margin-bottom: 12px;
    }

    #product .images-container .product-cover img {
        padding: 4px;
    }

    #product .product-images > li.thumb-container > .thumb {
        width: 72px !important;
        height: 88px !important;
    }
}

@media (max-width: 420px) {
    #product .images-container .product-cover {
        width: 100%;
    }
}


/* Veridian 2.4.4 — homepage/listing product-card image tuning.
   Keep card images sharp and fully visible without the over-zoomed look. */
.product-miniature .thumbnail-top {
    aspect-ratio: 4 / 5;
}

.product-miniature .product-thumbnail {
    display: flex !important;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 5 !important;
    background: #ffffff;
}

.product-miniature .product-thumbnail picture {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.product-miniature .product-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    padding: clamp(8px, 2.2vw, 14px);
    object-fit: contain !important;
    object-position: center center !important;
    image-rendering: auto;
    transform: none !important;
}

.product-miniature:hover .product-thumbnail img {
    transform: none !important;
}

/* Slightly tighter image area inside carousel cards so products do not appear oversized. */
.featured-products .product-miniature .thumbnail-top,
.new-products .product-miniature .thumbnail-top,
.product-accessories .product-miniature .thumbnail-top {
    aspect-ratio: 1 / 1;
}

.featured-products .product-miniature .product-thumbnail,
.new-products .product-miniature .product-thumbnail,
.product-accessories .product-miniature .product-thumbnail {
    aspect-ratio: 1 / 1 !important;
}

/* Keep cards from stretching extra-tall in Owl sliders. */
.featured-products .owl-item .product-item,
.new-products .owl-item .product-item,
.product-accessories .owl-item .product-item {
    height: 100%;
}

@media (max-width: 767.98px) {
    .product-miniature .thumbnail-top,
    .product-miniature .product-thumbnail {
        aspect-ratio: 1 / 1 !important;
    }

    .product-miniature .product-thumbnail img {
        padding: 8px;
    }
}

/* ======================================================================
   Veridian Health 2.5.0 — responsive product-card image fix
   Fixes the Classic legacy `height: calc(100% - 70px)` rule that could make
   the product link shorter than the mobile image frame, leaving a large
   empty band between the image and product description.
   ====================================================================== */

/* Give every listing image a stable frame that closely matches the theme's
   452x575 product thumbnails. This prevents layout shift on all viewports. */
.product-miniature .thumbnail-top {
    position: relative !important;
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    background: #fff !important;
}

/* Override Classic's more-specific legacy percentage-height rule and make the
   clickable image occupy the complete frame instead of only its upper part. */
.product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
}

.product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail picture {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
}

/* Keep the information area immediately attached to the image frame. */
.product-miniature .product-description {
    margin-top: 0 !important;
}

/* Avoid legacy carousel/grid height calculations from stretching cards. */
.products-grid .product-miniature .thumbnail-container,
#products .products-grid .product-miniature .thumbnail-container,
.featured-products .product-miniature .thumbnail-container,
.product-accessories .product-miniature .thumbnail-container {
    min-height: 0 !important;
}

/* Touch devices: preserve the same portrait ratio, remove unnecessary image
   animation/GPU work, and keep controls responsive. */
@media (max-width: 767.98px) {
    .product-miniature .thumbnail-top {
        aspect-ratio: 4 / 5 !important;
    }

    .product-miniature .product-thumbnail img {
        transition: none !important;
    }

    .product-miniature .vh-product-wishlist-slot .wishlist-button-add {
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }

    .product-miniature a,
    .product-miniature button {
        touch-action: manipulation;
    }
}

/* Very small phones still keep a comfortable two-column layout without
   allowing text/buttons to force horizontal overflow. */
@media (max-width: 360px) {
    .products-grid .products.row,
    #products .products-grid .products.row,
    .featured-products .products-grid .products.row,
    .product-accessories .products-grid .products.row {
        gap: 8px;
    }

    .product-miniature .product-description {
        padding-left: 9px;
        padding-right: 9px;
    }

    .product-miniature .add .btn {
        white-space: normal;
        line-height: 1.2;
    }
}

/* ======================================================================
   Veridian Health 2.5.2 — compact mobile header wishlist + cart actions
   Adds explicit, touch-friendly wishlist and cart controls to the mobile
   header while preserving the existing desktop header layout.
   ====================================================================== */
@media (max-width: 767.98px) {
    /* A compact three-zone header: menu | logo | actions. */
    #header .header-nav .vh-mobile-header {
        display: grid !important;
        grid-template-columns: 36px minmax(0, 1fr) auto;
        align-items: center;
        column-gap: 5px;
        width: 100%;
        min-height: 62px;
        padding: 7px 0;
    }

    #header .header-nav .vh-mobile-header::after {
        display: none !important;
    }

    #header .header-nav .vh-mobile-menu-toggle,
    #header .header-nav #menu-icon {
        float: none !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        margin: 0 !important;
        padding: 0 !important;
        cursor: pointer;
        touch-action: manipulation;
    }

    #header .header-nav #menu-icon .material-icons {
        font-size: 24px;
        line-height: 1;
        color: var(--vh-ink, #26311d);
    }

    #header .header-nav .vh-mobile-header .top-logo {
        float: none !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
        min-width: 0;
        width: 100%;
        height: 48px !important;
        padding: 0 !important;
    }

    #header .header-nav .vh-mobile-header .top-logo > a {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-width: 0;
    }

    #header .header-nav .vh-mobile-header .top-logo > a > img {
        display: block;
        width: auto !important;
        max-width: 100% !important;
        max-height: 44px !important;
        object-fit: contain;
    }

    /* Leave a little breathing room around the logo so action icons can never
       visually crowd or cover it on narrow mobile headers. */
    #header .header-nav .vh-mobile-header .top-logo {
        padding-left: 4px !important;
        padding-right: 4px !important;
        overflow: hidden;
    }

    #header .header-nav .vh-mobile-header .top-logo > a > img {
        max-width: calc(100% - 8px) !important;
    }

    #header .vh-mobile-header-actions {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 4px;
        min-width: 0;
    }

    /* Neutral circular action buttons keep the header legible and light. */
    #header .vh-mobile-wishlist,
    #header #_mobile_user_info .user-info > a:not(.logout),
    #header #_mobile_cart .blockcart .header {
        position: relative;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        flex: 0 0 31px;
        width: 31px !important;
        height: 31px !important;
        min-width: 31px;
        min-height: 31px;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid var(--vh-border, #d8dac7);
        border-radius: 50% !important;
        background: #fff !important;
        color: var(--vh-brand-dark, #44571f) !important;
        box-shadow: none !important;
        line-height: 1 !important;
        text-decoration: none !important;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }

    #header .vh-mobile-wishlist:hover,
    #header .vh-mobile-wishlist:focus,
    #header #_mobile_user_info .user-info > a:not(.logout):hover,
    #header #_mobile_user_info .user-info > a:not(.logout):focus,
    #header #_mobile_cart .blockcart .header:hover,
    #header #_mobile_cart .blockcart .header:focus-within {
        border-color: var(--vh-brand, #5f752e);
        background: var(--vh-brand-soft, #eef1df) !important;
        color: var(--vh-brand-dark, #44571f) !important;
        outline: none;
    }

    #header .vh-mobile-wishlist .material-icons,
    #header #_mobile_user_info .material-icons {
        width: auto;
        height: auto;
        margin: 0 !important;
        font-size: 18px !important;
        line-height: 1 !important;
        color: currentColor !important;
    }

    /* Remove legacy float/margin rules now that the actions use flexbox. */
    #_mobile_user_info,
    #_mobile_cart {
        float: none !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #header #_mobile_user_info .user-info,
    #header #_mobile_cart .blockcart,
    #header #_mobile_cart .cart-preview {
        display: flex;
        align-items: center;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
    }

    #header #_mobile_cart .blockcart .header > a {
        position: absolute;
        inset: 0;
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        padding: 0 !important;
        color: inherit !important;
        text-decoration: none;
    }

    /* Use a true shopping-cart glyph instead of the old shopping-bag glyph. */
    #header #_mobile_cart .cart-preview a::before {
        content: "\f07a" !important;
        display: block;
        font-family: "FontAwesome" !important;
        font-size: 16px !important;
        font-weight: normal;
        line-height: 1 !important;
        color: currentColor !important;
    }

    /* Numeric cart badge remains visible and updates with the cart module. */
    #header #_mobile_cart .cart-preview a .text,
    #header #_mobile_cart .cart-preview a .vh-cart-count-label {
        display: none !important;
    }

    #header #_mobile_cart .cart-preview a .cart-qty,
    #header #_mobile_cart .cart-preview a .cart-products-count,
    #header #_mobile_cart .cart-preview a .vh-cart-count {
        display: block !important;
    }

    #header #_mobile_cart .cart-preview a .cart-products-count {
        position: absolute;
        top: -5px;
        right: -5px;
        min-width: 16px;
        height: 16px;
        padding: 0 3px;
        border: 2px solid #fff;
        border-radius: 999px;
        background: var(--vh-brand, #5f752e);
        color: #fff !important;
        font-size: 9px;
        font-weight: 700;
        line-height: 12px;
        text-align: center;
        box-sizing: border-box;
    }

}

/* Keep action sizing practical on very narrow phones. */
@media (max-width: 360px) {
    #header .header-nav .vh-mobile-header {
        grid-template-columns: 36px minmax(0, 1fr) auto;
        column-gap: 4px;
    }

    #header .vh-mobile-header-actions {
        gap: 3px;
    }

    #header .vh-mobile-wishlist,
    #header #_mobile_user_info .user-info > a:not(.logout),
    #header #_mobile_cart .blockcart .header {
        flex-basis: 28px;
        width: 28px !important;
        height: 28px !important;
        min-width: 28px;
        min-height: 28px;
    }

    #header .vh-mobile-wishlist .material-icons,
    #header #_mobile_user_info .material-icons {
        font-size: 17px !important;
    }

    #header #_mobile_cart .cart-preview a::before {
        font-size: 15px !important;
    }
}

/* ======================================================================
   Veridian Health 2.5.3 — mobile product image + swipe refinement
   Removes the visible blank band below catalogue images by returning the
   product thumbnail to normal document flow. The generated PrestaShop image
   dimensions now define the media height, so the description starts directly
   beneath the image on mobile and desktop.
   ====================================================================== */
.product-miniature .thumbnail-top,
#products .product-miniature .thumbnail-top,
.featured-products .product-miniature .thumbnail-top,
.new-products .product-miniature .thumbnail-top,
.product-accessories .product-miniature .thumbnail-top {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    background: #fff !important;
}

/* Keep the image link in normal flow. This specifically supersedes both the
   Classic `height: calc(100% - 70px)` rule and the earlier absolute-frame
   workaround, preventing any unoccupied strip between media and description. */
.product-miniature .thumbnail-container .thumbnail-top > a.thumbnail.product-thumbnail,
.product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail,
#products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail,
.featured-products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail,
.new-products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail,
.product-accessories .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    line-height: 0;
    background: #fff !important;
}

.product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail picture,
#products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail picture,
.featured-products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail picture,
.new-products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail picture,
.product-accessories .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail picture {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0;
}

.product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail img,
#products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail img,
.featured-products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail img,
.new-products .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail img,
.product-accessories .product-miniature .thumbnail-container .thumbnail-top > .product-thumbnail img {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
}

/* Description is part of the same card flow and therefore sits immediately
   after the rendered product image, with no artificial spacer in between. */
.product-miniature .product-description,
#products .product-miniature .product-description,
.featured-products .product-miniature .product-description,
.new-products .product-miniature .product-description,
.product-accessories .product-miniature .product-description {
    margin-top: 0 !important;
    border-top: 0 !important;
}

/* Product carousels on phones are gesture-first: arrows disappear, while Owl
   keeps its native touch drag/swipe behaviour. Desktop/tablet navigation is
   untouched. */
@media (max-width: 767.98px) {
    .product-slider.owl-theme .owl-controls .owl-buttons,
    .catproduct-slider.owl-theme .owl-controls .owl-buttons,
    .featured-products .owl-theme .owl-controls .owl-buttons,
    .new-products .owl-theme .owl-controls .owl-buttons,
    .product-accessories .owl-theme .owl-controls .owl-buttons {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    .product-slider.owl-carousel,
    .catproduct-slider.owl-carousel {
        touch-action: pan-y pinch-zoom;
        -webkit-tap-highlight-color: transparent;
    }

    .product-slider.owl-carousel .owl-wrapper-outer,
    .catproduct-slider.owl-carousel .owl-wrapper-outer {
        overflow: hidden !important;
    }
}

/* ================================================================
   Veridian Health 2.5.4 — mobile brand carousel controls
   Keep the brand strip gesture-first on phones. Owl can still drag/swipe,
   but no previous/next controls are shown below or around the Brands area.
   ================================================================ */
@media (max-width: 767.98px) {
    .brand-section .owl-controls,
    .brand-section .owl-controls.clickable,
    .brand-section .owl-buttons,
    .brands-slider .owl-controls,
    .brands-slider .owl-controls.clickable,
    .brands-slider .owl-buttons,
    #brands-slider + .owl-controls,
    #brands-slider ~ .owl-controls {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    .brands-slider.owl-carousel {
        touch-action: pan-y pinch-zoom;
        -webkit-tap-highlight-color: transparent;
    }
}

/* =========================================================
   Veridian Health 2.5.5 — minimal scroll-to-top control
   Keeps the tap/click target usable while rendering only a
   small, clean chevron with no text, box, circle or fill.
   ========================================================= */
.scrollTop,
#toTop {
    width: 30px !important;
    height: 30px !important;
    min-height: 0 !important;
    line-height: 30px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-decoration: none !important;
    text-transform: none !important;
    text-indent: 0 !important;
    font-size: 0 !important;
    color: transparent !important;
    overflow: visible !important;
    opacity: .72;
}

.scrollTop span,
.scrollTop span i,
#toTop > span,
#toTopHover {
    font-size: 0 !important;
    color: transparent !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.scrollTop::before,
#toTop::before,
#toTopHover::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 9px !important;
    height: 9px !important;
    margin: 0 !important;
    border: solid #5f752e !important;
    border-width: 1.75px 1.75px 0 0 !important;
    background: transparent !important;
    transform: translate(-50%, -35%) rotate(-45deg) !important;
    -webkit-transform: translate(-50%, -35%) rotate(-45deg) !important;
    opacity: 1 !important;
    line-height: 1 !important;
}

.scrollTop:hover,
.scrollTop:focus,
.scrollTop:active,
.scrollTop:visited,
#toTop:hover,
#toTop:focus,
#toTop:active {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: transparent !important;
    opacity: 1;
    outline: none !important;
}

#toTopHover {
    width: 100% !important;
    height: 100% !important;
    opacity: 1 !important;
}

#toTop:hover #toTopHover {
    opacity: 1 !important;
}

/* Desktop position: discreetly tucked into the lower corner. */
.scrollTop,
#toTop {
    right: 18px !important;
    bottom: 28px !important;
}

/* Mobile: slightly smaller visual footprint and safe from phone UI edges. */
@media (max-width: 767px) {
    .scrollTop,
    #toTop {
        width: 28px !important;
        height: 28px !important;
        line-height: 28px !important;
        right: 12px !important;
        bottom: 18px !important;
    }

    .scrollTop::before,
    #toTop::before,
    #toTopHover::after {
        width: 8px !important;
        height: 8px !important;
        border-width: 1.5px 1.5px 0 0 !important;
    }
}

/* ======================================================================
   Veridian Health 2.5.6 — mobile menu + centred home-logo correction
   Keeps the far-left PrestaShop menu control in its own hit area while the
   logo remains truly centred and independently clickable back to the shop.
   ====================================================================== */
@media (max-width: 767.98px) {
    /* Equal outer tracks keep the logo centred on the viewport rather than
       merely centred in the space left over by the wider action group. */
    #header .header-nav .vh-mobile-header {
        position: relative;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(84px, 1.4fr) minmax(0, 1fr);
        align-items: center;
        width: 100%;
        min-height: 62px;
        column-gap: 0;
    }

    /* The menu owns only its left-side control area and always sits above
       neighbouring content, preventing the logo link from stealing taps. */
    #header .header-nav .vh-mobile-menu-toggle,
    #header .header-nav #menu-icon {
        position: relative;
        z-index: 4;
        justify-self: start;
        align-self: center;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 44px !important;
        height: 44px !important;
        min-width: 44px;
        min-height: 44px;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: var(--vh-ink, #26311d);
        cursor: pointer;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }

    #header .header-nav #menu-icon:hover,
    #header .header-nav #menu-icon:focus,
    #header .header-nav #menu-icon:active {
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: var(--vh-viridian, #5f752e);
        outline-offset: 2px;
    }

    #header .header-nav #menu-icon .material-icons {
        pointer-events: none;
    }

    /* Limit the home link to the centre track instead of stretching across
       the header. The image and its small padding remain a comfortable target. */
    #header .header-nav .vh-mobile-header .top-logo {
        position: relative;
        z-index: 2;
        justify-self: stretch;
        width: 100% !important;
        min-width: 0;
        overflow: hidden;
        pointer-events: none;
    }

    #header .header-nav .vh-mobile-header .top-logo > a {
        position: relative;
        z-index: 2;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: auto !important;
        max-width: 100%;
        min-height: 44px;
        margin: 0 auto !important;
        padding: 4px 6px;
        pointer-events: auto;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }

    #header .header-nav .vh-mobile-header .top-logo > a > img {
        display: block;
        width: auto !important;
        max-width: 100% !important;
        max-height: 44px !important;
        pointer-events: none;
    }

    #header .vh-mobile-header-actions {
        position: relative;
        z-index: 3;
        justify-self: end;
    }

    /* Keep the opened mobile navigation above the page content. PrestaShop's
       native theme.js remains solely responsible for showing/hiding it. */
    #mobile_top_menu_wrapper {
        z-index: 1000;
    }
}

@media (max-width: 360px) {
    #header .header-nav .vh-mobile-header {
        grid-template-columns: minmax(0, 1fr) minmax(76px, 1.25fr) minmax(0, 1fr);
    }
}

/* ==========================================================================
   Veridian Health 2.5.7 — storefront polish
   Address/footer labels are handled in Smarty templates. This block covers
   product quantity controls, reassurance spacing and hero slide transitions.
   ========================================================================== */

/* Product quantity: horizontal − [quantity] + layout on desktop and mobile. */
#product .bootstrap-touchspin.vh-horizontal-quantity,
.quickview .bootstrap-touchspin.vh-horizontal-quantity {
    display: inline-flex !important;
    align-items: stretch;
    width: auto !important;
    min-width: 148px;
    min-height: 46px;
    overflow: hidden;
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius-sm) !important;
    background: var(--vh-surface) !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted,
.quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted {
    order: 2;
    flex: 0 0 64px;
    width: 64px !important;
    min-width: 64px !important;
    height: 46px;
    min-height: 46px;
    margin: 0 !important;
    padding: 0 6px !important;
    border: 0 !important;
    border-left: 1px solid var(--vh-border) !important;
    border-right: 1px solid var(--vh-border) !important;
    border-radius: 0 !important;
    text-align: center;
    box-shadow: none !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
    position: static !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--vh-surface-alt) !important;
    color: var(--vh-ink) !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease {
    order: 1;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
    order: 3;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease:hover,
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase:hover,
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease:focus,
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase:focus,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease:hover,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase:hover,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease:focus,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase:focus {
    background: var(--vh-brand-soft) !important;
    color: var(--vh-brand-dark) !important;
}

/* Keep policy/reassurance rows evenly spaced and readable at every breakpoint. */
body#product #block-reassurance ul,
body#product .blockreassurance_product {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

body#product #block-reassurance li,
body#product #block-reassurance .block-reassurance-item,
body#product .blockreassurance_product > div {
    margin: 0 !important;
    padding: 0 !important;
}

body#product #block-reassurance .block-reassurance-item,
body#product .blockreassurance_product > div {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 36px;
    line-height: 1.45;
}

body#product #block-reassurance .block-reassurance-item img,
body#product .blockreassurance_product > div img {
    flex: 0 0 auto;
    margin: 0 !important;
}

body#product #block-reassurance .block-reassurance-item span,
body#product .blockreassurance_product > div p,
body#product .blockreassurance_product > div span {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.45;
}

/* Hero: soften every 1→2, 2→3 and 3→1 transition with blur + eased motion. */
.image-slider-block .carousel-inner > .carousel-item {
    -webkit-transition: -webkit-transform .9s cubic-bezier(.22,.61,.36,1),
                        -webkit-filter .6s ease,
                        opacity .6s ease !important;
    transition: transform .9s cubic-bezier(.22,.61,.36,1),
                filter .6s ease,
                opacity .6s ease !important;
    will-change: transform, filter, opacity;
}

.image-slider-block .carousel-item.vh-slide-out {
    -webkit-filter: blur(7px);
    filter: blur(7px);
    opacity: .72;
}

.image-slider-block .carousel-item.vh-slide-in {
    -webkit-filter: blur(8px);
    filter: blur(8px);
    opacity: .72;
}

.image-slider-block .carousel-item.vh-slide-in.vh-slide-in-focus {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
}

@media (max-width: 767.98px) {
    #product .bootstrap-touchspin.vh-horizontal-quantity,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity {
        min-width: 140px;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted {
        flex-basis: 58px;
        width: 58px !important;
        min-width: 58px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
        flex-basis: 41px;
        width: 41px !important;
    }

    body#product #block-reassurance ul,
    body#product .blockreassurance_product {
        gap: 10px;
    }

    body#product #block-reassurance .block-reassurance-item,
    body#product .blockreassurance_product > div {
        gap: 10px;
    }

    .image-slider-block .carousel-inner > .carousel-item {
        -webkit-transition-duration: .75s, .5s, .5s !important;
        transition-duration: .75s, .5s, .5s !important;
    }

    .image-slider-block .carousel-item.vh-slide-out,
    .image-slider-block .carousel-item.vh-slide-in {
        -webkit-filter: blur(5px);
        filter: blur(5px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .image-slider-block .carousel-inner > .carousel-item {
        -webkit-filter: none !important;
        filter: none !important;
        opacity: 1 !important;
    }
}


/* ========================================================================== 
   Veridian Health 2.5.9 — product action + desktop parity fixes
   - Wishlist → − [Quantity] + → Add to cart on desktop and mobile
   - Literal, always-visible quantity symbols (no icon-font dependency)
   - Desktop reassurance/policy layout matches mobile
   - Hero blur/focus transition is rendered on the slide image itself so the
     effect remains visible on desktop during Bootstrap's 3D slide transform.
   ========================================================================== */

/* Purchase row: one deterministic order on every breakpoint. */
#product .product-add-to-cart .product-quantity,
.quickview .product-quantity {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100%;
    gap: 8px !important;
    margin: 0 !important;
}

#product .product-add-to-cart .product-quantity > .qty,
.quickview .product-quantity > .qty {
    order: 2;
    display: flex;
    flex: 0 0 auto;
    margin: 0 !important;
}

#product .product-add-to-cart .product-quantity > .add,
.quickview .product-quantity > .add {
    order: 3;
    display: flex;
    align-items: stretch;
    flex: 1 1 150px;
    min-width: 140px;
    margin: 0 !important;
}

#product .product-add-to-cart .product-quantity > .add .add-to-cart,
.quickview .product-quantity > .add .add-to-cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    margin: 0 !important;
    white-space: nowrap;
}

/* Wishlist is moved to the first top-level position by custom.js. These rules
   make the heart use the same height and spacing as the quantity control. */
#product .product-quantity .wishlist-button,
#product .product-quantity .wishlist-button-add,
#product .product-quantity .wishlist-button-product,
.quickview .product-quantity .wishlist-button,
.quickview .product-quantity .wishlist-button-add,
.quickview .product-quantity .wishlist-button-product {
    position: static !important;
    inset: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 46px !important;
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
}

/* Normalized TouchSpin: force a clean − [Quantity] + control. */
#product .bootstrap-touchspin.vh-horizontal-quantity,
.quickview .bootstrap-touchspin.vh-horizontal-quantity {
    flex: 0 0 auto;
    width: 150px !important;
    min-width: 150px !important;
    height: 46px !important;
    min-height: 46px !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted,
.quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted {
    flex: 0 0 64px !important;
    width: 64px !important;
    min-width: 64px !important;
    height: 44px !important;
    min-height: 44px !important;
    font-size: 15px !important;
    font-weight: 600;
    color: var(--vh-ink, #26311d) !important;
    -moz-appearance: textfield;
}

#product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted::-webkit-inner-spin-button,
#product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted::-webkit-outer-spin-button,
.quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted::-webkit-inner-spin-button,
.quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
    flex: 0 0 42px !important;
    width: 42px !important;
    min-width: 42px !important;
    height: 44px !important;
    min-height: 44px !important;
    color: var(--vh-ink, #26311d) !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease > i,
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase > i,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease > i,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase > i {
    display: none !important;
}

#product .vh-quantity-symbol,
.quickview .vh-quantity-symbol {
    position: static !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 22px !important;
    font-style: normal !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    color: var(--vh-ink, #26311d) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Before JS finishes, render the same literal symbols through CSS so there is
   no flash of invisible Material Icon arrows. */
#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down > i,
#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up > i,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down > i,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up > i {
    display: none !important;
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down::before,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down::before {
    content: "\2212";
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up::before,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up::before {
    content: "+";
}

#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down::before,
#product .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up::before,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-down::before,
.quickview .bootstrap-touchspin:not(.vh-horizontal-quantity) .bootstrap-touchspin-up::before {
    position: static !important;
    display: block !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    color: var(--vh-ink, #26311d) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Reassurance/policies: desktop deliberately uses the exact compact mobile
   structure, spacing and icon/text alignment. */
body#product #block-reassurance,
body#product .blockreassurance_product {
    width: 100% !important;
    margin-top: 25px !important;
    padding: 0 !important;
    background: transparent !important;
}

body#product #block-reassurance ul,
body#product .blockreassurance_product {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
}

body#product #block-reassurance ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body#product #block-reassurance li,
body#product .blockreassurance_product > div {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body#product #block-reassurance .block-reassurance-item,
body#product .blockreassurance_product > div {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.45 !important;
}

body#product #block-reassurance .block-reassurance-item img,
body#product .blockreassurance_product > div img {
    flex: 0 0 25px !important;
    width: 25px !important;
    max-width: 25px !important;
    height: auto !important;
    margin: 0 !important;
}

body#product #block-reassurance .block-reassurance-item span,
body#product .blockreassurance_product > div p,
body#product .blockreassurance_product > div span {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.45 !important;
}

/* Hero transition: blur the image child rather than the translating carousel
   item. This avoids desktop GPU/3D transform compositing dropping the filter. */
.image-slider-block .carousel-item.vh-slide-out,
.image-slider-block .carousel-item.vh-slide-in,
.image-slider-block .carousel-item.vh-slide-in.vh-slide-in-focus {
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
}

.image-slider-block .carousel-item figure {
    overflow: hidden;
}

.image-slider-block .carousel-item figure > img {
    -webkit-transition: -webkit-filter .65s ease, opacity .65s ease, -webkit-transform .9s cubic-bezier(.22,.61,.36,1) !important;
    transition: filter .65s ease, opacity .65s ease, transform .9s cubic-bezier(.22,.61,.36,1) !important;
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    will-change: filter, opacity, transform;
}

.image-slider-block .carousel-item.vh-slide-out figure > img {
    -webkit-filter: blur(7px) !important;
    filter: blur(7px) !important;
    opacity: .82 !important;
    -webkit-transform: scale(1.012) !important;
    transform: scale(1.012) !important;
}

.image-slider-block .carousel-item.vh-slide-in figure > img {
    -webkit-filter: blur(9px) !important;
    filter: blur(9px) !important;
    opacity: .78 !important;
    -webkit-transform: scale(1.018) !important;
    transform: scale(1.018) !important;
}

.image-slider-block .carousel-item.vh-slide-in.vh-slide-in-focus figure > img {
    -webkit-filter: blur(0) !important;
    filter: blur(0) !important;
    opacity: 1 !important;
    -webkit-transform: scale(1) !important;
    transform: scale(1) !important;
}

/* Explicit desktop values: the effect is intentionally at least as visible as
   mobile, while the longer easing keeps 1→2, 2→3 and 3→1 transitions smooth. */
@media (min-width: 768px) {
    .image-slider-block .carousel-item figure > img {
        -webkit-transition-duration: .8s, .8s, .95s !important;
        transition-duration: .8s, .8s, .95s !important;
    }

    .image-slider-block .carousel-item.vh-slide-out figure > img {
        -webkit-filter: blur(9px) !important;
        filter: blur(9px) !important;
    }

    .image-slider-block .carousel-item.vh-slide-in figure > img {
        -webkit-filter: blur(10px) !important;
        filter: blur(10px) !important;
    }
}

@media (max-width: 767.98px) {
    #product .product-add-to-cart .product-quantity,
    .quickview .product-quantity {
        gap: 6px !important;
    }

    #product .product-quantity .wishlist-button,
    #product .product-quantity .wishlist-button-add,
    #product .product-quantity .wishlist-button-product,
    .quickview .product-quantity .wishlist-button,
    .quickview .product-quantity .wishlist-button-add,
    .quickview .product-quantity .wishlist-button-product {
        flex-basis: 42px !important;
        width: 42px !important;
        min-width: 42px !important;
        max-width: 42px !important;
        height: 44px !important;
        min-height: 44px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity {
        width: 132px !important;
        min-width: 132px !important;
        height: 44px !important;
        min-height: 44px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted {
        flex-basis: 52px !important;
        width: 52px !important;
        min-width: 52px !important;
        height: 42px !important;
        min-height: 42px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
        flex-basis: 40px !important;
        width: 40px !important;
        min-width: 40px !important;
        height: 42px !important;
        min-height: 42px !important;
    }

    #product .product-add-to-cart .product-quantity > .add,
    .quickview .product-quantity > .add {
        flex-basis: 132px;
        min-width: 132px;
    }

    #product .product-add-to-cart .product-quantity > .add .add-to-cart,
    .quickview .product-quantity > .add .add-to-cart {
        min-height: 44px;
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media (max-width: 359.98px) {
    #product .product-add-to-cart .product-quantity,
    .quickview .product-quantity {
        gap: 4px !important;
    }

    #product .product-quantity .wishlist-button,
    #product .product-quantity .wishlist-button-add,
    #product .product-quantity .wishlist-button-product,
    .quickview .product-quantity .wishlist-button,
    .quickview .product-quantity .wishlist-button-add,
    .quickview .product-quantity .wishlist-button-product {
        flex-basis: 40px !important;
        width: 40px !important;
        min-width: 40px !important;
        max-width: 40px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity {
        width: 124px !important;
        min-width: 124px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted {
        flex-basis: 48px !important;
        width: 48px !important;
        min-width: 48px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
        flex-basis: 38px !important;
        width: 38px !important;
        min-width: 38px !important;
    }

    #product .product-add-to-cart .product-quantity > .add,
    .quickview .product-quantity > .add {
        flex-basis: 118px;
        min-width: 118px;
    }

    #product .product-add-to-cart .product-quantity > .add .add-to-cart,
    .quickview .product-quantity > .add .add-to-cart {
        padding-left: 7px;
        padding-right: 7px;
        font-size: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .image-slider-block .carousel-item figure > img {
        -webkit-transition: none !important;
        transition: none !important;
        -webkit-filter: none !important;
        filter: none !important;
        opacity: 1 !important;
        -webkit-transform: none !important;
        transform: none !important;
    }
}

/* ========================================================================== 
   Veridian Health 2.6.0 — exact mobile/desktop product parity
   The desktop product purchase and policy areas deliberately use the same
   proportions, order, spacing and visual treatment as the mobile layout.
   ========================================================================== */

/* Quantity heading sits above the complete action row on every breakpoint. */
#product .product-add-to-cart > .control-label,
.quickview .product-add-to-cart > .control-label {
    display: block !important;
    width: 100% !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
}

/* One shared purchase row for desktop + mobile:
   wishlist | minus / quantity / plus | add to cart. */
#product .product-add-to-cart .product-quantity.vh-product-purchase-row,
#product .product-add-to-cart .product-quantity,
.quickview .product-quantity.vh-product-purchase-row,
.quickview .product-quantity {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* The displayProductActions hook is now first in the template so the wishlist
   cannot jump back behind the quantity or cart button on desktop refreshes. */
#product .product-quantity > .vh-product-actions-hook,
.quickview .product-quantity > .vh-product-actions-hook {
    order: 1 !important;
    display: flex !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: stretch !important;
    justify-content: stretch !important;
}

#product .product-quantity > .qty,
.quickview .product-quantity > .qty {
    order: 2 !important;
    display: flex !important;
    flex: 0 0 132px !important;
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
}

#product .product-quantity > .add,
.quickview .product-quantity > .add {
    order: 3 !important;
    display: flex !important;
    align-items: stretch !important;
    flex: 1 1 132px !important;
    min-width: 132px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
}

#product .product-quantity > .add .add-to-cart,
.quickview .product-quantity > .add .add-to-cart {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    white-space: nowrap !important;
}

/* Wishlist square — identical sizing and placement on desktop and mobile. */
#product .vh-product-actions-hook .wishlist-button,
#product .vh-product-actions-hook .wishlist-button-add,
#product .vh-product-actions-hook .wishlist-button-product,
#product .product-quantity > .wishlist-button,
#product .product-quantity > .wishlist-button-add,
#product .product-quantity > .wishlist-button-product,
.quickview .vh-product-actions-hook .wishlist-button,
.quickview .vh-product-actions-hook .wishlist-button-add,
.quickview .vh-product-actions-hook .wishlist-button-product,
.quickview .product-quantity > .wishlist-button,
.quickview .product-quantity > .wishlist-button-add,
.quickview .product-quantity > .wishlist-button-product {
    position: static !important;
    inset: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius-sm) !important;
    background: var(--vh-surface-alt) !important;
    color: var(--vh-ink-soft) !important;
    box-shadow: none !important;
    transform: none !important;
}

#product .vh-product-actions-hook .wishlist-button i,
#product .vh-product-actions-hook .wishlist-button-add i,
#product .vh-product-actions-hook .wishlist-button-product i,
#product .vh-product-actions-hook .wishlist-button svg,
#product .vh-product-actions-hook .wishlist-button-add svg,
#product .vh-product-actions-hook .wishlist-button-product svg,
.quickview .vh-product-actions-hook .wishlist-button i,
.quickview .vh-product-actions-hook .wishlist-button-add i,
.quickview .vh-product-actions-hook .wishlist-button-product i,
.quickview .vh-product-actions-hook .wishlist-button svg,
.quickview .vh-product-actions-hook .wishlist-button-add svg,
.quickview .vh-product-actions-hook .wishlist-button-product svg {
    margin: 0 !important;
    width: 22px !important;
    height: 22px !important;
    font-size: 22px !important;
}

/* Force the quantity control to exactly match the mobile proportions on
   desktop too: 40px minus | 52px value | 40px plus = 132px. */
#product .bootstrap-touchspin.vh-horizontal-quantity,
.quickview .bootstrap-touchspin.vh-horizontal-quantity {
    display: inline-flex !important;
    align-items: stretch !important;
    flex: 0 0 132px !important;
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--vh-border) !important;
    border-radius: var(--vh-radius-sm) !important;
    background: var(--vh-surface) !important;
    box-shadow: none !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted,
.quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted {
    order: 2 !important;
    flex: 0 0 52px !important;
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 4px !important;
    border: 0 !important;
    border-left: 1px solid var(--vh-border) !important;
    border-right: 1px solid var(--vh-border) !important;
    border-radius: 0 !important;
    background: var(--vh-surface) !important;
    color: var(--vh-ink) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 42px !important;
    text-align: center !important;
    box-shadow: none !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 40px !important;
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--vh-surface-alt) !important;
    color: var(--vh-ink) !important;
    box-shadow: none !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease {
    order: 1 !important;
}

#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
    order: 3 !important;
}

/* Never depend on Material Icons for minus/plus visibility. */
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease > i,
#product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase > i,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease > i,
.quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase > i {
    display: none !important;
}

#product .vh-quantity-symbol,
.quickview .vh-quantity-symbol {
    position: static !important;
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--vh-ink) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 22px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Availability always starts on its own line directly beneath the action row,
   matching the supplied mobile reference. */
#product .product-add-to-cart #product-availability,
.quickview .product-add-to-cart #product-availability {
    display: block !important;
    width: fit-content !important;
    margin: 11px 0 0 !important;
    padding: 0 !important;
    line-height: 1.25 !important;
}

#product .product-add-to-cart #product-availability .material-icons,
.quickview .product-add-to-cart #product-availability .material-icons {
    margin: 0 6px 0 0 !important;
    vertical-align: middle !important;
}

/* Security / Delivery / Return policy rows. The legacy reassurance module used
   by the shop exposes .block-title + p; render those as the exact same
   two-column mobile composition at desktop widths too. */
body#product .blockreassurance_product {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    margin: 30px 0 0 !important;
    padding: 0 !important;
    gap: 24px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body#product .blockreassurance_product > div {
    display: grid !important;
    grid-template-columns: minmax(82px, 28%) minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    column-gap: 18px !important;
    row-gap: 0 !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* The supplied mobile reference does not show reassurance icons. */
body#product .blockreassurance_product > div > .item-product,
body#product .blockreassurance_product > div > .item-product img,
body#product .blockreassurance_product > div > img,
body#product .blockreassurance_product > div .icon-img {
    display: none !important;
}

body#product .blockreassurance_product > div > .block-title,
body#product .blockreassurance_product > div .block-title {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: stretch !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #1f211d !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-align: center !important;
    text-transform: none !important;
}

body#product .blockreassurance_product > div > p,
body#product .blockreassurance_product > div > .block-description,
body#product .blockreassurance_product > div > .item-product-description {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #1f211d !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

/* Equivalent fallback for newer reassurance markup. */
body#product #block-reassurance {
    width: 100% !important;
    margin: 30px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body#product #block-reassurance ul {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    list-style: none !important;
}

body#product #block-reassurance li,
body#product #block-reassurance .block-reassurance-item {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body#product #block-reassurance .block-reassurance-item.vh-policy-item,
body#product #block-reassurance .block-reassurance-item:has(.block-title) {
    display: grid !important;
    grid-template-columns: minmax(82px, 28%) minmax(0, 1fr) !important;
    column-gap: 18px !important;
    align-items: center !important;
}

body#product #block-reassurance .block-reassurance-item img,
body#product #block-reassurance .block-reassurance-item .icon-img,
body#product #block-reassurance .block-reassurance-item .item-product {
    display: none !important;
}

body#product #block-reassurance .block-reassurance-item .block-title {
    grid-column: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #1f211d !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-align: center !important;
}

body#product #block-reassurance .block-reassurance-item p,
body#product #block-reassurance .block-reassurance-item .block-description,
body#product #block-reassurance .block-reassurance-item .item-product-description {
    grid-column: 2 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #1f211d !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

/* Desktop explicitly inherits the same values rather than restoring the theme's
   older inline-block purchase row or wide reassurance cards. */
@media (min-width: 768px) {
    #product .product-add-to-cart .product-quantity.vh-product-purchase-row,
    #product .product-add-to-cart .product-quantity,
    .quickview .product-quantity.vh-product-purchase-row,
    .quickview .product-quantity {
        display: flex !important;
        gap: 6px !important;
    }

    #product .product-quantity > .vh-product-actions-hook,
    .quickview .product-quantity > .vh-product-actions-hook {
        flex-basis: 42px !important;
        width: 42px !important;
        min-width: 42px !important;
        max-width: 42px !important;
        height: 44px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity {
        flex-basis: 132px !important;
        width: 132px !important;
        min-width: 132px !important;
        max-width: 132px !important;
        height: 44px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted {
        flex-basis: 52px !important;
        width: 52px !important;
        min-width: 52px !important;
        max-width: 52px !important;
        height: 42px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
        flex-basis: 40px !important;
        width: 40px !important;
        min-width: 40px !important;
        max-width: 40px !important;
        height: 42px !important;
    }

    body#product .blockreassurance_product,
    body#product #block-reassurance ul {
        gap: 24px !important;
    }
}

/* Preserve small-screen fit without changing the visual order. */
@media (max-width: 359.98px) {
    #product .product-add-to-cart .product-quantity.vh-product-purchase-row,
    #product .product-add-to-cart .product-quantity,
    .quickview .product-quantity.vh-product-purchase-row,
    .quickview .product-quantity {
        gap: 4px !important;
    }

    #product .product-quantity > .vh-product-actions-hook,
    .quickview .product-quantity > .vh-product-actions-hook,
    #product .vh-product-actions-hook .wishlist-button,
    #product .vh-product-actions-hook .wishlist-button-add,
    #product .vh-product-actions-hook .wishlist-button-product,
    .quickview .vh-product-actions-hook .wishlist-button,
    .quickview .vh-product-actions-hook .wishlist-button-add,
    .quickview .vh-product-actions-hook .wishlist-button-product {
        flex-basis: 40px !important;
        width: 40px !important;
        min-width: 40px !important;
        max-width: 40px !important;
    }

    #product .product-quantity > .qty,
    .quickview .product-quantity > .qty,
    #product .bootstrap-touchspin.vh-horizontal-quantity,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity {
        flex-basis: 124px !important;
        width: 124px !important;
        min-width: 124px !important;
        max-width: 124px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity #quantity_wanted {
        flex-basis: 48px !important;
        width: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
    }

    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    #product .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-decrease,
    .quickview .bootstrap-touchspin.vh-horizontal-quantity .vh-quantity-increase {
        flex-basis: 38px !important;
        width: 38px !important;
        min-width: 38px !important;
        max-width: 38px !important;
    }

    #product .product-quantity > .add,
    .quickview .product-quantity > .add {
        min-width: 118px !important;
    }

    body#product .blockreassurance_product > div,
    body#product #block-reassurance .block-reassurance-item.vh-policy-item,
body#product #block-reassurance .block-reassurance-item:has(.block-title) {
        grid-template-columns: minmax(76px, 28%) minmax(0, 1fr) !important;
        column-gap: 14px !important;
    }
}

/* ==========================================================================\n   Veridian Health 2.6.19 — mobile product-card cart tap reliability\n   Keep Owl Carousel swipe gestures on the card, but make the cart form/button\n   a dedicated touch target so mobile browsers never treat Add to cart as drag.\n   ========================================================================== */
@media (max-width: 767.98px), (hover: none), (pointer: coarse) {
    .product-miniature .js-product-card-cart-form,
    .product-miniature .js-product-card-cart-form .add-to-cart {
        position: relative;
        z-index: 8;
        pointer-events: auto !important;
        touch-action: manipulation !important;
        -ms-touch-action: manipulation !important;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    }

    .product-miniature .js-product-card-cart-form .add-to-cart {
        cursor: pointer;
    }
}


/* ==========================================================================
   Veridian Health 2.6.20 — homepage product-banner Add to cart mobile fix
   Target only the Add to cart control directly under products inside the
   homepage Owl product banner. Keep it above any card/image interaction layer.
   ========================================================================== */
@media (max-width: 767.98px), (hover: none), (pointer: coarse) {
    .featured-products .product-slider .product-miniature .vh-product-card-actions,
    .featured-products .product-slider .product-miniature .vh-product-card-actions .add,
    .featured-products .product-slider .product-miniature .js-product-card-cart-form,
    .featured-products .product-slider .product-miniature .js-product-card-cart-form .add-to-cart {
        position: relative !important;
        z-index: 20 !important;
        pointer-events: auto !important;
    }

    .featured-products .product-slider .product-miniature .js-product-card-cart-form .add-to-cart {
        touch-action: manipulation !important;
        -ms-touch-action: manipulation !important;
        -webkit-user-select: none;
        user-select: none;
    }
}

/* ========================================================================== 
   Veridian Health 2.6.50 — premium product sorting control
   Minimal luxury-store toolbar treatment shared by desktop and mobile.
   ========================================================================== */
#products #js-product-list-top.row.products-selection {
    min-height: 70px;
    margin: 0 0 28px !important;
    padding: 10px 0 !important;
    align-items: center;
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid var(--vh-border, #e2e5dc) !important;
    border-bottom: 1px solid var(--vh-border, #e2e5dc) !important;
    border-radius: 0 !important;
}

#products #js-product-list-top > .col-lg-7,
#products #js-product-list-top .sort-by-row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

#products #js-product-list-top .sort-by-row {
    width: 100%;
    margin: 0;
}

#products .products-sort-order.vh-products-sort {
    position: relative;
    flex: 0 0 292px;
    width: 292px;
    max-width: 292px;
    padding: 0;
}

#products .vh-products-sort .vh-sort-trigger,
#products .products-selection .products-sort-order.vh-products-sort .select-title {
    width: 100%;
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 8px 13px 8px 15px !important;
    color: var(--vh-ink, #1f211d) !important;
    background: #fff !important;
    border: 1px solid #d8dccf !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 2px rgba(31, 33, 29, .03) !important;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

#products .vh-products-sort .vh-sort-trigger:hover {
    border-color: #b7bdaa !important;
    background: #fdfefb !important;
}

#products .vh-products-sort.show .vh-sort-trigger,
#products .vh-products-sort .vh-sort-trigger:focus,
#products .vh-products-sort .vh-sort-trigger:focus-visible {
    outline: 0 !important;
    border-color: #7b8e50 !important;
    box-shadow: 0 0 0 3px rgba(95, 117, 46, .11) !important;
}

#products .vh-products-sort .vh-sort-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 1px;
}

#products .vh-products-sort .vh-sort-label {
    color: #7b8075;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .09em;
    text-transform: uppercase;
}

#products .vh-products-sort .vh-sort-value {
    display: block;
    overflow: hidden;
    color: var(--vh-ink, #1f211d);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#products .vh-products-sort .vh-sort-chevron {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f3f5ee;
    transition: transform .18s ease, background-color .18s ease;
}

#products .vh-products-sort .vh-sort-chevron .material-icons {
    margin: 0;
    color: #4d5543;
    font-size: 20px;
    line-height: 1;
}

#products .vh-products-sort.show .vh-sort-chevron,
#products .vh-products-sort .vh-sort-trigger[aria-expanded='true'] .vh-sort-chevron {
    transform: rotate(180deg);
    background: #ebefe2;
}

#products .products-sort-order.vh-products-sort .dropdown-menu.vh-sort-menu {
    top: calc(100% + 8px);
    right: 0;
    left: auto;
    width: 100%;
    min-width: 292px;
    margin: 0;
    padding: 8px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dde1d5;
    border-radius: 12px;
    box-shadow: 0 16px 38px rgba(31, 38, 22, .14);
    z-index: 1005;
}

#products .vh-products-sort .vh-sort-menu-title {
    padding: 8px 10px 7px;
    color: #8a8e84;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .09em;
    text-transform: uppercase;
}

#products .vh-products-sort .vh-sort-option,
#products .vh-products-sort .dropdown-menu .select-list.vh-sort-option {
    position: relative;
    min-height: 42px;
    display: flex;
    align-items: center;
    margin: 1px 0;
    padding: 10px 40px 10px 11px;
    color: #2b2f28 !important;
    background: transparent !important;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    text-decoration: none !important;
    transition: background-color .15s ease, color .15s ease;
}

#products .vh-products-sort .vh-sort-option:hover,
#products .vh-products-sort .vh-sort-option:focus {
    color: #253017 !important;
    background: #f3f5ee !important;
    outline: 0;
}

#products .vh-products-sort .vh-sort-option.current {
    color: #40551f !important;
    background: #edf1e5 !important;
    font-weight: 650;
}

#products .vh-products-sort .vh-sort-option.current::after {
    content: "\2713";
    position: absolute;
    top: 50%;
    right: 13px;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #5f752e;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
}

@media (max-width: 991.98px) {
    #products #js-product-list-top.row.products-selection {
        min-height: 0;
        padding: 10px 0 !important;
    }

    #products #js-product-list-top .sort-by-row {
        margin: 0 !important;
    }
}

@media (max-width: 767.98px) {
    #products #js-product-list-top.row.products-selection {
        margin-bottom: 22px !important;
        padding: 9px 0 !important;
    }

    #products #js-product-list-top > .col-lg-7 {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
    }

    #products .products-sort-order.vh-products-sort,
    #products .col-xs-8.col-sm-7.col-md-9.products-sort-order.vh-products-sort.dropdown {
        flex: 1 1 100%;
        width: 100%;
        max-width: none;
    }

    #products .vh-products-sort .vh-sort-trigger,
    #products .products-selection .products-sort-order.vh-products-sort .select-title {
        min-height: 52px;
        padding: 7px 10px 7px 13px !important;
        border-radius: 10px !important;
    }

    #products .products-sort-order.vh-products-sort .dropdown-menu.vh-sort-menu {
        right: 0;
        left: 0;
        width: 100%;
        min-width: 0;
        max-height: min(62vh, 430px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        border-radius: 10px;
        box-shadow: 0 14px 30px rgba(31, 38, 22, .16);
    }

    #products .vh-products-sort .vh-sort-option,
    #products .vh-products-sort .dropdown-menu .select-list.vh-sort-option {
        min-height: 44px;
        padding-top: 11px;
        padding-bottom: 11px;
    }
}
