:root {
    /* === Палитра 1: Тёплая нейтральная === */

    /* Основной фон */
    --color-background: #FAF9F6;

    /* Фон блоков, карточек */
    --color-block-bg: #E8DDD2;

    /* Основной акцент (заголовки, кнопки) */
    --color-primary: #7A5C4A;

    /* Текст (основной и вторичный) */
    --color-text-main: #3E3E3E;

    /* Дополнительный акцент (hover, подчеркивания) */
    --color-accent: #D9B79C;

    /* Светлый для кнопок/фона */
    --color-white: #FFFFFF;
    --color-dark: #3E3E3E;
}
.error-input{
    border: 1px solid red!important;
}
.none{display: none!important;}
html{
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
}
body {
    position: relative;
    background-color: var(--color-background);
    color: var(--color-text-main);
    font-family: 'Inter', sans-serif;
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
}
*{
    box-sizing: border-box;
    font-family: 'Inter', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
}
p{
    font-size: 1rem;
    line-height: 1.6;
}
h1, h2, h3 {
    color: var(--color-primary);
}
h2{
    font-size: clamp(25px, 5vw, 2.4rem);
    line-height: 1;
    margin: 35px 0;
}
h3{
    font-size: clamp(25px, 5vw, 2.4rem);
    line-height: 1;
    margin: 35px 0;
}

.btn {
    padding: 0.75rem 1.5rem;
    border-radius: 6px;
    transition: background-color 0.3s ease;
    cursor: pointer;
}
.btn-t-1{
    background-color: var(--color-primary);
    color: var(--color-white);
    border: 1px solid transparent;
    text-align: center;
}
.btn-t-2{
    background-color: transparent;
    color: var(--color-dark);
    border: 1px solid var(--color-primary);
}
.btn-t-3{
    background-color: #FFFFFF;
    color: #464646;
    border: 1px solid transparent;
    margin: auto;
    border-radius: 50px;
    display: flex;
    gap: 15px;
    align-items: center;
}
.btn-t-4{
    background-color: #FFFFFF;
    color: #464646;
    border: 1px solid transparent;
    margin: auto;
    border-radius: 50px;
    display: flex;
    gap: 15px;
    align-items: center;
}
.btn-icon{
    width: 20px;
    height: 20px;
    display: flex;
}

.btn.price{
    margin-top: 30px;
    text-transform: uppercase;
}

.btn:hover {
    background-color: var(--color-accent);
}
.btn-t-1:hover {
    background-color: var(--color-accent);
    color: #ffffff;
}
a:visited{
    color: #ffffff;
}

.btn-t-3:hover{
    background-color: #25a0dd;
    color: #FFFFFF;
}
.btn-t-4:hover{
    background-color: #25D366;
    color: #FFFFFF;
}
.btn-t-3:visited, .btn-t-4:visited{
color: #464646;
}

.text-center p, .text-center{
    text-align: center;
}

.header-root{
    position: relative;
    width: 100%;
    max-width: 1230px;
    margin: 0 auto;
    padding: 15px;
    right: 0;
    left: 0;
    top: 0;
    transition: all 0.3s ease;
    z-index: 9;
}
.logo{
    height: 40px;
    width: auto;
}

.header-background-color {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    background-color: var(--color-block-bg);
    border-radius: 12px;
}

.header-menu {
    display: flex;
    gap: 30px;
}

.header-menu a {
    color: var(--color-text-main);
    text-decoration: none;
    font-weight: 400;
    text-transform: uppercase;
    transition: color 0.3s ease;
}
.header-menu a:focus {
    outline: none;
}

.header-menu a:hover {
    color: var(--color-primary);
}

.burger {
    width: 30px;
    height: 30px;
    cursor: pointer;
    display: none;
}

/*  common*/
.main-1200{
    width: 100%;
    max-width: 1230px;
    margin: 0 auto;
    padding: 0 15px;
}
.content{
    width: 100%;
    max-width: 1230px;
    margin: 0 auto;
    padding: 0 15px;
}
/*  end common*/
.c-open-icon{
    pointer-events: none;
}
/*  banner  */
.main-banner{
    width: 100%;
    max-width: 1230px;
    margin: 0 auto;
    position: relative;
    display: grid;
    gap: 30px;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
}
.main-banner-text{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 15px;
}
.main-banner-img{
    position: relative;
    display: flex;
    justify-content: end;
}
.m-b-img, .elementor img.m-b-img{
    width: 100%;
    max-width: 100%;
    border-radius: 25px;
    max-height: 650px;
    object-fit: cover;
    z-index: 1;
}
.background-back{
    position: absolute;
    background-color: var(--color-block-bg);
    width: 100%;
    height: 100%;
    right: -15px;
    bottom: -15px;
    border-radius: 25px;
    z-index: 0;
}
.mb-text-1{
    font-size: clamp(25px, 5vw, 2.4rem);
    line-height: clamp(25px, 5vw, 2.8rem);
    margin: 0 0 35px 0;
}
.mb-text-1 span.t-color{
    color: var(--color-primary);
}
.mb-text-2{
    font-weight: 700;
    font-size: clamp(14px, 5vw, 1.6rem);
    color: var(--color-primary);
    margin: 0 0 15px 0;
    line-height: clamp(14px, 5vw, 1.8rem);
}
.mb-text-3, .mb-text-4, .mb-text-5{
    font-size: clamp(14px, 5vw, 1.6rem);
    margin: 0 0 10px 0;
    line-height: clamp(14px, 5vw, 1.8rem);
}

.mb-20, .mb-text-2.mb-20,.mb-text-3.mb-20, .mb-text-4.mb-20, .mb-text-5.mb-20{
    margin-bottom: 20px;
}
.mb-25, .mb-text-2.mb-25,.mb-text-3.mb-25, .mb-text-4.mb-25, .mb-text-5.mb-25{
    margin-bottom: 25px;
}
.mb-30, .mb-text-2.mb-30,.mb-text-3.mb-30, .mb-text-4.mb-30, .mb-text-5.mb-30{
    margin-bottom: 30px;
}
.mb-0{
    margin-bottom: 0;
}
.content.back-color.mt-20, .mt-20{
    margin-top: 20px;
}
.content.back-color.mt-25, .mt-25{
    margin-top: 20px;
}
.content.back-color.mt-30, .mt-30{
    margin-top: 30px;
}
.content.back-color p{
    font-size: clamp(16px, 2vw, 18px);
    line-height: 1.6;
}

.mb-btn-container{
    margin-top: 35px;
    display: grid;
    grid-template-columns: 200px 200px;
    gap: 15px;
}
.mb-btn-container.btn-70{
    grid-template-columns: 0.7fr;
}
.mb-btn-container.btn-center-270{
    /*gap: 15px;*/
    grid-template-columns: 300px 300px;
    justify-content: center;
}
.logo-text{
    display: none;
    margin: 0;
}
.close-menu{
    width: 25px;
    position: relative;
    text-align: right;
    margin-left: auto;
    display: none;
    margin-bottom: 25px;
}

@media (max-width: 1100px) {
    .logo-text{
        display: block;
    }
    .header-background-color{
        justify-content: space-between;
    }
    .header-menu {
        display: none;
        flex-direction: column;
        position: fixed;
        height: 100%;
        top: 0;
        right: 0;
        bottom: 0;
        background: #1b1a1a;
        width: 50%;
        max-width: 230px;
        padding: 15px;
        gap: 15px;
    }
    .header-menu a{
        color: #cecece;
    }
    .header-menu.mobile-show{
        display: flex;
    }
    .header-menu.mobile-show .close-menu{
        display: block;
    }
    .custom-multi-btn {
        z-index: -1;
    }

    .burger {
        display: block;
    }
    .mb-btn-container{
        margin-top: 35px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 15px;
    }
    .main-banner{
       display: flex;
        flex-direction: column-reverse;
        padding: 15px 15px 0 15px;
    }
    .main-banner-img{
        display: flex;
        max-width: 350px;
        /*margin: ;*/
        justify-content: center;
    }
    .mb-text-1,.mb-text-2, .mb-text-3, .mb-text-4, .mb-text-5{
        text-align: center;
    }
    .mb-btn-container.btn-70{
        grid-template-columns: 260px;
        justify-content: center;
    }
}
@media (max-width: 700px) {
    .mb-btn-container.btn-center-270{
        grid-template-columns: 1fr;
    }
}
@media (max-width: 700px) {
    .btn-t-3, .btn-t-4{
        padding: 10px 15px;
        gap: 7px;
    }
}


/*  quote   */
.blockquote {
    width: 100%;
    max-width: 1230px;
    margin: 20px auto;
    padding: 60px 80px 40px;
    position: relative;
}
.blockquote p {
    font-family: "Utopia-italic";
    font-size: clamp(1.3rem, 5vw, 2.4rem);
    line-height: clamp(1.35rem, 6vw, 2.5rem);
    font-weight: 700px;
    text-align: center;
    margin: 20px 0;
}

.blockquote:before {
    position: absolute;
    font-family: 'FontAwesome';
    top: 0;
    content:"\f10d";
    /*font-size: 200px;*/
    font-size: clamp(50px, 25vw, 200px);
    color: rgba(232, 221, 210, 0.17);

}
.blockquote::after {
    content: "";
    top: 20px;
    left: 50%;
    margin-left: -100px;
    position: absolute;
    border-bottom: 3px solid var(--color-primary);
    height: 3px;
    width: 200px;
}
@media (max-width: 1100px) {
    .blockquote {
        padding: 20px 20px 0 20px;
        margin: 10px auto 20px auto;
        position: relative;
    }
}

/*  END quote   */

/*  content */
.ul-color{
    list-style: none;
    padding: 0;
    margin: 0;
}
.ul-color li, .dash-list li {
    font-size: clamp(16px, 2vw, 18px);
    line-height: 1.6;
}
.ul-color li:not(:last-child), .dash-list li:not(:last-child) {
    margin-bottom: 10px;
}
.ul-color li::before {
    content: "•";
    color: var(--color-primary, #7A5C4A);
    display: inline-block;
    width: 20px;
}
.ul-color.price li{
    font-size: 23px;
    line-height: 23px;
}
.back-color{
    padding: 35px 25px;
    background: var(--color-block-bg);
    border-radius: 12px;
}

/*  content-two-col */
.content-two-col{
    width: 100%;
    /*max-width: 1230px;*/
    margin: 0 auto;
    padding: 0 15px;
    display: grid;
    grid-template-columns: 30% 1fr;
    gap: 35px;
}
.background-full-color{
    background: var(--color-block-bg);
    padding: 30px 0;
}

.dash-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.dash-list li {
    position: relative;
    padding-left: 1.2em;
}

.dash-list li::before {
    content: "-";
    position: absolute;
    left: 0;
    color: var(--color-primary, #7A5C4A); /* Подходит под палитру 1 */
}
.col-2-center{
    display: flex;
    justify-content: center;
    flex-direction: column;
    gap: 15px;
}
.m-b-img-border, .elementor img.m-b-img-border{
    width: 100%;
    height: 100%;
    border-radius: 12px;
    object-fit: cover;
}

@media (max-width: 900px) {
    .content-two-col{grid-template-columns: 1fr}
    .m-b-img-border{display: none}
    .col-2-center {
    }
}
/*  end content-two-col */

/*  cert-container  */
.cert-container{
    width: 100%;
    max-width: 1230px;
    margin: 35px auto;
    padding: 0 15px;
    display: flex;
    gap: 35px;
    overflow: auto;
}
/* Для WebKit-браузеров (Chrome, Safari, Edge) */
.cert-container::-webkit-scrollbar {
    display: none;
}

/* Для Firefox */
.cert-container {
    scrollbar-width: none; /* убирает ширину полосы */
    -ms-overflow-style: none; /* IE/Edge */
}
.cert-item{
    width: 150px;
    cursor: pointer;
    flex-shrink: 0;
}
.cert-item .cert-img{
    width: 100%;
    max-width: 100%;
}

/*  END cert-container  */

.m-0-35{
    margin: 0 0 35px 0;
}
.m-35-35{
    margin: 35px 0;
}
.m-35-0{
    margin: 35px 0 0 0;
}

.blockquote-line{
    height: 3px;
    background: var(--color-primary);
    width: 200px;
    margin: 40px auto;
}
.two-col-50-50{
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr;
    justify-content: space-between;
}
.two-col-50-50 h3{
    margin: 0 0 35px 0;
}
.one-col-50{
    padding: 35px 25px;
    border-radius: 12px;
}
.col-50-background{
    background: #E8DDD2;;
}
.col-50-border{
    border: 1px solid #E8DDD2;

}
.online-offline{
    border-radius: 50px;
    border: 1px solid var(--color-primary);
    color: var(--color-primary);
    width: 140px;
    height: 30px;
    padding: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 15px;
}

/*  accord  */
.one-accord{
    border-bottom: 1px solid #E8DDD2;
    margin-bottom: 15px;
}
.accord-one-head{
    display: flex;
    justify-content: space-between;
    align-items: center;
    /*padding: 0 15px;*/
    /*border: 1px solid var(--color-primary);*/
    border-radius: 15px;
    padding-bottom: 15px;
    cursor: pointer;
}
.accord-one-head *{
    pointer-events: none;
}
.accord-title{
    color: var(--color-primary);
    font-size: 20px;
    font-weight: 600;
    margin: 0;
}

.accord-one-body {
    display: none;
    padding-bottom: 15px;
}
.accord-one-body.show {
    display: block;
}
.accord-one-body p{
    margin: 0;
}
.accord-arrow-d{
    width: 15px;
    height: 15px;
}
.rotate-180{
    transform: rotate(180deg);
}
.footer-main{
    width: 100%;
    background: #E8DDD2;
    min-height: 400px;
    margin-top: 50px;
}
.footer-main-bottom{
    width: 100%;
    background: #7A5C4A;
    min-height: 80px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: center;
    justify-content: center;
    padding: 35px 0;
}
.footer-title{
    color: #FFFFFF;
    margin: 0 0 5px 0;
    font-weight: 600;
}

/*  footer-form send*/
.contact-container{
    position: relative;
}
.footer-status-send{
    border-radius: 13px;
    background: rgba(0, 0, 0, 0.85);
    position: absolute;
    top: 20px; bottom: 0; right: 0;
    height: 100%;
    display: grid;
    align-items: center;
    left: 15px;
    width: calc(100% - 30px);
}
.footer-status-send-grid{
    width: 100%;
    display: grid;
    min-height: 300px;
    grid-template-columns: 1fr;
    gap: 15px;
    max-width: 800px;
    justify-content: center;
    margin: 0 auto;
}
.footer-status-v-center{
    display: flex;
    align-items: center;
    justify-content: center;
}
.footer-status-v-content{
    color: #FFFFFF;
    max-width: 75%;
    margin: 0 auto;
    text-align: center;
}
.footer-status-v-end-title{
    font-size: 20px;
    font-weight: 600;
}
.footer-status-v-end-text{
    font-size: 18px;
    font-weight: 300;
    margin: 0 0 40px 0;
}
.footer-status-v-end-btn{
    width: 180px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-primary);
    font-size: 18px;
    color: #FFFFFF;
    font-weight: 300;
    border-radius: 35px;
    border:none;
    cursor: pointer;
}

/*       Contact     */
.contact-title-form{
    color: var(--color-primary);
    font-size: 25px;
    font-weight: 500;
    margin: 0 0 25px 0;
}
.contact-title-sub{
    font-size: 16px;
    font-weight: 300;
    margin: 0;
    line-height: 25px;
}
.contact-col{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.contact-container{
    width: 100%;
    max-width: 1230px;
    padding: 40px 15px 0 15px;
    margin: 0 auto 50px auto;
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr;
    justify-content: center;
    position: relative;
}
.contact-form{
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.contact-inp{
    border-radius: 25px;
    border: 1px solid #979797;
    width: 100%;
    height: 40px;
    padding: 15px 30px;
    outline: none;
    background: #FFFFFF;
    font-size: 16px;
    font-weight: 300;
    color: #7B7B7B;
}
.text-area-contact{
    width: 100%;
    height: 120px;
    padding: 15px 30px;
    border: 1px solid #979797;
    outline: none;
    border-radius: 20px;
    background: #FFFFFF;
    font-size: 16px;
    font-weight: 300;
    color: #7B7B7B;
    resize: none;
}
.contact-column-line{
    width: 100%;
    max-width: 1180px;
    padding: 0 15px;
    margin: 0 auto 140px auto;
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr;
    gap: 20px;
}
.contact-column-item{
    width: 100%;
}
.contact-column-title{
    font-size: 25px;
    font-weight: 500;
    color: #3A66EB;
    margin: 0 0 15px 0;
}
.contact-column-sub-title{
    font-size: 25px;
    font-weight: 300;
    color: #9E9E9E;
    margin: 0;
}
.send-mob{display: none; margin: 0 auto}
.btn-contact{
    background-color: var(--color-primary);
    width: 100%;
    max-width: 180px;
    display: flex;
    justify-content: center;
    padding: 0.75rem 1.5rem;
    border-radius: 6px;
    align-items: center;
    color: #FFFFFF;
    border: none;
    height: var(--btn-height);
    font-size: 18px;
    font-weight: 300;
    text-decoration: none;
    flex-shrink: 0;
    cursor: pointer;
}
.h-100 {
    height: 100%;
}
.send-mob {
    display: none;
    margin: 0 auto;
}
.footer-link{
    color: #FFFFFF;
    text-decoration: none;
    font-size: 18px;
    font-weight: 300;
    margin: 0;
    display: flex;
    gap: 5px;
}
.footer-link .icon-mes{
    width: 20px;
    height: auto;
    display: flex;
}
.footer-link:hover, .footer-link:visited{
    color: #FFFFFF;
}
.footer-columns{
    width: 100%;
    max-width: 1230px;
    padding: 0 15px;
    margin: 0 auto;
    display: flex;
    gap: 60px;
}
.footer-phone-container{
    display: flex;
    align-items: center;
    gap: 7px;
}
.footer-one{
    display: flex;
    flex-direction: column;
    gap: 15px;
}
/*.main-1200 p:last-of-type:not(.col-50-title):not(.content.back-color p):not(.footer-status-v-end-text) {*/
/*    margin-bottom: 0;*/
/*}*/
.col-50-title{
    font-size: 18px;
    font-weight: 400;
    margin: 15px 0;
}

.footer-social{
    display: flex;
    gap: 15px;
    justify-content: start;
    align-items: center;
}
.f-icon-social{
    width: 30px;
    height: auto;
    display: flex;
}

.custom-multi-btn {
    z-index: 9;
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 70px;
    height: 70px;
    background-color: #00f6a0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease-in-out;
    animation: pulse 1.5s infinite;
}
.custom-multi-btn img{
    width: 100%;
    height: 100%;
    max-width: 40px;
}
@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgb(0, 246, 160); }
    70% { box-shadow: 0 0 0 15px rgba(3, 169, 244, 0); }
    100% { box-shadow: 0 0 0 0 rgba(3, 169, 244, 0); }
}
.custom-multi-icon-container {
    z-index: 9999;
    position: fixed;
    bottom: 115px;
    right: 38px;
    display: none;
    flex-direction: column;
    gap: 10px;
}
.custom-multi-icon {
    width: 50px;
    height: 50px;
    /*background-color: white;*/
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
.custom-multi-icon img {
    width: 100%;
    height: 100%;
}
.custom-multi-icon-container.show {
    display: flex;
}
.custom-multi-icon-container.show .custom-multi-icon {
    opacity: 1;
    transform: translateY(0);
}
@media (max-width: 1115px) {
    .two-col-50-50{
        display: grid;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 710px) {
    .custom-multi-btn{
        width: 50px;
        height: 50px;
    }
    .footer-columns{
        flex-direction: column;
        gap: 20px;
    }
    .footer-one{
        align-items: center;
    }
}
@media (max-width: 930px) {
    .footer-status-send-grid{
        display: flex;
        flex-direction: column-reverse;
    }
    .footer-status-v-banner{
        height: 250px;
    }
    .footer-status-v-end-title, .footer-status-v-end-text{
        text-align: center;
    }
    .footer-status-v-end-btn{
        margin: 0 auto;
    }
    .blockquote-line{
        margin: 31px auto;
    }
}
@media (max-width: 600px) {
    .send-pc{
        display: none;
    }
    .form-btn-footer{
        display: block;
    }
    .contact-container {
        grid-template-columns: 1fr;
        padding: 40px 15px 40px 15px;
    }
    .send-mob{
        display: block;
    }
}
/*  end footer-form send*/

.swiper {
    width: 100%;
    padding: 0;
}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
    position: relative;
    margin-top: 20px;
}

.swiper-pagination-bullet-active{
    background-color: #7A5C4A!important;
}

.testimonial {
    box-sizing: border-box;
    padding: 20px;
    background: #f5f5f5;
    margin: 0;
    border-radius: 8px;
    text-align: center;
}

.testimonial p {
    font-size: 16px;
    margin: 0 0 10px 0;
}
.testimonial h4 {
    font-size: 18px;
    margin: 0;
}

.swiper-wrapper * {
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}


/* MODAL*/

.root-modal-container{
    position: fixed;
    top: 0; bottom: 0; left: 0; right: 0;
    display: none;
    justify-content: center;
    align-items: center;
    background: rgba(0, 0, 0, 0.5);
    z-index: 99;
}
.show.root-modal-container{
    display: flex;
}
.modal-content{
    width: 100%;
    max-width: 500px;
    background: #FFFFFF;
    border-radius: 15px;
    border: 1px solid #E8DDD2;
}
.modal-body{
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 15px;
}
.mi-mo-inp, .mi-mo-area{
    width: 100%;
    height: 40px;
    border-radius: 15px;
    border: 1px solid #979797;
    padding: 10px 15px;
    outline: none;
}
.mi-mo-area {
    width: 100%;
    height: 60px;
}
.modal-header{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    padding: 15px;
    border-bottom: 1px solid #dad8cf;
}
.title-modal{
    font-size: 20px;
    font-weight: 500;
    margin: 0;
}
.close-modal{
    font-size: 25px;
    line-height: 25px;
    cursor: pointer;
}
.modal-footer{
    padding: 0 15px 15px 15px;
    display: flex;
    justify-content: center;
}

.btn-modal{
    position: relative;
    width: 100%;
    max-width: 180px;
    height: 40px;
    margin: 0 auto;
    border-radius: 15px;
    border: none;
    background: var(--color-primary);
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
}
/* состояние загрузки */
.btn-modal.is-loading {
    color: transparent;
    pointer-events: none;
}

/* сам спинер — только через CSS, без доп. элементов */
.btn-modal.is-loading::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.4);
    border-top-color: #fff;
    animation: spin 0.6s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

#show-dropdown{
    cursor: pointer;
}
.dropdown{
    position: relative;
}
.service-list{
    position: absolute;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #FFFFFF;
    border-radius: 15px;
    padding: 10px;
    width: 280px;
    top: 32px;
    z-index: 99;
    border: 1px solid var(--color-primary);
}
.service-list a{
    font-size: 13px;
}
ul:not(.ul-color), ol:not(.ul-color) {
    margin: 5px 0 1em 5px;
}
@media (max-width: 1100px) {
    .service-list{
        position: relative;
        width: 100%;
        margin-top: 5px;
        background: transparent;
        top: 0;
        border: none;
    }
    ul:not(.ul-color), ol:not(.ul-color){
       padding: 0 0 0 10px;
    }
}

.blockquote.max-180:before{
    font-size: clamp(50px, 25vw, 180px);
}


.post-3, .post-383{
    max-width: 1230px;
    margin: 0 auto;
    padding: 0 15px;
}
