.faq-section__title {
    margin-bottom: 30px;
    text-align: left;
}

.main-faq {
    width: min(100%, 930px);
    margin-right: auto;
    margin-left: auto;
}

.main-faq__item {
    position: relative;
    margin-bottom: 20px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 14px;
    background:
        linear-gradient(
            100deg,
            rgba(255, 255, 255, 0.018) 0%,
            rgba(255, 255, 255, 0.055) 100%
        ),
        rgba(18, 17, 35, 0.5);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.025),
        0 12px 34px rgba(0, 0, 0, 0.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.main-faq__item:last-child {
    margin-bottom: 0;
}

.main-faq__question {
    box-sizing: border-box;
    display: flex;
    width: 100%;
    min-height: 74px;
    margin: 0;
    padding: 21px 28px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    border: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.95);
    font: inherit;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;
}

.main-faq__question-text {
    min-width: 0;
}

.main-faq__icon {
    position: relative;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
}

.main-faq__icon::before,
.main-faq__icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #cae652;
    transform: translate(-50%, -50%);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.main-faq__icon::before {
    width: 16px;
    height: 1px;
}

.main-faq__icon::after {
    width: 1px;
    height: 16px;
}

.main-faq__item.is-open .main-faq__icon::after {
    opacity: 0;
    transform: translate(-50%, -50%) scaleY(0);
}

.main-faq__panel {
    display: grid;
    grid-template-rows: 0fr;
    visibility: hidden;
    opacity: 0;
    transition:
        grid-template-rows 0.32s ease,
        opacity 0.24s ease,
        visibility 0s linear 0.32s;
}

.main-faq__item.is-open .main-faq__panel {
    grid-template-rows: 1fr;
    visibility: visible;
    opacity: 1;
    transition:
        grid-template-rows 0.32s ease,
        opacity 0.24s ease;
}

.main-faq__panel-inner {
    min-height: 0;
    overflow: hidden;
}

.main-faq__answer {
    padding: 0 28px 24px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.42;
}

.main-faq__answer p {
    margin: 0 0 12px;
}

.main-faq__answer p:last-child {
    margin-bottom: 0;
}

.main-faq__question:hover {
    color: #fff;
}

.main-faq__question:focus-visible {
    outline: 2px solid #cae652;
    outline-offset: -3px;
    border-radius: 13px;
}

/* =========================================================
   БОЛЬШОЙ DESKTOP: от 1921 px
   Масштаб относительно версии 1440 px ≈ 1.84
   Контрольная ширина контента — 2103 px
   ========================================================= */
/* =========================================================
   ПРОМЕЖУТОЧНЫЙ DESKTOP: 1400–1920 px
   ========================================================= */
@media (min-width: 1400px) /*and (max-width: 1920px)*/ {
    .faq-section { margin: clamp(80px, calc(17.008px + 4.374vw), 100.997px) 0; }
    .faq-section > .inner-width { max-width: clamp(1143px, calc(243px + 62.5vw), 1443px); }
    .main-faq { width: min(100%, clamp(930px, calc(197.717px + 50.853vw), 1174.094px)); }
    .main-faq__item { margin-bottom: clamp(20px, calc(4.252px + 1.094vw), 25.249px); border-radius: clamp(14px, calc(2.976px + 0.766vw), 17.675px); box-shadow: inset 0 clamp(1px, calc(0.213px + 0.055vw), 1.262px) 0 rgba(255,255,255,.025), 0 clamp(12px, calc(2.551px + 0.656vw), 15.15px) clamp(34px, calc(7.228px + 1.859vw), 42.924px) rgba(0,0,0,.08); backdrop-filter: blur(clamp(8px, calc(1.701px + 0.437vw), 10.1px)); }
    .main-faq__question { min-height: clamp(74px, calc(15.732px + 4.046vw), 93.423px); padding: clamp(21px, calc(4.465px + 1.148vw), 26.512px) clamp(28px, calc(5.953px + 1.531vw), 35.349px); gap: clamp(24px, calc(5.102px + 1.312vw), 30.299px); font-size: clamp(16px, calc(3.402px + 0.875vw), 20.199px); }
    .main-faq__icon { flex-basis: clamp(18px, calc(3.827px + 0.984vw), 22.724px); width: clamp(18px, calc(3.827px + 0.984vw), 22.724px); height: clamp(18px, calc(3.827px + 0.984vw), 22.724px); }
    .main-faq__icon::before { width: clamp(16px, calc(3.402px + 0.875vw), 20.199px); }
    .main-faq__icon::after { height: clamp(16px, calc(3.402px + 0.875vw), 20.199px); }
    .main-faq__answer { padding: 0 clamp(28px, calc(5.953px + 1.531vw), 35.349px) clamp(24px, calc(5.102px + 1.312vw), 30.299px); font-size: clamp(15px, calc(3.189px + 0.82vw), 18.937px); }
    .main-faq__answer p { margin-bottom: clamp(12px, calc(2.551px + 0.656vw), 15.15px); }
    .main-faq__question:focus-visible { outline-offset: clamp(-3.787px, calc(-0.638px + -0.164vw), -3px); border-radius: clamp(13px, calc(2.764px + 0.711vw), 16.412px); }
}

   @media (min-width: 1921px) and (min-device-width: 2200px) {

    /*
     * Большой desktop без резкого скачка на границе 1920/1921 px:
     *
     * 1920 px      -> значения предыдущего desktop-режима;
     * 1921–2650 px -> плавное увеличение;
     * 2650+        -> размеры большого макета фиксируются через clamp().
     */


    /* ---------- Секция ---------- */

    .faq-section {
        margin:
            clamp(
                100.997px,
                calc(-19.997192px + 6.301781vw),
                147px
            )
            0;
    }

    .faq-section > .inner-width {
        width: 100%;

        max-width:
            clamp(
                1443px,
                calc(-292.890411px + 90.410959vw),
                2103px
            );

        margin-right: auto;
        margin-left: auto;
    }


    /* ---------- Весь FAQ ---------- */

    .main-faq {
        width:
            min(
                100%,
                clamp(
                    1174.094px,
                    calc(-238.042329px + 73.548767vw),
                    1711px
                )
            );
    }


    /* ---------- Один пункт ---------- */

    .main-faq__item {
        margin-bottom:
            clamp(
                25.249px,
                calc(-5.657740px + 1.609726vw),
                37px
            );

        border-width:
            clamp(
                1px,
                calc(-1.630137px + 0.136986vw),
                2px
            );

        border-radius:
            clamp(
                17.675px,
                calc(-4.220890px + 1.140411vw),
                26px
            );

        box-shadow:
            inset
            0
            clamp(
                1.262px,
                calc(-0.679041px + 0.101096vw),
                2px
            )
            0
            rgba(255, 255, 255, 0.025),

            0
            clamp(
                15.15px,
                calc(-2.866438px + 0.938356vw),
                22px
            )
            clamp(
                42.924px,
                calc(-9.878630px + 2.750137vw),
                63px
            )
            rgba(0, 0, 0, 0.08);

        backdrop-filter:
            blur(
                clamp(
                    10.1px,
                    calc(-2.787671px + 0.671233vw),
                    15px
                )
            );

        -webkit-backdrop-filter:
            blur(
                clamp(
                    10.1px,
                    calc(-2.787671px + 0.671233vw),
                    15px
                )
            );
    }


    /* ---------- Вопрос ---------- */

    .main-faq__question {
        min-height:
            clamp(
                93.423px,
                calc(-18.560342px + 5.832466vw),
                136px
            );

        padding:
            clamp(
                26.512px,
                calc(-6.333151px + 1.710685vw),
                39px
            )
            clamp(
                35.349px,
                calc(-8.445411px + 2.280959vw),
                52px
            );

        gap:
            clamp(
                30.299px,
                calc(-5.736507px + 1.876849vw),
                44px
            );

        font-size:
            clamp(
                20.199px,
                calc(-2.948836px + 1.205616vw),
                29px
            );
    }


    /* ---------- Плюс / минус ---------- */

    .main-faq__icon {
        flex-basis:
            clamp(
                22.724px,
                calc(-4.303288px + 1.407671vw),
                33px
            );

        width:
            clamp(
                22.724px,
                calc(-4.303288px + 1.407671vw),
                33px
            );

        height:
            clamp(
                22.724px,
                calc(-4.303288px + 1.407671vw),
                33px
            );
    }

    .main-faq__icon::before {
        width:
            clamp(
                20.199px,
                calc(-2.948836px + 1.205616vw),
                29px
            );

        height:
            clamp(
                1px,
                calc(-1.630137px + 0.136986vw),
                2px
            );
    }

    .main-faq__icon::after {
        width:
            clamp(
                1px,
                calc(-1.630137px + 0.136986vw),
                2px
            );

        height:
            clamp(
                20.199px,
                calc(-2.948836px + 1.205616vw),
                29px
            );
    }


    /* ---------- Ответ ---------- */

    .main-faq__answer {
        padding:
            0
            clamp(
                35.349px,
                calc(-8.445411px + 2.280959vw),
                52px
            )
            clamp(
                30.299px,
                calc(-5.736507px + 1.876849vw),
                44px
            );

        font-size:
            clamp(
                18.937px,
                calc(-4.899932px + 1.241507vw),
                28px
            );
    }

    .main-faq__answer p {
        margin-bottom:
            clamp(
                15.15px,
                calc(-2.866438px + 0.938356vw),
                22px
            );
    }


    /* ---------- Focus ---------- */

    .main-faq__question:focus-visible {
        outline-width:
            clamp(
                2px,
                calc(-3.260274px + 0.273973vw),
                4px
            );

        outline-offset:
            clamp(
                -6px,
                calc(2.033493px - 0.303151vw),
                -3.787px
            );

        border-radius:
            clamp(
                16.412px,
                calc(-3.545479px + 1.039452vw),
                24px
            );
    }
}


@media (prefers-reduced-motion: reduce) {
    .main-faq__panel,
    .main-faq__icon::before,
    .main-faq__icon::after {
        transition: none;
    }
}

@media (max-width: 991.98px) {
    .main-faq {
        width: 100%;
        margin-left: 0;
    }
}

/* =========================================================
   МОБИЛЬНЫЙ: до 767 px
   Контрольная ширина — 390 px.
   ========================================================= */
@media (max-width: 767px) {

    .faq-section {
        margin: 40px 0 !important;
    }

    .page-section .page-section-content .page-section__title.faq-section__title {
        display: block;
        position: static;
        float: none;
        clear: both;

        width: 100%;
        max-width: none;

        margin: 0 0 24px;
        padding: 0;

        transform: none;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 32px;
        font-weight: 700;
        line-height: 1.15;
        letter-spacing: -.3px;

        text-align: center !important;

        color: #fff;
        background: none;

        -webkit-background-clip: border-box;
        background-clip: border-box;
        -webkit-text-fill-color: #fff;
    }

    /* =====================================================
       Весь FAQ
       ===================================================== */

    .main-faq {
        box-sizing: border-box;

        width: 100%;
        max-width: none;

        margin: 0;
        padding: 0;
    }


    /* =====================================================
       Один пункт
       ===================================================== */

    .main-faq__item {
        position: relative;

        width: 100%;

        margin: 0 0 20px;

        overflow: hidden;

        border: 1px solid rgba(255, 255, 255, .22);
        border-radius: 10px;

        background:
            linear-gradient(
                110deg,
                rgba(255, 255, 255, .018) 0%,
                rgba(255, 255, 255, .055) 100%
            ),
            rgba(24, 22, 45, .58);

        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, .025),
            0 8px 22px rgba(0, 0, 0, .08);

        -webkit-backdrop-filter: blur(7px);
        backdrop-filter: blur(7px);
    }

    .main-faq__item:last-child {
        margin-bottom: 0;
    }


    /* =====================================================
       Вопрос
       ===================================================== */

    .main-faq__question {
        box-sizing: border-box;

        display: flex;

        width: 100%;
        min-height: 68px;

        margin: 0;
        padding: 16px 16px 16px 16px;

        align-items: flex-start;
        justify-content: space-between;

        gap: 16px;

        border: 0;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 16px;
        font-weight: 400;
        line-height: 1.35;

        text-align: left;

        color: rgba(255, 255, 255, .94);
        background: transparent;
    }

    .main-faq__question-text {
        display: block;

        min-width: 0;
        max-width: calc(100% - 32px);
    }


    /* =====================================================
       Плюс / минус
       ===================================================== */

    .main-faq__icon {
        position: relative;

        flex: 0 0 18px;

        width: 18px;
        height: 18px;

        margin-left: auto;
    }

    .main-faq__icon::before,
    .main-faq__icon::after {
        background: #cae652;
    }

    .main-faq__icon::before {
        width: 14px;
        height: 1px;
    }

    .main-faq__icon::after {
        width: 1px;
        height: 14px;
    }


    .main-faq__panel {
        display: grid;

        grid-template-rows: 0fr;

        overflow: hidden;

        visibility: visible;
        opacity: 1;

        transition: grid-template-rows .32s ease;
    }

    .main-faq__item.is-open .main-faq__panel {
        grid-template-rows: 1fr;
    }

    .main-faq__panel-inner {
        min-height: 0;
        overflow: hidden;
    }


    /* =====================================================
       Ответ
       ===================================================== */

    .main-faq__answer {
        box-sizing: border-box;

        width: 100%;

        padding: 0 32px 16px 18px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 14px;
        font-weight: 400;
        line-height: 1.32;

        text-align: left;

        color: rgba(255, 255, 255, .88);
    }

    .main-faq__answer p {
        margin: 0 0 10px;
    }

    .main-faq__answer p:last-child {
        margin-bottom: 0;
    }


    /* На touch-экранах не нужен desktop hover */

    .main-faq__question:hover {
        color: rgba(255, 255, 255, .94);
    }
}


/* =========================================================
   ОЧЕНЬ УЗКИЕ ЭКРАНЫ: до 374 px
   ========================================================= */
@media (max-width: 374px) {

    .main-faq__item {
        margin-bottom: 14px;
        border-radius: 9px;
    }

    .main-faq__question {
        min-height: 64px;

        padding:
            14px
            14px
            14px
            18px;

        gap: 12px;

        font-size: 13px;
    }

    .main-faq__answer {
        padding:
            0
            18px
            17px;

        font-size: 12.5px;
        line-height: 1.34;
    }

    .main-faq__icon {
        flex-basis: 16px;

        width: 16px;
        height: 16px;
    }

    .main-faq__icon::before {
        width: 13px;
    }

    .main-faq__icon::after {
        height: 13px;
    }
}