.expert-promo {
    --promo-accent: #eb6716;
    --promo-accent-dark: #cf5510;
    --promo-ink: #20201e;
    --promo-muted: #6e6c67;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
    align-items: center;
    justify-content: space-between;
    margin: 24px 0 32px;
    padding: 26px 28px;
    color: var(--promo-ink);
    background: #fff;
    border: 1px solid #d7d7d7;
    border-radius: 18px;
}

.expert-promo *,
.expert-promo *::before,
.expert-promo *::after { box-sizing: border-box; }

.expert-promo[hidden] { display: none !important; }

.expert-promo__pitch { flex: 1 1 320px; min-width: 260px; }

.expert-promo__eyebrow {
    display: block;
    margin-bottom: 8px;
    color: var(--promo-accent);
    font-size: 14px;
    font-weight: 600;
}

.expert-promo__title {
    margin: 0 0 8px;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 700;
}

.expert-promo__text {
    margin: 0;
    color: var(--promo-muted);
    font-size: 15px;
    line-height: 1.45;
}

.expert-promo__ask { flex: 1 1 340px; min-width: 280px; }

.expert-promo__label {
    display: block;
    margin-bottom: 12px;
    color: var(--promo-muted);
    font-size: 14px;
}

.expert-promo__options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.expert-promo__option {
    display: inline-block;
    padding: 11px 16px;
    color: var(--promo-ink);
    font-size: 15px;
    line-height: 1.2;
    text-decoration: none;
    background: #fff;
    border: 1px solid #dedbd5;
    border-radius: 10px;
    transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}

.expert-promo__option:hover,
.expert-promo__option:focus {
    color: var(--promo-accent-dark);
    text-decoration: none;
    background: #fff2e9;
    border-color: var(--promo-accent);
}

@media (max-width: 640px) {
    .expert-promo {
        gap: 20px;
        margin: 18px 0 24px;
        padding: 20px;
        border-radius: 14px;
    }

    .expert-promo__title { font-size: 19px; }
    .expert-promo__option { flex: 1 1 calc(50% - 5px); text-align: center; }

    /* Колонки шире экрана распирали блок, и кнопки выходили за рамку. */
    .expert-promo__pitch,
    .expert-promo__ask { flex-basis: 100%; min-width: 0; }

    /* В каталоге и поиске мобильная колонка не даёт боковых полей — задаём сами. */
    .expert-promo[data-place="catalog_page"] { margin-inline: 12px; }
}
