.payment__wrapper{
      margin-top: 10px;
      display: flex;
      flex-direction: column;
      gap: 8px;
      input[type="radio"]{
    position: absolute;
    z-index: -1;
    opacity: 0;
      }
    }
    
    .payment{
      font-weight: 400 !important;
    }
    
    .payment>span{
      display: flex;
      align-items: center;
      position: relative;
    }
    
    .payment>span:before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    flex-grow: 0;
    border: 2px solid #374151;
    margin-right: 10px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%;
    }
    
    .payment>span:after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 12px;
    height: 12px;
    left: 4px;
    background-color: var(--main-colors-red);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%;
    transform: scale(0);
    transition: transform 0.2s ease-in-out; 
    }
    
    .payment>input:checked+span::after {
      transform: scale(1);
    }
    
    .quiz__address{
      text-align: left;
      position: relative;
      
      padding-bottom: 10px;
      line-height: 155%;
      b{
      font-weight: 500;
      background: #fff;
      padding: 4px;
      padding-left: 18px;
      border-radius: 8px;
      }
    }
    
    .quiz__address::before {
    content: "";
    display: block;
    width: 13px;
    height: 14px;
    position: absolute;
    left: 0;
    left: 4px;
    top: 4px;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml,<svg width="13" height="14" viewBox="0 0 13 14" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_2021_655)"><path d="M6.49241 0.5C3.83336 0.5 1.67822 2.61943 1.67822 5.23417C1.67822 7.84868 4.928 13.4733 6.49241 13.4733C8.05726 13.4733 11.307 7.8489 11.307 5.23417C11.3068 2.61943 9.15124 0.5 6.49241 0.5ZM6.49241 7.3718C5.292 7.3718 4.31832 6.41478 4.31832 5.23417C4.31832 4.05355 5.292 3.09632 6.49241 3.09632C7.69326 3.09632 8.66649 4.05333 8.66649 5.23417C8.66649 6.415 7.69326 7.3718 6.49241 7.3718Z" fill="%23ea2424" /></g><defs><clipPath id="clip0_2021_655"><rect width="13" height="13" fill="white" transform="translate(0 0.5)" /></clipPath></defs></svg>');
    }
    @media (max-width: 1040px){
    .quiz__address{
        padding-left: 0;
    }
    .quiz__address::before {
        left: 4px;
    }
    }
    :is(.mspc_form, .promo__wr) button{
        color: #000;
        &::after, &::before{
            display: none;
        }
    }
    .promo__wr{
        display: flex;
        flex-wrap: wrap;
        input{
            flex: 1;
        }
        button{
            margin: 0 0 0 7px !important;
            height: auto;
            border: 1px solid #374151;
            flex: 0 0 50px;
            width: auto !important;
        }
    }
    #submitBtn{
        margin: 20px 0 30px;
    }
    body.iq-cart-preparing .quiz .btn[type="submit"] {
        pointer-events: none;
        opacity: 0.7;
    }
    .row:has(.mspc_form){
        margin-top: 24px;
    }
    .modal__cart:has(.mspc_form.has-error) .promo__wr::after{
        content: 'Промо-код недействителен';
        width: 100%;
        margin-top: 8px;
    }
    .mspc_form .input-group{
        display: flex;
        gap: 4px;
        flex-wrap: wrap;
    }
    .input-group-text{
        font-weight: 600;
    }
    .input-group-prepend{
        flex: 1 1 100%;
    }
    .mspc_field{
        flex: 1 1;
        padding: 10px 12px;
        border: 1px solid #374151;
        font-size: 18px;
        &:placeholder{
            color: #fff;
        }
    }
    .input-group-btn{
        flex: 0 0 50px;
        border: 1px solid #374151;
        display: flex;
        justify-content: center;
        align-items: center;
        button{
            margin: 0 !important;
            height: 100%;
            width: 100% !important;
        }
    }
    .mspc_msg, .mspc_coupon_description{
        margin-top: 7px;
    }

@media (max-width: 1100px) and (min-width: 521px){
        .advantage__img .main {
      height: 0;
    }
    .advantage__body {
        grid-template-rows: repeat(3, auto);
    }
}
@media (max-width: 790px){
    .advantage__body > div ul{
        font-size: 18px;
    }
}
@media (max-width: 520px){
    .advantage__body{
        display: flex;
        flex-direction: column;
    }
    .advantage__img .main{
        height: 385px !important;
    }
}

.cookie-consent {
    position: fixed;
    z-index: 10050;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 16px;
    background: rgba(16, 16, 17, 0.96);
    color: #fff;
    box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.35);
}
.cookie-consent__inner {
    max-width: 960px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 20px;
    justify-content: space-between;
}
.cookie-consent__text {
    flex: 1 1 260px;
    margin: 0;
    font-size: 14px;
    line-height: 1.45;
}
.cookie-consent__text a {
    color: #00a59b;
    text-decoration: underline;
}
.cookie-consent__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
/* Кнопка .btn-secondary: фон — ::before, рамка — ::after; текст должен быть в <span> с z-index как в style.css */
.cookie-consent .cookie-consent__accept.btn-secondary::before {
    z-index: 0;
}
.cookie-consent .cookie-consent__accept.btn-secondary::after {
    z-index: 1;
    border-color: #fff;
}
.cookie-consent .cookie-consent__accept.btn-secondary span {
    position: relative;
    z-index: 2;
}

/* «По приглашениям» — тот же вид, что у .btn-secondary «Записаться», без клика и без hover-сдвига */
.quiz.quiz--invite .quiz__btn-invite.btn-secondary {
    pointer-events: none;
    user-select: none;
    cursor: default;
    font-size: 18px;
    letter-spacing: -0.02em;
}
.quiz.quiz--invite .quiz__btn-invite.btn-secondary span {
    position: relative;
    z-index: 2;
    padding-left: 28px;
    padding-right: 28px;
}
.quiz.quiz--invite .quiz__btn-invite.btn-secondary:hover::before {
    transform: translate(8px, 8px);
}
@media (max-width: 600px) {
    .quiz.quiz--invite .quiz__btn-invite.btn-secondary {
        font-size: 14px;
    }
    .quiz.quiz--invite .quiz__btn-invite.btn-secondary span {
        padding-left: 12px;
        padding-right: 12px;
    }
    .quiz.quiz--invite .quiz__btn-invite.btn-secondary:hover::before {
        transform: translate(6px, 6px);
    }
}

/* «В резерв» — оранжевая кнопка + подпись под карточкой */
.quiz--reserve .btn-reserve.btn-secondary {
    --color: #e67e22;
}
.quiz__reserve-note {
    margin: 8px 0 4px;
    font-size: 13px;
    line-height: 1.35;
    color: #888;
    text-align: center;
}
@media (max-width: 600px) {
    .quiz__reserve-note {
        font-size: 12px;
    }
}

.cart__order-consent {
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 14px;
    line-height: 1.35;
}
.cart__order-consent-row {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    align-items: flex-start;
    cursor: pointer;
}
.cart__order-consent-row > span {
    flex: 1;
    min-width: 0;
}
.cart__order-consent-row input {
    flex-shrink: 0;
    margin-top: 4px;
}
.cart__order-consent-row a {
    color: #00a59b;
    text-decoration: underline;
}
.req {
    color: #ff6b6b;
}

.callback__checks {
    margin: 12px 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 14px;
    line-height: 1.35;
}
.callback__check {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    align-items: flex-start;
    cursor: pointer;
}
.callback__check > span {
    flex: 1;
    min-width: 0;
}
.callback__check input {
    flex-shrink: 0;
    margin-top: 4px;
}
.callback__check a {
    color: #00a59b;
    text-decoration: underline;
}

.form__marketing {
    margin-top: 24px;
    margin-bottom: 16px;
    font-size: 14px;
    line-height: 1.35;
}
/* Как .form__privacy: без flex, иначе текст в label уезжает отдельным flex-элементом на новую строку */
.form__marketing > label {
    display: block;
    position: relative;
    padding-left: 36px;
    text-align: left;
    cursor: pointer;
    color: var(--bw-black);
}
.form__marketing input[type="checkbox"] {
    position: absolute;
    visibility: hidden;
    width: 0;
    height: 0;
    margin: 0;
}
.form__marketing .form__consent-text {
    overflow-wrap: anywhere;
}

.cart__deposit {
    margin-top: 4px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
}
