/*Global Style Start*/
*{padding: 0;margin: 0;border: 0;}
*,*:before,*:after {box-sizing: inherit;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;}
html {box-sizing: border-box;}
nav,footer,header,aside {display: block;}
ul,ol,li{padding: 0;margin: 0;list-style: none;}
h1,h2,h3,h4,h5,h6 {font-size:inherit;margin: 0;;}
p,figure,figcaption,blockquote,dl,dd {margin: 0;}
img {max-width: 100%;display: block;} 
button {cursor: pointer;}
:focus,:active {outline: none;}
input,button,textarea,select {font-family: inherit;}
a:not([class]) {text-decoration-skip-ink: auto;}
a:focus, a:active {outline: none;}
.visually-hidden {position: absolute;width: 1px;height: 1px;margin: -1px;border: 0;padding: 0;clip: rect(0 0 0 0);overflow: hidden;}
/*Global Style End*/

/*General Style Start*/
body {
    margin: 0;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 400;
    color: #fff;
    overflow-x: hidden;
}
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
}
.link {
    color: #fff;
    text-decoration: none;
    padding: 0;
    border-bottom: 1px solid transparent;
}
.link::after {
    content: "";
    display: block;
    border-bottom:  1px solid rgba(0, 192, 199, 0.1);
}
.link:hover::after {
    border-bottom: 1px solid transparent;
}
.btn {
    display: flex;
    justify-content: center;
    width: 200px;
    height: 60px;
    align-items: center;
    font-size: 14px;
    font-weight: 400;
    text-decoration: none;
    color: var(--black);
    background-color: #ffc000;
    border-radius: 4px;
    transition: 2s;
    position: relative;
}

.btn:hover,
.btn:focus,
.btn:active  {
    background-color: rgb(255 248 118);
    transition: 1s;
}

.link__btn {
 margin-top: 30px;
}

.section-title {
    margin: 0 0 50px 0;
    padding-top: 50px;
    padding-bottom: 30px;
    font-family: 'Myriad', sans-serif;
    font-size: 36px;
    font-weight: 700;
    text-align: center;
    line-height: 48px;
    position: relative;
}
.main {
    background-color: #000;
}
.section {
    padding: 100px 0;

}
.section__title {
    margin: 0 0 50px 0;
    font-family: 'Roboto Slab', sans-serif;
    color: #000;
    font-size: 40px;
    text-transform: uppercase;
    font-weight: 900;
    line-height: 120%;
}
/*General Style End*/

/*
================================
Form Style Start
================================
*/
.form__wrap   {
    display: flex;
    align-items: center;
    max-width: 840px;
    padding: 40px;
    color: #000;
    text-align: left;
    background-color: #fff;
    border-radius: 4px;
}
.form {
    width: 360px;
    min-width: 300px;
    margin-right: 30px;
}

.form__text {
    max-width: 360px;
}

.form__text p {
    margin-bottom: 20px;
}

.form__text p:last-child {
    margin-bottom: 0;
}

.form__title {
    margin-bottom: 20px;
    font-family: 'Roboto', serif;
    font-size: 22px;
    font-weight: 700;
    color: var(--black);
}

.form__description, 
.form__disclaimer {
    font-size: 16px;
}

.form__disclaimer {
    color: #909090;
}

.form__label {
    display: inline-block;
    margin-bottom: 5px;
    font-size: 14px;
}

.form__input, 
.form__textarea {
    width: 100%;
    height: 40px;
    margin-bottom: 10px;
    padding: 20px;
    font-size: 16px;
    color: #000);;
    text-align: left;
    background-color: #fff;
    border: 2px solid #000;
    border-radius: 4px;
}

.form__textarea {
    height: 100px;
    resize: none;
}

.form__politics, .form__politics a {
    color: #a2a2a2;
    font-size: 11px;
}

.form__politics {
    margin-top: 10px;
}

.form__checkbox {
    margin-right:5px;
}

.form__btn {
    width: 100%;
    height: 40px;
    margin-top: 20px;
    white-space: pre-line;
    cursor: pointer;
}

.form__info {
    margin-top: 20px;
    margin-bottom: 30px;
    font-size: 14px;
}

.form__points {
    margin-bottom: 15px;
    padding-left: 30px;
    position: relative;
}

.form__points::before {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    background-color: #fff;
    border-radius: 100%;
    border: 1px solid var(--blue);
    position: absolute;
    top: 8px;
    left: 0;
}

.form__contacts {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-right: 40px;
}
.form__phone {
    margin-bottom: 5px;
}

@media (max-width: 400px) {
    .form {
        padding: 0 20px;
    }
    .form__politics, .form__politics a {
        font-size: 10px;
    }
    .form__info {
        font-size: 11px;
    }
}
/*
================================
Form Style End
================================
/* COOKIE */
#cookie-notification {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 15px;
    background-color: #f1f1f1;
    box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
    text-align: center;
    z-index: 9999;
}

#cookie-notification p {
    margin: 0 0 5px;
    color: #333;
    font-size: 10px;
    line-height: 100%;
}

#cookie-accept {
    background-color: #4CAF50;
    color: white;
    border: none;
    padding: 8px 20px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 4px;
}

/*Informacion Page Style End*/
/*HEADER*/
.header {
    width: 100%;
    position: fixed;
    background-color: #fff;
    top: 0;
    z-index: 9999999;
}
.header__link {
    display: flex;
    justify-content: space-between;
    padding: 20px 0;
}
.header__phone a,
.header__btn a {
    display: block;
}
.header__phone a {
    font-family: "Roboto Slab", sans-serif;
    color: #038FDD;
}
.header__btn {
    display: flex;
    gap: 10px;
}
.header__btn a {
    display: flex;
    align-items: center;
    padding: 10px;
    color: #fff;
    border-radius: 8px;
    position: relative;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
}
.header__btn .wa {
    padding-left: 40px;
    background-color: #038FDD;
    position: relative;
}
.header__btn .wa::before {
    content: '';
    width: 20px;
    height: 20px;  
    background-image: url('/assets/images/wa.svg');
    background-size: cover;
    position: absolute;
    left: 10px;
}
.header__btn .tg {
    padding-left: 40px;
    background-color: #038FDD;
    position: relative;
}
.header__btn .tg::before {
    content: '';
    width: 20px;
    height: 20px;  
    background-image: url('/assets/images/tg.svg');
    background-size: cover;
    position: absolute;
    left: 10px;
}
.header__btn .ph {
    padding-left: 40px;
    background-color: #08C454;
    position: relative;
}
.header__btn .ph::before {
    content: '';
    width: 20px;
    height: 20px;  
    background-image: url('/assets/images/ph.svg');
    background-size: cover;
    position: absolute;
    left: 10px;
}
.header__cta {
    max-width: 300px;
    font-family: "Roboto Slab", sans-serif;
    text-transform: uppercase;
    color: #038FDD;
}
.header__image {
    width: 50px;
}


/*OFFER*/
.offer {
    padding: 150px 0 50px;
    background-image: url('/assets/images/offer_bg.png');
    background-size: cover;
}
.offer__wrap {
    display: flex;
    gap:20px;
}
.offer__title {
    max-width: 900px;
    margin: 0 0 20px 0;
    font-family: "Roboto Slab", sans-serif;
    font-size: 47px;
    color: #fff;
    text-transform: uppercase;
}
.offer__subtitle {
    margin: 0 0 30px 0;
}
.offer__subtitle p {
    margin: 0 0 10px 0;
}

.offer__image {
    width: 400px;
    margin: 0 auto;
}
.offer__image2 {
   display: none;
}

.offer__form {
    max-width: 450px;
    padding: 30px;
    background-color: #fff;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
}
.offer-form__title {
    color: #154B9B;
}
.offer-form__label {
    color: #333;
}
/*ABOUT*/
.about {
    background-image: url('/assets/images/about_bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    color: #000;
}
.about__description {
    max-width: 500px;
    margin-bottom: 30px;
}
.advantages__list {
    display: flex;
    gap: 30px;
}
.advantages__item {
    padding: 30px;
    color: #fff;
    background-color: #154B9B;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
}
.advantages__item span {
    font-family: "Roboto Slab", sans-serif;
    font-size: 70px;
}
/*SERVICES*/
.services {
    background-image: url('/assets/images/white_bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    color: #000;
}
.services__description {
    max-width: 500px;
    margin-bottom: 50px;
}
.services__list {
    display: flex;
    gap: 30px;
}
.services__item {
    max-width: 400px;
    border: 1px solid #FFC000;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    position: relative;
}
.services__item::before {
    content: "";
    width: 20px;
    height: 20px;
    position: absolute;
    left: 20px;
    top: 20px;
    background-image: url('/assets/images/checkmark.svg');
    background-size: cover;
}
.services__name {
    position: absolute;
    left: 20px;
    bottom: 10px;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
}
/*BEMEFITS*/
.benefits {
    background-image: url('/assets/images/about_bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    color: #000;
}

.benefits__list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px solid #FFC000;
}
.benefits__item {
    padding: 10px 30px;
    color: #fff;
    background-color: #154B9B;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}
 
.benefits__title {
    margin-bottom: 30px;
    font-size: 30px;
    font-weight: bold;
    color: #154B9B;
    line-height: 120%;
}
.benefits__description {
    max-width: 400px;
}
.offer-benefits__item {
    color: #154B9B;
    background-color: #fff;
}
.offer-benefits__list {
    margin-bottom: 0;
    border: 0;
}
/*GARANTED*/
.garanted {
    background-image: url('/assets/images/garanted_bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    color: #000;
}
.benefits__list--border {
    max-width: 600px;
    border-top: 1px solid #FFC000;
    border-bottom: 0px;
    padding: 20px 0 0 0 ;
}
.garanted__title {
    margin-bottom: 20px;
}
.garanted__item {
    margin-bottom: 15px;
    position: relative;
}
.garanted__item p {
    padding-left: 30px;
}
.garanted__item::before {
    content: "";
    width: 20px;
    height: 20px;
    background-image: url('/assets/images/checkmark.svg');
    background-size: cover;
    position: absolute;
    left: 0;
}
/*WORK*/
.work {
    background-image: url('/assets/images/white_bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    color: #000;
}
/*REVIEWS*/
.reviews {
    background-image: url('/assets/images/reviews_bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    color: #000;
}
.reviews__wrap {
    display: flex;
    gap: 30px;
    justify-content: space-between;
}
.reviews__rating {
    margin-bottom: 30px;
}
.reviews__item {
    margin-bottom: 20px;
}
/*STEP*/
.step {
    background-image: url('/assets/images/white_bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    color: #000;
}
.step__list {
    color: #000;
}
.step__item {
    display: flex;
    margin-bottom: 20px;
}
.step__item h3 {
    font-family: "Roboto Slab", sans-serif;
    font-size: 30px;
    color: #154B9B;
    line-height: 100%;
}
.step__num {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    margin-right: 20px;
    height: 50px;
    color: #000;
    background-color: #FFC000;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}


.feedback {
    background-image: url('/assets/images/offer_bg.png');
    background-size: cover;
    color: #000;
}
.feedback__title {
    color: #fff;
}

/*
================================
Footer Style Start
================================
*/
.footer {
    padding: 15px 0;
    background-color: #154B9B;
}
.footer__container {
    font-size: 13px;
    color: #fff;
}

.footer__copyright, .footer__link {
    opacity: .3;
}
/*
================================
Footer Style End
================================
*/

@media (max-width: 960px) {
    .container {
        max-width: 960px;
    }
    .section {
        height: auto;
    }
    .header__cta {
        display: none;
    }
}

@media (max-width: 768px) {
    .container {
        max-width: 768px;
    }
    .section {
        height: auto;
    }
    .header__btn .tg {
        display: flex;
    }

}

@media (max-width: 650px) {
    .section {
        height: auto;
    }
    .section__title {
        margin-bottom: 30px;
        font-size: 30px;
    }
    .container {
        max-width: 500px;
    }
    .header {
        top: auto;
        bottom: 0;
    }
    .header__img {
        display: none;
    }
    .header__link {
        flex-direction: column;
        padding: 15px 0 10px;
    }
    .header__phone {
       display: flex;
       justify-content: space-around;
       margin-bottom: 5px;
    }
    .header__btn {
        width: 100%;
        justify-content: space-between;
    }
    .header__btn .tg::before,
    .header__btn .wa::before,
    .header__btn .ph::before {
        width: 20px;
        height: 20px;
    }
    .header__btn .tg,
    .header__btn .wa,
    .header__btn .ph {
        width: 100%;
        padding-left: 35px;
        border-radius: 4;
        -webkit-border-radius: 4;
        -moz-border-radius: 4;
        -ms-border-radius: 4;
        -o-border-radius: 4;
    }
    .header__btn .tg {
        display: none;
    }
    .offer {
        padding-top: 50px;
    }
    .offer__title {
        line-height: 120%;
        font-size: 40px;
    }
    .offer__image2 {
        display: block;
        margin: 0 0 20px 0;
        width: 140px;
    }
    .advantages__list,
    .services__list {
        flex-direction: column;
        gap: 20px;
    }
    .services__description {
        bottom: 30px;
    }
    .services__name {
        font-size: 20px;
    }
    .advantages__item span {
        font-size: 40px;
    }

    .benefits__item {
        padding: 10px;
    }

    .reviews__wrap {
        flex-wrap: wrap;
    }

    .step__item h3 {
        font-size: 20px;
        margin-bottom: 10px;
    }

    .form__wrap {
        flex-wrap: wrap;
        padding: 20px;
    }
    .form {
        min-width: auto;
        max-width: 100%;
        width: 100%;
        order: 2;
        padding: 0;
        margin-right: 0;
    }
    .form__text {
        order: 1;
        margin-bottom: 20px;
    }
}

@media (max-width: 950px) {
    .offer__wrap {
        display: block;
    }
}




.modal-overlay {position:fixed; top:0; left:0; width:100%; height:100%; display:flex; z-index:9999; transition:opacity 0.3s ease,background-color 0.3s ease; opacity:0; animation:fadeIn 0.3s forwards}
@keyframes fadeIn {to {opacity:1}
}
.modal-content {background-color:#fff; padding:25px; border-radius:10px; position:relative; max-width:450px; width:90%; box-shadow:0 10px 25px rgba(0,0,0,0.2); transform:translateY(20px); animation:slideUp 0.4s cubic-bezier(0.175,0.885,0.32,1.275) forwards; transition:all 0.3s ease; margin:0}
.dark-theme .modal-content {background-color:#2c3e50; color:#ecf0f1}
.dark-theme .modal-content h2,.dark-theme .modal-content h3 {color:#ecf0f1}
.dark-theme .modal-content p,.dark-theme .modal-content strong {color:#bdc3c7}
.dark-theme .modal-close {color:#bdc3c7}
.dark-theme .modal-close:hover {color:#e74c3c}
.dark-theme .spoiler-button {color:#3498db; background:none}
.dark-theme .spoiler-button:hover {color:#2980b9}
.dark-theme .modal-content a {color:#3498db}
@keyframes slideUp {to {transform:translateY(0)}
}
.modal-close {position:absolute; right:15px; top:10px; cursor:pointer; font-size:24px; color:#7f8c8d; transition:color 0.2s ease; line-height:1; padding:0 5px}
.modal-close:hover {color:#e74c3c}
.modal-content h2 {margin-top:0; color:#2c3e50; font-size:24px; margin-bottom:15px; padding-right:20px}
.modal-content p {color:#7f8c8d; line-height:1.5; margin-bottom:10px}
.modal-content h3 {color:#2c3e50; margin:15px 0 10px; font-size:18px}
.spoiler-button {background:none; border:none; color:#3498db; cursor:pointer; padding:5px 0; margin:10px 0; font-size:14px; transition:color 0.2s ease; text-align:left; width:100%}
.spoiler-button:hover {color:#2980b9}
#custom-spoiler-content {overflow:auto; height:200px; transition:all 0.3s ease; opacity:1; color: #000;}
.modal-button {background-color:#3498db; color:white; border:none; padding:10px 20px; border-radius:5px; cursor:pointer; font-size:16px; transition:background-color 0.3s ease,transform 0.2s ease; display:block; width:100%; margin-top:15px}
.modal-button:hover {background-color:#2980b9; transform:translateY(-2px)}
.modal-button:active {transform:translateY(0)}
