h1 {
    display: flex;
    align-items: center;
    gap: 14px;
    &::before {
        content: '\e921';
        display: flex;
        align-items: center;
        justify-content: center;
        font: 100 32px/1 icon;
        color: var(--blue);
        padding: 4px;
    }
    &:has(+ .empty-basket) {
        display: none;
    }
}
.basket-card {
    position: relative;
    border-radius: 20px;
    display: grid;
    grid-template-columns: 120px 1fr 140px auto auto;
    align-items: center;
    column-gap: 20px;
    padding: 4px 30px 4px 4px;
    background: var(--white);
    > a {
        position: absolute;
        inset: 0;
    }
    .remove-head {
        display: none;
        color: var(--text, #8E9FA6);
        font-weight: 500;
    }
    .img {
        aspect-ratio: 1;
        overflow: hidden;
        border-radius: 16px;
        img {
            aspect-ratio: inherit;
            object-fit: cover;
            object-position: top center;
        }
    }
    .info {
        display: flex;
        flex-direction: column;
        gap: 4px;
        width: 100%;
        > * {
            position: relative;
            z-index: 1;
            width: fit-content;
        }
        .title {
            font-size: 24px;
            display: -webkit-box;
            overflow: hidden;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 1;
            line-clamp: 1;
            margin-bottom: 6px;
        }
        :where(.size, .color) {
            color: var(--grey);
            font-weight: 500;
        }
    }
    .basket-form {
        input {
            font-size: 20px;
        }
        fieldset button {
            padding: 9px;
            &::before {
                font-size: 32px;
            }
        }
    }
    .price {
        flex-direction: column-reverse;
        align-items: start;
        gap: 0;
        min-width: 156px;
        margin-right: 20px;
        span {
            white-space: nowrap;
            font-size: 20px;
            + span {
                font-size: 16px;
            }
        }
    }
    .remove-from-basket {
        aspect-ratio: 1;
        border-radius: 16px;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: var(--grey-white);
        transition: background-color .2s linear, color .2s linear;
        border: none;
        padding: 9px;
        color: var(--blue);
        &::before {
            content: '\e908';
            font: 100 32px / 1 'icon';
            color: inherit;
        }
    }
    .basket-form,
    .price,
    .add-back,
    .remove-from-basket {
        position: relative;
        z-index: 1;
    }
    .add-back {
        display: none;
        align-items: center;
        border-radius: 16px;
        border: 1px solid var(--blue);
        background-color: var(--grey-white);
        color: var(--blue);
        font-weight: 800;
        min-height: 50px;
        padding: 10px 30px;
    }
    &.remove {
        padding: 20px 30px;
        grid-template-columns: 1fr auto auto;
        column-gap: 10px;
        .basket-form,
        .price,
        .img {
            display: none;
        }
        .info {
            flex-direction: row;
            align-items: center;
            flex-wrap: wrap;
            gap: 10px;
            .title {
                margin-bottom: 0;
            }
        }
        .remove-head,
        .add-back {
            display: flex;
        }
        .remove-from-basket {
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: inherit;
            width: 30px;
            padding: 0;
            color: var(--black);
            border-radius: 10px;
            &::before {
                content: '\e90e';
                font-size: 12px;
            }
        }
    }
}
.green-radio {
    display: flex;
    align-items: center;
    gap: 4px;
    color: var(--grey);
    letter-spacing: 0.48px;
    label {
        position: relative;
        display: flex;
        width: 32px;
        aspect-ratio: 1;
        flex-shrink: 0;
        cursor: pointer;
        padding: 4px;
        input {
            position: absolute;
            z-index: -10;
            opacity: 0;
        }
        &::before {
            content: '';
            display: flex;
            width: 100%;
            aspect-ratio: 1;
            border-radius: 50%;
            border: 1px solid var(--grey);
            padding: 5px;
        }
        &:has(input:checked)::before {
            background: linear-gradient(var(--white), var(--white)) content-box, linear-gradient(var(--blue), var(--blue)) padding-box;
        }
    }
}
.promo {
    margin-top: 30px;
    .basket {
        position: relative;
        display: grid;
        align-items: start;
        grid-template-columns: 1fr 587px;
        gap: 30px;
    }
    .product-list .items {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .clear-basket {
        border-radius: 12px;
        background-color: var(--white);
        display: none;
        align-items: center;
        justify-content: center;
        align-self: end;
        width: fit-content;
        color: var(--grey);
        font-size: 16px;
        font-weight: 500;
        margin-top: 20px;
        padding: 10px 30px;
        transition: box-shadow .2s linear, color .2s linear;
    }
    &:has(.basket-card + .basket-card) .clear-basket {
        display: flex;
    }
    .label:not(.check) {
        display: flex;
        flex-direction: column;
        gap: 4px;
        color: var(--grey);
        font-size: 16px;
        letter-spacing: 0.42px;
        margin-bottom: 10px;
        input,
        textarea {
            padding: 9px 10px 10px 12px;
            font-weight: 500;
            letter-spacing: 0.48px;
            border: 1px solid var(--line);
            width: 100%;
            border-radius: 10px;
            color: var(--black);
            &::placeholder {
                color: var(--2, #8E9FA6);
            }
            &:focus {
                border-color: var(--blue);
                &::placeholder {
                    color: var(--black);
                }
            }
        }
        span {
            color: inherit;
            font-size: inherit;
            line-height: inherit;
            &::after {
                content: '*';
                color: var(--error);
                font-size: inherit;
            }
        }
        .info {
            color: var(--text);
            font-size: 14px;
            letter-spacing: 0.42px;
        }
        textarea {
            height: 100px;
        }
    }
    .basket-left {
        display: flex;
        flex-direction: column;
        gap: 30px;
    }
    .order {
        width: 100%;
        input:-webkit-autofill {
            box-shadow: inset 0 0 0 50px var(--white) !important;
        }
        .box {
            padding: 30px;
            border-radius: 20px;
            background: var(--white);
            &:not(:last-child) {
                margin-bottom: 10px;
            }
            .head {
                color: var(--grey);
                font-size: 20px;
                font-weight: 700;
                letter-spacing: 0.6px;
                margin-bottom: 10px;
            }
            .label:has(textarea) {
                grid-column: 1/-1;
                margin-bottom: 0;
            }
            .tab-box {
                display: flex;
                align-items: center;
                gap: 20px;
                margin-bottom: 10px;
            }
            .tab {
                border: none;
                flex-direction: column;
                &.fiz {
                    display: grid;
                    grid-template-columns: repeat(2, 1fr);
                    column-gap: 10px;
                }
                &.yur {
                    display: none;
                    gap: 20px;
                    margin-top: 30px;
                    fieldset {
                        display: grid;
                        grid-template-columns: repeat(2, 1fr);
                        column-gap: 10px;
                        margin-bottom: 20px;
                        border: none;
                        legend {
                            color: var(--grey);
                            margin-bottom: 10px;
                            font-weight: 700;
                            letter-spacing: 0.48px;
                        }
                        &:has(.file-box) {
                            width: fit-content;
                        }
                    }
                    .file-box {
                        position: relative;
                        display: flex;
                        align-items: center;
                        gap: 59px;
                        grid-column: 1/-1;
                        &.open .buttons {
                            display: flex;
                        }
                        label {
                            position: relative;
                            width: fit-content;
                            display: flex;
                            align-items: center;
                            justify-content: center;
                            border: 2px dashed var(--line);
                            padding: 20px 30px;
                            border-radius: 16px;
                            cursor: pointer;
                            input {
                                position: absolute;
                                z-index: -10;
                                opacity: 0;
                            }
                            span {
                                color: var(--blue);
                                font-weight: 800;
                                display: flex;
                                align-items: center;
                                gap: 15px;
                                transition: color .2s linear;
                                &::after {
                                    content: '\e939';
                                    font: 100 28px/1 icon;
                                    color: inherit;
                                }
                            }
                        }
                        > span {
                            color: var(--2, #8e9fa6);
                            font-weight: 500;
                            letter-spacing: 0.48px;
                        }
                        .buttons {
                            position: absolute;
                            top: calc(100% + 10px);
                            left: 0;
                            width: 100%;
                            display: none;
                            justify-content: space-between;
                            gap: 10px;
                            .file-name {
                                color: var(--grey);
                                font-weight: 700;
                                letter-spacing: 0.48px;
                            }
                            button {
                                color: var(--blue);
                                font-size: 14px;
                                font-weight: 500;
                                letter-spacing: 0.42px;
                            }
                        }
                    }
                }
            }
            &:has(input.yur:checked) .tab {
                &.fiz {
                    display: none;
                }
                &.yur {
                    display: flex;
                }
            }
            :where(.payment-method, .delivery-method) {
                border: none;
                display: flex;
                flex-direction: column;
                gap: 10px;
                legend {
                    color: var(--grey);
                    font-size: 20px;
                    font-weight: 700;
                    letter-spacing: 0.6px;
                }
                > .buttons {
                    display: flex;
                    column-gap: 20px;
                }
            }
            .delivery-method {
                fieldset {
                    border: none;
                }
                .pickup {
                    display: flex;
                    gap: 11px;
                    flex-wrap: wrap;
                    label {
                        position: relative;
                        display: flex;
                        flex-direction: column;
                        gap: 4px;
                        padding: 20px;
                        border: 1px solid var(--line);
                        border-radius: 10px;
                        cursor: pointer;
                        input {
                            position: absolute;
                            z-index: -10;
                            opacity: 0;
                        }
                        > span {
                            display: grid;
                            align-items: center;
                            grid-template-columns: auto 1fr;
                            gap: 4px;
                            color: var(--grey);
                            font-weight: 700;
                            letter-spacing: 0.48px;
                            margin-bottom: 10px;
                            &::before {
                                content: '';
                                display: flex;
                                width: 14px;
                                aspect-ratio: 1;
                                border-radius: 50%;
                                border: 1px solid var(--grey);
                                padding: 5px;
                                margin: 4px;
                            }
                        }
                        &:has(input:checked) span::before {
                            background: linear-gradient(var(--white), var(--white)) content-box, linear-gradient(var(--blue), var(--blue)) padding-box;
                        }
                        i {
                            grid-column: 1/-1;
                            color: var(--grey);
                            letter-spacing: 0.48px;
                        }
                    }
                }
                .delivery {
                    legend {
                        margin-bottom: 10px;
                        + .label:has(> .spoiler-box) {
                            grid-column: 1/-1;
                            .spoiler-box {
                                min-width: 328px;
                                width: fit-content;
                                max-width: 100%;
                            }
                        }
                    }
                    .fields-box {
                        display: contents;
                        > fieldset {
                            display: grid;
                            grid-template-columns: repeat(2, 1fr);
                            column-gap: 10px;
                            + fieldset {
                                grid-template-columns: repeat(3, 1fr);
                            }
                        }
                    }
                }
                &:has(> .buttons > span:last-child input:checked) .pickup {
                    display: none;
                }
                &:has(> .buttons > span:first-child input:checked) .delivery {
                    display: none;
                }
            }
            :where(.payment-method, .delivery-method) {
                .spoiler-box {
                    border-radius: 10px;
                    height: 40px;
                    border: 1px solid var(--line);
                    .spoiler {
                        background: var(--white);
                        border-radius: inherit;
                        .toggle {
                            padding: 9px 2px 9px 10px;
                            font-weight: 600;
                            white-space: nowrap;
                            &::after {
                                content: '\e922';
                                font-size: 18px;
                                color: inherit;
                                transition: transform .2s linear;
                            }
                        }
                        &.open .toggle::after {
                            transform: rotate(180deg);
                        }
                        .spoiler-body {
                            padding-bottom: 0;
                            border-bottom: none;
                        }
                        .list {
                            gap: 0;
                            padding: 0 10px;
                            label {
                                margin: 13px 0 7px;
                                position: relative;
                                color: var(--grey);
                                font-weight: 600;
                                cursor: pointer;
                                transition: color .2s linear;
                                input {
                                    position: absolute;
                                    z-index: -11;
                                    opacity: 0;
                                }
                                &:has(input:checked) {
                                    display: none;
                                }
                            }
                        }
                    }
                }
            }
            .payment-method {
                .spoiler-box {
                    max-width: 328px;
                }
            }
        }
    }
    .result-box {
        position: sticky;
        top: 10px;
        display: flex;
        flex-direction: column;
        gap: 10px;
        > div {
            display: flex;
            flex-direction: column;
            border-radius: 20px;
            background: var(--white);
            padding: 30px;
            &:where(.guest, .user) {
                display: none;
                &.active {
                    display: flex;
                }
            }
            &:nth-child(2) {
                .title {
                    color: var(--grey);
                    font-size: 24px;
                    font-weight: 700;
                    letter-spacing: 0.72px;
                    margin-bottom: 10px;
                }
                p {
                    color: var(--grey);
                    font-weight: 500;
                }
            }
            .buttons {
                display: grid;
                grid-template-columns: auto 1fr;
                gap: 10px;
                margin-top: 20px;
                .green-btn {
                    padding-inline: 30px;
                }
                .continue {
                    border-radius: 16px;
                    border: 1px solid var(--blue, #016170);
                    background-color: var(--grey-white);
                    color: var(--blue);
                    font-weight: 800;
                    transition: background-color .2s linear, color .2s linear;
                }
            }
        }
        .sum {
            display: grid;
            grid-template-columns: repeat(2, auto);
            justify-content: space-between;
            align-items: center;
            gap: 10px;
            color: var(--grey);
            font-size: 24px;
            font-weight: 700;
            letter-spacing: 0.72px;
            margin-bottom: 30px;
            padding-bottom: 20px;
            border-bottom: 1px solid var(--line);
            > b {
                color: var(--grey);
                font-weight: 700;
                letter-spacing: 0.72px;
                font-size: 24px;
            }
            > div {
                display: flex;
                flex-direction: column;
                align-items: end;
            }
            .full-price {
                color: var(--t);
                font-size: 24px;
                font-weight: 500;
                letter-spacing: 0.72px;
                text-decoration: line-through;
                margin-right: 10px;
            }
            .discount-price {
                color: var(--grey);
                font-size: 40px;
                font-weight: 700;
                letter-spacing: 1.2px;
            }
            p {
                color: var(--t);
                letter-spacing: 0.48px;
                text-align: right;
                &.discount {
                    display: none;
                    &.show {
                        display: block;
                    }
                }
                span {
                    color: inherit;
                    font-size: inherit;
                    letter-spacing: inherit;
                }
            }
        }
        .promo-code {
            display: grid;
            grid-template-columns: 1fr 171px;
            gap: 10px 6px;
            input {
                width: 100%;
                border-radius: 10px;
                border: 1px solid var(--line);
                background: var(--white);
                padding: 8px 10px 8px 12px;
            }
            .green-btn {
                min-height: 40px;
                border-radius: 10px;
            }
            .validation-info {
                grid-column: 1/-1;
                padding-bottom: 10px;
                color: var(--border);
                font-size: 14px;
                font-weight: 500;
                letter-spacing: 0.42px;
                border-bottom: 1px solid var(--line);
                &.show {
                    display: flex;
                    opacity: 1;
                }
            }
            .validation-error {
                grid-column: 1/-1;
                padding-bottom: 10px;
                color: #e43a2b;
                font-size: 14px;
                font-weight: 500;
                letter-spacing: 0.42px;
                border-bottom: 1px solid var(--line);
                display: none;
                opacity: 0;
                transition: opacity .2s linear;
                &.show {
                    display: flex;
                    opacity: 1;
                }
            }
        }
        .pay {
            display: flex;
            flex-direction: column;
            gap: 4px;
            margin-top: 30px;
            b {
                color: var(--grey);
                font-size: 20px;
                font-weight: 700;
                letter-spacing: 0.6px;
            }
            span {
                color: var(--grey);
                font-weight: 500;
                letter-spacing: 0.48px;
            }
        }
        .agree {
            display: none;
            padding-inline: 30px;
            color: var(--grey);
            font-weight: 500;
            letter-spacing: 0.48px;
            margin-top: 8px;
            a {
                font-weight: inherit;
                letter-spacing: inherit;
                font-size: inherit;
                color: var(--blue);
            }
            &.active {
                display: block;
            }
        }
        button[type="submit"] {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 50px;
            border-radius: 16px;
            border: 1px solid var(--blue);
            color: var(--blue);
            font-weight: 800;
            text-align: center;
            transition: color .2s linear, background-color .2s linear;
        }
    }
}
.empty-basket {
    display: flex;
    flex-direction: column;
    gap: 30px;
    > div {
        max-width: 1000px;
    }
    h2 {
        display: flex;
        align-items: center;
        gap: 14px;
        color: var(--grey);
        font-size: 40px;
        font-weight: 700;
        letter-spacing: 1.2px;
        &::before {
            content: '\e904';
            display: flex;
            align-items: center;
            justify-content: center;
            font: 100 32px/1 icon;
            color: var(--blue);
            padding: 4px;
        }
    }
    p {
        color: var(--grey);
        font-size: 24px;
        letter-spacing: 0.72px;
        margin-bottom: 10px;
    }
    div:has(a + button) h2::before {
        content: '\e921';
    }
    .buttons {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        a,
        button {
            width: fit-content;
            padding-inline: 30px;
        }
        button {
            color: var(--blue);
            font-weight: 800;
            border-radius: 16px;
            border: 1px solid var(--blue);
            min-height: 50px;
            transition: color .2s linear, background-color .2s linear;
        }
    }
}
.order-done {
    h1 {
        display: none;
    }
    h2 {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 4px;
        &::before {
            content: '\e918';
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            background: var(--blue);
            flex: 0 0 32px;
            aspect-ratio: 1;
            font: 400 19px/1 icon;
            color: var(--white);
        }
        + p {
            color: var(--grey);
            font-size: 24px;
            letter-spacing: 0.72px;
        }
    }
    > div {
        max-width: 1204px;
        padding: 20px;
        border-radius: 20px;
        background: var(--white);
        margin-top: 30px;
        h3 {
            color: var(--grey);
            font-size: 24px;
            font-weight: 700;
            letter-spacing: 0.72px;
            margin-bottom: 20px;
        }
        .info-box {
            display: flex;
            flex-direction: column;
            gap: 10px;
            > div {
                display: grid;
                grid-template-columns: auto 1fr auto;
                color: var(--text);
                font-weight: 500;
                letter-spacing: 0.48px;
                span {
                    color: var(--grey);
                    font-weight: 700;
                    letter-spacing: 0.48px;
                    grid-column: 3/4;
                }
                &::after {
                    content: '';
                    grid-column: 2/3;
                    width: 100%;
                    height: 100%;
                    border-bottom: 1px dashed var(--line);
                }
            }
        }
        > p {
            color: var(--grey);
            letter-spacing: 0.48px;
            margin-bottom: 10px;
            a {
                color: var(--blue);
                font-weight: 700;
                letter-spacing: 0.48px;
            }
        }
        .green-btn {
            width: fit-content;
            padding-inline: 30px;
            margin-top: 20px;
        }
    }
}
.save-address {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--grey);
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.48px;
    label {
        position: relative;
        display: grid;
        place-items: center;
        cursor: pointer;
        &::before {
            content: '\e918';
            display: grid;
            place-items: center;
            width: 26px;
            height: 26px;
            font: 100 16px / 1 'icon';
            margin: 3px;
            border-radius: 6px;
            background-color: var(--blue);
            color: var(--blue);
        }
        > input {
            position: absolute;
            z-index: -11;
            opacity: 0;
        }
        &:has(input:checked)::before {
            color: var(--white) !important;
        }
    }
    &.hide {
        display: none;
    }
}
.order-done,
.promo,
.empty-basket,
.wrapper:has(.advantages) {
    margin-bottom: 120px;
}
.advantages {
    justify-content: center;
    div {
        max-width: 365px;
    }
}
@media screen and (max-width: 1860px) {
    .promo {
        .basket {
            grid-template-columns: 1fr 480px;
        }
        & .result-box .sum {
            .discount-price {
                font-size: 30px;
            }
            .full-price {
                font-size: 20px;
            }
        }
    }
}
@media screen and (max-width: 1500px) {
    .promo {
        .basket-left {
            gap: 20px;
        }
        .basket {
            gap: 10px;
            grid-template-columns: 1fr 370px;
        }
        & .result-box {
            > div {
                padding: 20px;
            }
            .promo-code {
                grid-template-columns: 1fr 129px;
            }
            & .sum {
                margin-bottom: 20px;
                > b {
                    font-size: 20px;
                }
                .discount-price {
                    font-size: 20px;
                }
                .full-price {
                    font-size: 16px;
                }
                p {
                    font-size: 14px;
                }
            }
            .pay {
                margin-top: 20px;
            }
        }
    }
    .order-done,
    .promo,
    .empty-basket,
    .wrapper:has(.advantages) {
        margin-bottom: 100px;
    }
}
@media screen and (max-width: 1280px) {
    .promo {
        .basket-left {
            width: 100%;
        }
        .basket {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }
        & .result-box {
            width: 100%;
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            &:has(.user.active) {
                width: min(600px, 100%);
                display: flex;
                flex-direction: column;
            }
            > div .buttons {
                grid-template-columns: 1fr;
                grid-auto-rows: 1fr;
            }
        }
    }
    .empty-basket h2 {
        font-size: 30px;
    }
    .advantages {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        > div:nth-child(3)::after {
            display: none;
        }
    }
    .order-done {
        h2 + p {
            font-size: 20px;
        }
        > div h3 {
            font-size: 22px;
        }
    }
    .order-done,
    .promo,
    .empty-basket,
    .wrapper:has(.advantages) {
        margin-bottom: 80px;
    }
}
@media screen and (max-width: 992px) {
    .basket-card {
        grid-template-columns: 120px 1fr 50px;
        column-gap: 10px;
        padding: 4px 8px 8px 4px;
        .info {
            grid-column: 2/4;
            .title {
                font-size: 20px;
            }
        }
        .basket-form {
            width: fit-content;
            margin-left: 4px;
            grid-column: 1/3;
        }
        .price {
            grid-area: 2/1/3/-1;
            margin: 6px 14px 10px;
        }
        .add-back {
            min-height: 50px;
            padding: 10px 30px;
        }
        &.remove {
            padding: 20px;
            .info {
                grid-column: 1/2;
            }
        }
    }
}
@media screen and (max-width: 768px) {
    .basket-card {
        grid-template-columns: 100px 1fr 40px;
        .info .title {
            font-size: 16px;
        }
        .basket-form {
            input {
                font-size: 16px;
            }
            fieldset button {
                padding: 6px;
                &::before {
                    font-size: 28px;
                }
            }
        }
        .remove-from-basket {
            border-radius: 12px;
            padding: 8px;
            &::before {
                font-size: 24px;
            }
        }
        .add-back {
            min-height: 50px;
            padding: 10px 30px;
        }
        &.remove {
            padding: 20px;
            gap: 10px;
            .info {
                grid-column: 1/-1;
            }
            .add-back {
                justify-self: end;
                min-height: 40px;
                border-radius: 10px;
            }
        }
    }
    .green-radio {
        font-size: 14px;
    }
    .promo {
        .label:not(.check) .info {
            font-size: 12px;
        }
        .result-box {
            display: flex;
            flex-direction: column;
            > div .buttons {
                grid-template-columns: auto 1fr;
            }
        }
        .order .box {
            padding: 20px;
            border-radius: 20px;
            .tab-box {
                gap: 10px;
            }
            &:has(input.yur:checked) .tab {
                &.yur {
                    display: flex;
                }
                .fiz {
                    display: none;
                }
            }
            .tab.fiz {
                display: flex;
            }
            .tab:is(.fiz, .yur) {
                flex-direction: column;
                fieldset {
                    display: flex;
                    flex-direction: column;
                }
            }
            .tab.yur {
                gap: 10px;
                fieldset {
                    margin-bottom: 0;
                }
                .file-box {
                    gap: 10px;
                    margin-bottom: 30px;
                    label {
                        padding: 10px;
                        span {
                            gap: 2px;
                        }
                    }
                    > span {
                        font-size: 14px;
                        white-space: nowrap;
                    }
                }
            }
            .delivery-method {
                .delivery > fieldset {
                    grid-template-columns: 1fr;
                    + fieldset {
                        grid-template-columns: repeat(2, 1fr);
                    }
                }
                .pickup {
                    display: flex;
                    flex-direction: column;
                    label {
                        width: 100%;
                    }
                }
            }
            .payment-method > .buttons {
                display: flex;
                flex-direction: column;
            }
        }
    }
    .empty-basket {
        h2 {
            font-size: 24px;
        }
        p {
            font-size: 16px;
            letter-spacing: 0.48px;
        }
        > div .buttons :where(a, button) {
            padding-inline: 20px;
        }
    }
    .order-done {
        h2 + p {
            font-size: 16px;
        }
        > div {
            margin-top: 20px;
            h3 {
                font-size: 20px;
                letter-spacing: 0.6px;
                margin-bottom: 10px;
            }
            .info-box {
                gap: 10px;
                > div {
                    display: flex;
                    flex-direction: column;
                    font-size: 14px;
                    &::after {
                        display: none;
                    }
                }
            }
        }
    }
    .order-done,
    .promo,
    .empty-basket,
    .wrapper:has(.advantages) {
        margin-bottom: 60px;
    }
    .advantages {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 20px;
        div {
            max-width: none;
        }
        div:not(:first-child) {
            padding-top: 30px;
            border-top: 1px solid var(--brjyrb);
            &::after {
                display: none;
            }
        }
        .head {
            font-size: 20px;
        }
        p {
            font-size: 14px;
        }
    }
}
@media screen and (hover:hover) {
    .basket-card .remove-from-basket:hover {
        background-color: var(--orange);
        color: var(--white);
    }
    .promo {
        .result-box {
            > div .buttons .continue:hover {
                background-color: var(--blue);
                color: var(--white);
            }
            .agree a:hover {
                color: var(--orange);
            }
            button[type="submit"]:hover {
                color: var(--white);
                background-color: var(--blue);
            }
        }
        .order .box {
            .payment-method .spoiler-box .spoiler {
                .toggle:hover {
                    color: var(--orange);
                }
                .list label:hover {
                    color: var(--blue);
                }
            }
            .tab.yur .file-box {
                label:hover span {
                    color: var(--orange);
                }
                .buttons button:hover {
                    color: var(--orange);
                }
            }
        }
    }
    .order-done > div > p a:hover {
        color: var(--orange);
    }
    .empty-basket .buttons button:hover {
        background-color: var(--blue);
        color: var(--white);
    }
}