div#sp-search {
    margin-top: 35px;
}

.usermenu {
    background: black;
}

.result-element {
    
    height: 40px;
    
}

div#sp-header-right {
    margin-top: 35px;
}

.menu-vertical .category-menu-title h4 {
    color: #000000;
    
}

i.fa.fa-list {
    font-size: 18px;
    color: #000;
}

#sp-header-top-bar a:hover {
    color: #d6b56e;
}

#sp-header-middle a:hover {
    color: #d6b56e;
}
.section-header .section-title h3:before, .sp-module.section-title .sp-module-title:before {
    border-color: #d6b56e;
}

#sp-left .sp-module, #sp-right .sp-module {
    border-top-color: #d6b56e;
}

.menu-vertical #megamenucss #js-mainnav.megamenu.blackwhite .js-megamenu li:hover a {
    background: #eaad0a !important;
}

.product-items div.product:hover, .product-items li.product:hover {
    border-top: 1px;
    border-bottom: 1px;
    border-left: 1px;
    border-right: 1px;
    border-style: solid;
    border-color: #eaad0a;
}

.category-content .category-items, .sp-megamenu-parent .sp-dropdown li.sp-menu-item >a:hover, .sp-megamenu-parent .sp-dropdown li.sp-menu-item.active>a, .productdetails .back-to-category .product-details:hover, .product-related-products .product-hover a:hover, .header-cart-content .cart-product-list a:hover {
    
    color: #eaad0a;
}

.productdetails .vm-product-details-container .addtocart-area span.addtocart-button:hover {
    background-color: #eaad0a;
}

.productdetails .product-next-previous .product-prev > a, .productdetails .product-next-previous .product-next > a {
    border: 1px solid #eaad0a;
    background-color: #fff;
    display: block;
    margin-right: -1px;
    padding: 3px 9px;
}

.productdetails .product-next-previous .product-prev .product-navbar, .productdetails .product-next-previous .product-next .product-navbar {
    color:  #eaad0a;
}

#sp-footer-middle a:hover {
   
    color: #eaad0a;
}

.mini-cart .show_cart a:hover, .header-cart-content .cart-style-2 .cart-count, .topbar-cart .cart-count, .menu-vertical .category-menu-title, .owl-carousel.owl-theme .owl-nav [class*=owl-]:hover, .countdown .countdown-section, .product .product-highlight .featured span, .product-items .product .product-image .product_image_gallery .owl-dot.active span, .product-toolbar .gridlist-toggle .grid-view.active, .product-toolbar .gridlist-toggle .grid-view:hover, .product-toolbar .gridlist-toggle .list-view.active, .product-toolbar .gridlist-toggle .grid-view:hover, .product-toolbar .gridlist-toggle .list-view.active, .product-toolbar .gridlist-toggle .list-view:hover {
  
    background-color: #eaad0a;
}

.sp-megamenu-parent >li >a:hover {
    background-color: #eaad0a;
}

.orderby-displaynumber .orderlistcontainer .orderlist {
    
    width: 200px;
    
}


.sp-megamenu-parent li.sp-menu-item.label-sale >a:after, .sp-megamenu-parent li.sp-menu-item.label-sale span:after {
    content: 'Akció';
    background: #60BF79;
}

.sp-megamenu-parent li.sp-menu-item.label-new >a:after, .sp-megamenu-parent li.sp-menu-item.label-new span:after {
    content: 'Új';
    background: #eae30a;
;
}

.sp-megamenu-parent li.sp-menu-item.label-new >a:before, .sp-megamenu-parent li.sp-menu-item.label-new span:before {
    border-right-color: #eae30a;
}

.menu-vertical #megamenucss #js-mainnav.megamenu.vertical.left .js-megamenu ul li .jux-label-menu.label-new:after {
    content: 'Új';
    background: #e51f28;
}

.menu-vertical #megamenucss #js-mainnav.megamenu.blackwhite .js-megamenu li:hover > a {
    color: #ffffff !important;
}

fieldset.vm-fieldset-tos {
    margin-top: 15px;
}

fieldset.vm-fieldset-adatvedelmitajekoztato {
    margin-top: 15px;
}

fieldset.vm-fieldset-linkadatvedelem {
    margin-bottom: 15px;
}

fieldset.vm-fieldset-customer-note {
    margin-bottom: 15px;
}

.cart_totals {
    background-color: #fafafa;
    border: 1px solid #515151;
    padding: 10px;
}

.alert {
    margin-bottom: 20px;
    background-color: rgb(255, 219, 219);
    color: rgb(136, 2, 2);
    padding: 15px;
    border-width: 1px;
    border-style: solid;
    border-color: rgb(214, 13, 13);
    border-image: initial;
    border-radius: 4px;
}

#czd-login .modal-dialog {
    width: 350px;
}

#czd-login .modal-content {
    border-radius: 0;
    padding: 20px 20px;
    color: #000;
}

#czd-login .modal-content .modal-body .forget-name-link {
    margin-top: 20px;
    color: #a0a0a0;
    font-size: 14px;
    clear: both;
}

#czd-login .modal-content .modal-body .title {
    margin: 0 0 30px 0;
    font-weight: 600;
    color: #428bca;
    text-align: center;
}

#czd-login .modal-content .modal-footer {
    color: #0ba2e8;
    font-size: 14px;
    padding: 0;
    text-align: left;
    border: none;
    line-height: 1;
}

#czd-login .modal-content button.close i {
    width: 36px;
    height: 36px;
    text-align: center;
    border: none;
    border-radius:none; 
    line-height: 30px;
}

#czd-login .modal-content button.close {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 1;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

/*  Ajax Search    */

input#search-area311 {
    height: 50px;
    line-height: 50px;  
}

input#suggestion-area311 {
    height: 50px;
    line-height: 50px;
}

#search-form311 #search-area-close311 {
    right: 60px;
  
}

#ajax-search-button311 {
    height: 50px;
    width: 50px;
    border: none;
    
    background: #0ba2e8;
    
}

#ajax-search-button311 .magnifier {
    
    height: 50px;
    width: 50px;
    
}


/*  Table start    */

table {
    width: 100%;
    max-width: 100%;
    border: 1px solid #d5d5d2;
    border-collapse: collapse
}

table caption {
    font-family: 'Tungsten A', 'Tungsten B', 'Arial Narrow', Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 2.954rem;
    line-height: 1;
    margin-bottom: .75em
}

table th {
    font-family: 'Gotham SSm A', 'Gotham SSm B', Verdana, sans-serif;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: .02em;
    font-size: .9353rem;
    padding: 1.2307em 1.0833em 1.0833em;
    line-height: 1.333;
    background-color: #eae9e6
}

table td, table th {
    text-align: left
}

table td {
    padding: .92307em 1em .7692em
}

table tbody tr:nth-of-type(even) {
    background-color: #f9f8f5
}

table tbody th {
    border-top: 1px solid #d5d5d2
}

table tbody td {
    border-top: 1px solid #d5d5d2
}

table.wdn_responsive_table thead th abbr {
    border-bottom: none
}

@media screen and (max-width:47.99em) {
    table.wdn_responsive_table td, table.wdn_responsive_table th {
        display: block
    }

    table.wdn_responsive_table thead tr {
        display: none
    }

    table.wdn_responsive_table tbody tr:first-child th {
        border-top-width: 0
    }

    table.wdn_responsive_table tbody tr:nth-of-type(even) {
        background-color: transparent
    }

    table.wdn_responsive_table tbody td {
        text-align: left
    }

    table.wdn_responsive_table tbody td:before {
        display: block;
        font-weight: 700;
        content: attr(data-header)
    }

    table.wdn_responsive_table tbody td:empty {
        display: none
    }

    table.wdn_responsive_table tbody td:nth-of-type(even) {
        background-color: #f9f8f5
    }
}

@media (min-width:48em) {
    table caption {
        font-size: 2.532rem
    }

    table th {
        padding: 1.2307em 1.2307em 1em;
        font-size: .802rem
    }

    table td {
        padding: .75em 1em .602em
    }
}

@media screen and (min-width:48em) {
    table.wdn_responsive_table thead th:not(:first-child) {
        text-align: center
    }

    table.wdn_responsive_table tbody td {
        text-align: center
    }

    table.wdn_responsive_table.flush-left td, table.wdn_responsive_table.flush-left thead th {
        text-align: left
    }
}

/*  Table END    */

.product-price .vm-price-value {
    display: block;
    padding-left: 0px;
}

span.PricebasePriceWithTax {
    text-decoration: line-through;
}

.PricebasePriceWithTax.vm-display.vm-price-value {
    float: left;
}

/* Usermenü */
.usermenu {
    background-color: #f73749;
}

/* Auth-aware menu visibility */
body.user-logged-in li.item-875,
body.user-logged-in li.item-895,
body.user-logged-in .offcanvas-menu li.item-875,
body.user-logged-in .offcanvas-menu li.item-895 {
    display: none !important;
}

body.user-guest li.item-877,
body.user-guest .offcanvas-menu li.item-877 {
    display: none !important;
}

.sp-module.penzvalto {
    vertical-align: top;
}

.product-sku {
    font-size: small;
}

.product-items .products .product-entry .product-content h3 {
    font-weight: bold;
    max-height: 38px;
    overflow: hidden;
    padding: 0;
    text-overflow: ellipsis;
    font-size: 14px;
    line-height: normal;
}

/* Shopcore visual refinements for VM category/product/cart */
.browse-view .orderby-displaynumber.product-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    margin: 8px 0 16px;
    padding: 12px 14px;
    background: #fafafa;
    border: 1px solid #e4e4e4;
}

.browse-view .gridlist-toggle a {
    display: inline-block;
    width: 34px;
    height: 34px;
    line-height: 34px;
    text-align: center;
    border: 1px solid #d8d8d8;
    border-radius: 2px;
    background: #fff;
}

.browse-view .gridlist-toggle a:hover,
.browse-view .gridlist-toggle a.active {
    border-color: #eaad0a;
    color: #eaad0a;
}

.browse-view .vm-order-list,
.browse-view .product-toolbar-pagination {
    margin: 0;
}

.browse-view .product-toolbar-pagination {
    margin-left: auto;
}

.category-view .product-items ul.products {
    list-style: none;
    margin: 0 -15px;
    padding: 0;
}

.category-view .product-items ul.products::after {
    content: "";
    display: table;
    clear: both;
}

.productdetails .spacer-buy-area {
    background: #fcfcfc;
    border: 1px solid #ececec;
    padding: 14px;
}

.productdetails .product-short-description {
    margin: 10px 0 14px;
    line-height: 1.55;
}

.productdetails .product-sku {
    margin-top: 8px;
    color: #555;
}

.productdetails .vm-product-details-container .addtocart-area {
    margin-top: 14px;
}

.productdetails .vm-product-details-container .addtocart-area input.quantity-input {
    height: 40px;
    border: 1px solid #d9d9d9;
}

.productdetails .vm-product-details-container .addtocart-area span.addtocart-button input {
    min-height: 40px;
    padding: 0 18px;
    font-weight: 700;
}

#cart-view {
    border: 1px solid #ececec;
    padding: 16px;
    background: #fff;
}

#cart-view .checkout-button-top {
    margin-top: 12px;
}

#cart-view table {
    margin-bottom: 12px;
}

.vm-cart-header-container .vm-continue-shopping {
    text-align: right;
}

@media (max-width: 991px) {
    .browse-view .orderby-displaynumber.product-toolbar {
        display: block;
    }

    .browse-view .vm-order-list {
        margin: 10px 0;
    }

    .productdetails .spacer-buy-area {
        margin-top: 12px;
    }
}

@media (max-width: 767px) {
    .browse-view .orderby-displaynumber.product-toolbar {
        padding: 10px;
    }

    .browse-view .gridlist-toggle a {
        width: 32px;
        height: 32px;
        line-height: 32px;
    }

    #cart-view {
        padding: 10px;
    }

    .vm-cart-header-container .vm-continue-shopping {
        text-align: left;
        margin-top: 10px;
    }
}

/* Pixel refinement pass: product cards, details spacing, and cart table usability */
.product-items ul.products > li.product .product-entry {
    display: flex;
    flex-direction: column;
    height: 100%;
    border: 1px solid #efefef;
    background: #fff;
}

.product-items ul.products > li.product .product-image {
    padding: 10px 10px 0;
}

.product-items ul.products > li.product .product-image img {
    width: 100%;
    height: auto;
}

/* Category page: enforce equal product image heights */
.category-view .product-items ul.products > li.product .product-image > a > img.img-responsive {
    width: 100%;
    height: 260px;
    display: block;
    object-fit: contain;
    object-position: 50% 12%;
}

.category-view .product-items ul.products > li.product .product-image .product_image_gallery img {
    width: 100%;
    height: 260px;
    display: block;
    object-fit: contain;
    object-position: 50% 12%;
}

.category-view .product-items ul.products > li.product:hover .product-image > a > img.img-responsive,
.category-view .product-items ul.products > li.product:hover .product-image .product_image_gallery img {
    object-position: 50% 12%;
}

.product-items ul.products > li.product .product-content {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 10px;
}

.product-items ul.products > li.product .product-title {
    min-height: 38px;
    line-height: 1.35;
    margin: 0 0 6px;
}

.product-items ul.products > li.product .short-description {
    min-height: 42px;
    margin-bottom: 8px;
    color: #666;
}

.product-items ul.products > li.product .product-loop-price {
    min-height: 42px;
    margin-bottom: 6px;
}

.product-items ul.products > li.product .product-buttons {
    margin-top: auto;
}

.productdetails-view .single-product-title {
    margin-bottom: 14px;
}

.productdetails-view .vm-product-details-container {
    padding: 0 0 0 6px;
}

#cart-view .vm-fieldset-pricelist {
    overflow-x: auto;
}

#cart-view .cart-summary.cart-items {
    min-width: 760px;
}

#cart-view .cart-summary .quantity-input {
    width: 62px;
    min-width: 62px;
    text-align: center;
}

#cart-view .cart-summary .vm-cart-item-delete .remove {
    width: 28px;
    height: 28px;
    line-height: 26px;
    border: 1px solid #ddd;
    background: #fff;
    color: #8c8c8c;
    font-size: 18px;
    border-radius: 2px;
}

#cart-view .cart-summary .vm-cart-item-delete .remove:hover {
    border-color: #d95b5b;
    color: #d95b5b;
}

@media (max-width: 991px) {
    .product-items ul.products > li.product {
        margin-bottom: 12px;
    }

    .productdetails-view .vm-product-details-container {
        padding-left: 0;
        margin-top: 12px;
    }
}

@media (max-width: 767px) {
    .product-items ul.products > li.product .product-title {
        min-height: 0;
    }

    .product-items ul.products > li.product .short-description {
        min-height: 0;
    }

    #cart-view .cart-summary.cart-items {
        min-width: 640px;
    }

    .category-view .product-items ul.products > li.product .product-image > a > img.img-responsive,
    .category-view .product-items ul.products > li.product .product-image .product_image_gallery img {
        height: 200px;
    }
}

/* Visual alignment pass: typography, CTA contrast, and cart totals emphasis */
.product-items ul.products > li.product .product-title a {
    color: #222;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.product-items ul.products > li.product .product-title a:hover {
    color: #eaad0a;
}

.product-items ul.products > li.product .product-loop-price .PricesalesPrice,
.product-items ul.products > li.product .product-loop-price .salesPrice {
    font-size: 18px;
    font-weight: 700;
    color: #1f1f1f;
}

.product-items ul.products > li.product .product-loop-price .PricebasePriceWithTax,
.product-items ul.products > li.product .product-loop-price .PricediscountAmount {
    font-size: 12px;
    color: #8a8a8a;
}

.product-items ul.products > li.product .addtocart-area .addtocart-bar {
    display: flex;
    align-items: center;
    gap: 8px;
}

.category-view .product-items ul.products > li.product .addtocart-area .addtocart-bar {
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
}

.category-view .product-items ul.products > li.product .product-buttons {
    text-align: left;
}

.category-view .product-items ul.products > li.product .addtocart-area {
    display: block;
    width: 100%;
}

.category-view .product-items ul.products > li.product .addtocart-area form,
.category-view .product-items ul.products > li.product .addtocart-area .addtocart-bar,
.category-view .product-items ul.products > li.product .addtocart-area span.addtocart-button {
    float: none !important;
    text-align: left !important;
    width: 100%;
}

.product-items ul.products > li.product .addtocart-area .quantity-input {
    width: 50px;
    height: 36px;
    border: 1px solid #d8d8d8;
    text-align: center;
}

.product-items ul.products > li.product .addtocart-area .addtocart-button input,
.productdetails .vm-product-details-container .addtocart-area .addtocart-button input {
    border: 1px solid #d59a00;
    background: #eaad0a;
    color: #111;
    font-weight: 700;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.product-items ul.products > li.product .addtocart-area .addtocart-button input:hover,
.productdetails .vm-product-details-container .addtocart-area .addtocart-button input:hover {
    background: #d59a00;
    border-color: #c28b00;
    color: #fff;
}

.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button {
    text-align: left;
    display: block;
    width: 100%;
}

.category-view .product-items ul.products > li.product .addtocart-area input.addtocart-button,
.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button input {
    float: none !important;
    display: block !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
}

.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button input {
    min-height: 46px;
    min-width: 0;
    padding: 0 24px;
    font-size: 14px;
    line-height: 44px;
    margin: 0;
    text-align: center !important;
}

/* Add-to-cart icon should always be visible, without orange hover wrapper */
.product-items .products .product-content .product-buttons .addtocart-area span.addtocart-button,
.productdetails .vm-product-details-container .addtocart-area span.addtocart-button {
    position: relative;
    background: transparent !important;
}

.product-items .products .product-content .product-buttons .addtocart-area span.addtocart-button:before,
.productdetails .vm-product-details-container .addtocart-area span.addtocart-button:before {
    content: "\f07a";
    font-family: FontAwesome;
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #ffffff;
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    pointer-events: none;
}

.product-items .products .product-content .product-buttons .addtocart-area span.addtocart-button:hover,
.productdetails .vm-product-details-container .addtocart-area span.addtocart-button:hover {
    background: transparent !important;
}

.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button input,
.productdetails .vm-product-details-container .addtocart-area .addtocart-button input {
    padding-left: 40px;
    padding-right: 26px;
}

/* Modern skin pass: rounded UI + red/yellow brand accents */
:root {
    --brand-red: #d62828;
    --brand-red-dark: #a31515;
    --brand-yellow: #f4b400;
    --brand-yellow-dark: #d49a00;
    --surface-soft: #fff8ed;
    --surface-card: #ffffff;
    --text-strong: #1f1f1f;
}

.browse-view .orderby-displaynumber.product-toolbar {
    background: linear-gradient(180deg, #fff9ef 0%, #fff5e3 100%);
    border: 1px solid #f1d5aa;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(214, 40, 40, 0.08);
}

.browse-view .gridlist-toggle a {
    border-radius: 10px;
    border-color: #f0c877;
}

.browse-view .gridlist-toggle a:hover,
.browse-view .gridlist-toggle a.active {
    border-color: var(--brand-red);
    color: #fff;
    background: linear-gradient(180deg, var(--brand-red) 0%, var(--brand-red-dark) 100%);
}

.product-items ul.products > li.product .product-entry {
    border-radius: 16px;
    border: 1px solid #f1e4d0;
    box-shadow: 0 8px 22px rgba(31, 31, 31, 0.06);
    overflow: hidden;
}

.product-items ul.products > li.product .product-image {
    background: linear-gradient(180deg, #fffdf8 0%, #fff6e8 100%);
}

.product-items ul.products > li.product .product-content {
    background: var(--surface-card);
}

.product-items ul.products > li.product .product-title a {
    color: var(--text-strong);
}

.product-items ul.products > li.product .product-title a:hover {
    color: var(--brand-red);
}

.product-items ul.products > li.product .product-loop-price .PricesalesPrice,
.product-items ul.products > li.product .product-loop-price .salesPrice {
    color: var(--brand-red);
}

.product-items ul.products > li.product .addtocart-area .addtocart-button input,
.productdetails .vm-product-details-container .addtocart-area .addtocart-button input,
#cart-view .vmicon.vm2-add_quantity_cart {
    border-radius: 12px;
}

.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button input,
.productdetails .vm-product-details-container .addtocart-area .addtocart-button input {
    border: 0;
    background: linear-gradient(180deg, #ef4444 0%, var(--brand-red) 100%);
    color: #fff;
    box-shadow: 0 8px 18px rgba(214, 40, 40, 0.28);
}

.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button input:hover,
.productdetails .vm-product-details-container .addtocart-area .addtocart-button input:hover {
    background: linear-gradient(180deg, var(--brand-red) 0%, var(--brand-red-dark) 100%);
    color: #fff;
    box-shadow: 0 10px 22px rgba(163, 21, 21, 0.34);
    transform: translateY(-1px);
}

.productdetails .spacer-buy-area,
#cart-view,
.cart_totals {
    border-radius: 16px;
}

.productdetails .spacer-buy-area {
    background: linear-gradient(180deg, #fffdf8 0%, #fff7ea 100%);
    border-color: #f1dfc3;
}

.productdetails .product_meta {
    border-top-color: #f1dfc3;
}

.cart_totals {
    background: linear-gradient(180deg, #fff9ef 0%, #fff4e0 100%);
    border: 1px solid #f1d5aa;
    box-shadow: 0 6px 18px rgba(214, 40, 40, 0.08);
}

.cart_totals h2,
.cart_totals .cart-items tr.sectiontableentry2 strong {
    color: var(--brand-red);
}

#cart-view .cart-summary .vm-cart-item-delete .remove {
    border-radius: 8px;
}

#cart-view .cart-summary .vm-cart-item-delete .remove:hover {
    background: #fff1f1;
}

input.quantity-input,
.browse-view .gridlist-toggle a,
.product-items ul.products > li.product .product-entry,
.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button input {
    transition: all .2s ease;
}

/* Product details modernization pass */
.productdetails-view {
    margin-top: 8px;
    --pd-bg: #f7f8fb;
    --pd-card: #ffffff;
    --pd-border: #e7eaf0;
    --pd-text: #16181d;
    --pd-muted: #656b78;
}

.productdetails-view .images {
    background: var(--pd-card);
    border: 1px solid var(--pd-border);
    border-radius: 18px;
    padding: 14px;
    box-shadow: 0 8px 24px rgba(31, 31, 31, 0.06);
}

.productdetails-view .product-image-zoom {
    border-radius: 14px;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%);
}

.productdetails-view .product-image-zoom img.gallery-image {
    width: 100%;
    max-height: 520px;
    object-fit: contain;
    object-position: center;
}

.productdetails-view .thumbnails-carousel {
    margin-top: 14px;
}

.productdetails-view .thumbnails-carousel .item {
    border: 1px solid var(--pd-border);
    border-radius: 12px;
    overflow: hidden;
    background: var(--pd-card);
}

.productdetails-view .thumbnails-carousel .item img {
    height: 92px;
    width: 100%;
    object-fit: cover;
}

.productdetails-view .single-product-title {
    background: var(--pd-card);
    border: 1px solid var(--pd-border);
    border-radius: 18px;
    padding: 14px 16px;
    box-shadow: 0 8px 24px rgba(31, 31, 31, 0.06);
}

.productdetails-view .single-product-title h1.product_title {
    color: var(--pd-text);
    font-size: 30px;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.productdetails-view .product-next-previous {
    margin-top: 8px;
    padding-left: 10px;
    padding-right: 10px;
}

.productdetails-view .product-next-previous .product-prev > a,
.productdetails-view .product-next-previous .product-next > a {
    border-radius: 10px;
    border: 1px solid var(--pd-border);
    background: #f6f8fc;
}

.productdetails-view .vm-product-details-container {
    position: sticky;
    top: 18px;
}

.productdetails-view .spacer-buy-area {
    background: var(--pd-card);
    border: 1px solid var(--pd-border);
    border-radius: 18px;
    padding: 18px;
    box-shadow: 0 10px 28px rgba(31, 31, 31, 0.08);
}

.productdetails-view .product-short-description {
    font-size: 15px;
    color: var(--pd-muted);
}

.productdetails-view .spacer-buy-area .PricesalesPrice,
.productdetails-view .spacer-buy-area .salesPrice {
    color: var(--brand-red);
    font-weight: 800;
}

.productdetails-view .spacer-buy-area .PricebasePrice,
.productdetails-view .spacer-buy-area .PricebasePriceWithTax,
.productdetails-view .spacer-buy-area .priceCrossed,
.productdetails-view .spacer-buy-area .product-price .vm-price-value {
    color: #596074;
    font-weight: 600;
}

.productdetails-view .addtocart-area .addtocart-bar {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    position: relative;
}

.productdetails-view .addtocart-area .quantity-box,
.productdetails-view .addtocart-area .quantity-controls {
    margin: 0;
}

.productdetails-view .addtocart-area span.quantity-controls {
    width: 72px;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: block;
}

.productdetails-view .addtocart-area input.quantity-input {
    width: 72px;
    height: 46px;
    border: 1px solid var(--pd-border);
    border-radius: 12px;
    background: #f8fafd;
    color: #1f1f1f;
    font-weight: 700;
    text-align: center;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.06);
}

.productdetails-view .addtocart-area .quantity-box:before,
.productdetails-view .addtocart-area .quantity-box:after {
    width: 16px;
    height: 46px;
    line-height: 46px;
    color: #596074;
}

.productdetails-view .addtocart-area input.quantity-controls {
    background: transparent;
    border: none;
    width: 14px;
    height: 46px;
    padding: 0;
    cursor: pointer;
}

.productdetails-view .addtocart-area .quantity-plus {
    float: right;
}

.productdetails-view .addtocart-area .quantity-minus {
    float: left;
}

.productdetails-view .addtocart-area .vmicon.vm2-add_quantity_cart:hover {
    border-color: var(--brand-red);
    color: var(--brand-red);
    background: #fff5f5;
}

.productdetails-view .availability {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 700;
}

.productdetails-view .availability.instock {
    background: #e7f8ed;
    color: #1d7c3a;
}

.productdetails-view .availability.outstock {
    background: #ffecec;
    color: #a31515;
}

.productdetails-view .ask-a-question a.ask-a-question {
    display: inline-block;
    border-radius: 10px;
    border: 1px solid var(--pd-border);
    background: #f6f8fc;
    color: #4f5767;
    padding: 9px 14px;
    font-weight: 600;
}

.productdetails-view .ask-a-question a.ask-a-question:hover {
    border-color: var(--brand-red);
    color: var(--brand-red);
}

.productdetails-view .product_meta {
    background: var(--pd-card);
    border: 1px solid var(--pd-border);
    border-radius: 14px;
    padding: 12px 14px;
}

.productdetails-view .icons,
.productdetails-view .social-share-button {
    background: var(--pd-card);
    border: 1px solid var(--pd-border);
    border-radius: 14px;
    padding: 10px 12px;
    margin-top: 10px;
}

.productdetails-view .social-share-button .prettySocial {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: #f6f8fc;
    color: var(--brand-red);
    margin-right: 6px;
}

.productdetails-view .social-share-button .prettySocial:hover {
    background: var(--brand-red);
    color: #fff;
}

.productdetails-view .czd-tabs {
    border-bottom: 0 !important;
    display: flex;
    gap: 8px;
    margin-bottom: 12px;
}

.productdetails-view .czd-tabs > li {
    float: none;
    margin-bottom: 0 !important;
}

.productdetails-view .czd-tabs > li > a {
    border: 1px solid var(--pd-border);
    border-bottom: 0 !important;
    border-radius: 12px;
    background: #f6f8fc;
    color: #4f5767;
    font-weight: 600;
    padding: 10px 14px;
}

.productdetails-view .czd-tabs > li.active > a,
.productdetails-view .czd-tabs > li > a:hover {
    border-color: var(--brand-red);
    background: linear-gradient(180deg, var(--brand-red) 0%, var(--brand-red-dark) 100%);
    color: #fff;
}

.productdetails-view .tab-content {
    background: var(--pd-card);
    border: 1px solid var(--pd-border);
    border-top: 0;
    border-radius: 16px;
    border-top-left-radius: 0;
    padding: 16px;
    box-shadow: 0 8px 24px rgba(31, 31, 31, 0.05);
}

@media (max-width: 991px) {
    .productdetails-view .vm-product-details-container {
        position: static;
        top: auto;
    }

    .productdetails-view .single-product-title h1.product_title {
        font-size: 24px;
    }
}

/* 2026 category design: clean, premium, responsive */
.category-view {
    --cat-bg: #f7f8fb;
    --cat-card: #ffffff;
    --cat-border: #e7eaf0;
    --cat-text: #16181d;
    --cat-muted: #656b78;
    --cat-accent: #d62828;
    --cat-accent-2: #f4b400;
}

.category-view .browse-view {
    background:
        radial-gradient(1200px 360px at 100% -10%, rgba(214, 40, 40, 0.08), transparent 62%),
        radial-gradient(1000px 320px at 0% -20%, rgba(22, 24, 29, 0.05), transparent 60%),
        var(--cat-bg);
    border: 1px solid var(--cat-border);
    border-radius: 22px;
    padding: 16px;
}

.category-view .browse-view > h1 {
    margin: 4px 0 16px;
    color: var(--cat-text);
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.1;
    letter-spacing: -0.02em;
    font-weight: 800;
}

.category-view .orderby-displaynumber.product-toolbar {
    border-radius: 14px;
    border: 1px solid #e7eaf0;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    box-shadow: 0 8px 18px rgba(31, 31, 31, 0.06);
    margin-bottom: 14px;
}

.category-view .gridlist-toggle a {
    border-radius: 10px;
    border: 1px solid #dde2ea;
    color: #4f5767;
}

.category-view .gridlist-toggle a:hover,
.category-view .gridlist-toggle a.active {
    border-color: var(--cat-accent);
    background: linear-gradient(180deg, var(--cat-accent) 0%, #a31515 100%);
    color: #fff;
}

.category-view .vm-order-list,
.category-view .product-toolbar-pagination {
    color: #5c6270;
}

.category-view .product-items ul.products {
    margin-top: 4px;
}

.category-view .product-items ul.products > li.product {
    margin-bottom: 18px;
}

.category-view .product-items ul.products > li.product .product-entry {
    border: 1px solid var(--cat-border);
    border-radius: 18px;
    box-shadow: 0 10px 24px rgba(31, 31, 31, 0.06);
    overflow: hidden;
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.category-view .product-items ul.products > li.product:hover .product-entry {
    transform: translateY(-4px);
    border-color: #d9dee8;
    box-shadow: 0 18px 34px rgba(22, 24, 29, 0.12);
}

.category-view .product-items ul.products > li.product .product-image {
    background: #ffffff;
    padding: 12px 12px 0;
    margin-bottom: 0;
}

.category-view .product-items ul.products > li.product .product-highlight {
    top: 10px;
    bottom: auto;
    left: 10px;
}

.category-view .product-items ul.products > li.product .product-image > a {
    display: block;
    line-height: 0;
}

.category-view .product-items ul.products > li.product .product-content {
    padding: 0 12px 12px;
    background: var(--cat-card);
}

.category-view .product-items ul.products > li.product .product-title-rating {
    margin-top: 0;
    padding-top: 0;
}

.category-view .product-items ul.products > li.product .product-title a {
    color: var(--cat-text);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
}

.category-view .product-items ul.products > li.product .product-title a:hover {
    color: var(--cat-accent);
}

.category-view .product-items ul.products > li.product .short-description {
    color: var(--cat-muted);
}

.category-view .product-items ul.products > li.product .product-loop-price .PricesalesPrice,
.category-view .product-items ul.products > li.product .product-loop-price .salesPrice {
    color: var(--cat-accent);
    font-size: 20px;
    font-weight: 800;
}

.category-view .product-items ul.products > li.product .product-loop-price .PricebasePriceWithTax,
.category-view .product-items ul.products > li.product .product-loop-price .PricediscountAmount {
    color: #8a91a1;
}

.category-view .product-items ul.products > li.product .product-loop-price .product-price {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    width: 100%;
    padding: 0;
    text-align: center;
}

.category-view .product-items ul.products > li.product .product-loop-price .price-crossed {
    display: block;
}

.category-view .product-items ul.products > li.product .product-loop-price .product-price .vm-price-value {
    display: block;
    float: none;
    padding-left: 0;
    margin: 0;
    line-height: 1.15;
    text-align: center;
}

.category-view .product-items ul.products > li.product .product-loop-price .PricebasePriceWithTax.vm-display.vm-price-value {
    float: none;
}

.category-view .product-items ul.products > li.product .product-loop-price .product-price .vm-price-value > span {
    display: inline-block;
    white-space: nowrap;
}

.category-view .product-items ul.products > li.product .product-sku {
    color: #5f6674;
    background: #f6f8fc;
    border: 1px solid #e4e8f0;
    border-radius: 10px;
    padding: 6px 8px;
}

.vmgroup .product-items ul.products > li.product .product-sku {
    color: #5f6674;
    background: #f6f8fc;
    border: 1px solid #e4e8f0;
    border-radius: 10px;
    padding: 6px 8px;
}

.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button input {
    border: 0;
    border-radius: 12px;
    background: linear-gradient(180deg, #ef4444 0%, #d62828 100%);
    color: #fff;
    box-shadow: 0 8px 16px rgba(214, 40, 40, 0.25);
    font-weight: 700;
}

.vmgroup .product-items ul.products > li.product .addtocart-area .addtocart-button input {
    border: 0;
    border-radius: 12px;
    background: linear-gradient(180deg, #ef4444 0%, #d62828 100%);
    color: #fff;
    box-shadow: 0 8px 16px rgba(214, 40, 40, 0.25);
    font-weight: 700;
}

.category-view .product-items ul.products > li.product .addtocart-area .addtocart-button input:hover {
    background: linear-gradient(180deg, #d62828 0%, #a31515 100%);
    box-shadow: 0 10px 22px rgba(163, 21, 21, 0.35);
}

.vmgroup .product-items ul.products > li.product .addtocart-area .addtocart-button input:hover {
    background: linear-gradient(180deg, #d62828 0%, #a31515 100%);
    box-shadow: 0 10px 22px rgba(163, 21, 21, 0.35);
}

/* Match category card add-to-cart layout in VM module cards */
.vmgroup .product-items ul.products > li.product .product-buttons {
    text-align: left;
}

.vmgroup .product-items ul.products > li.product .addtocart-area {
    display: block;
    width: 100%;
}

.vmgroup .product-items ul.products > li.product .addtocart-area form,
.vmgroup .product-items ul.products > li.product .addtocart-area .addtocart-bar,
.vmgroup .product-items ul.products > li.product .addtocart-area span.addtocart-button,
.vmgroup .product-items ul.products > li.product .addtocart-area .addtocart-button {
    float: none !important;
    text-align: left !important;
    width: 100%;
}

.vmgroup .product-items ul.products > li.product .addtocart-area input.addtocart-button,
.vmgroup .product-items ul.products > li.product .addtocart-area .addtocart-button input {
    float: none !important;
    display: block !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    min-height: 46px;
    min-width: 0;
    padding: 0 24px 0 40px;
    font-size: 14px;
    line-height: 44px;
    text-align: center !important;
}

.category-view .vm-pagination.vm-pagination-bottom {
    margin-top: 14px;
}

.category-view .vm-pagination .pagination > li > a,
.category-view .vm-pagination .pagination > li > span {
    border-radius: 10px;
    border: 1px solid #e1e6ef;
    color: #5b6372;
    margin: 0 3px;
}

.category-view .vm-pagination .pagination > .active > a,
.category-view .vm-pagination .pagination > .active > span,
.category-view .vm-pagination .pagination > li > a:hover,
.category-view .vm-pagination .pagination > li > span:hover {
    border-color: var(--cat-accent);
    background: var(--cat-accent);
    color: #fff;
}

/* #sp-primary featured module: reuse category card look on ZT product markup */
#sp-primary .vmgroup.product-items .product-slide .product {
    margin-bottom: 18px;
    padding: 0 6px;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-entry {
    border: 1px solid #e6ebf2;
    border-radius: 18px;
    box-shadow: 0 10px 24px rgba(31, 31, 31, 0.06);
    overflow: hidden;
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
    background: #fff;
    height: 100%;
    display: flex;
    flex-direction: column;
}

#sp-primary .vmgroup.product-items .product-slide .product:hover .product-entry {
    transform: translateY(-4px);
    border-color: #d9dee8;
    box-shadow: 0 18px 34px rgba(22, 24, 29, 0.12);
}

#sp-primary .vmgroup.product-items .product-slide .product .product-image {
    background: linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%);
    padding: 12px 12px 0;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-image > a > img.img-responsive,
#sp-primary .vmgroup.product-items .product-slide .product .product-image .product_image_gallery img {
    width: 100%;
    height: 260px;
    object-fit: contain;
    object-position: center;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-content {
    padding: 12px;
    background: #fff;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-title {
    margin: 0 0 6px;
    min-height: 38px;
    line-height: 1.35;
    font-size: 15px;
    font-weight: 700;
    color: #222a36;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-title a {
    color: inherit;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-title a:hover {
    color: #d62828;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-loop-price {
    min-height: 42px;
    margin-bottom: 6px;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-loop-price .PricesalesPrice,
#sp-primary .vmgroup.product-items .product-slide .product .product-loop-price .salesPrice {
    color: #d62828;
    font-size: 20px;
    font-weight: 800;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-loop-price .PricebasePriceWithTax,
#sp-primary .vmgroup.product-items .product-slide .product .product-loop-price .PricediscountAmount {
    color: #8a91a1;
}

#sp-primary .vmgroup.product-items .product-slide .product .product-content .product-buttons {
    margin-top: auto;
}

#sp-primary .vmgroup.product-items .product-slide .product .addtocart-area .addtocart-button input {
    border: 0;
    border-radius: 12px;
    background: linear-gradient(180deg, #ef4444 0%, #d62828 100%);
    color: #fff;
    box-shadow: 0 8px 16px rgba(214, 40, 40, 0.25);
    font-weight: 700;
}

#sp-primary .vmgroup.product-items .product-slide .product .addtocart-area .addtocart-button input:hover {
    background: linear-gradient(180deg, #d62828 0%, #a31515 100%);
    box-shadow: 0 10px 22px rgba(163, 21, 21, 0.35);
}

/* Same visual system for ZT default layout (#vmproduct .product-item .spacer) */
#sp-primary #vmproduct .product-item {
    margin-bottom: 18px;
}

#sp-primary #vmproduct .product-item .spacer {
    border: 1px solid #e6ebf2 !important;
    border-radius: 18px;
    box-shadow: 0 10px 24px rgba(31, 31, 31, 0.06);
    overflow: hidden;
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
    background: #fff;
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 12px;
}

#sp-primary #vmproduct .product-item:hover .spacer {
    transform: translateY(-4px);
    border-color: #d9dee8 !important;
    box-shadow: 0 18px 34px rgba(22, 24, 29, 0.12);
}

#sp-primary #vmproduct .product-item .vm-product-media-container {
    background: linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%);
    margin: -12px -12px 0;
    padding: 12px 12px 0;
}

#sp-primary #vmproduct .product-item .vm-product-media-container img.featuredProductImage,
#sp-primary #vmproduct .product-item .vm-product-media-container img.img-responsive {
    width: 100%;
    height: 260px;
    object-fit: contain;
    object-position: center;
}

#sp-primary #vmproduct .product-item h3 {
    order: 2;
    margin: 10px 0 6px;
    min-height: 38px;
    line-height: 1.35;
    font-size: 15px;
    font-weight: 700;
}

#sp-primary #vmproduct .product-item h3 a {
    color: #222a36;
}

#sp-primary #vmproduct .product-item h3 a:hover {
    color: #d62828;
}

#sp-primary #vmproduct .product-item .product-bottom {
    order: 3;
    margin-top: auto;
}

#sp-primary #vmproduct .product-item .product-price .PricesalesPrice,
#sp-primary #vmproduct .product-item .product-price .salesPrice {
    color: #d62828;
    font-size: 20px;
    font-weight: 800;
}

#sp-primary #vmproduct .product-item .product-price .PricebasePriceWithTax,
#sp-primary #vmproduct .product-item .product-price .PricediscountAmount {
    color: #8a91a1;
}

#sp-primary #vmproduct .product-item .addtocart-area .addtocart-button input {
    border: 0;
    border-radius: 12px;
    background: linear-gradient(180deg, #ef4444 0%, #d62828 100%);
    color: #fff;
    box-shadow: 0 8px 16px rgba(214, 40, 40, 0.25);
    font-weight: 700;
}

#sp-primary #vmproduct .product-item .addtocart-area .addtocart-button input:hover {
    background: linear-gradient(180deg, #d62828 0%, #a31515 100%);
    box-shadow: 0 10px 22px rgba(163, 21, 21, 0.35);
}

@media (max-width: 991px) {
    .category-view .browse-view {
        padding: 12px;
        border-radius: 16px;
    }

    .category-view .product-items ul.products > li.product .product-loop-price .PricesalesPrice,
    .category-view .product-items ul.products > li.product .product-loop-price .salesPrice {
        font-size: 18px;
    }
}

.productdetails-view .single-product-title h1.product_title {
    color: #1f1f1f;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 8px;
}

.productdetails .product_meta {
    border-top: 1px solid #ececec;
    margin-top: 14px;
    padding-top: 10px;
    color: #555;
}

.cart_totals h2 {
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 12px;
    color: #1f1f1f;
}

.cart_totals .cart-items tr.sectiontableentry2 {
    background: #fff8e9;
}

.cart_totals .cart-items tr.sectiontableentry2 strong {
    color: #1f1f1f;
    font-size: 18px;
}

#cart-view .vmicon.vm2-add_quantity_cart {
    border: 1px solid #d9d9d9;
    background: #fff;
    color: #333;
    font-weight: 600;
    padding: 7px 14px;
}

#cart-view .vmicon.vm2-add_quantity_cart:hover {
    border-color: #eaad0a;
    color: #eaad0a;
}

@media (max-width: 767px) {
    .product-items ul.products > li.product .product-loop-price .PricesalesPrice,
    .product-items ul.products > li.product .product-loop-price .salesPrice {
        font-size: 16px;
    }

    .cart_totals h2 {
        font-size: 18px;
    }
}

/* QA polish pass: micro spacing and hierarchy */
.browse-view .orderby-displaynumber.product-toolbar .gridlist-toggle {
    margin-right: 8px;
}

.browse-view .orderby-displaynumber.product-toolbar .gridlist-toggle a + a {
    margin-left: 4px;
}

.browse-view .orderby-displaynumber.product-toolbar .vm-order-list {
    padding-top: 1px;
}

.productdetails-view .single-product-title {
    margin-bottom: 10px;
}

.productdetails .spacer-buy-area .product-short-description {
    margin-bottom: 12px;
}

.productdetails .spacer-buy-area .product-sku {
    margin-bottom: 10px;
}

.productdetails .vm-product-details-container .addtocart-area {
    padding-top: 2px;
}

.cart_totals .cart-items tr.sectiontableentry2 td {
    border-top: 1px solid #efd8a3;
    padding-top: 10px;
    padding-bottom: 10px;
}

.cart_totals .cart-items tr.sectiontableentry2 td:last-child {
    letter-spacing: 0.01em;
}

@media (max-width: 767px) {
    .browse-view .orderby-displaynumber.product-toolbar .gridlist-toggle {
        margin-right: 0;
        margin-bottom: 8px;
    }

    .cart_totals .cart-items tr.sectiontableentry2 td {
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

/* Breadcrumb should follow content width, not full row */
#sp-page-title .breadcrumb,
.sp-page-title .breadcrumb {
    display: inline-block;
    width: auto;
    max-width: 100%;
}

/* Modern header and navigation pass */
#sp-header-top-bar {
    background: linear-gradient(90deg, #fff6e7 0%, #fff2d7 100%);
    border-bottom: none;
}

#sp-header-top-bar,
#sp-header-top-bar a {
    color: #5e5648;
}

#sp-header-middle {
    background: rgba(255, 255, 255, 0.95);
    border-bottom: none;
    box-shadow: 0 10px 28px rgba(16, 24, 40, 0.06);
    backdrop-filter: blur(8px);
    min-height: 60px;
}

#sp-header-middle > .container,
#sp-header-middle > .container > .row,
#sp-header-middle .sp-column {
    min-height: 60px;
}

#sp-header-middle > .container > .row {
    display: flex;
    align-items: center;
}

#sp-header-middle .sp-column,
#sp-header-middle .sp-module {
    display: flex;
    align-items: center;
}

#sp-header-middle a {
    color: #1f2430;
}

div#sp-header-right,
div#sp-search {
    margin-top: 0;
}

.sp-megamenu-parent > li > a {
    color: #111111;
    font-weight: 700;
    font-size: 13px;
    border-radius: 0;
    padding: 0 12px;
    line-height: 50px;
    min-height: 0;
    transition: all .2s ease;
}

.sp-megamenu-parent > li > a,
.sp-megamenu-parent > li > span {
    line-height: 50px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-radius: 0 !important;
}

#sp-header {
    height: 60px;
}

#sp-header .logo {
    height: 60px;
}

#sp-menu .sp-megamenu-parent,
.sp-megamenu-parent {
    float: left !important;
}

#sp-menu,
#sp-header .sp-megamenu-wrapper {
    text-align: left;
}

.sp-megamenu-parent > li:hover > a,
.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li > a:hover {
    color: #111111 !important;
    background: transparent !important;
}

.sp-megamenu-parent .sp-dropdown {
    border: none;
    border-radius: 14px;
    box-shadow: 0 18px 34px rgba(16, 24, 40, 0.12);
    overflow: hidden;
}

.sp-megamenu-parent > li,
.sp-megamenu-parent > li:last-child {
    border: none !important;
    overflow: visible;
}

.sp-megamenu-parent > li.sp-has-child:before {
    content: "\f107" !important;
    font-family: FontAwesome;
    font-size: 10px;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    color: #596074;
    opacity: 0.85;
}

.sp-megamenu-parent > li.sp-has-child > a,
.sp-megamenu-parent > li.sp-has-child > span {
    padding-right: 20px !important;
}

.sp-megamenu-parent > li:hover.sp-has-child:before,
.sp-megamenu-parent > li.active.sp-has-child:before {
    color: var(--brand-red);
}

.sp-megamenu-parent li.sp-menu-item.label-menu > a:after,
.sp-megamenu-parent li.sp-menu-item.label-menu > span:after {
    z-index: 5;
    color: #111111 !important;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
    color: #111111;
    padding-top: 10px;
    padding-bottom: 10px;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a {
    background: #f7f7f7;
    color: #111111;
}

.menu-vertical .category-menu-title {
    border-radius: 12px;
    background: linear-gradient(90deg, var(--brand-red) 0%, #f09d00 100%);
}

.menu-vertical .category-menu-title h4,
.menu-vertical .category-menu-title i {
    color: #fff;
}

#ajax-search-button311 {
    border-radius: 12px;
    background: linear-gradient(180deg, var(--brand-red) 0%, var(--brand-red-dark) 100%);
}

.topbar-cart .cart-count,
.header-cart-content .cart-style-2 .cart-count {
    border-radius: 999px;
    min-width: 22px;
    height: 22px;
    line-height: 22px;
    font-weight: 700;
    background: #f4b400;
    color: #231f12;
}

@media (max-width: 991px) {
    div#sp-header-right,
    div#sp-search {
        margin-top: 0;
    }

    .sp-megamenu-parent > li > a {
        padding: 0 10px;
    }

    #sp-header,
    #sp-header .logo {
        height: 60px;
    }
}

@media (min-width: 992px) {
    #offcanvas-toggler,
    .offcanvas-menu {
        display: none !important;
    }
}

/* Keep page-title section in container width (not full viewport) */
#sp-page-title,
.sp-page-title {
    width: 100%;
    max-width: 1170px;
    margin-left: auto;
    margin-right: auto;
}

#sp-page-title > .container,
.sp-page-title > .container {
    width: 100%;
    max-width: 1170px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
}

body #sp-main-body {
    padding: 30px 0 !important;
}

.com-sppagebuilder #sp-main-body {
    padding: 0 !important;
}

/* Ensure mini-cart dropdown stays above product cards */
#sp-header-middle,
#sp-header-right,
#sp-header-right .sp-module,
.miniCartWrap {
    overflow: visible !important;
}

.header-cart-content,
.vmcart1 .header-cart-content,
.vmcart2 .header-cart-content {
    position: relative !important;
    z-index: 10030 !important;
}

.header-cart-content .cart-product-list {
    z-index: 10040 !important;
}

/* Keep navigation fixed and visible when scrolling */
body.sticky-navigation.scrollActive #sp-header-navigation,
body.sticky-navigation #sp-header-navigation.menu-fixed {
    position: fixed !important;
    background: #ffffff !important;
    box-shadow: none;
    top: 0 !important;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 11000 !important;
}

body.sticky-navigation.scrollActive #sp-header-navigation {
    box-shadow: 0 4px 12px rgba(16, 24, 40, 0.08);
}

@media (min-width: 992px) {
    #sp-header-navigation {
        position: sticky;
        background: #ffffff !important;
        top: 0;
        z-index: 11000;
    }
}

/* Hard override: make ZT VirtueMarter cards match category card design */
#sp-primary #vmproduct .product-item .spacer,
#sp-primary-1 #vmproduct .product-item .spacer,
#sp-primary-2 #vmproduct .product-item .spacer,
#sp-primary .vmgroup.product-items .product-slide .product .product-entry,
#sp-primary-1 .vmgroup.product-items .product-slide .product .product-entry,
#sp-primary-2 .vmgroup.product-items .product-slide .product .product-entry {
    border: 1px solid #e6ebf2 !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 24px rgba(31, 31, 31, 0.06) !important;
    background: #fff !important;
    overflow: hidden !important;
}

#sp-primary #vmproduct .product-item:hover .spacer,
#sp-primary-1 #vmproduct .product-item:hover .spacer,
#sp-primary-2 #vmproduct .product-item:hover .spacer,
#sp-primary .vmgroup.product-items .product-slide .product:hover .product-entry,
#sp-primary-1 .vmgroup.product-items .product-slide .product:hover .product-entry,
#sp-primary-2 .vmgroup.product-items .product-slide .product:hover .product-entry {
    transform: translateY(-4px) !important;
    border-color: #d9dee8 !important;
    box-shadow: 0 18px 34px rgba(22, 24, 29, 0.12) !important;
}

#sp-primary #vmproduct .product-item .vm-product-media-container,
#sp-primary-1 #vmproduct .product-item .vm-product-media-container,
#sp-primary-2 #vmproduct .product-item .vm-product-media-container,
#sp-primary .vmgroup.product-items .product-slide .product .product-image,
#sp-primary-1 .vmgroup.product-items .product-slide .product .product-image,
#sp-primary-2 .vmgroup.product-items .product-slide .product .product-image {
    background: linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%) !important;
}

#sp-primary #vmproduct .product-item img.featuredProductImage,
#sp-primary #vmproduct .product-item img.img-responsive,
#sp-primary-1 #vmproduct .product-item img.featuredProductImage,
#sp-primary-1 #vmproduct .product-item img.img-responsive,
#sp-primary-2 #vmproduct .product-item img.featuredProductImage,
#sp-primary-2 #vmproduct .product-item img.img-responsive,
#sp-primary .vmgroup.product-items .product-slide .product .product-image > a > img.img-responsive,
#sp-primary .vmgroup.product-items .product-slide .product .product-image .product_image_gallery img,
#sp-primary-1 .vmgroup.product-items .product-slide .product .product-image > a > img.img-responsive,
#sp-primary-1 .vmgroup.product-items .product-slide .product .product-image .product_image_gallery img,
#sp-primary-2 .vmgroup.product-items .product-slide .product .product-image > a > img.img-responsive,
#sp-primary-2 .vmgroup.product-items .product-slide .product .product-image .product_image_gallery img {
    width: 100% !important;
    height: 260px !important;
    object-fit: contain !important;
    object-position: center !important;
}

#sp-primary #vmproduct .product-item h3 a,
#sp-primary-1 #vmproduct .product-item h3 a,
#sp-primary-2 #vmproduct .product-item h3 a,
#sp-primary .vmgroup.product-items .product-slide .product .product-title a,
#sp-primary-1 .vmgroup.product-items .product-slide .product .product-title a,
#sp-primary-2 .vmgroup.product-items .product-slide .product .product-title a {
    color: #222a36 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

#sp-primary #vmproduct .product-item h3 a:hover,
#sp-primary-1 #vmproduct .product-item h3 a:hover,
#sp-primary-2 #vmproduct .product-item h3 a:hover,
#sp-primary .vmgroup.product-items .product-slide .product .product-title a:hover,
#sp-primary-1 .vmgroup.product-items .product-slide .product .product-title a:hover,
#sp-primary-2 .vmgroup.product-items .product-slide .product .product-title a:hover {
    color: #d62828 !important;
}

#sp-primary #vmproduct .product-item .product-price .PricesalesPrice,
#sp-primary #vmproduct .product-item .product-price .salesPrice,
#sp-primary-1 #vmproduct .product-item .product-price .PricesalesPrice,
#sp-primary-1 #vmproduct .product-item .product-price .salesPrice,
#sp-primary-2 #vmproduct .product-item .product-price .PricesalesPrice,
#sp-primary-2 #vmproduct .product-item .product-price .salesPrice,
#sp-primary .vmgroup.product-items .product-slide .product .product-loop-price .PricesalesPrice,
#sp-primary .vmgroup.product-items .product-slide .product .product-loop-price .salesPrice,
#sp-primary-1 .vmgroup.product-items .product-slide .product .product-loop-price .PricesalesPrice,
#sp-primary-1 .vmgroup.product-items .product-slide .product .product-loop-price .salesPrice,
#sp-primary-2 .vmgroup.product-items .product-slide .product .product-loop-price .PricesalesPrice,
#sp-primary-2 .vmgroup.product-items .product-slide .product .product-loop-price .salesPrice {
    color: #d62828 !important;
    font-size: 20px !important;
    font-weight: 800 !important;
}

#sp-primary #vmproduct .product-item .addtocart-area .addtocart-button input,
#sp-primary-1 #vmproduct .product-item .addtocart-area .addtocart-button input,
#sp-primary-2 #vmproduct .product-item .addtocart-area .addtocart-button input,
#sp-primary .vmgroup.product-items .product-slide .product .addtocart-area .addtocart-button input,
#sp-primary-1 .vmgroup.product-items .product-slide .product .addtocart-area .addtocart-button input,
#sp-primary-2 .vmgroup.product-items .product-slide .product .addtocart-area .addtocart-button input {
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(180deg, #ef4444 0%, #d62828 100%) !important;
    color: #fff !important;
    box-shadow: 0 8px 16px rgba(214, 40, 40, 0.25) !important;
    font-weight: 700 !important;
}

#sp-primary #vmproduct .product-item .addtocart-area .addtocart-button input:hover,
#sp-primary-1 #vmproduct .product-item .addtocart-area .addtocart-button input:hover,
#sp-primary-2 #vmproduct .product-item .addtocart-area .addtocart-button input:hover,
#sp-primary .vmgroup.product-items .product-slide .product .addtocart-area .addtocart-button input:hover,
#sp-primary-1 .vmgroup.product-items .product-slide .product .addtocart-area .addtocart-button input:hover,
#sp-primary-2 .vmgroup.product-items .product-slide .product .addtocart-area .addtocart-button input:hover {
    background: linear-gradient(180deg, #d62828 0%, #a31515 100%) !important;
    box-shadow: 0 10px 22px rgba(163, 21, 21, 0.35) !important;
}

/* Module 322 (Kiemelt 2): enforce 4 products per row for mod_virtuemart_product default layout */
#sp-module-322 .vmproduct.productdetails .product-container.width25,
#sp-module-322 .vmproduct.productdetails .product-container.floatleft {
    float: left !important;
    width: 25% !important;
}

@media (max-width: 991px) {
    #sp-module-322 .vmproduct.productdetails .product-container.width25,
    #sp-module-322 .vmproduct.productdetails .product-container.floatleft {
        width: 50% !important;
    }
}

@media (max-width: 575px) {
    #sp-module-322 .vmproduct.productdetails .product-container.width25,
    #sp-module-322 .vmproduct.productdetails .product-container.floatleft {
        width: 100% !important;
    }
}

/* Fallback for VM core product module in primary positions when base VM width helpers are overridden */
#sp-primary .vmgroup > .vmproduct.productdetails .product-container.width25,
#sp-primary-1 .vmgroup > .vmproduct.productdetails .product-container.width25,
#sp-primary-2 .vmgroup > .vmproduct.productdetails .product-container.width25 {
    float: left !important;
    width: 25% !important;
}

#sp-primary .vmgroup > .vmproduct.productdetails .product-container.floatleft,
#sp-primary-1 .vmgroup > .vmproduct.productdetails .product-container.floatleft,
#sp-primary-2 .vmgroup > .vmproduct.productdetails .product-container.floatleft {
    float: left !important;
}

@media (max-width: 991px) {
    #sp-primary .vmgroup > .vmproduct.productdetails .product-container.width25,
    #sp-primary-1 .vmgroup > .vmproduct.productdetails .product-container.width25,
    #sp-primary-2 .vmgroup > .vmproduct.productdetails .product-container.width25 {
        width: 50% !important;
    }
}

@media (max-width: 575px) {
    #sp-primary .vmgroup > .vmproduct.productdetails .product-container.width25,
    #sp-primary-1 .vmgroup > .vmproduct.productdetails .product-container.width25,
    #sp-primary-2 .vmgroup > .vmproduct.productdetails .product-container.width25 {
        width: 100% !important;
    }
}

/* Hard lock for the primary-2 VM products module: 4 cards per row on desktop */
#sp-primary-2 .vmgroup > .vmproduct.productdetails > .product-container {
    float: left !important;
    width: 25% !important;
}

@media (max-width: 991px) {
    #sp-primary-2 .vmgroup > .vmproduct.productdetails > .product-container {
        width: 50% !important;
    }
}

@media (max-width: 575px) {
    #sp-primary-2 .vmgroup > .vmproduct.productdetails > .product-container {
        width: 100% !important;
    }
}
