@font-face {
    font-family: "Montserrat";
    src: url('../fonts/Montserrat-MediumItalic.woff2') format('woff2');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Montserrat";
    src: url('../fonts/Montserrat-BoldItalic.woff2') format('woff2');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "SF Pro Display";
    src: url('../fonts/FontsFree-Net-SFProDisplay-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "SF Pro Display";
    src: url('../fonts/FontsFree-Net-SFProDisplay-BoldItalic.woff2') format('woff2');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "SF Compact Text";
    src: url('../fonts/FontsFree-Net-SFCompactText-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

:root {
    --main-dark: #212a34;
    --main-light: #6e7884;
    --white: #fff;
    --background-light: #f0f2f7;
    --background-grey: #e0e3e9;
    --light-grey: #bfc8cf;
    --accent-color: #356197;

    --font-family: "Montserrat", sans-serif;
    --second-family: "SF Pro Display", sans-serif;
    --third-family: "SF Compact Text", sans-serif;
}

body {
    font-family: var(--font-family);
    font-style: italic;
}

/*  Header  */

.header-container {
    max-width: 1384px;
    padding: 0 60px;
    margin: 0 auto;
}

.header {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.7) 60%, #F0F2F7 100%);
    width: 100%;
    height: 100%;
    max-height: 224px;
    backdrop-filter: blur(10px);
    padding: 73.5px 0 101.5px 0;
}

.header-content {
    display: flex;
    justify-content: space-between;
    align-items: end;
}

.header-list {
    display: flex;
    column-gap: 25px;
    margin-left: auto;
}

.header-item-link {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--main-dark);
    transition: 0.3s;
}

.header-item-link:active {
    opacity: 0.5;
}

.header-list-item:nth-child(1) .header-item-link {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
}

.header-btn-col {
    display: flex;
    column-gap: 10px;
    margin-left: 25px;
}

.header-btn-col img {
    width: 24px;
    height: 24px;
}

.header-btn-1 {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 20px;
    width: 176px;
    height: 44px;
    background: var(--main-light);
    transition: 0.5s;
}

.header-btn-1:hover,
.header-btn-2:hover {
    background: var(--accent-color);
}

.header-btn-1:active,
.header-btn-2:active {
    background: var(--accent-color);
    opacity: 0.5;
}

.header-span {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--white);
}

.header-btn-2 {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: var(--main-dark);
    border-radius: 20px;
    width: 126px;
    height: 44px;
    transition: 0.5s;
}

.header-bunner {
    display: none;
}

/*  Header mobile */

.mobile-container {
    padding: 0 17px;
}

.header-mobile-content {
    position: fixed;
    display: none;
    flex-direction: column;
    min-width: 100%;
    min-height: 100%;
    top: 0;
    left: 0;
    z-index: 1000;
}

.header-mobile-wrap {
    display: flex;
    justify-content: space-between;
    align-items: end;
    padding: 74px 0 57px 0;
}

.header-mobile-burger {
    width: 24px;
    height: 24px;
}

.header-content-mobile-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 47px;
    column-gap: 10px;
    margin-bottom: 47px;
}

.header-mobile-title {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--main-light);
    margin-bottom: 10px;
}

.header-mobile-list {
    display: flex;
    flex-direction: column;
    align-items: start;
    row-gap: 10px;
}

.header-mobile-item-link {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--main-dark);
}

.header-col-mobile-2 {
    display: flex;
    flex-direction: column;
    align-items: end;
    margin-right: auto;
    row-gap: 16px;
}

.header-mobile-button {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 20px;
    width: 159px;
    height: 44px;
    background: var(--main-dark);
}

.header-mobile-span {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--white);
}

.header-mobile-button-2 {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 20px;
    width: 196px;
    height: 44px;
    background: var(--main-dark);
}

.header-mobile-main-title {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--main-dark);
    margin-bottom: 15px;
}

.header-mobile-social {
    display: flex;
    align-items: center;
    column-gap: 15px;
}

/*  Footer  */

.footer {
    border-radius: 60px 60px 0 0;
    background: var(--main-dark);
    padding-block: 78px 46px;
}

.footer-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 90px;
}

.footer-cont {
    display: flex;
    align-items: center;
    margin-bottom: 56px;
}

.footer-cont-img {
    position: relative;
    margin-right: 30px;
}

.footer-cont-img::after {
    display: block;
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    top: 0;
    right: -135%;
    background: url('../icons/right.svg') center no-repeat;
    background-size: 8px 14px;
}

.footer-cont-link {
    position: relative;
    display: block;
    font-weight: 500;
    font-size: 14px;
    color: var(--white);
    margin-right: 30px;
}

.footer-cont .footer-cont-link:nth-of-type(2)::after {
    display: block;
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    top: -7%;
    right: -67%;
    background: url('../icons/right.svg') center no-repeat;
    background-size: 8px 14px;
}

.footer-cont .footer-cont-link:nth-of-type(3)::after {
    display: block;
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    top: -7%;
    right: -67%;
    background: url('../icons/right.svg') center no-repeat;
    background-size: 8px 14px;
}

.footer-cont-span-1 {
    font-weight: 500;
    font-size: 14px;
    color: var(--light-grey);
}

.footer-content-wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

.footer-nav {
    display: flex;
    justify-content: space-between;
}

.footer-nav .footer-nav-card:nth-child(1) {
    margin-right: 97px;
}

.footer-nav .footer-nav-card:nth-child(2) {
    margin-right: 77px;
}

.footer-nav .footer-nav-card:nth-child(3) {
    margin-right: 80px;
}

.footer-nav-title {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--main-light);
    margin-bottom: 15px;
}

.footer-nav-list {
    display: flex;
    flex-direction: column;
    row-gap: 15px;
}

.footer-nav-item-link {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--white);
}

.footer-nav-button-col {
    display: flex;
    flex-direction: column;
    align-items: end;
    row-gap: 16px;
}

.footer-nav-col-btn-1 {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid var(--white);
    border-radius: 20px;
    width: 126px;
    height: 44px;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
    color: var(--white);
}

.footer-nav-col-btn-2 {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid var(--white);
    border-radius: 20px;
    width: 176px;
    height: 44px;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
    color: var(--white);
}

.footer-wrap-col-1 {
    display: flex;
    flex-direction: column;
    align-items: start;
    margin-bottom: 110px;
}

.footer-wrap-col-title {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--white);
    margin-bottom: 15px;
}

.footer-wrap-list {
    display: flex;
    align-items: center;
    column-gap: 15px;
}

.footer-wrap-text {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--white);
}

.footer-wrap-text:not(:last-child) {
    margin-bottom: 15px;
}

.footer-main-list {
    margin-bottom: 100px;
}

.footer-title {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--white);
    margin-bottom: 15px;
}

.footer-list {
    display: flex;
    column-gap: 30px;
}


.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.footer-bottom-list {
    display: flex;
    align-items: center;
    column-gap: 15px;
}

.footer-bottom-link {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--light-grey);
}

.footer-time {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--light-grey);
    margin-right: 15px;
}

.footer-bottom-span {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--light-grey);
}

.footer-content-2 {
    display: none;
}

.footer-cont-1 {
    display: flex;
    flex-wrap: wrap;
    row-gap: 5px;
    max-width: 480px;
    margin-bottom: 92px;
}

.footer-cont-1 .footer-cont-link:nth-of-type(2)::after {
    display: block;
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    top: -7%;
    right: -67%;
    background: url('../icons/right.svg') center no-repeat;
    background-size: 8px 14px;
}

.footer-cont-1 .footer-cont-link:nth-of-type(3)::after {
    display: block;
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    top: -7%;
    right: -67%;
    background: url('../icons/right.svg') center no-repeat;
    background-size: 8px 14px;
}

.footer-nav-1 {
    display: flex;
    flex-wrap: wrap;
    max-width: 680px;
    margin-bottom: 51px;

}

.footer-nav-cards {
    display: flex;
    column-gap: 97px;
    margin-right: 198px;
}

.footer-nav-button-col-1 {
    column-gap: 16px;
    display: flex;
    grid-column: -1/1;
    align-self: flex-end;
    margin-left: auto;
}

.footer-bottom-1 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 15px;
    row-gap: 20px;
}

.footer-list-1 {
    display: flex;
    max-width: 315px;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 58px;
}

.footer-main-list-1 {
    display: flex;
    column-gap: 20px;
    margin-bottom: 55px;
}

.footer-nav-button-col-1-1 {
    display: none;
}


@media (max-width:1439px) {

    .footer-wrap-col-2-2 {
        margin-left: auto;
    }

    .footer-bottom {
        justify-content: unset;
    }

}

@media (max-width:1338px) {

    .footer-content-wrap {
        column-gap: 30px;
    }

    .footer-nav {
        flex-wrap: wrap;
    }

    .footer-nav-button-col {
        margin-left: auto;
    }
}

@media (max-width:1220px) {

    .header {
        max-height: none;
    }


    .header-list,
    .header-btn-col {
        display: none;
    }

    .header-bunner {
        display: flex;
        column-gap: 20px;
    }

    .header-bunner-col {
        display: flex;
        column-gap: 10px;
    }

    .header-mobile-content.show {
        display: flex;
    }

    .header-content.hide {
        display: none;
    }


}

@media (max-width:1095px) {
    .footer-nav {
        justify-content: unset;
        margin-bottom: 30px;
    }
}

@media (max-width:890px) {

    .footer-content-1 {
        display: none;
    }

    .footer-content-2 {
        display: block;
    }

    .footer-nav-cards {
        margin-right: 137px;
    }

    .footer-bottom-list-1 {
        display: flex;
        column-gap: 15px;
        flex-wrap: wrap;
        justify-content: center;
    }
}

@media (max-width:800px) {
    .header {
        padding: 73.5px 0 30px 0;
    }
}

@media (max-width:699px) {
    .footer-nav-button-col-1 {
        display: none;
    }

    .footer-nav-button-col-1-1 {
        display: flex;
        margin-bottom: 30px;
        column-gap: 16px;

    }

    .footer-cont-1 {
        margin-bottom: 40px;
    }

    .footer-main-list-1 {
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }

    .footer-wrap-col-1 {
        margin-bottom: 40px;
        margin-inline: auto;
    }

    .footer-container {
        max-width: 1334px;
        padding: 0 37px;
    }


}

@media (max-width:629px) {
    .header-container {
        padding: 0 17px;
    }

    .footer-nav-cards {
        margin-right: 20px;
        column-gap: 100px;
    }
}

@media (max-width:430px) {
    .footer-nav-cards {
        column-gap: 50px;
    }
}

@media (max-width:400px) {
    .header-logo {
        max-width: 142px;
    }

    .header-mobile-button-2 {
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 20px;
        width: 170px;
        height: 44px;
        background: var(--main-dark);
    }

    .footer-nav-button-col-1-1 {
        flex-direction: column;
        row-gap: 16px;
    }

    .footer-list-1 {
        gap: 20px;
    }
}