
/*сетка каталога*/
:root {
    /* Десктоп под 1360px */
    --grid1360: 1fr 1fr 1fr;
    --gap1360: 20px;
    --heightImg1920: 280px !important;

    /* 1200–1359px */
    --gridDesktop: 1fr 1fr 1fr;
    --gapDesktop: 20px;
    --heightImgDesktop: 260px !important;

    /* 960–1199px */
    --gridTabletLarge: 1fr 1fr 1fr;
    --gapTabletLarge: 20px;
    --heightImgTabletLarge: 200px !important;
    --fontSizeTitleTabletLarge: 18px;
    --fontSizeDescrTabletLarge: 16px;
    --fontSizePriceTabletLarge: 20px;
    --fontSizeOldPriceTabletLarge: 14px;

    /* 640–959px */
    --gridTabletSmall: 1fr 1fr;
    --gapTabletSmall: 15px;
    --heightImgTabletSmall: 210px !important;
    --fontSizeTitleTabletSmall: 18px;
    --fontSizeDescrTabletSmall: 15px;
    --fontSizePriceTabletSmall: 18px;
    --fontSizeOldPriceTabletSmall: 14px;

    /* до 640px */
    --gridMobile: 1fr;
    --gapMobile: 18px !important;
    --heightImgMobile: 280px !important;
    --fontSizeTitleMobile: 20px;
    --fontSizeDescrMobile: 16px;
    --fontSizePriceMobile: 24px;
    --fontSizeOldPriceMobile: 10px;
}

/* базовые правки */
.js-store-grid-cont:before { 
    display: none; 
}

.t-store__card__wrap_all { 
    height: 100% !important; 
}

.t-store__grid-separator { 
    display: none; 
}

.js-product:not(.js-product-relevant),
.t-store__stretch-col {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* общий контейнер списка карточек */
.js-store-grid-cont .t-store__card-list {
    width: 100%;
    box-sizing: border-box;
}

/* >=1360px */
@media screen and (min-width: 1360px) {
    .js-store-grid-cont {
        max-width: 1360px;
        padding: 0 20px;
        box-sizing: border-box;
        margin: 0 auto;
    }

    .js-store-grid-cont .t-store__card-list {
        display: grid !important;
        grid-template-columns: var(--grid1360);
        grid-gap: var(--gap1360);
        row-gap: var(--gap1360) !important;
        column-gap: var(--gap1360) !important;
    }

    .t-store__card__imgwrapper {
        height: var(--heightImg1920);
        padding-bottom: 0 !important;
    }
}

/* 1200–1359px */
@media (min-width: 1200px) and (max-width: 1359px) {
    .js-store-grid-cont {
        padding: 0 20px;
        box-sizing: border-box;
        margin: 0 auto;
    }

    .js-store-grid-cont .t-store__card-list {
        display: grid !important;
        grid-template-columns: var(--gridDesktop);
        grid-gap: var(--gapDesktop);
        row-gap: var(--gapDesktop) !important;
        column-gap: var(--gapDesktop) !important;
    }

    .t-store__card__imgwrapper {
        height: var(--heightImgDesktop);
        padding-bottom: 0 !important;
    }
}

/* 960–1199px */
@media (min-width: 960px) and (max-width: 1199px) {
    .js-store-grid-cont {
        padding: 0 15px;
        box-sizing: border-box;
        margin: 0 auto;
    }

    .js-store-grid-cont .t-store__card-list {
        display: grid !important;
        grid-template-columns: var(--gridTabletLarge);
        grid-gap: var(--gapTabletLarge);
        row-gap: var(--gapTabletLarge) !important;
        column-gap: var(--gapTabletLarge) !important;
    }

    .t-store__card__imgwrapper {
        height: var(--heightImgTabletLarge);
        padding-bottom: 0 !important;
    }

    .js-store-prod-name { 
        font-size: var(--fontSizeTitleTabletLarge) !important; 
    }
    .js-store-prod-descr { 
        font-size: var(--fontSizeDescrTabletLarge) !important; 
    }
    .js-product-price,
    .t-store__card__price-currency { 
        font-size: var(--fontSizePriceTabletLarge) !important; 
    }
    .t-store__card__price_old { 
        font-size: var(--fontSizeOldPriceTabletLarge) !important; 
    }
}

/* 640–959px */
@media (min-width: 640px) and (max-width: 959px) {
    .js-store-grid-cont {
        padding: 0 10px;
        box-sizing: border-box;
        margin: 0 auto;
    }

    .js-store-grid-cont .t-store__card-list {
        display: grid !important;
        grid-template-columns: var(--gridTabletSmall);
        grid-gap: var(--gapTabletSmall);
        row-gap: var(--gapTabletSmall) !important;
        column-gap: var(--gapTabletSmall) !important;
    }

    .t-store__card__imgwrapper {
        height: var(--heightImgTabletSmall);
        padding-bottom: 0 !important;
    }

    .js-store-prod-name { 
        font-size: var(--fontSizeTitleTabletSmall) !important; 
    }
    .js-store-prod-descr { 
        font-size: var(--fontSizeDescrTabletSmall) !important; 
    }
    .js-product-price,
    .t-store__card__price-currency { 
        font-size: var(--fontSizePriceTabletSmall) !important; 
    }
    .t-store__card__price_old { 
        font-size: var(--fontSizeOldPriceTabletSmall) !important; 
    }
}

/* до 640px */
@media screen and (max-width: 639px) {
    .js-store-grid-cont {
        padding: 0 10px;
        box-sizing: border-box;
        margin: 0 auto;
    }

    .js-store-grid-cont .t-store__card-list {
        display: grid !important;
        grid-template-columns: var(--gridMobile);
        grid-gap: var(--gapMobile);
        row-gap: var(--gapMobile) !important;
        column-gap: var(--gapMobile) !important;
    }

    .t-store__card__imgwrapper {
        height: var(--heightImgMobile);
        padding-bottom: 0 !important;
    }

    .js-store-prod-name { 
        font-size: var(--fontSizeTitleMobile) !important; 
    }
    .js-store-prod-descr { 
        font-size: var(--fontSizeDescrMobile) !important; 
    }
    .t-store__card__price { 
        font-size: var(--fontSizePriceMobile) !important; 
    }
    .t-store__card__price_old { 
        font-size: var(--fontSizeOldPriceMobile) !important; 
    }
}

/* Доп. уточнение заголовка в карточке (моб.) */
@media (max-width: 640px) {
    .js-store-grid-cont a .t-store__card__title { 
        font-size: 22px !important; 
    }
}


/* ===== Мобилка: выровнять высоту "кол-во" и кнопки в попапе ===== */
@media screen and (max-width: 480px) {
  /* Родительская строка */
  .t-store__prod-popup__btn-wrapper {
    align-items: stretch; /* растягиваем детей по высоте строки */
  }

  /* Счётчик и кнопка получают одинаковую высоту */
  .t-store__prod-popup__btn-wrapper .t-store__prod__quantity,
  .t-store__prod-popup__btn-wrapper .t-store__prod-popup__btn {
    height: 50px !important;   /* при необходимости подгони 48–56px */
  }

  /* Убираем лишний вертикальный паддинг у кнопки,
     чтобы она не была выше из-за внутренних отступов */
  .t-store__prod-popup__btn-wrapper .t-store__prod-popup__btn {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: inline-flex;
    align-items: center; /* центрируем текст и иконку по вертикали */
  }
}

