/* ==========================================================================
   HQ Motor Service — Global styles (all screen sizes)
   Sections: Global, Topbar, Header, Bottom header, Archive,
   Product page, Services, Bulk order form, Home, Snippet templates
   ========================================================================== */

/* --------------------------------------------------------------------------
   Global
   -------------------------------------------------------------------------- */
.wpb_raw_code {
    margin-block-end: 0;
}

.wd-tools-count {
    color: #1d1d1c !important;
}

.wd-sticky-add-to-cart,
.single_add_to_cart_button {
    color: #fff !important;
}

.amount {
    color: #607D8B !important;
}

.in-stock,
.in-stock::before {
    color: #4caf50 !important;
}

.replies-count,
.btn-read-more {
    color: #1d1d1c !important;
}

.product-grid-item .wd-price-unit {
    font-size: 12px;
    font-weight: 600;
}

.warranty-section {
    padding-block-start: 80px !important;
    background-color: #f9fafc !important;
    margin-block-end: -40px !important;
}

.warranty-section .r1 .c1 {
    padding-block-end: 80px !important;
}

.warranty-section .r1 .c1 .woodmart-title-container {
    font-size: 32px;
    color: #607D8B;
}

/* --------------------------------------------------------------------------
   Topbar
   -------------------------------------------------------------------------- */
.whb-top-bar .menu .wd-nav-icon {
    color: #ffdd00;
}

.whb-top-bar .wd-header-my-account .wd-tools-text {
    font-weight: 800 !important;
}

.wcml-dropdown li {
    background: transparent;
    border: none;
}

.wcml-dropdown a.wcml-cs-item-toggle {
    font-family: "Mulish", Arial, Helvetica, sans-serif;
    font-weight: 800;
    font-size: 12px;
}

.wcml-cs-submenu {
    background-color: #fff !important;
}

.wcml-dropdown .wcml-cs-submenu li a {
    color: #1d1d1c;
}

.wcml-cs-active-currency:hover {
    background-color: transparent !important;
}

/* --------------------------------------------------------------------------
   Header
   -------------------------------------------------------------------------- */
.wd-header-cart .amount {
    color: #fff !important;
    font-weight: 800 !important;
}

.header-search .product-wrapper {
    padding: 8px !important;
}

.searchsubmit {
    color: #1d1d1c !important;
}

.wd-dropdown-search-cat {
    width: calc(var(--wd-search-cat-w) - 1px) !important;
}

.wd-search-requests ul a {
    border-color: #1d1d1c !important;
    color: #1d1d1c !important;
}

/* --------------------------------------------------------------------------
   Bottom header
   -------------------------------------------------------------------------- */
.whb-header-bottom .part-types-menu-item {
    margin-bottom: 0;
}

.whb-header-bottom #menu-part-types {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 10px;
}

.whb-header-bottom #menu-part-types li {
    margin-bottom: 4px;
}

.whb-header-bottom #menu-part-types li a {
    padding-block: 8px;
    color: var(--sub-menu-color);
    font-size: 14px;
    line-height: 1.3;
}

.whb-header-bottom .whb-col-right {
    margin-inline-end: 0;
}

.whb-header-bottom-inner .whb-col-right {
    background-color: #302f2f !important;
}

/* --------------------------------------------------------------------------
   Archive (shop / category / brand listings)
   -------------------------------------------------------------------------- */
.archive .archive-description {
    margin-block-start: -25px !important;
}

.archive .widget-area .wd-heading {
    padding-block: 10px !important;
    justify-content: space-between;
}

.archive .widget-area .wd-heading::before {
    content: 'Filter';
    font-size: 18px;
    font-weight: 700;
    color: #333;
}

.archive .widget-area .wd-heading .close-side-widget {
    font-size: 0;
}

.archive .widget-area .wd-heading .close-side-widget a::before {
    font-size: 14px;
    margin: 0;
    background-color: #efefef;
    color: #121212;
    padding: 6px;
}

.archive .widget-area .wd-widget-collapse .widget-title:after,
.archive .widget-area .wc-layered-nav-term .count {
    border-radius: 0;
}

.archive .widget-area .wc-layered-nav-term.wd-active .count,
.archive .widget-area .wd-filter-list .wc-layered-nav-term a:hover + .count,
.archive .widget-area .wd-filter-list .wc-layered-nav-term.wd-active .count {
    color: #121212;
}

.archive .widget-area > .vc_column-inner {
    padding-block-start: 15px !important;
}

.archive .widget-area .widget {
    margin-block-end: 15px !important;
    padding-block-end: 15px !important;
}

.archive .archive-header .archive-header-row {
    padding: 0 !important;
    background-color: #f8f8f8 !important;
    margin-block-end: 20px !important;
    margin-inline: 0 !important;
}

.archive .archive-header .archive-header-row .archive-title .wd-woo-page-title {
    margin-block-end: 0;
}

.archive .archive-header .archive-header-row .archive-title .wd-woo-page-title .title {
    font-size: 18px;
    font-weight: 700;
    color: #1d1d1c;
}

.archive .archive-header .archive-header-row .result-count .wd-shop-result-count {
    margin-block-end: 0 !important;
    border: 1px solid #efefef !important;
    padding-block: 5px !important;
    padding-inline: 15px !important;
    background-color: #ffffff !important;
}

.archive .archive-header .archive-header-row .result-count .wd-shop-result-count .woocommerce-result-count {
    color: #1d1d1c !important;
    font-size: 14px;
}

.archive .archive-header .archive-header-row .order-filter > .vc_column-inner {
    padding-inline-end: 0 !important;
}

.archive .archive-header .archive-header-row .order-filter .wd-shop-ordering {
    margin-block-end: 0;
}

.archive .archive-header .archive-header-row .order-filter .wd-shop-ordering .woocommerce-ordering.wd-style-underline .orderby {
    text-align: end;
}

.archive .archive-header .archive-header-row .order-filter .wd-off-canvas-btn a {
    padding: 22px;
    background-color: var(--wd-primary-color);
    border-inline-start: 2px solid #fff;
    font-size: 0;
}

.archive .archive-header .archive-header-row .order-filter .wd-off-canvas-btn a .wd-action-icon {
    margin: 0;
}

.archive .archive-header .wd-shop-active-filters {
    margin-block-end: 20px;
}

.archive .archive-footer {
    margin-block-end: 0 !important;
}

/* --------------------------------------------------------------------------
   Product page
   -------------------------------------------------------------------------- */
.single-product .product-nav {
    margin-block-start: -20px !important;
}

.single-product .product-nav .wpb_wrapper {
    padding-block-end: 15px;
    margin-block-end: 20px;
    border-block-end: 1px solid #e8e8e8;
}

.single-product .wd-single-breadcrumbs,
.single-product .wd-single-nav {
    margin-block-end: 0;
}

.single-product .product-details {
    margin-block-end: 40px !important;
}

.single-product .product-details .c1 .wd-single-gallery {
    margin-block-end: 20px !important;
}

.single-product .product-details .c1 .wd-text-block {
    line-height: 21px;
    font-size: 11px;
    color: #1d1d1c;
    margin-block-end: 0;
    border-block-start: 1px solid #e8e8e8;
    padding-block-start: 10px;
}

.single-product .product-details .c2 {
    padding-inline-start: 30px !important;
}

.single-product .product-details .wd-single-countdown {
    display: flex;
    align-items: stretch;
    margin-block-end: 0;
}

.single-product .product-details .wd-single-countdown .wd-el-title {
    color: #fff !important;
    background-color: #3a9f3e;
    padding: 10px;
    padding-inline-start: 20px;
    text-wrap: nowrap;
    margin-block-end: 20px !important;
}

.single-product .product-details .wd-single-countdown .wd-product-countdown {
    background-color: #3a9f3e;
    padding: 10px;
    flex: 1 1 auto;
    margin-block-end: 20px !important;
}

.single-product .product-details .wd-single-countdown .wd-product-countdown > span {
    padding: 0 !important;
    box-shadow: none !important;
    background-color: rgba(255, 255, 255, 0.1);
}

.single-product .product-details .wd-single-countdown .wd-product-countdown > span * {
    color: #fff !important;
}

.single-product .product-details .wd-single-title {
    margin-block-end: 20px !important;
}

.single-product .product-details .product-meta {
    margin-inline: 0 !important;
    margin-block-end: 20px !important;
}

.single-product .product-details .product-meta .vc_column-inner {
    padding: 0 !important;
}

.single-product .product-details .product-meta .vc_column-inner .wpb_wrapper {
    display: flex;
    align-items: stretch;
    gap: 10px;
}

.single-product .product-details .product-meta .wd-single-meta {
    margin-block-end: 0;
    height: 40px;
}

.single-product .product-details .product-meta .wd-single-meta .product_meta {
    margin: 0;
    height: 100%;
}

.single-product .product-details .product-meta .wd-single-meta .product_meta .sku_wrapper {
    padding: 5px 12px;
    background-color: #607d8b;
    margin: 0;
    height: 100%;
    display: flex;
    align-items: center;
    gap: 5px;
}

.single-product .product-details .product-meta .wd-single-meta .product_meta .sku_wrapper span {
    color: #fff !important;
}

.single-product .product-details .product-meta .wd-single-stock-status .stock {
    margin-block-end: 0 !important;
    height: 100% !important;
}

.single-product .product-details .product-meta .wd-single-stock-status .stock span {
    height: 100%;
    display: flex !important;
    align-items: center;
    gap: 5px;
}

.single-product .product-details .product-meta .wd-single-stock-status .stock span::before {
    margin: 0 !important;
}

.single-product .product-details .product-meta .wd-button-wrapper {
    margin-block-end: 0;
}

.single-product .product-details .product-meta .wd-button-wrapper .btn {
    line-height: unset;
    height: 40px;
    gap: 5px;
}
.wd-single-stock-status.wd-wpb.wd-enabled-width{
        line-height: unset;
    height: 40px;
}
.single-product .product-details .product-meta .wd-button-wrapper .btn .wd-btn-icon {
    margin: 0 !important;
}

.single-product .product-details .wd-single-rating,
.single-product .product-details .wd-single-price,
.single-product .product-details .wd-single-add-cart,
.single-product .product-details .wd-shipping-progress-bar {
    margin-block-end: 20px !important;
}

.single-product .product-details .wd-dynamic-discounts {
    margin-block-end: 20px !important;
    border: 1px solid #e8e8e8 !important;
    border-block-end: none !important;
}

.single-product .product-details .wd-dynamic-discounts th {
    font-size: 14px !important;
}

.single-product .product-details .wd-dynamic-discounts td,
.single-product .product-details .wd-dynamic-discounts th {
    padding-block: 10px !important;
}

.single-product .product-details .wishlist-compare {
    margin-block-end: 20px !important;
    border: 1px solid rgba(119, 119, 119, 0.2) !important;
    padding: 8px 15px !important;
    margin-inline: 0 !important;
}

.single-product .product-details .wishlist-compare .vc_column-inner {
    padding: 0 !important;
}

.single-product .product-details .wishlist-compare .wd-single-wishlist-btn {
    margin-block-end: 0;
    padding-inline-end: 20px;
    margin-inline-end: 20px;
    border-inline-end: 1px solid rgba(119, 119, 119, 0.2);
}

.single-product .product-details .wishlist-compare .wd-single-compare-btn {
    margin-block-end: 0 !important;
}

.single-product .product-details .wd-visits-count {
    background-color: #9e9e9e !important;
}

.single-product .product-details .wd-sold-count {
    background-color: #e91e63 !important;
}

.single-product .product-details .wd-visits-count,
.single-product .product-details .wd-sold-count {
    padding-block: 8px 10px !important;
    padding-inline: 20px !important;
    margin-block-end: 20px !important;
}

.single-product .product-details .c2 .wd-list {
    margin-block-end: 20px;
    padding-inline: 20px !important;
}

.single-product .product-details .c2 .wd-list li {
    align-items: flex-start !important;
}

.single-product .product-details .c2 .wd-list li a {
    text-decoration: underline;
}

.single-product .product-details .c2 .wd-list li .list-icon {
    margin-top: 6px;
}

.single-product .product-details .c2 .title-wrapper {
    margin-block-end: 10px !important;
    border-block-start: 1px solid #e8e8e8 !important;
    padding: 20px !important;
    padding-block-end: 0 !important;
}

/* --------------------------------------------------------------------------
   Services archive
   -------------------------------------------------------------------------- */
.post-type-archive-portfolio .portfolio-entry.masonry-item .entry-header {
    box-shadow: none;
}

.post-type-archive-portfolio .portfolio-enlarge {
    display: none;
}

/* --------------------------------------------------------------------------
   Services single
   -------------------------------------------------------------------------- */
.single-portfolio .s1 {
    margin-inline: 0 !important;
    padding-inline: 0 !important;
}

.single-portfolio .s1 .r1 {
    padding-block-end: 60px !important;
    margin-inline: 0 !important;
}

.single-portfolio .s1 .r1 .c1 {
    padding-inline-end: 50px !important;
}

.single-portfolio .s1 .r1 .c1 > .vc_column-inner {
    padding-inline: 0 !important;
}

.single-portfolio .s1 .r1 .c1 .woodmart-title-container,
.single-portfolio .s1 .r2 .c1 .woodmart-title-container,
.single-portfolio .s1 .r2 .c2 .woodmart-title-container {
    font-size: 28px;
    font-weight: 800;
    color: #121212;
}

.single-portfolio .s1 .r1 .c1 .title-after_title {
    text-align: justify;
}

.single-portfolio .s1 .r1 .c1 .wd-info-box {
    padding: 15px;
    background-color: rgb(255 221 4 / 10%);
    margin-block-end: 0;
}

.single-portfolio .s1 .r1 .c1 .wd-info-box .info-box-subtitle,
.single-portfolio .s1 .r1 .c1 .wd-info-box .info-box-inner {
    font-size: 18px;
    font-weight: 600;
    color: #242424;
}

.single-portfolio .s1 .r1 .c1 .wd-info-box .info-box-title {
    font-size: 36px;
    font-weight: 800;
    color: #242424;
}

.single-portfolio .s1 .r1 .c1 .wd-info-box.repair-kit {
    background-color: #4CAF50;
}

.single-portfolio .s1 .r1 .c1 .wd-info-box.repair-kit * {
    color: #fff;
}

.single-portfolio .s1 .r2 {
    margin-inline: 0 !important;
}

.single-portfolio .s1 .r2 .c2 {
    padding-inline-start: 50px !important;
}

.single-portfolio .s1 .r2 .c1 .vc_column-inner,
.single-portfolio .s1 .r2 .c2 .vc_column-inner {
    padding-inline: 0 !important;
}

/* --------------------------------------------------------------------------
   Bulk order form
   -------------------------------------------------------------------------- */
.form-container,
.fields-container,
.submit {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
}

.fields-row {
    display: flex;
    align-items: stretch;
    gap: 20px;
}

.submit .fields-row {
    flex-direction: column;
}

.field {
    width: 100%;
    border: 1px solid #e8e8e8;
    background-color: rgb(246 246 246);
    transition-duration: .3s;
}

.submit .field {
    border: none;
    background-color: transparent;
}

.field:hover {
    border-color: #aaaaaa;
}

input[type='email'],
input[type='date'],
input[type='search'],
input[type='number'],
input[type='text'],
input[type='tel'],
input[type='url'],
input[type='password'],
textarea,
select {
    background-color: rgb(246 246 246);
    font-weight: 500;
}

[data-class="wpcf7cf_group"] {
    width: 100%;
}

.field label {
    padding: 10px;
    margin-block-end: 0;
    background-color: #fff;
    font-weight: 500;
}

.form-container textarea {
    resize: none;
    min-height: 190px;
    height: 190px;
    background-color: transparent;
}

/* intl-tel-input flag/dial-code spacing */
.intl-tel-input .flag-container {
    padding: 0;
}

.intl-tel-input .selected-flag {
    padding-inline-start: 11px;
}

.intl-tel-input.separate-dial-code.iti-sdc-2 input,
.intl-tel-input.separate-dial-code.iti-sdc-2 input[type=tel],
.intl-tel-input.separate-dial-code.iti-sdc-2 input[type=text] {
    padding-left: 69px;
}

.intl-tel-input.separate-dial-code.iti-sdc-2 .selected-flag {
    width: 63px;
}

.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input,
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input[type=tel],
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input[type=text] {
    padding-left: 79px;
}

.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 .selected-flag {
    width: 73px;
}

.intl-tel-input.separate-dial-code.iti-sdc-3 input,
.intl-tel-input.separate-dial-code.iti-sdc-3 input[type=tel],
.intl-tel-input.separate-dial-code.iti-sdc-3 input[type=text] {
    padding-left: 77px;
}

.intl-tel-input.separate-dial-code.iti-sdc-3 .selected-flag {
    width: 71px;
}

.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input,
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input[type=tel],
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input[type=text] {
    padding-left: 87px;
}

.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 .selected-flag {
    width: 81px;
}

.intl-tel-input.separate-dial-code.iti-sdc-4 input,
.intl-tel-input.separate-dial-code.iti-sdc-4 input[type=tel],
.intl-tel-input.separate-dial-code.iti-sdc-4 input[type=text] {
    padding-left: 85px;
}

.intl-tel-input.separate-dial-code.iti-sdc-4 .selected-flag {
    width: 79px;
}

.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input,
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input[type=tel],
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input[type=text] {
    padding-left: 95px;
}

.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 .selected-flag {
    width: 89px;
}

.intl-tel-input.separate-dial-code.iti-sdc-5 input,
.intl-tel-input.separate-dial-code.iti-sdc-5 input[type=tel],
.intl-tel-input.separate-dial-code.iti-sdc-5 input[type=text] {
    padding-left: 93px;
}

.intl-tel-input.separate-dial-code.iti-sdc-5 .selected-flag {
    width: 87px;
}

.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input,
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input[type=tel],
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input[type=text] {
    padding-left: 103px;
}

.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 .selected-flag {
    width: 97px;
}

.country-select .flag-dropdown {
    padding: 0;
}

.country-select.inside .selected-flag {
    width: 49px;
    padding-inline-start: 11px;
    background-color: rgba(0, 0, 0, .05);
}

.country-select.inside input,
.country-select.inside input[type=text] {
    padding-inline-start: 55px;
}

.wpcf7-response-output {
    margin-block-end: 0 !important;
    margin-block-start: 30px !important;
}

.required-field {
    color: #f44336;
    padding-inline-start: 5px;
}

.wpcf7-not-valid-tip {
    font-size: 0;
}

.pictures-row .field div {
    height: calc(var(--wd-form-height) + 7px);
    display: flex;
    align-items: center;
    background-color: #f6f6f6;
    padding-inline: 12px;
}

/* --------------------------------------------------------------------------
   Home
   -------------------------------------------------------------------------- */
.home .s1 {
    margin-block-start: -20px !important;
    margin-inline: 0 !important;
}

.home .s1 .r1 .c1 > .vc_column-inner {
    background-color: rgba(29, 29, 28, 0.05);
    padding: 20px !important;
}

.home .s1 .r1 .c1 > .vc_column-inner > .wpb_wrapper {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
}

.home .s1 .r1 .c1 .search-title {
    padding: 10px 15px;
    background-color: #1d1d1c;
    margin-block-end: 10px;
}

.home .s1 .r1 .c1 .search-title .woodmart-title-container {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #fff;
}

.home .s1 .r1 .c1 .wd-product-filters-wrapp,
.home .s1 .r1 .c1 .or-title,
.home .s1 .r1 .c1 .part-number-search {
    margin-block-end: 10px;
}

.home .s1 .r1 .c1 .or-title .woodmart-title-container {
    font-size: 20px !important;
    font-weight: 700 !important;
}

.home .s1 .r1 .c1 .wd-pf-title,
.home .s1 .r1 .c1 .part-number-search .s {
    border: 1px solid #ccc !important;
    background-color: #fbfbfb;
}

.home .s1 .r1 .c1 .wd-pf-btn button {
    width: 100% !important;
}

.home .s1 .r1 .c1 .part-number-search .autocomplete-suggestion {
    padding-block: 8px !important;
}

.home .s1 .r1 .c1 .part-number-search .view-all-results {
    height: 39px;
    text-align: start;
    line-height: 38px;
    padding-inline: 15px;
    text-transform: none;
    background-color: rgb(0 0 0 / 3%);
}

.home .s1 .r1 .c1 .part-number-search .view-all-results span {
    font-size: 14px;
}

.home .s1 .r1 .c2 > .vc_column-inner {
    padding: 0 !important;
}

.home .s1 .r1 .c2 .wd-nav-pagin {
    border-radius: 0;
}

.home .s2 {
    padding: 15px !important;
}

.home .s2 .r1 .c1 .wd-carousel-container {
    margin-block-end: 0;
}

.home .s2 .r1 .c1 .wd-carousel-container .wd-info-box {
    padding: 20px !important;
    border: 2px solid rgba(29, 29, 28, 0.03);
    transition-duration: .3s;
}

.home .s2 .r1 .c1 .wd-carousel-container .wd-info-box:hover {
    border-color: var(--wd-primary-color);
}

.home .s3 {
    padding-block: 15px !important;
}

.home .s4 {
    padding-block: 45px 15px !important;
}

.home .s5 {
    padding-block: 80px !important;
    background-color: #f1f3f8 !important;
}

.home .s5 .r1 .c1 {
    padding-block-end: 20px !important;
}

.home .s5 .r1 .c1 .title-wrapper,
.home .s5 .r1 .c1 .wd-button-wrapper {
    margin-block-end: 0;
}

.home .s5 .r1 .c2 .vc_column-inner {
    padding-inline-end: 0 !important;
}

.home .s5 .r1 .c2 .wd-carousel-container {
    background-color: #fff;
    margin-block-end: 0 !important;
}

.home .s5 .r1 .c3 .vc_column-inner {
    background-color: #fff;
    padding: 15px !important;
    border: 1px solid #e4e4e4;
    border-inline-start: 0 !important;
}

.home .s5 .r1 .c3 .wpb_wrapper {
    height: 100%;
}

.home .s5 .r1 .c3 .info-box-wrapper {
    height: 100%;
}

.home .s5 .r1 .c3 .wd-info-box {
    gap: 12px !important;
    height: 100%;
    margin-block-end: 0;
}

.home .s5 .r1 .c3 .info-box-content {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
}

.home .s5 .r1 .c3 .info-box-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #333 !important;
}

.home .s5 .r1 .c3 .info-box-inner {
    font-size: 14px;
    color: #555;
    margin: 0;
}

.home .s5 .r1 .c3 .info-btn-wrapper {
    margin-block-start: auto !important;
}

.home .s5 .r1 .c3 .wd-info-box .btn {
    width: 100%;
}

.home .s6 {
    padding-block: 70px !important;
}

.home .s6 .r1 .c1 .wd-carousel-container,
.home .s7 .r1 .c1 .wd-carousel-container {
    margin-block-end: 0 !important;
}

.home .s7 {
    padding-block-end: 40px !important;
}

.home .no-stars .star-rating {
    display: none !important;
}

/* --------------------------------------------------------------------------
   Brands grid (brands-grid.php snippet)
   -------------------------------------------------------------------------- */
.brand-list-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 24px;
}

.brand-list-grid .brand-item {
    text-align: center;
    background-color: #f6f6f6;
    padding: 15px;
    border: 2px solid #fff;
    transition-duration: .3s;
}

.brand-list-grid .brand-item:hover {
    border-color: var(--wd-primary-color);
}

.brand-list-grid .brand-item a {
    text-decoration: none;
    color: inherit;
    display: block;
}

.brand-list-grid .brand-item img {
    width: 100px;
    height: 100px;
    object-fit: contain;
    margin: 0 auto 10px;
    display: block;
}

.brand-list-grid .brand-item h3 {
    margin: 0 0 5px;
    font-size: 1.1em;
    font-weight: 600;
    color: #333;
}

.brand-list-grid .product-count {
    font-size: 0.9em;
    color: #666;
}

/* --------------------------------------------------------------------------
   Models-by-brand accordion (models-by-brand.php snippet)
   -------------------------------------------------------------------------- */
.models-brand-accordion {
    border: 1px solid #ddd;
    border-bottom: none;
}

.mba-item {
    border-bottom: 1px solid #ddd;
}

.mba-header {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 14px 16px;
    background: #f5f5f5;
    border: none;
    cursor: pointer;
    text-align: left;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
}

.mba-header:hover {
    background: #ececec;
}

.mba-item.open .mba-header {
    border-bottom: 1px solid #ddd;
}

.mba-count {
    margin-left: auto;
    font-size: 13px;
    font-weight: 400;
    color: #777;
    white-space: nowrap;
}

.mba-arrow {
    width: 8px;
    height: 8px;
    border-right: 2px solid #777;
    border-bottom: 2px solid #777;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.mba-item.open .mba-arrow {
    transform: rotate(-135deg);
}

.mba-panel {
    padding: 12px 16px 16px;
    background: #fff;
}

.mba-models {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 8px;
}

.mba-models li {
    margin: 0;
}

.mba-models a {
    display: flex;
    align-items: baseline;
    gap: 6px;
    padding: 6px 8px;
    font-size: 14px;
    color: #333;
    text-decoration: none;
    border: 1px solid #e5e5e5;
}

.mba-models a:hover {
    background: #f5f5f5;
    border-color: #ccc;
    color: #000;
}

.mba-model-count {
    font-size: 12px;
    color: #999;
}

.mba-model-count::before { content: "("; }
.mba-model-count::after { content: ")"; }

@media (max-width: 600px) {
    .mba-header {
        padding: 12px;
        font-size: 15px;
    }

    .mba-models {
        grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    }
}

/* --------------------------------------------------------------------------
   Categories A-Z (categories-az.php snippet)
   -------------------------------------------------------------------------- */
.cats-az-filter {
    display: flex;
    gap: 4px;
    margin-bottom: 16px;
}

.cats-az-letter {
    flex: 1 1 0;
    min-width: 0;
    padding: 6px 0;
    background: #f5f5f5;
    border: 1px solid #ddd;
    font-size: 13px;
    font-weight: 600;
    color: #333;
    cursor: pointer;
    text-align: center;
}

.cats-az-letter:hover:not(:disabled) {
    background: #ececec;
}

.cats-az-letter.active {
    background: #1a1a1a;
    border-color: #1a1a1a;
    color: #fff;
}

.cats-az-letter:disabled {
    color: #bbb;
    background: #fafafa;
    cursor: default;
}

.cats-az-grid {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 8px;
}

.cats-az-grid li {
    margin: 0;
}

.cats-az-grid a {
    display: flex;
    align-items: baseline;
    gap: 6px;
    padding: 10px 12px;
    font-size: 14px;
    color: #333;
    text-decoration: none;
    border: 1px solid #e5e5e5;
}

.cats-az-grid a:hover {
    background: #f5f5f5;
    border-color: #ccc;
    color: #000;
}

.cats-az-count {
    font-size: 12px;
    color: #999;
}

.cats-az-count::before { content: "("; }
.cats-az-count::after { content: ")"; }

.cats-az-empty {
    color: #777;
    font-size: 14px;
}

/* Tablet: letter bar wraps into rows with comfortable touch targets */
@media (max-width: 900px) {
    .cats-az-filter {
        flex-wrap: wrap;
    }

    .cats-az-letter {
        flex: 0 0 auto;
        min-width: 40px;
        padding: 8px 0;
    }
}

/* Phone: 7 equal columns per row, easy to tap */
@media (max-width: 600px) {
    .cats-az-filter {
        display: grid;
        grid-template-columns: repeat(7, 1fr);
    }

    .cats-az-letter {
        min-width: 0;
        padding: 8px 0;
    }

    .cats-az-grid {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    }
}

/* --------------------------------------------------------------------------
   Shipping message (shipping.php snippet)
   -------------------------------------------------------------------------- */
#shipping-message-container .shipping-notice {
    padding-inline-start: 6px;
}
