:root {
    --active-breadcrumbs-category: #a8ff78;
    --desktop-side-padding: 4%;
    --mobile-side-padding: 1%;

    --lifestyle-desktop-side-padding: 3%;
    --lifestyle-mobile-side-padding: 2%;

    --brand-circle-size: 80px;
    --desktop-item-inner-padding: 20px;
    --desktop-lifestyle-inner-padding: 8px;
    --mobile-item-inner-padding: 10px;

    --max-item-height: 528px;
    font-size: 16px;
}

#slider,
#slider * {
    touch-action: none;
    -ms-touch-action: none;
}

.subcat_main_container {
    display: grid;
    grid-template-rows: 1fr;
    grid-template-columns: var(--desktop-side-padding) 1fr var(--desktop-side-padding);
    font-family: Assistant, Heebo, arial;
}

.subcat_main_container.lifestyle {
    grid-template-columns: var(--desktop-lifestyle-inner-padding) 1fr var(--desktop-lifestyle-inner-padding);
}

.subcat_main_container > * {
    grid-column: 2;
}

.subcat_main_container .banner_container {
    grid-column: 1 / -1;
    max-height: 235px;
}

.subcat_main_container .banner_container img {
    width: 100%;
    max-height: inherit;
}

.subcat_main_container .bread_crumbs {
    margin-top: 37px;
    font-size: 16px;
}

.bread_crumbs a {
    color: white;
}

.bread_crumbs span {
    color: white;
}

.bread_crumbs span:nth-last-child(-n+2) {
    color: var(--active-breadcrumbs-category);
}

.subcat_main_container .brand_filters_container {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 26px;
    margin: 20px auto;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    justify-self: center;
    align-items: center;
}

.subcat_main_container .brand_filters_container .brand {
    cursor: pointer;
    display: flex;
    align-items: center;
    flex-direction: column;
    transition: all 0.2s ease;
}

.subcat_main_container .brand_filters_container .brand.is-active .img_container {
    border: 3px solid #A8FF78;
}

.subcat_main_container .brand_filters_container .brand.is-active .brand_name.bubble {
    border-color: #A8FF78;
}

.subcat_main_container .brand_filters_container .brand.template {
    display: none;
}

.subcat_main_container .brand_filters_container .img_container {
    display: flex;
    height: var(--brand-circle-size);
    width: var(--brand-circle-size);
    background-color: white;
    border-radius: 450px;
}

.subcat_main_container .brand_filters_container .img_container img {
    width: 100%;
    border-radius: 450px;
    object-fit: contain;
}

.subcat_main_container .brand_filters_container .brand_name {
    text-align: center;
    color: white;
    margin-top: 12px;
    font-size: 16px;
}

.subcat_main_container .brand_filters_container .brand_name.bubble {
    border: 1px solid white;
    padding: 5px 24px;
    margin: unset;
    border-radius: 900px;
}

.subcat_main_container .filter_container {
    display: flex;
    justify-content: space-between;
    color: white;
    font-size: 16px;
    margin-bottom: 26px;
    margin-top: 17px;
}

.subcat_main_container .filter_container .item_results {
    display: flex;
    align-items: center;
    gap: 5px;
}

.subcat_main_container .filter_container .filter_btn {
    display: flex;
    border: 1px solid white;
    border-radius: 8px;
    padding: 4px 9px;
    cursor: pointer;
    font-weight: bold;
    gap: 9px;
    letter-spacing: 1px;
}

.subcat_main_container .gallery_item > *,
.subcat_main_container .gallery_item > * > * {
    margin: unset;
}

.subcat_main_container #container_items {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(48%, 1fr));
    grid-template-rows: repeat(auto-fit, minmax(var(--max-item-height), 1fr));
    gap: 31px 20px;
    height: fit-content;
}

.subcat_main_container.lifestyle #container_items {
    grid-template-columns: repeat(auto-fit, minmax(50%, 1fr));
}

.subcat_main_container.lifestyle #container_items .gallery_item {
    max-width: unset;
}

.subcat_main_container #container_items .gallery_item {
    background-color: white;
    border-radius: 7px;
    padding: 12px var(--mobile-item-inner-padding) 2px;
    height: var(--max-item-height) !important;
    max-width: 344px;
}

.subcat_main_container #container_items .gallery_item a {
    display: grid;
    grid-template-rows: 2fr 1fr;
    width: 100%;
    height: 100%;
}

.subcat_main_container #container_items .gallery_item.product-card--layout-life a {
    grid-template-rows: 75% 1fr;
}

.gallery_item a .product-card__image-row .product-card__image {
    height: 300px;
    object-fit: contain;
}

.gallery_item .product-card__top-badge,
.gallery_item a .product-card__meta .product-card__badge {
    display: none;
}

.gallery_item a .product-card__body {
    display: grid;
}

.gallery_item a .product-card__meta {
    border-top: 1px solid #c1c1c1;
    padding: 13px 0 0px;
    height: max-content;
    font-weight: bold;
    font-size: 16px;
}

.gallery_item .product-card__favorite {
    position: absolute;
    top: -14px;
    left: 0%;
    height: 28px;
    width: 28px !important;
    padding: 15px;
}

.gallery_item a .product-card__titles {
    margin-bottom: 12px;
    font-size: 16px;
}

.gallery_item a .product-card__bottom-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.gallery_item a .product-card__bottom-row .product-card__warranty-row {
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: bold;
}

.product-card--layout-life .item_price_in_eilat {
    display: none;
}

.product-card--layout-life .product-card__content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 20px;
}

.product-card--layout-life .product-card__price-wrap {
    margin: unset !important;
}

.product-card--layout-life .product-card__price-wrap .item_htz_card_price {
    display: none;
}

.product-card--layout-life .item_price {
    margin: unset !important;
}

.gallery_item a .product-card__image-wrapper {
    height: 90%;
}

.gallery_item a .product-card__image-hero {
    height: 100%;
}

.gallery_item a .product-card__image-hero .product-card__image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.gallery_item a .product-card__price-row {
    display: flex;
}

.gallery_item a .product-card__price-row .price_wrap {
    margin: unset !important;
}

.gallery_item a .product-card__price-row .price_wrap > *,
.product-card--layout-life .item_price {
    color: #c91413;
}

.gallery_item a .product-card__price-row .item_price_in_eilat {
    display: none;
}

.gallery_item a img.product-card__brand-logo {
    width: auto !important;
    height: 30px;
}

.gallery_item a .product-card__image-wrap img {
    width: 100%;
}

.gallery_item a .product-card__rating .num_reviews {
    display: none;
}

.gallery_item a .product-card__price-row .product-card__warranty-row {
    display: flex;
    white-space: nowrap;
    align-items: center;
    gap: 5px;
    font-weight: bold;
}

.subcat_main_container .gallery_item .item_img-homepage {
    grid-row: 1;
}

.subcat_main_container .gallery_item .item_text {
    grid-row: 2;
}

.subcat_main_container .gallery_item .rating_wrapper {
    width: 100%;
    grid-row: 3;
}

.subcat_main_container .gallery_item .item_img-homepage img {
    width: 100%;
    object-fit: contain;
}

.subcat_main_container .gallery_item .item_price_before_discount {
    display: none;
}

.subcat_main_container .gallery_item .itemCorner,
.subcat_main_container .gallery_item .top_item {
    display: none;
}

.subcat_main_container .gallery_item .sale_flag_element {
    right: 0 !important;
    transform: translateY(15px);
}

.subcat_main_container .gallery_item .brand_logo {
    right: 0 !important;
}

.subcat_main_container .gallery_item .bottom_gallery_wrapper .warranty-row.no-delivery {
    width: max-content;
    margin-right: 0;
}

.bottom_gallery_wrapper {
    width: 100%;
}

.subcat_main_container #filter-form {
    display: flex;
    flex-direction: column;
    height: -webkit-fill-available;
    background-color: #444444;
    padding: 20px 0;
    z-index: 999999999999999999999999;
    position: relative;
}

.subcat_main_container #filter-form > * {
    padding: 0 20px;
}

.subcat_main_container #filter-form .btns-container {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    align-items: flex-start;
    margin-top: 15px;
}

.subcat_main_container #filter-form .btns-container > * {
    padding: 10px 60px;
    border-radius: 31px;
    cursor: pointer;
}

.subcat_main_container #filter-form .btns-container .show-all {
    background: linear-gradient(90deg, #78FFD6 0%, #A8FF78 99.38%);
    color: black;
}

.subcat_main_container #filter-form .btns-container .clear-filter {
    background: transparent;
    color: white;
    border: 1px solid white;
}

.subcat_main_container #filter-form h2 {
    display: flex;
    justify-content: space-between;
    color: white;
    font-weight: bold;
    font-size: 22px;
    padding: unset;
    margin: 0 33px 16px 22px;
}

.subcat_main_container #filter-form h2 span {
    padding: 0 20px 0 0;
    cursor: pointer;
    height: 30px;
}

.subcat_main_container #filter-form h2 svg {
    height: 100%;
    width: 100%;
}

.subcat_main_container #filter-form h2 svg > * {
    fill: white;
}

.subcat_main_container #filter-form .filters {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.subcat_main_container #filter-form .feature {
    padding-bottom: 20px;
}

.subcat_main_container #filter-form .title {
    font-size: 16px;
    font-weight: bold;
    border-top: 1px solid #979797;
    line-height: unset;
    padding-top: 22px;
    padding-bottom: 11px;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
}

.subcat_main_container #filter-form .feature.has_expand .title {
    cursor: pointer;
}

.subcat_main_container #filter-form .feature.has_expand .filters {
    max-height: 115px;
    overflow-y: hidden;
}

.subcat_main_container #filter-form .feature.has_expand.expanded .filters {
    max-height: 450px;
}

.subcat_main_container #filter-form .feature.has_expand .title::after {
    content: "";
    display: inline-block;
    width: 13px;
    height: 13px;
    margin-right: 8px;

    background: no-repeat center / contain url("data:image/svg+xml,%3Csvg%20width='13'%20height='13'%20viewBox='0%200%2013%2013'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M11.825%207.27694H7.27694V11.825C7.27694%2012.0663%207.18111%2012.2976%207.01052%2012.4682C6.83993%2012.6388%206.60857%2012.7346%206.36732%2012.7346C6.12608%2012.7346%205.89471%2012.6388%205.72413%2012.4682C5.55354%2012.2976%205.45771%2012.0663%205.45771%2011.825V7.27694H0.909618C0.668372%207.27694%200.437007%207.18111%200.266421%207.01052C0.0958346%206.83993%200%206.60857%200%206.36732C0%206.12608%200.0958346%205.89471%200.266421%205.72413C0.437007%205.55354%200.668372%205.45771%200.909618%205.45771H5.45771V0.909618C5.45771%200.668372%205.55354%200.437007%205.72413%200.266421C5.89471%200.0958342%206.12608%200%206.36732%200C6.60857%200%206.83993%200.0958342%207.01052%200.266421C7.18111%200.437007%207.27694%200.668372%207.27694%200.909618V5.45771H11.825C12.0663%205.45771%2012.2976%205.55354%2012.4682%205.72413C12.6388%205.89471%2012.7346%206.12608%2012.7346%206.36732C12.7346%206.60857%2012.6388%206.83993%2012.4682%207.01052C12.2976%207.18111%2012.0663%207.27694%2011.825%207.27694Z'%20fill='white'/%3E%3C/svg%3E");

    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;

    transition: transform 0.2s ease;
}

.subcat_main_container #filter-form .feature.has_expand.expanded .title:after {
    content: '|';
    transform: rotate(90deg) translateY(-11px);
    background: unset;
}

.subcat_main_container #filter-form .title .gradient_color {
    background: linear-gradient(90deg, #A5FF7F -5.58%, #7CFFCF 91.18%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    display: inline-block;
}

.subcat_main_container #filter-form .filters .filter-box {
    display: flex;
    flex-direction: row-reverse;
}

/* Base checkbox */
.subcat_main_container #filter-form .filters input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
    padding: 0;

    width: 18px;
    height: 18px;

    box-sizing: border-box;
    border-radius: 3px;
    border: 2px solid #fff;
    background-color: transparent;

    cursor: pointer;
    display: inline-block;
    position: relative;
    vertical-align: middle;
    -webkit-transform: unset !important;
}

/* Focus */
.subcat_main_container #filter-form .filters input[type="checkbox"]:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.5);
    outline-offset: 2px;
}

/* Checked state */
.subcat_main_container #filter-form .filters input[type="checkbox"]:checked {
    background-color: #fff;
    border-color: #fff;
}

/* Centered black checkmark */
.subcat_main_container #filter-form .filters input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;

    width: 4px;
    height: 10px;

    border-right: 2px solid #000;
    border-bottom: 2px solid #000;

    top: 50%;
    left: 50%;
    transform: translate(-50%, -60%) rotate(45deg);
}

/* Label next to it */
.subcat_main_container #filter-form .filters .filter-label {
    display: inline-flex;
    flex-direction: row-reverse;
    width: 100%;
    gap: 6px;
    cursor: pointer;
    font-size: 16px;
    line-height: 1.2;
    color: white;
    height: 21px;
}

.subcat_main_container #filter-form .filters .filter-label__title {
    font-weight: 400;
}

.subcat_main_container #filter-form .filters input[type="checkbox"]:checked + .filter-label .filter-label__title,
.subcat_main_container #filter-form .filters input[type="checkbox"]:checked + .filter-label .filter-label__count {
    font-weight: 700;
}

/* PRICE FILTER LAYOUT */
.price-sorting {
    margin-top: 16px;
}

.price-sorting .slider-wrapper {
    margin-top: 8px;
}

.price-sorting .price-inputs {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    gap: 12px;
    margin-bottom: 12px;
    direction: rtl;
}

.price-sorting .price-pill {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 18px;
    border-radius: 999px;
    border: 1px solid #ffffff;
    box-sizing: border-box;
    font-size: 14px;
    color: #ffffff;
    white-space: nowrap;
}

.price-sorting .price-pill .currency,
.price-sorting .price-pill .price-text {
    top: unset;
}

.price-sorting .price-separator:before {
    content: '__';
}

.price-sorting .price-separator {
    color: #ffffff;
    font-size: 18px;
    line-height: 1;
}

.price-sorting .price-pill .currency {
    margin-left: 4px;
}

.price-sorting .price-pill .price-text {
    font-weight: 500;
}

.price-sorting #slider {
    width: 100%;
}

.subcat_main_container #filter-form .filters .filter-label__title {
    flex-basis: 100%;
}

body.no-scroll {
    position: fixed;
    width: 100%;
}

.subcat_main_container #filter-form .features-filtering {
    overflow: auto;
    direction: ltr;
    -webkit-overflow-scrolling: touch;
    flex: 1;
}

/* SORT-BY ACCORDION */
.subcat_main_container #filter-form .features-filtering .sort-by-container {
    display: flex;
    flex-direction: column;
    color: white;
    margin-bottom: 15px;

    transition: background-color 0.25s ease,
    padding 0.25s ease,
    border-radius 0.25s ease;
}

.subcat_main_container #filter-form .features-filtering .sort-by-container.has_expand .title {
    cursor: pointer;
    position: relative;
}

.subcat_main_container #filter-form .features-filtering .sort-by-container.has_expand .title::after {
    content: "";
    display: inline-block;
    width: 13px;
    height: 13px;
    margin-right: 8px;
    background: no-repeat center / contain url("data:image/svg+xml,%3Csvg%20width='13'%20height='13'%20viewBox='0%200%2013%2013'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M11.825%207.27694H7.27694V11.825C7.27694%2012.0663%207.18111%2012.2976%207.01052%2012.4682C6.83993%2012.6388%206.60857%2012.7346%206.36732%2012.7346C6.12608%2012.7346%205.89471%2012.6388%205.72413%2012.4682C5.55354%2012.2976%205.45771%2012.0663%205.45771%2011.825V7.27694H0.909618C0.668372%207.27694%200.437007%207.18111%200.266421%207.01052C0.0958346%206.83993%200%206.60857%200%206.36732C0%206.12608%200.0958346%205.89471%200.266421%205.72413C0.437007%205.55354%200.668372%205.45771%200.909618%205.45771H5.45771V0.909618C5.45771%200.668372%205.55354%200.437007%205.72413%200.266421C5.89471%200.0958342%206.12608%200%206.36732%200C6.60857%200%206.83993%200.0958342%207.01052%200.266421C7.18111%200.437007%207.27694%200.668372%207.27694%200.909618V5.45771H11.825C12.0663%205.45771%2012.2976%205.55354%2012.4682%205.72413C12.6388%205.89471%2012.7346%206.12608%2012.7346%206.36732C12.7346%206.60857%2012.6388%206.83993%2012.4682%207.01052C12.2976%207.18111%2012.0663%207.27694%2011.825%207.27694Z'%20fill='white'/%3E%3C/svg%3E");
    transition: transform 0.25s ease, opacity 0.25s ease;
}

.subcat_main_container #filter-form .features-filtering .sort-by-container.has_expand.is-open .title::after {
    content: '|';
    transform: rotate(90deg) translateY(-2px);
    background: unset;
}

.subcat_main_container #filter-form .features-filtering .sort-by-container .sort-by {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transform: translateY(-4px);
    transition: max-height 0.25s ease, opacity 0.25s ease, transform 0.25s ease;
    display: flex;
    gap: 9px;
    font-size: 16px;
    flex-direction: column;
    direction: rtl;
}

.subcat_main_container #filter-form .features-filtering .sort-by-container.is-open .sort-by {
    max-height: 300px;
    opacity: 1;
    transform: translateY(0);
}

.subcat_main_container #filter-form .features-filtering .sort-by-container.is-open {
    padding: 0px 0px 12px;
}

/* FEATURE ACCORDION ANIMATION */
.subcat_main_container #filter-form .feature.has_expand .filters {
    max-height: 115px;
    overflow-y: hidden;
    transition: max-height 0.25s ease;
}

.subcat_main_container #filter-form .feature.has_expand.expanded .filters {
    max-height: 600px;
}

.subcat_main_container #filter-form .feature.has_expand.expanded .title:after {
    content: '|';
    transform: rotate(90deg) translateY(-11px);
}

.subcat_main_container #filter-form .features-filtering .sort-by-container .sort-by {
    display: flex;
    gap: 9px;
    font-size: 16px;
    flex-direction: column;
    direction: rtl;
}

.subcat_main_container #filter-form .slider-wrapper {
    direction: rtl;
}

.subcat_main_container #slider .ui-slider-handle {
    width: 14px;
    height: 14px;
    top: -6.5px;
    cursor: grab;
}

/* Label layout */
.sort-by .radio-pill {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    margin-bottom: 8px;
    color: #fff;
    font-size: 14px;
}

/* Base radio reset */
.sort-by .radio-pill input[type="radio"] {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;

    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 2px solid #ffffff;
    background: transparent;

    display: inline-block;
    position: relative;
    cursor: pointer;
}

.sort-by .radio-pill input[type="radio"]::before {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: 50%;
    background: transparent;
}

.sort-by .radio-pill input[type="radio"]:checked::before {
    background: radial-gradient(circle, #79FFD3 0%, #A7FF79 100%);
}

.sort-by .radio-pill input[type="radio"]:checked {
    border-color: #79FFD3;
}

.subcat_main_container .filters_container {
    right: 0;
    top: 0;
}

.subcat_main_container .filters_container {
    position: fixed;
    inset: 0;
    max-width: 420px;
    margin-left: auto;
    background: #fff;
    z-index: 100000000;
    transform: translateX(150%);
    transition: transform 0.25s ease;
    height: 100dvh;
    border-left-radius: 16px;
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
}

/* When open */
.subcat_main_container .filters_container.is-open {
    transform: translateX(0);
}

/* Full-screen dark overlay */
.subcat_main_container .filters_overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
            to left,
            rgba(0, 0, 0, 0.6) 0%,
            rgba(0, 0, 0, 0.4) 70%,
            rgba(0, 0, 0, 0.0) 100%
    );

    z-index: 99999999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    width: 100vw;
}

.subcat_main_container .filters_overlay.is-open {
    opacity: 1;
    pointer-events: auto;
}

body.no-scroll {
    overflow: hidden;
}

.horizontal-line {
    right: 0;
    width: 100%;
}

@media (min-width: 1200px) {
    .subcat_main_container.lifestyle {
        grid-template-columns: var(--lifestyle-desktop-side-padding) 1fr var(--lifestyle-desktop-side-padding);
    }

    .subcat_main_container .brand_filters_container {
        overflow-x: visible;
        gap: 65px;
    }

    .gallery_item a .product-card__price-row .price_wrap {
        margin-top: 9px !important;
    }

    .subcat_main_container #container_items .gallery_item {
        padding: 12px var(--desktop-item-inner-padding) 0;
    }

    .subcat_main_container #container_items {
        grid-template-columns: repeat(auto-fit, minmax(19%, 1fr)) !important;
    }

    .subcat_main_container.lifestyle #container_items {
        grid-template-columns: repeat(auto-fit, minmax(20%, 1fr)) !important;
    }

    .subcat_main_container #container_items .gallery_item a {
        overflow: hidden;
    }

    .subcat_main_container .gallery_item .item_img-homepage img {
        /*width: 80%;*/
    }
}

@media (min-width: 550px) and (max-width: 1200px) {
    .subcat_main_container.lifestyle #container_items {
        grid-template-columns: repeat(auto-fit, minmax(40%, 1fr));
    }
}

@media (max-width: 550px) {
    .subcat_main_container {
        grid-template-columns: 3% 94% 3%;
    }

    /* ✅ Tech gets tighter side padding so 2-cards fits earlier (fixes the "giant gap" / 1-card issue) */
    .subcat_main_container.tech {
        grid-template-columns: var(--mobile-side-padding) 1fr var(--mobile-side-padding);
    }
}

.item_price {
    letter-spacing: unset;
}

.gallery_item .price_wrap {
    width: 100%;
}

@media (max-width: 1199px) {
    .subcat_main_container #filter-form .btns-container {
        flex-wrap: wrap;
        gap: 12px;
        justify-content: center;
    }

    .subcat_main_container #filter-form .btns-container > * {
        flex: 1 1 100%;
        padding: 10px 20px;
        text-align: center;
    }
}

/* =========================================================
   GRID RULES (TECH + LIFESTYLE)
   - Tech: never lets a card go < 250px (drops columns instead)
   - Removes the weird 739/740 flip + "dead gaps" in tech
   ========================================================= */

.subcat_main_container #container_items {
    display: grid;
    height: fit-content;

    /* stop weird stretching rows */
    grid-template-rows: none !important;
    /*grid-auto-rows: var(--max-item-height);*/

    /* default gaps */
    gap: 31px 20px;

    align-content: start;
}

/* safety: grid items can shrink */
.subcat_main_container #container_items .gallery_item {
    min-width: 0;
    box-sizing: border-box;
}

/* -------------------------
   TECH (only)
   ------------------------- */

/* Make tech cards fill the grid cell => no empty “gaps” caused by max-width */
.subcat_main_container.tech #container_items .gallery_item {
    max-width: none !important;
    width: 100%;
    justify-self: stretch;
}

/* Default: 1 column */
.subcat_main_container.tech #container_items {
    grid-template-columns: 1fr !important;
}

/* >=544px: 2 columns
   (cards stay >=250px because tech side-padding becomes 1% on <=550px) */
@media (min-width: 544px) {
    .subcat_main_container.tech #container_items {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        /* smaller column gap helps keep 2 cards on small screens */
        gap: 31px 12px;
    }
}

/* >=860px: 3 columns (250px min per card) */
@media (min-width: 860px) {
    .subcat_main_container.tech #container_items {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 31px 20px;
    }
}

/* >=1280px: 4 columns */
@media (min-width: 1280px) {
    .subcat_main_container.tech #container_items {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

/* >=1600px: 5 columns (normal desktop) */
@media (min-width: 1600px) {
    .subcat_main_container.tech #container_items {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

/* >=3200px: 6 columns (ultra-wide only) */
@media (min-width: 3200px) {
    .subcat_main_container.tech #container_items {
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    }
}

/* LIFESTYLE */
.subcat_main_container.lifestyle #container_items {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

@media (min-width: 1025px) and (max-width: 1439px) {
    .subcat_main_container.lifestyle #container_items {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 500px) and (max-width: 1024px) {
    .subcat_main_container.lifestyle #container_items {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 499px) {
    .subcat_main_container.lifestyle #container_items {
        grid-template-columns: 1fr !important;
    }
}

/* make cards stretch (prevents wrap-jump) */
.subcat_main_container.lifestyle #container_items .gallery_item {
    max-width: none !important;
    width: 100%;
    justify-self: stretch;
}

.loading-spinner {
    display: flex;
    align-items: center;
    justify-content: center;
}

.loading-spinner .loading-animation {
    background-image: url(https://media.htzone.co.il/sale_mdl/HTZ_Loader_02_1.gif);
    background-size: cover;
    height: 400px;
    width: 400px;
}

.subcat_main_container #container_items .grid-spacer {
    visibility: hidden;
    height: 0;
    padding: 0;
    margin: 0;
}

#container_items .grid-spacer {
    visibility: hidden;
    pointer-events: none;
}

/* Banner must participate in layout (no overlap) */
#container_items .category-banner {
    grid-column: 1 / -1 !important;
    width: 100%;
    display: block;
    position: relative;
    z-index: 1;
}

#container_items .category-banner img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 300px;
    object-fit: fill;
}

/* Safety: prevent grid items from painting over the banner */
#container_items > * {
    position: relative;
    z-index: 2;
}

#container_items .category-banner {
    z-index: 1;
}

#container_items #lazy_sentinel {
    grid-column: 1 / -1;
    height: 1px;
    width: 100%;
    pointer-events: none;
}

#lazy_sentinel{
    height: 1px;
    width: 100%;
    pointer-events: none;
}