/*Обнуление*/
*{padding:0;margin:0;border:0;}
*,*:before,*:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}
:focus,:active{outline:none;}
a:focus,a:active{outline:none;}
nav,footer,header,aside{display:block;}
html,body{height:100%;width:100%;font-size:100%;line-height:1;font-size:14px;-ms-text-size-adjust:100%;-moz-text-size-adjust:100%;-webkit-text-size-adjust:100%;}
input,button,textarea{font-family:inherit;}
/*input::-ms-clear{display:none;}*/
button{cursor:pointer;}
button::-moz-focus-inner{padding:0;border:0;}
a,a:visited{text-decoration:none;}
a:hover{text-decoration:none;}
/*ul li{list-style:none;}*/
img{vertical-align:top;}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;}
/*--------------------*/
body{
    font-family: "Roboto", serif;
    position: absolute;
}
body, html {
    overflow-x: hidden;
}
header{
    background-image: url("../images/prewiev.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 830px;
}
.header--container{
    max-width: 1300px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 20px 40px 20px;
    height: auto;
}
.header--container h1{
    color: #FFF;
    text-align: center;
    font-family: "Albert Sans", serif;
    font-size: 42px;
    font-style: normal;
    font-weight: 700;
    line-height: 22px;
}
.header--container a{
    color:#FFF;
    font-size: 26px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    margin-left: 20px;
}
.header--navigation{
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: transform 0.3s ease-in-out;
}
.burger {
    display: none;
    font-size: 30px;
    color: white;
    cursor: pointer;
}
.header--navigation button {
    --color: #FFDA32;
    font-family: inherit;
    display: inline-block;
    width: 8em;
    height: 2.6em;
    line-height: 2.5em;
    margin: 20px;
    position: relative;
    cursor: pointer;
    overflow: hidden;
    border: 2px solid var(--color);
    transition: color 0.5s;
    z-index: 1;
    font-size: 17px;
    border-radius: 6px;
    font-weight: 500;
    color: var(--color);
    background: none;
}
.header--navigation button:before {
    content: "";
    position: absolute;
    z-index: -1;
    background: var(--color);
    height: 150px;
    width: 200px;
    border-radius: 50%;
}
.header--navigation button:hover {color: #fff;}
.header--navigation button:before {
    top: 100%;
    left: 100%;
    transition: all 0.5s;
}
.header--navigation button:hover:before {top: -30px;left: -30px;}
.header--navigationbutton:active:before {background: #FFDA32;transition: background 0s;}
#active{color:#FFDA32;}
/*--------------------*/
.preview--container{
    max-width: 1300px;
    margin: 0 auto;
    text-align: center;
    padding: 0 20px;
    height: auto;
    margin-top: 200px;
}
.preview--container h2{
    color: #FFF;
    text-align: center;
    text-shadow: 0 5px 13px rgba(255, 255, 255, 0.40);
    font-size: 62px;
    font-style: normal;
    font-weight: 900;
    line-height: normal;
    margin-bottom: 20px;
}
.preview--text{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    margin-bottom: 150px;
}
.preview--container h4{
    color: #FFF;
    text-align: center;
    text-shadow: 0 1px 20px #FFF;
    font-size: 21px;
    font-style: normal;
    font-weight: 700;
    line-height: 25px;
    display: flex;
    max-width: 530px;
    height: auto;
}
.search-box {
    display: flex;
    background: white;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    align-items: center;
    gap: 10px;
    height: 90px;
}
.input-group {
    display: flex;
    align-items: center;
    background: #f1f1f1;
    padding: 10px;
    border-radius: 30px;
    flex: 1;
    height: 60px;
}
.icon {margin-right: 8px;font-size: 16px;}
.search-box input {
    border: none;
    outline: none;
    background: transparent;
    font-size: 14px;
    width: 100%;
}
.search-box button{
    width: 150px;
    height: 54px;
    flex-shrink: 0;
    border-radius: 40px;
    background: #FFDA32;
    box-shadow: 0 8px 20px 0 rgba(255, 218, 50, 0.50);
}
.search-box button {
    --color: #FFDA32;
    font-family: inherit;
    display: inline-block;
    width: 8em;
    height: 2.6em;
    line-height: 2.5em;
    margin: 20px;
    position: relative;
    cursor: pointer;
    overflow: hidden;
    border: 2px solid var(--color);
    transition: color 0.5s;
    z-index: 1;
    font-size: 17px;
    border-radius: 6px;
    font-weight: 500;
    color: var(--color);
    background: none;
}
.search-box button:before {
    content: "";
    position: absolute;
    z-index: -1;
    background: var(--color);
    height: 150px;
    width: 200px;
    border-radius: 50%;
}
.search-box button:hover {color: #fff;}
.search-box button:before {
    top: 100%;
    left: 100%;
    transition: all 0.5s;
}
.search-box button:hover:before {top: -30px;left: -30px;}
.search-box:active:before {background: #FFDA32;transition: background 0s;}
.input-group {
    transition: border 0.3s ease-in-out; /* Добавляем плавное изменение бордера */
}
/*--------------------*/
.explore--container{
    max-width: 1300px;
    margin: 0 auto;
    text-align: center;
    padding: 0 20px;
    margin-top: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.explore--container h2{
    color: #1C2B38;
    text-align: center;
    text-shadow: 0 5px 13px rgba(255, 255, 255, 0.40);
    font-size: 42px;
    font-style: normal;
    font-weight: 800;
    line-height: normal;
    margin-bottom: 20px;
}
.explore--container h3{
    color: #778088;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 25px;
    max-width: 696px;
    margin-bottom: 80px;
}
.explore--blocks{
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: center;
}
.explore--blocks_block {
    position: relative;
    display: inline-block;
}
.explore--blocks_block img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 520px;
    border-radius: 30px;
}
.overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    background: rgba(0, 0, 0, 0.5);
    padding: 10px 20px;
    border-radius: 10px;
}


/*--------------------*/
.mission{
    background-image: url("../images/mission_back.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: 60px;
}
.mission--container{
    max-width: 1300px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 70px 20px;
}
.mission--image img{
    max-width: 100%;
    height: auto;
    width: 705px;
    max-height: 385px;
}
.mission--content h6{
    border-radius: 30px;
    background: #AFFFF0;
    color: #1C2B38;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 27px;
    width: 130px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.mission--content h2{
    color:#FFF;
    text-shadow: 0 5px 13px rgba(255, 255, 255, 0.40);
    font-size: 45px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 20px;
}
.mission--content p{
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 25px;
    max-width: 505px;
    min-height: 250px;
    margin-bottom: 30px;
}
.mission--content button{
    width: 200px;
    height: 50px;
    flex-shrink: 0;
    border-radius: 40px;
    background: #FFDA32;
    box-shadow: 0 8px 20px 0 rgba(255, 218, 50, 0.50);
    color: #1C2B38;
    text-align: center;
    font-size: 16px;
    font-weight: 800;
    line-height: 22px;
}
/*--------------------*/
.news--container{
    max-width: 1300px;
    margin: 0 auto;
    padding: 50px 20px;
}
.news--up{
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 45px;
}
.news--up_text h3{
    color: #1C2B38;
    text-shadow: 0 5px 13px rgba(255, 255, 255, 0.40);
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 40px;
}
.news--up_text p{
    color: #778088;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 25px;
    max-width: 538px;
    height: 50px;
}
.news--up_button button{
    width: 150px;
    height: 54px;
    flex-shrink: 0;
    border-radius: 40px;
    background: #FFDA32;
    box-shadow: 0 8px 20px 0 rgba(255, 218, 50, 0.50);
}
.news--up_button button {
    --color: #FFDA32;
    font-family: inherit;
    display: inline-block;
    width: 8em;
    height: 2.6em;
    line-height: 2.5em;
    margin: 20px;
    position: relative;
    cursor: pointer;
    overflow: hidden;
    border: 2px solid var(--color);
    transition: color 0.5s;
    z-index: 1;
    font-size: 17px;
    border-radius: 6px;
    font-weight: 500;
    color: var(--color);
    background: none;
}
.news--up_button button:before {
    content: "";
    position: absolute;
    z-index: -1;
    background: var(--color);
    height: 150px;
    width: 200px;
    border-radius: 50%;
}
.news--up_button button:hover {color: #fff;}
.news--up_button button:before {
    top: 100%;
    left: 100%;
    transition: all 0.5s;
}
.news--up_button button:hover:before {top: -30px;left: -30px;}
.news--up_button:active:before {background: #FFDA32;transition: background 0s;}
.news--main{
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    justify-content: center;
}
.news--main_block{
    width: 270px;
    min-height: 315px;
    border-radius: 3px;
    background: #FFF;
    box-shadow: 0 8px 34px 0 rgba(0, 0, 0, 0.06);
}
.news--main_block img{
    max-width: 100%;
    width: 270px;
    min-height: 200px;
    flex-shrink: 0;
    margin-bottom: 25px;
    border-radius: 20px;
    height: 210px;
}
.news--main_block h5{
    color:#778088;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 30px;
    padding: 10px;
}
.news--main_block h3{
    flex-shrink: 0;
    color: #1C2B38;
    text-shadow: 0 5px 13px rgba(255, 255, 255, 0.40);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
    padding-bottom: 10px;
    padding-left: 10px;
}
/*--------------------*/
.vision{
    background-image: url("../images/vision back.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: 60px;
}
.vision--container{
    max-width: 1300px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 145px 20px;
}
.vision--image{margin-right: 50px;}
.vision--image img{
    max-width: 100%;
    height: auto;
    width: 705px;
    max-height: 385px;
}
.vision--content h6{
    border-radius: 30px;
    background: #AFFFF0;
    color: #1C2B38;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 27px;
    width: 130px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.vision--content h2{
    color:#FFF;
    text-shadow: 0 5px 13px rgba(255, 255, 255, 0.40);
    font-size: 45px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 20px;
}
.vision--content p{
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 25px;
    max-width: 505px;
    min-height: 250px;
    margin-bottom: 30px;
}
.vision--content button{
    width: 200px;
    height: 50px;
    flex-shrink: 0;
    border-radius: 40px;
    background: #FFDA32;
    box-shadow: 0 8px 20px 0 rgba(255, 218, 50, 0.50);
    color: #1C2B38;
    text-align: center;
    font-size: 16px;
    font-weight: 800;
    line-height: 22px;
}
/*--------------------*/
.reviews {
    max-width: 1170px;
    padding-bottom: 50px;
    flex-shrink: 0;
    margin: 0 auto;
    margin-top: 50px;
}
.reviews h2{
    text-align: center;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    color: #000000;
}
.carousel {
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
    justify-content: center;
}
.carousel-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
    width: max-content;
}
.review p{
    margin-bottom: 15px;
    color: #ffffff;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
    min-height: 115px;
}
.review{
    flex: 0 0 33.33%;
    box-shadow: 0 4px 20px -1px rgba(0, 0, 0, 0.00);
    backdrop-filter: blur(25px);
    height: auto;
    min-height: 250px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    margin: 20px;
    text-align: center;
    background: rgba(48, 69, 165, 0.90);
    border-radius: 20px;
}
.review:nth-child(3n) {margin-right: 0;}
.review img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin-bottom: 20px;
}
.reviews button {
    background: #ffffff;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}
.review h4{
    color: #ffffff;
    font-size: 14px;
    font-style: italic;
    font-weight: 600;
    line-height: normal;
}
.review span{color:  #FFDA32;}
.prev, .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #818181;
    border: none;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    cursor: pointer;
    z-index: 2;
}
.reviews__button{
    display: flex;
    justify-content: center;
    margin-top: 40px;
    align-items: center;
}
.prev {left: 10px;z-index: 2;}
.next {right: 10px;z-index: 2;}
.reviews__button button{
    width: 150px;
    height: 54px;
    flex-shrink: 0;
    border-radius: 40px;
    background: #FFDA32;
    box-shadow: 0 8px 20px 0 rgba(255, 218, 50, 0.50);
}
.reviews__button button {
    --color: #FFDA32;
    font-family: inherit;
    display: flex;
    width: 8em;
    height: 2.6em;
    line-height: 2.5em;
    margin: 20px;
    position: relative;
    cursor: pointer;
    overflow: hidden;
    border: 2px solid var(--color);
    transition: color 0.5s;
    z-index: 1;
    font-size: 17px;
    border-radius: 6px;
    font-weight: 500;
    color: var(--color);
    background: none;
}
.reviews__button button:before {
    content: "";
    position: absolute;
    z-index: -1;
    background: var(--color);
    height: 150px;
    width: 200px;
    border-radius: 50%;
}
.reviews__button button:hover {color: #fff;}
.reviews__button button:before {
    top: 100%;
    left: 100%;
    transition: all 0.5s;
}
.reviews__button button:hover:before {top: -30px;left: -30px;}
.reviews__button:active:before {background: #FFDA32;transition: background 0s;}

/*--------------------*/
footer{background-color: #19224D;color: #FFFFFF;}
.footer-container {
    display: flex;
    justify-content: space-between;
    max-width: 1000px;
    margin: auto;
    padding: 50px 20px;
}
.footer-section {flex: 1;}
.footer-section h3, .footer-section h4 {margin-bottom: 10px;font-size: 28px;}
.footer-section ul {
    list-style: none;
    padding: 0;
    line-height: 1.8;
}
.footer-section a{
    font-size: 18px;
    color: #FFFFFF;
    text-decoration: underline;
}
.footer-section p{margin-bottom: 20px;font-size: 16px;}
.social-icons a {margin-right: 10px;}
.social-icons img {width: 24px;height: 24px;}
.footer-bottom {
    text-align: center;
    padding: 10px;
    background-color: #0A1332;
}
.footer-section {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.footer-section h3, .footer-section h4 {margin-bottom: 10px;font-size: 28px;}
.footer-section ul {
    list-style: none;
    padding: 0;
    line-height: 1.8;
}
.footer-section a {
    font-size: 18px;
    color: #FFFFFF;
    text-decoration: underline;
}
.footer-section p {margin-bottom: 20px;font-size: 16px;}
/*--------------------*/
/*--------------------*/
.cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #0A1332;
    color: #fff;
    text-align: center;
    padding: 15px;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2);
    opacity: 85%;
    z-index: 100;
}

.cookie-banner p {
    margin: 0;
    font-size: 21px;
}

.cookie-banner a {
    color: #ffffff;
    text-decoration: underline;
}

.cookie-button {
    margin-top: 10px;
    padding: 5px 10px;
    background-color: #FFDA32;
    color: white;
    border: none;
    cursor: pointer;
    font-size: 18px;
    border-radius: 3px;
    transition: 0.2s;
}

.cookie-button:hover {
    background-color: white;
    color: black;
}

/*--------------------*/
@media (max-width: 1000px) {
    .mission--container,.vision--container{
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .preview--container{
        margin-top: 80px;
    }
    .preview--text{
        margin-bottom: 105px;
    }
    .news--up{
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}
@media (max-width: 670px){
    .search-box{
        display: block;
        height: auto;
        padding: 25px 20px;
    }
    .preview--container{
        margin-top: 0;
    }
    .preview--text{
        margin-bottom: 35px;
    }
    .reviews{
        display: none;
    }
}
@media(max-width: 425px){
    .vision--content p,.mission--content p {
        font-size: 18px;
    }
    .preview--container h4{
        font-size: 16px;
    }
    .preview--container h2{
        font-size: 44px;
    }
    .explore--container h2{
        font-size: 32px;
    }
    .header--container h1{
        font-size: 26px;
    }
    .cookie-banner p{
        font-size: 18px;
    }
    .cookie-button{
        font-size: 14px;
    }
}

@media (max-width: 768px) {
    .burger {
        display: block;
    }

    .header--container {
        display: flex;
        justify-content: space-between;
        padding: 30px;
    }

    .header--navigation {
        position: absolute;
        top: 65px;
        right: 0;
        background: rgba(0, 0, 0, 0.8);
        width: 300px;
        height: auto;
        flex-direction: column;
        align-items: flex-start;
        padding: 20px;
        transform: translateX(100%);
        box-shadow: -4px 4px 10px rgba(0, 0, 0, 0.5);
    }

    .header--navigation a {
        margin: 10px 0;
        font-size: 20px;
    }

    .header--navigation.active {
        transform: translateX(0);
    }
    .header--navigation button{
        margin: 0;
    }
}

