/* Настройки хэдеров */
.header-main {
    display: none;
}

.header-cont-1 {
    display: none;
}

.header-cont-2 {
    display: flex;
}
/* Конец настройки хэдеров */

.main {
    padding: calc(20px + 48px) 0 100px;
    width: calc(100vw - 20px * 2);

    display: flex;
    flex-direction: column;
    gap: 40px;
}

.main-title {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.main-title-t {
    display: flex;
    gap: 24px;

    color: var(--color-foreground-primary);

    text-transform: lowercase;
    line-height: 110%;
    font-weight: 500;
    letter-spacing: -0.3px; 
}

.main-title-t-t {
    font-size: 64px;
    line-height: 110%;
}

.main-title-t-cnt {
    font-size: 32px;
    line-height: 110%;
    display: flex;
    gap: 8px;
}

/* Блок 'Пустая корзина' */
.cart-null {
    display: flex;
    justify-content: space-between;
}

.cart-null-info {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.cart-null-info-title {
    color: var(--color-foreground-primary);
    text-transform: lowercase;
    font-size: 64px;
    line-height: 110%;
    font-weight: 500;
    letter-spacing: -0.3px; 
}

.cart-null-btn {
    width: fit-content;
    padding: 0 48px;
}

.cart-null-img {
    width: 590px;
    height: 320px;
}

.cart-null-img img {
    width: 100%;
    height: 100%;

    object-fit: contain;
}
/* Конец блока 'Пустая корзина' */

/* Блок 'Настройка корзины' */
.cart-cont {
    display: flex;
    gap: 122px;
}

.cart-cont-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.set-line {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 24px;
}

.choice-all {
    display: flex;
    height: 24px;
}

.choice-all .checkbox-label {
    padding-left: calc(24px + 15px);
    gap: 15px;
}

.choice-all .checkmark {
    width: 24px;
    height: 24px;
}

.choice-all .checkbox-label input {
    width: 24px;
    height: 24px;
}

.choice-all .checkmark-svg {
    width: 11.41px;
    height: 8.42px;
}

.choice-all-t {
    font-size: 20px;
    align-self: center;
    line-height: 110%;
    font-weight: 500;
    letter-spacing: -0.3px;
    color: var(--color-foreground-primary);

    text-transform: lowercase;

    cursor: pointer;
}

.set-line-delete {
    font-size: 20px;
    line-height: 110%;
    font-weight: 500;
    letter-spacing: -0.3px;
    color: var(--color-foreground-primary);
    border-bottom: 1px solid var(--color-foreground-primary);

    text-transform: lowercase;

    cursor: pointer;
    transition: opacity 0.3s ease;
}

.set-line-delete.dis {
    opacity: 50%;
}
/* Конец блока 'Настройка корзины' */

/* контейнер элементов */
.cart-items {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

/* Блок 'Подсчет итогов' */
.cart-cont-res {
    width: 29.063vw;
    max-width: 600px;
    background-color: rgba(144, 53, 53, 0.05);
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 48px;
    height: fit-content;
    flex-shrink: 0;
}

.cart-cont-res-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.cart-cont-res-info-r {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.cart-cont-res-info-r-min {
    display: flex;
    justify-content: space-between;

    font-size: 32px;
    font-weight: 500;
    line-height: 110%;
    letter-spacing: -0.2px;
    color: var(--color-foreground-primary);
}

.cart-cont-res-info-r-min.discount {
    font-size: 20px;
}

.cart-cont-res-info-r-min.discount span:nth-child(2n){
    color: var(--color-foreground-opacity);
    position: relative;
}

.cart-cont-res-info-r-min.discount span:nth-child(2n)::after{
    content: '';
    width: calc(100% + 16px);
    height: 1.5px;
    background-color: var(--color-foreground-primary);
    position: absolute;
    left: -8px;
    top: 50%;
    transform: translateY(-50%);
}

.cart-cont-res-info-r-cnt {
    font-size: 20px;
    font-weight: 500;
    line-height: 110%;
    letter-spacing: -0.2px;
    color: var(--color-foreground-primary);
}

.cart-cont-res-info-promo {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.cart-cont-res-info-promo-title {
    font-size: 24px;
    font-weight: 500;
    line-height: 110%;
    letter-spacing: -0.3px;
    color: var(--color-foreground-primary); 
}

.promo-form {
    display: flex;
    justify-content: space-between;
    gap: 64px;
}

.promo-form-input {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.promo-form-input input {
    width: 100%;
    height: 38px;

    border: none;
    background-color: transparent;

    padding: 10px 0;
    border-bottom: 1px solid var(--color-foreground-primary);
    font-size: 16px;
    line-height: 110%;
    color: var(--color-foreground-primary);
}

.promo-form-input input:focus {
    outline: none;
}

.promo-form-input input::placeholder {
    outline: none;
    color: var(--color-foreground-opacity);
}

.promo-message {
    font-size: 12px;
    line-height: 110%;
    letter-spacing: -0.2px;

    opacity: 0;

    transition: all .3s ease;
}

.promo-message.error {
    color: var(--color-red);
}

.promo-message.success {
    color: var(--color-green);
}

.promo-message.visible {
    opacity: 1;
}

.promo-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    
    height: 48px;
    padding: 0 48px;

    border: .8px solid var(--color-foreground-primary);
    border-radius: 24px;

    font-size: 16px;
    line-height: 110%;
    font-weight: 600;
    letter-spacing: -0.2px;
    color: var(--color-foreground-primary);

    text-transform: lowercase; 

    transition: all .3s ease;
}

.promo-btn.dis {
    opacity: 50%;
}

.order-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    
    height: 48px;
    width: 100%;

    border: .8px solid var(--color-foreground-primary);
    border-radius: 24px;

    font-size: 16px;
    line-height: 110%;
    font-weight: 600;
    letter-spacing: -0.2px;
    color: var(--color-foreground-primary);

    text-transform: lowercase; 

    cursor: pointer;
}
/* Конец блока 'Подсчет итогов' */

/* Блок 'Модалки удаления' */
body.no-scroll {
  height: 100vh;
  overflow-y: hidden;
}

.delete-modal {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 24px;
    background-color: var(--color-background-primary);
    border: 1px solid var(--color-foreground-primary);

    width: 543px;
    height: 312px;

    position: fixed;
    top: calc((100% - 312px) / 2);
    left: calc((100% - 543px) / 2);
    z-index: 1;

    display: none;
}

.delete-modal-info {
    display: flex;
    flex-direction: column;
    gap: 48px;
}

.delete-modal-info-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.delete-modal-info-title-t {
    font-size: 32px;
    line-height: 110%;
    font-weight: 500;
    letter-spacing: -0.3px;
    color: var(--color-foreground-primary);

    text-transform: lowercase; 
}

.delete-modal-info-title-icon {
    width: 48px;
    height: 48px;

    cursor: pointer;
}

.delete-modal-info-title-icon img {
    width: 100%;
    height: 100%;

    object-fit: contain;
}

.delete-modal-info-t {
    font-size: 20px;
    line-height: 120%;
    font-weight: 500;
    letter-spacing: -0.3px;
    color: var(--color-foreground-primary);

    text-transform: lowercase; 

    width: 401px;
    display: flex;
}

.delete-modal-yes {
    display: flex;
    align-items: center;
    justify-content: center;
    
    height: 48px;
    width: 100%;

    background-color: var(--color-foreground-primary);
    border-radius: 24px;

    font-size: 16px;
    line-height: 110%;
    font-weight: 600;
    letter-spacing: -0.2px;
    color: var(--color-background-primary);

    text-transform: lowercase; 

    cursor: pointer;
}
/* Конец блока 'Модалки удаления' */


/* Блок 'Таймер' */
.delete-timer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 32px;
    border-top: 1px solid var(--color-foreground-primary);
    height: 80px;
}

.delete-timer-t {
    font-size: 24px;
    line-height: 110%;
    font-weight: 500;
    letter-spacing: -0.3px;
    color: var(--color-foreground-primary);

    text-transform: lowercase; 
}

.cancel-delete {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    
    height: 48px;
    padding: 0 48px;

    background-color: var(--color-foreground-primary);
    border-radius: 24px;

    font-size: 16px;
    line-height: 110%;
    font-weight: 600;
    letter-spacing: -0.2px;
    color: var(--color-background-primary);

    text-transform: lowercase; 

    cursor: pointer;
}

.cancel-delete-ind {
    width: 24px;
    display: flex;
    justify-content: center;
}

.cancel-delete-icon {
    width: 20px;
    height: 20px;
}

.cancel-delete-icon img {
    width: 100%;
    height: 100%;

    object-fit: contain;
}
/* Конец блока 'Таймер' */


/* Адаптация на маленькие экраны (< 1920)*/
/* 1440 */
@media screen and (max-width: 1575px) {
    /* Блок 'Настройка корзины' */
    .cart-cont {
        gap: 7.222vw;
    }

    .choice-all-t {
        font-size: 18px;
        line-height: 110%;
    }

    .set-line-delete {
        font-size: 18px;
        line-height: 110%;
    }
    /* Конец блока 'Настройка корзины' */

    /* Блок 'Подсчет итогов' */
    .cart-cont-res {
        width: 428px;
    }

    .cart-cont-res-info-r-min {
        font-size: 28px;
        line-height: 110%;
    }

    .cart-cont-res-info-r-min.discount {
        font-size: 18px;
        line-height: 110%;
    }

    .cart-cont-res-info-r-cnt {
        font-size: 18px;
        line-height: 110%;
    }

    .cart-cont-res-info-promo-title {
        font-size: 18px;
        line-height: 110%;
    }

    .promo-form {
        gap: 31px;
    }

    .promo-form-input input {
        height: 35px;

        font-size: 14px;
        line-height: 110%;
    }

    .promo-btn {
        font-size: 14px;
        line-height: 110%;
    }

    .order-btn {
        font-size: 14px;
        line-height: 110%;
    }
    /* Конец блока 'Подсчет итогов' */

    /* Блок 'Таймер' */
    .delete-timer-t {
        font-size: 20px;
        line-height: 110%;
    }
    /* Конец блока 'Таймер' */
}


/* 1280 */
@media screen and (max-width: 1390px) {
    .main-title-t-t {
        font-size: 48px;
        line-height: 110%;
    }

    /* Блок 'Настройка корзины' */
    .cart-cont {
        gap: 76px;
    }
    /* Конец блока 'Настройка корзины' */

    /* Блок 'Модалки удаления' */
    .delete-modal {
        height: 268px;

        top: calc((100% - 268px) / 2);
    }

    .delete-modal-info-title-t {
        font-size: 28px;
        line-height: 110%;
    }

    .delete-modal-info-t {
        font-size: 18px;
        line-height: 120%;

        width: 385px;
    }
    /* Конец блока 'Модалки удаления' */


    /* Блок 'Таймер' */
    .delete-timer-t {
        font-size: 20px;
        line-height: 110%;
    }

    .cancel-delete {
        padding: 0 32px;

        font-size: 14px;
        line-height: 110%;
    }
    /* Конец блока 'Таймер' */

    /* Блок 'Пустая корзина' */
    .cart-null-info-title {
        font-size: 48px;
        line-height: 110%;
    }

    .cart-null-img {
        width: 450px;
        height: 280px;
    }
    /* Конец блока 'Пустая корзина' */
}

/* 768 */
@media screen and (max-width: 1200px) {
    .main {
        gap: 32px;
    }

    /* Блок 'Настройка корзины' */
    .cart-cont {
        flex-direction: column;
        gap: 32px;
    }
    /* Конец блока 'Настройка корзины' */

    /* Блок 'Подсчет итогов' */
    .cart-cont-res {
        width: 100%;
        max-width: 100%;
        gap: 32px;
    }

    .cart-cont-res-info {
        gap: 24px;
    }

    .cart-cont-res-info-r-min.discount span:nth-child(2n)::after{
        width: calc(100% + 10px);
        left: -5px;
    }

    .cart-cont-res-info-r-cnt {
        font-size: 20px;
        font-weight: 500;
        line-height: 110%;
        letter-spacing: -0.2px;
        color: var(--color-foreground-primary);
    }

    .promo-form-input input {
        max-width: 320px;
    }
    /* Конец блока 'Подсчет итогов' */

    /* Блок 'Модалки удаления' */
    .delete-modal {
        width: 379px;
        height: 242px;

        top: calc((100% - 242px) / 2);
        left: calc((100% - 379px) / 2);
    }

    .delete-modal-info {
        gap: 16px;
    }

    .delete-modal-info-title-t {
        font-size: 20px;
        line-height: 110%;
    }

    .delete-modal-info-t {
        font-size: 14px;
        line-height: 120%;

        width: 265px;
    }
    /* Конец блока 'Модалки удаления' */

    /* Блок 'Пустая корзина' */
    .cart-null-img {
        width: 313px;
        height: 180px;
    }
    /* Конец блока 'Пустая корзина' */
}

/* 375 */
@media screen and (max-width: 725px) {
    .main {
        padding: calc(20px + 48px) 0 48px;
        width: calc(100vw - 12px * 2);

        gap: 32px;
    }

    .main-title {
        gap: 16px;
    }

    .to-catalog-t {
        font-size: 14px;
        line-height: 110%;
    }

    .main-title-t-t {
        font-size: 32px;
        line-height: 110%;
    }

    .main-title-t-cnt {
        font-size: 18px;
        line-height: 110%;
        gap: 4px;
    }

    /* Блок 'Настройка корзины' */
    .set-line {
        height: 18px;
    }

    .choice-all {
        height: 18px;
    }

    .choice-all .checkbox-label {
        padding-left: calc(18px + 15px);
    }

    .choice-all .checkbox-label input {
        width: 18px;
        height: 18px;
    }

    .choice-all .checkmark {
        width: 18px;
        height: 18px;
    }

    .choice-all .checkmark-svg {
        width: 8px;
        height: 6px;
    }

    .choice-all-t {
        font-size: 14px;
        line-height: 110%;
    }

    .set-line-delete {
        font-size: 14px;
        line-height: 110%;
    }
    /* Конец блока 'Настройка корзины' */

    /* Блок 'Подсчет итогов' */
    .cart-cont-res {
        padding: 12px;
    }

    .cart-cont-res-info {
        gap: 20px;
    }

    .cart-cont-res-info-r-min {
        font-size: 24px;
        line-height: 110%;
    }

    .cart-cont-res-info-r-min.discount {
        font-size: 14px;
    }

    .cart-cont-res-info-r-cnt {
        font-size: 14px;
        line-height: 110%;
    }

    .cart-cont-res-info-promo {
        gap: 8px;
    }

    .cart-cont-res-info-promo-title {
        font-size: 14px;
        line-height: 110%;
    }

    .promo-form {
        gap: 11.467vw;
    }

    .promo-form-input {
        flex: 1;
        max-width: none;
    }

    .promo-form-input input {
        font-size: 14px;
        line-height: 110%;
        max-width: 166px;
        width: 44.267vw;
    }

    .promo-btn {
        height: 39px;
        padding: 0 24px;
    }

    /* Конец блока 'Подсчет итогов' */

    /* Блок 'Модалки удаления' */
    .delete-modal {
        width: calc(100% - 12px * 2);
        height: 192px;

        top: calc((100% - 192px) / 2);
        left: 12px;
    }

    .delete-modal-info-title-icon {
        width: 24px;
        height: 24px;
    }

    .delete-modal-yes {
        height: 38px;
        font-size: 14px;
        line-height: 110%;
    }
    /* Конец блока 'Модалки удаления' */

    /* Блок 'Таймер' */
    .cancel-delete {
        padding: 0 24px;
    }
    /* Конец блока 'Таймер' */


    /* Блок 'Пустая корзина' */
    .cart-null {
        flex-direction: column;
        gap: 48px;
    }

    .cart-null-info-title {
        font-size: 32px;
        line-height: 110%;
    }

    .cart-null-btn {
        width: 100%;
    }

    .cart-null-img {
        width: 100%;
    }
    /* Конец блока 'Пустая корзина' */
}