.block-popup,
.block-popup *,
.block-popup *::before,
.block-popup *::after {
    box-sizing: border-box;
}

.block-popup {
    width: auto;
    max-width: 100%;
    min-width: 0;
    height: var(--height);
    margin: 0;
}

.block-popup__trigger {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: auto;
    max-width: 100%;
    min-width: 0;
    min-height: 58px;
    margin: 0;
    padding: 14px 16px;
    overflow: hidden;
    border: 1px solid #ff7417;
    border-radius: 3px;
    background: #fff4e8;
    color: #262321;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

.block-popup__trigger:hover {
    border-color: #e96510;
    background: #ffe8d5;
}

.block-popup__trigger,
.block-popup__trigger a,
.block-popup__trigger button {
    color: #262321 !important;
    font-family: "Manrope", "Helvetica Neue", Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-align: center;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
}

.block-popup__trigger a,
.block-popup__trigger button {
    display: block;
    width: auto;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

.block-popup__main {
    --modal-animation-name: animation-fade-in-center;
    z-index: 9999 !important;
    inset-block: 40px auto;
    width: min(520px, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
    height: fit-content;
    max-height: calc(100vh - 80px);
    overflow-x: hidden !important;
    overflow-y: visible;
}

.block-popup__content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: auto;
    max-height: calc(100vh - 80px);
    overflow-x: hidden !important;
    overflow-y: auto;
    border: 1px solid #ded3c6;
    border-radius: 3px;
    background: #fffaf4;
    box-shadow: 0 24px 70px rgba(38, 35, 33, 0.2);
    scrollbar-width: thin;
}

.block-popup__group {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    max-height: 100%;
    overflow-x: hidden !important;
}

.block-popup__content h1,
.block-popup__content h2,
.block-popup__content h3 {
    max-width: 100%;
    margin-right: 0;
    color: #262321 !important;
    font-family: "Manrope", "Helvetica Neue", Arial, sans-serif !important;
    font-size: clamp(27px, 6vw, 36px) !important;
    font-weight: 650 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em !important;
}

.block-popup__content p {
    max-width: 100%;
    color: #6f655c;
    font-family: "Manrope", "Helvetica Neue", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.6;
}

.block-popup__content p:has(a[href^="mailto:"]),
.block-popup__content p:has(a[href*="wa.me"]),
.block-popup__content p:has(a[href*="whatsapp"]) {
    width: 100%;
    max-width: 100%;
    margin: 10px 0 0;
}

.block-popup__content a[href^="mailto:"],
.block-popup__content a[href*="wa.me"],
.block-popup__content a[href*="whatsapp"] {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    min-height: 52px;
    margin: 0 !important;
    padding: 12px 16px;
    border-radius: 3px;
    color: #262321 !important;
    font-family: "Manrope", "Helvetica Neue", Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    text-decoration: none !important;
    white-space: normal;
}

.block-popup__content a[href^="mailto:"] {
    border: 1px solid #ff7417;
    background: #ff7417;
}

.block-popup__content a[href^="mailto:"]:hover {
    border-color: #e96510;
    background: #e96510;
}

.block-popup__content a[href*="wa.me"],
.block-popup__content a[href*="whatsapp"] {
    border: 1px solid #262321;
    background: transparent;
}

.block-popup__content a[href*="wa.me"]:hover,
.block-popup__content a[href*="whatsapp"]:hover {
    background: #262321;
    color: #fffaf4 !important;
}

.block-popup__content img,
.block-popup__content iframe,
.block-popup__content video,
.block-popup__content table {
    max-width: 100% !important;
}

@media (min-width: 960px) {
    .block-popup__main {
        width: 520px;
        max-width: min(520px, calc(100vw - 48px));
    }
}

@media (max-width: 749px) {
    .block-popup__trigger {
        min-height: 56px;
        padding: 12px 13px;
    }

    .block-popup__trigger,
    .block-popup__trigger a,
    .block-popup__trigger button {
        font-size: 13px !important;
    }

    .block-popup__main {
        inset-block: 18px auto;
        width: calc(100vw - 20px);
        max-width: calc(100vw - 20px);
        max-height: calc(100vh - 36px);
    }

    .block-popup__content {
        max-height: calc(100vh - 36px);
    }
}