/*
=========================================================
FOOTER STYLES
=========================================================

Structure:
1. Desktop 1400–1920
2. Large desktop 1921+
3. Tablet 1024–1278
4. Tablet 768–1023
5. Mobile <=767
6. Footer directions dropdown
=========================================================
*/
/* Адрес компании в подвале */

.footer-block .footer-address {
    box-sizing: border-box;
    width: 100%;
    
    margin: 0;

    font-family: 'Rubik', 'Manrope', Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;

    

    white-space: normal;
    overflow-wrap: normal;
    text-wrap: pretty;
}

.footer-block .footer-address__nowrap {
    white-space: nowrap;
}
/* Зелёное подчёркивание ссылок в подвале */
.footer-block .links-grid > a.link {
    position: relative;
    display: inline-block;
    width: fit-content;
    max-width: 100%;
    text-decoration: none;
}

.footer-block .links-grid > a.link::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;

    height: 3px;
    border-radius: 3px;
    background-color: #CAE652;

    opacity: 0;
    transform: scaleX(0.6);
    transform-origin: center;

    transition:
        opacity 0.2s ease,
        transform 0.2s ease;
}

.footer-block .links-grid > a.link:hover::after,
.footer-block .links-grid > a.link:focus-visible::after {
    opacity: 1;
    transform: scaleX(1);
}
/* =====================================================
   DESKTOP 1400–1920
   ===================================================== */

@media (min-width: 1400px) /*and (max-width: 1920px)*/ {
    .footer-block { max-width: clamp(1140px, calc(242.362px + 62.336vw), 1439.213px); padding: clamp(56px, calc(11.906px + 3.062vw), 70.698px) clamp(76px, calc(16.157px + 4.156vw), 95.948px) clamp(29px, calc(6.165px + 1.586vw), 36.612px) clamp(90px, calc(19.134px + 4.921vw), 113.622px); border-radius: clamp(40px, calc(8.504px + 2.187vw), 50.499px) clamp(40px, calc(8.504px + 2.187vw), 50.499px) 0 0; }
    .footer-container { grid-template-columns: clamp(158px, calc(33.591px + 8.64vw), 199.47px) clamp(332px, calc(70.583px + 18.154vw), 419.139px) clamp(333px, calc(70.795px + 18.209vw), 420.402px); column-gap: clamp(77px, calc(16.37px + 4.21vw), 97.21px); max-width: clamp(977px, calc(207.709px + 53.423vw), 1233.43px); padding-bottom: clamp(23px, calc(4.89px + 1.258vw), 29.037px); }
    .footer-left { width: clamp(158px, calc(33.591px + 8.64vw), 199.47px); gap: clamp(29px, calc(6.165px + 1.586vw), 36.612px); }
    .footer-center { width: clamp(332px, calc(70.583px + 18.154vw), 419.139px); gap: clamp(29px, calc(6.165px + 1.586vw), 36.612px);}
    .footer-right { width: clamp(333px, calc(70.795px + 18.209vw), 420.402px); }
    .footer-block .logo-placeholder,
    .footer-block .logo-placeholder a,
    .footer-block .logo-placeholder img { width: clamp(158px, calc(33.591px + 8.64vw), 199.47px); }
    .footer-block .social-icons { gap: clamp(9px, calc(1.913px + 0.492vw), 11.362px); }
    .footer-block .social-icon-tg { width: clamp(24px, calc(5.102px + 1.312vw), 30.299px); height: clamp(25px, calc(5.315px + 1.367vw), 31.562px); }
    .footer-block .social-icon-youtube { width: clamp(37px, calc(7.866px + 2.023vw), 46.711px); height: clamp(26px, calc(5.528px + 1.422vw), 32.824px); }
    .footer-block .social-icon-vk { width: clamp(28px, calc(5.953px + 1.531vw), 35.349px); height: clamp(27px, calc(5.74px + 1.476vw), 34.087px); }
    .footer-block .social-icon-rutube { width: clamp(25px, calc(5.315px + 1.367vw), 31.562px); height: clamp(25px, calc(5.315px + 1.367vw), 31.562px); }
    .footer-block .social-icon-max { width: clamp(25px, calc(5.315px + 1.367vw), 31.562px); height: clamp(25px, calc(5.315px + 1.367vw), 31.562px); }
    .footer-block .footer-contacts__phone a { font-size: clamp(16px, calc(3.402px + 0.875vw), 20.199px); }
    .footer-block .subscribe-form,
    .footer-block .subscribe-form .subscribe_form { width: clamp(332px, calc(70.583px + 18.154vw), 419.139px); }
    .footer-block .footer-center .title { width: clamp(332px, calc(70.583px + 18.154vw), 419.139px); min-height: clamp(44px, calc(9.354px + 2.406vw), 55.549px); font-size: clamp(16px, calc(3.402px + 0.875vw), 20.199px); line-height: clamp(22px, calc(4.677px + 1.203vw), 27.774px); }
    .footer-block .subscribe-form-form { grid-template-columns: clamp(157px, calc(33.378px + 8.585vw), 198.207px) clamp(157px, calc(33.378px + 8.585vw), 198.207px); column-gap: clamp(18px, calc(3.827px + 0.984vw), 22.724px); width: clamp(332px, calc(70.583px + 18.154vw), 419.139px); height: clamp(33px, calc(7.016px + 1.804vw), 41.661px); }
    .footer-block .subscribe-form .subscribe_mail,
    .footer-block .subscribe-form .btn-outline { width: clamp(157px, calc(33.378px + 8.585vw), 198.207px); height: clamp(33px, calc(7.016px + 1.804vw), 41.661px); border-radius: clamp(10px, calc(2.126px + 0.547vw), 12.625px); }
    .footer-block .subscribe-form .subscribe_mail { padding: 0 clamp(16px, calc(3.402px + 0.875vw), 20.199px); font-size: clamp(14px, calc(2.976px + 0.766vw), 17.675px); line-height: clamp(20px, calc(4.252px + 1.094vw), 25.249px); }
    .footer-block .subscribe-form .btn-outline { font-size: clamp(14px, calc(2.976px + 0.766vw), 17.675px); line-height: clamp(24px, calc(5.102px + 1.312vw), 30.299px); }
    .footer-block .subscribe-form .subscribe_form__privacy { width: clamp(332px, calc(70.583px + 18.154vw), 419.139px); margin-top: clamp(16px, calc(3.402px + 0.875vw), 20.199px); font-size: clamp(12px, calc(2.551px + 0.656vw), 15.15px); line-height: clamp(14px, calc(2.976px + 0.766vw), 17.675px); }
    .footer-block .subscribe-form .subscribe_form__privacy a { margin-top: clamp(16px, calc(3.402px + 0.875vw), 20.199px); font-size: clamp(10px, calc(2.126px + 0.547vw), 12.625px); line-height: clamp(16px, calc(3.402px + 0.875vw), 20.199px); }
    .footer-block .footer-subblock-text { margin-bottom: clamp(29px, calc(6.165px + 1.586vw), 36.612px); font-size: clamp(16px, calc(3.402px + 0.875vw), 20.199px); }
    .footer-block .links-grid { margin-bottom: clamp(29px, calc(6.165px + 1.586vw), 36.612px); }
    .footer-block .links-grid .link { font-size: clamp(14px, calc(2.976px + 0.766vw), 17.675px); line-height: clamp(22px, calc(4.677px + 1.203vw), 27.774px); }
    .footer-block .legal-text { font-size: clamp(8px, calc(1.701px + 0.437vw), 10.1px); line-height: clamp(4px, calc(0.85px + 0.219vw), 5.05px); }
    .footer-block .legal-text-small { margin-bottom: clamp(10px, calc(2.126px + 0.547vw), 12.625px); font-size: clamp(12px, calc(2.551px + 0.656vw), 15.15px) !important; line-height: clamp(9px, calc(1.913px + 0.492vw), 11.362px); }
    .footer-block .footer-bottom { font-size: clamp(14px, calc(2.976px + 0.766vw), 17.675px); line-height: clamp(17px, calc(3.614px + 0.93vw), 21.462px); }
    .footer-block .footer-address {font-size: clamp(14px, calc(2.976px + .766vw), 17.675px); line-height: clamp(20px, calc(4.976px + .766vw), 25px);}
}
/* =====================================================
   LARGE DESKTOP 1921+
   ===================================================== */

@media (min-width: 1921px) and (min-device-width: 2200px) {
    .footer-block {
        max-width: clamp(
            1439.213px,
            calc(-293.487055px + 90.244795vw),
            2098px
        );

        padding:
            clamp(
                70.698px,
                calc(-14.260685px + 4.424932vw),
                103px
            )
            clamp(
                95.948px,
                calc(-19.914795px + 6.034521vw),
                140px
            )
            clamp(
                36.612px,
                calc(-6.490685px + 2.244932vw),
                53px
            )
            clamp(
                113.622px,
                calc(-24.139315px + 7.175068vw),
                166px
            );

        border-radius:
            clamp(
                50.499px,
                calc(-11.311849px + 3.219315vw),
                74px
            )
            clamp(
                50.499px,
                calc(-11.311849px + 3.219315vw),
                74px
            )
            0
            0;
    }


    /* ---------- Три колонки ---------- */

    .footer-container {
        grid-template-columns:
            clamp(
                199.47px,
                calc(-41.266438px + 12.538356vw),
                291px
            )
            clamp(
                419.139px,
                calc(-85.481712px + 26.282329vw),
                611px
            )
            clamp(
                420.402px,
                calc(-86.157123px + 26.383288vw),
                613px
            );

        column-gap: clamp(
            97.21px,
            calc(-20.593836px + 6.135616vw),
            142px
        );

        max-width: clamp(
            1233.43px,
            calc(-251.466438px + 77.338356vw),
            1798px
        );

        padding-bottom: clamp(
            29.037px,
            calc(-5.057466px + 1.775753vw),
            42px
        );
    }

    .footer-left {
        width: clamp(
            199.47px,
            calc(-41.266438px + 12.538356vw),
            291px
        );

        gap: clamp(
            36.612px,
            calc(-6.490685px + 2.244932vw),
            53px
        );
    }

    .footer-center {
        width: clamp(
            419.139px,
            calc(-85.481712px + 26.282329vw),
            611px
        );
    }

    .footer-right {
        width: clamp(
            420.402px,
            calc(-86.157123px + 26.383288vw),
            613px
        );
    }


    /* ---------- Логотип ---------- */

    .footer-block .logo-placeholder,
    .footer-block .logo-placeholder a,
    .footer-block .logo-placeholder img {
        display: block;

        width: clamp(
            199.47px,
            calc(-41.266438px + 12.538356vw),
            291px
        );
    }

    .footer-block .logo-placeholder img {
        height: auto;
    }


    /* ---------- Соцсети ---------- */

    .footer-block .social-icons {
        gap: clamp(
            11.362px,
            calc(-3.466712px + 0.772329vw),
            17px
        );
    }

    .footer-block .social-icon-tg,
    .footer-block .social-icon-tg svg {
        width: clamp(
            30.299px,
            calc(-5.736507px + 1.876849vw),
            44px
        );

        height: clamp(
            31.562px,
            calc(-6.411918px + 1.977808vw),
            46px
        ) !important;
    }

    .footer-block .social-icon-youtube,
    .footer-block .social-icon-youtube svg {
        width: clamp(
            46.711px,
            calc(-9.281986px + 2.916301vw),
            68px
        );

        height: clamp(
            32.824px,
            calc(-7.090959px + 2.078904vw),
            48px
        ) !important;
    }

    .footer-block .social-icon-vk,
    .footer-block .social-icon-vk svg {
        width: clamp(
            35.349px,
            calc(-8.445411px + 2.280959vw),
            52px
        );

        height: clamp(
            34.087px,
            calc(-7.766370px + 2.179863vw),
            50px
        ) !important;
    }

    .footer-block .social-icon-rutube,
    .footer-block .social-icon-rutube svg {
        width: clamp(
            31.562px,
            calc(-6.411918px + 1.977808vw),
            46px
        );

        height: clamp(
            31.562px,
            calc(-6.411918px + 1.977808vw),
            46px
        ) !important;
    }

    .footer-block .social-icon-max,
    .footer-block .social-icon-max svg {
        width: clamp(
            31.562px,
            calc(-6.411918px + 1.977808vw),
            46px
        );

        height: clamp(
            31.562px,
            calc(-6.411918px + 1.977808vw),
            46px
        ) !important;
    }


    /* ---------- Телефон ---------- */

    .footer-block .footer-contacts__phone a {
        font-size: clamp(
            20.199px,
            calc(-2.948836px + 1.205616vw),
            29px
        );
    }


    /* =====================================================
       Подписка
       ===================================================== */

    .footer-block .subscribe-form,
    .footer-block .subscribe-form .subscribe_form {
        width: clamp(
            419.139px,
            calc(-85.481712px + 26.282329vw),
            611px
        );
    }

    .footer-block .footer-center .title {
        width: clamp(
            419.139px,
            calc(-85.481712px + 26.282329vw),
            611px
        );

        min-height: clamp(
            55.549px,
            calc(-11.390616px + 3.486438vw),
            81px
        );

        

        font-size: clamp(
            20.199px,
            calc(-2.948836px + 1.205616vw),
            29px
        );

        line-height: clamp(
            27.774px,
            calc(-4.382055px + 1.674795vw),
            40px
        );
    }

    .footer-block .subscribe-form-form {
        grid-template-columns:
            clamp(
                198.207px,
                calc(-40.591027px + 12.437397vw),
                289px
            )
            clamp(
                198.207px,
                calc(-40.591027px + 12.437397vw),
                289px
            );

        column-gap: clamp(
            22.724px,
            calc(-4.303288px + 1.407671vw),
            33px
        );

        width: clamp(
            419.139px,
            calc(-85.481712px + 26.282329vw),
            611px
        );

        height: clamp(
            41.661px,
            calc(-9.203219px + 2.649178vw),
            61px
        );
    }

    .footer-block .subscribe-form .subscribe_mail,
    .footer-block .subscribe-form .btn-outline {
        width: clamp(
            198.207px,
            calc(-40.591027px + 12.437397vw),
            289px
        );

        height: clamp(
            41.661px,
            calc(-9.203219px + 2.649178vw),
            61px
        );

        border-radius: clamp(
            12.625px,
            calc(-1.511986px + 0.736301vw),
            18px
        );
    }

    .footer-block .subscribe-form .subscribe_mail {
        padding:
            0
            clamp(
                20.199px,
                calc(-2.948836px + 1.205616vw),
                29px
            );

        border-width: clamp(
            1px,
            calc(-1.630137px + 0.136986vw),
            2px
        );

        font-size: clamp(
            17.675px,
            calc(-4.220890px + 1.140411vw),
            26px
        );

        line-height: clamp(
            25.249px,
            calc(-5.657740px + 1.609726vw),
            37px
        );
    }

    .footer-block .subscribe-form .btn-outline {
        font-size: clamp(
            17.675px,
            calc(-4.220890px + 1.140411vw),
            26px
        );

        line-height: clamp(
            30.299px,
            calc(-6.490685px + 2.244932vw),
            44px
        );
    }

    .footer-block .subscribe-form .subscribe_form__privacy {
        width: clamp(
            419.139px,
            calc(-85.481712px + 26.282329vw),
            611px
        );

        margin-top: clamp(
            20.199px,
            calc(-2.948836px + 1.205616vw),
            29px
        );

        font-size: clamp(
            15.15px,
            calc(-2.866438px + 0.938356vw),
            22px
        );

        line-height: clamp(
            17.675px,
            calc(-4.220890px + 1.140411vw),
            26px
        );
    }

    .footer-block .subscribe-form .subscribe_form__privacy a {
        margin-top: clamp(
            20.199px,
            calc(-2.948836px + 1.205616vw),
            29px
        );

        font-size: clamp(
            12.625px,
            calc(-4.142123px + 0.873288vw),
            19px
        );

        line-height: clamp(
            20.199px,
            calc(-2.948836px + 1.205616vw),
            29px
        );
    }


    /* =====================================================
       Продукты и услуги
       ===================================================== */

    .footer-block .footer-subblock-text {
        margin-bottom: clamp(
            36.612px,
            calc(-6.490685px + 2.244932vw),
            53px
        );

        font-size: clamp(
            20.199px,
            calc(-2.948836px + 1.205616vw),
            29px
        );
    }

    .footer-block .links-grid {
        margin-bottom: clamp(
            36.612px,
            calc(-6.490685px + 2.244932vw),
            53px
        );
    }

    .footer-block .links-grid .link {
        font-size: clamp(
            17.675px,
            calc(-4.220890px + 1.140411vw),
            26px
        );

        line-height: clamp(
            27.774px,
            calc(-7.012192px + 1.811781vw),
            41px
        );
    }


    /* ---------- Политики ---------- */

    .footer-block .legal-text {
        font-size: clamp(
            10.1px,
            calc(-2.787671px + 0.671233vw),
            15px
        );

        line-height: clamp(
            5.05px,
            calc(-0.078767px + 0.267123vw),
            7px
        );
    }

    .footer-block .legal-text-small {
        margin-bottom: clamp(
            12.625px,
            calc(-1.511986px + 0.736301vw),
            18px
        );

        font-size: clamp(
            15.15px,
            calc(-2.866438px + 0.938356vw),
            22px
        ) !important;

        line-height: clamp(
            11.362px,
            calc(-3.466712px + 0.772329vw),
            17px
        );
    }


    /* ---------- Нижняя подпись ---------- */

    .footer-block .footer-bottom {
        font-size: clamp(
            17.675px,
            calc(-4.220890px + 1.140411vw),
            26px
        );

        line-height: clamp(
            21.462px,
            calc(-3.624247px + 1.306575vw),
            31px
        );
    }
    .footer-block .footer-address {font-size: clamp(17.675px, calc(-4.220890px + 1.140411vw), 26px);}
}
/* =====================================================
   TABLET / SMALL DESKTOP 1024–1278
   ===================================================== */

@media (min-width: 1024px) and (max-width: 1278px) {

    /* ---------- Общая оболочка ---------- */

    .footer-block {
        box-sizing: border-box;

        width: auto;
        max-width: none;

        margin-right: clamp(42px, 6vw, 76px);
        margin-left: clamp(42px, 6vw, 76px);

        padding:
            48px
            clamp(34px, 4vw, 54px)
            28px;

        border-radius: 34px 34px 0 0;
    }


    /* =====================================================
       Три колонки
       ===================================================== */

    .footer-container {
        display: grid;

        grid-template-columns:
            minmax(170px, .8fr)
            minmax(290px, 1.25fr)
            minmax(210px, .9fr);

        column-gap: clamp(28px, 3.5vw, 46px);

        width: 100%;

        padding: 0 0 18px;

        align-items: start;
    }

    .footer-block .footer-left,
    .footer-block .footer-center,
    .footer-block .footer-right {
        display: flex;

        width: 100%;
        min-width: 0;

        flex-direction: column;
        align-items: flex-start;

        text-align: left;
    }


    /* =====================================================
       Логотип
       ===================================================== */

    .footer-block .logo-placeholder {
        width: 100%;
        margin: 0 0 22px;
    }

    .footer-block .logo-placeholder svg {
        display: block;

        width: min(100%, 185px);
        height: auto;

        margin: 0;
    }


    /* =====================================================
       Соцсети
       ===================================================== */

    .footer-block .social-icons {
        display: flex;

        width: 100%;

        margin: 0;

        align-items: center;
        justify-content: flex-start;

        gap: 14px;
    }

    .footer-block .social-icon {
        display: flex;

        width: 34px;
        height: 34px;

        margin: 0;

        align-items: center;
        justify-content: center;
    }

    .footer-block .social-icon svg {
        display: block;

        width: 34px;
        height: 34px !important;
    }


    /* ---------- Телефон ---------- */

    .footer-block .footer-contacts__phone {
        margin: 0;
    }

    .footer-block .footer-contacts__phone a {
        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 15px;
        line-height: 1.25;
    }


    /* =====================================================
       Подписка
       ===================================================== */

    .footer-block .footer-center {
        margin: 0;
    }

    .footer-block .subscribe-form {
        display: block;

        width: 100%;

        margin: 0;
    }

    .footer-block .subscribe-form .subscribe_form {
        display: flex;

        width: 100%;

        flex-direction: column;
        align-items: stretch;
    }

    .footer-block .footer-center .title {
        width: 100%;
        max-width: none;

        margin: 0;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.3;

        text-align: left;

        color: #fff;
    }

    .footer-block .subscribe-form-form {
        display: flex;

        width: 100%;

        flex-direction: column;

        gap: 12px;
        height: 100%;
    }

    .footer-block .subscribe-form .subscribe_mail,
    .footer-block .subscribe-form .btn-outline {
        box-sizing: border-box;

        width: 100%;
        height: 42px;

        margin: 0;
    }

    .footer-block .subscribe-form .subscribe_mail {
        padding: 0 13px;

        font-size: 14px;
    }

    .footer-block .subscribe-form .btn-outline {
        padding: 0 16px;

        font-size: 14px;
        font-weight: 700;
    }


    /* ---------- Согласие ---------- */

    .footer-block .subscribe_form__privacy,
    .footer-block .subscribe-form .agree-it {
        width: 100%;
        max-width: 330px;

        margin: 30px 0 0;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 9px;
        line-height: 1.35;

        text-align: left;
    }


    /* =====================================================
       Продукты и услуги
       ===================================================== */

    .footer-block .footer-subblock-text {
        margin: 0 0 18px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.25;

        color: #fff;
    }

    .footer-block .links-grid {
        display: flex;

        width: 100%;

        margin: 0 0 18px;

        flex-direction: column;
        align-items: flex-start;

        gap: 11px;
    }

    .footer-block .links-grid .link {
        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 13px;
        line-height: 1.25;
    }


    /* ---------- Политики ---------- */

    .footer-block .legal-text {
        width: 100%;

        margin: 0;

        text-align: left;
    }

    .footer-block .legal-text-small {
        font-size: 8px !important;
        line-height: 1.35;
    }


    /* ---------- Нижняя подпись ---------- */

    .footer-block .footer-bottom {
        margin-top: 22px;

        font-size: 12px;

        text-align: center;
    }

    .footer-block .footer-address {
        font-size: 15px;
    }
}
/* =====================================================
   TABLET 768–1023
   ===================================================== */

@media (min-width: 768px) and (max-width: 1023px) {

    /* ---------- Общая оболочка ---------- */

    .footer-block {
        box-sizing: border-box;

        width: auto;
        max-width: none;

        margin-right: clamp(28px, 4.5vw, 44px);
        margin-left: clamp(28px, 4.5vw, 44px);

        padding:
            44px
            clamp(28px, 4vw, 40px)
            26px;

        border-radius: 32px 32px 0 0;
    }


    /* =====================================================
       Верх: две колонки
       Низ: продукты на всю ширину
       ===================================================== */

    .footer-container {
        display: grid;

        grid-template-columns:
            minmax(190px, .8fr)
            minmax(320px, 1.2fr);

        column-gap: clamp(34px, 5vw, 52px);
        row-gap: 38px;

        width: 100%;

        padding: 0;

        align-items: start;
    }


    /* ---------- Левая колонка ---------- */

    .footer-block .footer-left {
        grid-column: 1;
        grid-row: 1;

        display: flex;

        width: 100%;

        flex-direction: column;
        align-items: flex-start;

        text-align: left;
    }


    /* ---------- Подписка ---------- */

    .footer-block .footer-center {
        grid-column: 2;
        grid-row: 1;

        display: flex;

        width: 100%;
        min-width: 0;

        margin: 0;

        flex-direction: column;
        align-items: stretch;

        text-align: left;
    }


    /* ---------- Продукты ниже ---------- */

    .footer-block .footer-right {
        grid-column: 1 / -1;
        grid-row: 2;

        display: flex;

        width: 100%;

        margin: 0;

        flex-direction: column;
        align-items: center;

        text-align: center;
    }


    /* =====================================================
       Логотип
       ===================================================== */

    .footer-block .logo-placeholder {
        width: 100%;

        margin: 0 0 22px;
    }

    .footer-block .logo-placeholder svg {
        display: block;

        width: min(100%, 195px);
        height: auto;

        margin: 0;
    }


    /* =====================================================
       Соцсети
       ===================================================== */

    .footer-block .social-icons {
        display: flex;

        width: 100%;

        margin: 0;

        align-items: center;
        justify-content: flex-start;

        gap: 15px;
    }

    .footer-block .social-icon {
        display: flex;

        width: 36px;
        height: 36px;

        margin: 0;

        align-items: center;
        justify-content: center;
    }

    .footer-block .social-icon svg {
        display: block;

        width: 36px;
        height: 36px !important;
    }


    /* ---------- Телефон ---------- */

    .footer-block .footer-contacts__phone a {
        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 16px;
        line-height: 1.25;
    }


    /* =====================================================
       Подписка
       ===================================================== */

    .footer-block .subscribe-form {
        display: block;

        width: 100%;

        margin: 0;
    }

    .footer-block .subscribe-form .subscribe_form {
        display: flex;

        width: 100%;

        flex-direction: column;
        align-items: stretch;
    }

    .footer-block .subscribe-form .title {
        width: 100%;
        max-width: 330px;

        margin: 0 0 20px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.3;

        text-align: left;

        color: #fff;
    }

    .footer-block .subscribe-form-form {
        display: flex;

        width: 100%;

        flex-direction: column;

        gap: 12px;
    }

    .footer-block .subscribe-form .subscribe_mail,
    .footer-block .subscribe-form .btn-outline {
        box-sizing: border-box;

        width: 100%;
        height: 42px;

        margin: 0;
    }

    .footer-block .subscribe-form .subscribe_mail {
        padding: 0 13px;

        font-size: 14px;
    }

    .footer-block .subscribe-form .btn-outline {
        padding: 0 16px;

        font-size: 14px;
        font-weight: 700;
    }


    /* ---------- Согласие ---------- */

    .footer-block .subscribe_form__privacy,
    .footer-block .subscribe-form .agree-it {
        width: 100%;
        max-width: 340px;

        margin: 16px 0 0;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 9px;
        line-height: 1.35;

        text-align: left;
    }


    /* =====================================================
       Продукты и услуги
       ===================================================== */

    .footer-block .footer-subblock-text {
        margin: 0 0 20px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.25;

        text-align: center;
    }

    /*
     * На планшете ссылки уже не складываем
     * в длинную вертикальную колонку.
     */
    .footer-block .links-grid {
        display: flex;

        width: 100%;
        max-width: 650px;

        margin: 0 auto 20px;

        flex-direction: row;
        flex-wrap: wrap;

        align-items: center;
        justify-content: center;

        gap: 12px 24px;
    }

    .footer-block .links-grid .link {
        flex: 0 0 auto;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 14px;
        line-height: 1.25;

        text-align: center;
    }


    /* =====================================================
       Политики
       ===================================================== */

    .footer-block .legal-text {
        width: 100%;
        max-width: 620px;

        margin: 0 auto;

        text-align: center;
    }

    .footer-block .legal-text br {
        display: none;
    }

    .footer-block .legal-text > div {
        margin-bottom: 4px;
    }

    .footer-block .legal-text-small {
        display: inline-block;

        font-size: 8px !important;
        line-height: 1.35;
    }


    /* ---------- Нижняя подпись ---------- */

    .footer-block .footer-bottom {
        margin-top: 30px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 12px;
        font-weight: 700;

        text-align: center;
    }
}
/* =====================================================
   MOBILE <=767
   ===================================================== */

@media (max-width: 767px) {

    /* ---------- Общая оболочка ---------- */

    .footer-block {
        box-sizing: border-box;

        width: auto;
        max-width: none;

        margin: 0 12px;
        padding: 46px 26px 24px;

        border-radius: 36px 36px 0 0;

        background: rgba(23, 54, 120, .80);
    }


    /* ---------- Общая колонка ---------- */

    .footer-container {
        display: flex;

        width: 100%;

        padding: 0;

        flex-direction: column;
        align-items: stretch;

        gap: 37px;
    }

    .footer-left,
    .footer-center,
    .footer-right {
        display: flex;

        width: 100%;

        flex-direction: column;
        align-items: center;

        text-align: center;
    }


    /* =====================================================
       ЛОГОТИП
       ===================================================== */

    .footer-block .logo-placeholder {
        width: 100%;
        margin: 0 0 0px;
        max-width: 200px;
    }

    .footer-block .logo-placeholder svg {
        display: block;

        width: min(100%, 230px);
        height: auto;

        margin: 0 auto;
    }


    /* =====================================================
       СОЦСЕТИ
       ===================================================== */

    .footer-block .social-icons {
        display: flex;

        width: 100%;

        margin: 0 0 0px;

        align-items: center;
        justify-content: center;

        gap: 20px;
    }

    .footer-block .social-icon {
        display: flex;

        width: 40px;
        height: 40px;

        margin: 0;

        align-items: center;
        justify-content: center;
    }

    .footer-block .social-icon svg {
        display: block;

        width: 100%;
        max-width: 40px;
        height: 40px !important;
    }


    /* ---------- Телефон ---------- */

    .footer-block .footer-contacts__phone {
        display: flex;
        flex-direction: column;

        align-items: center;
        justify-content: center;

        gap: 4px;

        margin: 0;
    }

    .footer-block .footer-contacts__phone a {
        display: block;
        text-align: center;
    }


    /* =====================================================
       ПОДПИСКА
       ===================================================== */

    .footer-block .footer-center {
        margin-top: 2px;
    }

    .footer-block .subscribe-form {
        display: block;

        width: 100%;

        margin: 0;
    }

    .footer-block .subscribe-form .subscribe_form {
        display: flex;

        width: 100%;

        flex-direction: column;
        align-items: stretch;
    }

    .footer-block .footer-center .title {
        width: 100%;
        max-width: 280px;

        /*margin: 0 auto 24px;*/

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.25;

        text-align: center;

        color: #fff;
    }

    .footer-block .subscribe-form-form {
        display: flex;

        width: 100%;

        flex-direction: column;

        gap: 16px;
        height: 96px;
    }

    .footer-block .subscribe-form .subscribe_mail {
        box-sizing: border-box;

        width: 100%;
        min-width: 0;
        height: 39px;

        margin: 0;
        padding: 0 12px;

        border: 1px solid rgba(255, 255, 255, .9);
        border-radius: 9px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 14px;

        text-align: left;

        color: #fff;
        background: transparent;
    }

    .footer-block .subscribe-form .btn-outline {
        box-sizing: border-box;

        width: 100%;
        min-width: 0;
        height: 39px;

        margin: 0;
        padding: 0 14px;

        border: 0;
        border-radius: 9px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 14px;
        font-weight: 700;
        line-height: 1;

        color: #fff;
        background: #e51b43;
    }


    /* ---------- Согласие ---------- */

    .footer-block .subscribe_form__privacy,
    .footer-block .subscribe-form .agree-it {
        width: 100%;
        max-width: 270px;

        margin: 20px auto 0;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 10px;
        line-height: 1.35;

        text-align: center;

        color: rgba(255, 255, 255, .80);
    }

    .footer-block .subscribe_form__privacy a,
    .footer-block .subscribe-form .agree-it a {
        font-size: inherit;
        line-height: inherit;

        color: inherit;
    }


    /* =====================================================
       ПРОДУКТЫ И УСЛУГИ
       ===================================================== */

    .footer-block .footer-right {
        margin-top: 0;
    }

    .footer-block .footer-subblock-text {
        margin: 0 0 19px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.25;

        color: #fff;
    }

    .footer-block .links-grid {
        display: flex;

        width: 100%;

        margin: 0 0 19px;

        flex-direction: column;
        align-items: center;

        gap: 13px;
    }

    .footer-block .links-grid .link {
        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 14px;
        line-height: 1.2;

        color: rgba(255, 255, 255, .92);
        text-decoration: none;
    }


    /* =====================================================
       ПОЛИТИКА
       ===================================================== */

    .footer-block .legal-text {
        width: 100%;

        margin: 0;

        text-align: center;
        line-height: 22px;
    }

    .footer-block .legal-text br {
        display: none;
    }

    .footer-block .legal-text > div {
        margin-bottom: -9px;
    }

    .footer-block .legal-text-small {
        display: inline-block;

        margin: 0;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 8px !important;
        line-height: 1.3;

        color: rgba(255, 255, 255, .75);
    }


    /* =====================================================
       НИЖНЯЯ ПОДПИСЬ
       ===================================================== */

    .footer-block .footer-bottom {
        margin-top: 37px;

        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 12px;
        font-weight: 700;
        line-height: 1.2;

        text-align: center;

        color: rgba(255, 255, 255, .92);
    }
    .footer-block .footer-address {
        
        margin-left: auto;
        margin-right: auto;
        
        
        text-align: center;
    }
}
/* =====================================================
   SMALL MOBILE <=374
   ===================================================== */

@media (max-width: 374px) {

    .footer-block {
        margin-right: 8px;
        margin-left: 8px;

        padding-right: 22px;
        padding-left: 22px;

        border-radius: 32px 32px 0 0;
    }

    .footer-block .logo-placeholder svg {
        width: min(100%, 210px);
    }

    .footer-block .social-icons {
        gap: 16px;
    }

    .footer-block .social-icon {
        width: 36px;
        height: 36px;
    }

    .footer-block .social-icon svg {
        max-width: 36px;
        height: 36px !important;
    }

    .footer-block .footer-center .title,
    .footer-block .footer-subblock-text {
        font-size: 15px;
    }
}
@media (min-width: 1400px) /*and (max-width: 1920px)*/ {
    .footer-block .footer-directions__toggle {
        gap: clamp(7px, calc(1.488px + .383vw), 8.837px);
        font-size: clamp(14px, calc(2.976px + .766vw), 17.675px);
        line-height: clamp(22px, calc(4.677px + 1.203vw), 27.774px);
    }

    .footer-block .footer-directions__chevron {
        width: clamp(7px, calc(1.488px + .383vw), 8.837px);
        height: clamp(7px, calc(1.488px + .383vw), 8.837px);
        flex-basis: clamp(7px, calc(1.488px + .383vw), 8.837px);
    }

    .footer-block .footer-directions__menu {
        bottom: calc(100% + clamp(4px, calc(0.85px + .219vw), 5.05px));
        width: max-content;
        min-width: clamp(250px, calc(53.15px + 13.671vw), 315.62px);
        max-width: calc(100vw - 32px);
        border-radius: clamp(12px, calc(2.551px + .656vw), 15.15px);
        box-shadow: 0 clamp(12px, calc(2.551px + .656vw), 15.15px) clamp(30px, calc(6.378px + 1.64vw), 37.874px) rgba(0, 0, 0, .28);
    }

    .footer-block .footer-directions__menu::before {
        height: clamp(16px, calc(3.402px + .875vw), 20.199px);
    }

    .footer-block .footer-directions__menu-link {
        padding:
            clamp(12px, calc(2.551px + .656vw), 15.15px)
            clamp(16px, calc(3.402px + .875vw), 20.199px);
        font-size: clamp(16px, calc(3.402px + .875vw), 17.199px);
        line-height: clamp(20px, calc(4.252px + 1.094vw), 25.249px);
    }
}
@media (min-width: 1921px) and (min-device-width: 2200px) {

    /*
     * «Другие направления».
     * Продолжаем размеры 1920 px без скачка и к 2650 px
     * приходим к большому desktop-макету.
     */

    .footer-block .footer-directions__toggle {
        gap: clamp(
            8.837px,
            calc(-2.112260px + 0.570274vw),
            13px
        );

        font-size: clamp(
            17.675px,
            calc(-4.220890px + 1.140411vw),
            26px
        );

        line-height: clamp(
            27.774px,
            calc(-7.012192px + 1.811781vw),
            41px
        );
    }

    .footer-block .footer-directions__chevron {
        width: clamp(
            8.837px,
            calc(-2.112260px + 0.570274vw),
            13px
        );

        height: clamp(
            8.837px,
            calc(-2.112260px + 0.570274vw),
            13px
        );

        flex-basis: clamp(
            8.837px,
            calc(-2.112260px + 0.570274vw),
            13px
        );

        border-right-width: clamp(
            1px,
            calc(-1.630137px + 0.136986vw),
            2px
        );

        border-bottom-width: clamp(
            1px,
            calc(-1.630137px + 0.136986vw),
            2px
        );
    }

    .footer-block .footer-directions__menu {
        bottom:
            calc(
                100% +
                clamp(
                    5.05px,
                    calc(-0.078767px + 0.267123vw),
                    7px
                )
            );

        width: max-content;

        /*
         * min-width из большого desktop в исходнике был закомментирован,
         * поэтому не вводим новую геометрию и сохраняем базовую логику.
         */

        max-width:
            calc(
                100vw -
                clamp(
                    32px,
                    calc(-41.643836px + 3.835616vw),
                    60px
                )
            );

        border-radius: clamp(
            15.15px,
            calc(-2.866438px + 0.938356vw),
            22px
        );

        box-shadow:
            0
            clamp(
                15.15px,
                calc(-2.866438px + 0.938356vw),
                22px
            )
            clamp(
                37.874px,
                calc(-7.169726px + 2.346027vw),
                55px
            )
            rgba(0, 0, 0, .28);
    }

    .footer-block .footer-directions__menu::before {
        height: clamp(
            20.199px,
            calc(-0.318699px + 1.068630vw),
            28px
        );
    }

    .footer-block .footer-directions__menu-link {
        padding:
            clamp(
                15.15px,
                calc(-2.866438px + 0.938356vw),
                22px
            )
            clamp(
                20.199px,
                calc(-2.948836px + 1.205616vw),
                29px
            );

        font-size: clamp(
            17.199px,
            calc(9.831986px + 0.383699vw),
            20px
        );

        line-height: clamp(
            25.249px,
            calc(-5.657740px + 1.609726vw),
            37px
        );
    }
}
@media (min-width: 1024px) and (max-width: 1278px) {
    .footer-block .footer-directions {
        align-items: flex-start;
    }

    .footer-block .footer-directions__toggle {
        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 13px;
        line-height: 1.25;
    }

    .footer-block .footer-directions__menu {
        width: 230px;
    }

    .footer-block .footer-directions__menu-link {
        padding: 11px 14px;
        font-size: 14px;
        line-height: 18px;
    }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .footer-block .footer-directions {
        flex: 0 0 auto;
        align-items: center;
        margin-top: 0;
    }

    .footer-block .footer-directions__toggle {
        justify-content: center;
        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 14px;
        line-height: 1.25;
        text-align: center;
    }

    .footer-block .footer-directions__menu {
        left: 50%;
        width: 240px;
        max-width: min(240px, calc(100vw - 56px));
        transform: translate(-50%, 6px);
    }

    .footer-block .footer-directions.is-open > .footer-directions__menu {
        transform: translate(-50%, 0);
    }

    .footer-block .footer-directions__menu-link {
        padding: 12px 16px;
        font-size: 14px;
        line-height: 18px;
        text-align: left;
    }
}

/* =====================================================
   FOOTER DIRECTIONS DROPDOWN
   ===================================================== */

/* Мобильный: до 767 — раскрытие по клику */
@media (max-width: 767px) {
    .footer-block .footer-directions {
        width: auto;
        max-width: 100%;
        align-items: center;
    }

    .footer-block .footer-directions__toggle {
        justify-content: center;
        font-family: 'Manrope', 'Rubik', Arial, sans-serif;
        font-size: 14px;
        line-height: 1.2;
        text-align: center;
        color: rgba(255, 255, 255, .92);
    }

    .footer-block .footer-directions__menu {
        left: 50%;
        width: 230px;
        max-width: min(230px, calc(100vw - 52px));
        transform: translate(-50%, 6px);
    }

    .footer-block .footer-directions.is-open > .footer-directions__menu {
        transform: translate(-50%, 0);
    }

    .footer-block .footer-directions__menu-link {
        padding: 12px 16px;
        font-size: 14px;
        line-height: 18px;
        text-align: left;
    }
}

@media (max-width: 374px) {
    .footer-block .footer-directions__menu {
        width: 215px;
        max-width: min(215px, calc(100vw - 44px));
    }
}

@media (max-width: 1024px) {
    .footer-center .title {
        font-size: 18px;
    }
}

@media (max-width: 767px) {
    .footer-center .title {
        font-size: 15px;
        line-height: 18px;
        text-align: left;
    }
}