*, *::before, *::after{
    margin: 0;
    padding: 0;
    border: none;
    box-sizing: border-box;

}

@font-face {
    font-family: 'Roboto',sans-serif;
    font-weight: 400;
    font-style: normal;
}

html, body{
    height: 100%;
}

body{
    height: 100%;
    font-family: 'Roboto',sans-serif;
    font-size: 16px;
    color: #000;
    line-height: 1;
}

h1{
    font-size: 110px;
}

h2{
    font-size: 50px;
}

h3{
    font-size: 32px;
}

p{
    line-height: 150%;
}

section{
    padding: 140px 60px;
}

.container{
    width: 100%;
    max-width: 1440px;
    margin: auto;
}

img{
    display: block;
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: cover;
    image-rendering: auto;
}

.logo img{
    max-width: 80px;
}

.nav{
    background-color: #fff;
    padding: 40px 60px;
}

.navbar{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.navbar__wrapp{
    display: flex;
    gap: 20px;
}

.navbar__item{
    color: #000;
    text-decoration: none;
}

.navbar__item:hover{
    color: #ffbf69;
}

.hero{
    position: relative;
    color: #fff;
    min-height: 800px;
}

.hero__content{
    display: flex;
    position: relative;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 550px;
    gap: 20px;
    margin: auto;
}

.hero__content-logo{
    filter: invert();
    max-width: 120px;
}

.img-hero{
    position: absolute;
    top: 0%;
    bottom:0%;
    left: 0%;
    right: 0%;
}

.bg-hero{
    position: absolute;
    top: 0%;
    bottom:0%;
    left: 0%;
    right: 0%;
    background-color: #000000c4;
}

.mt60{
    margin-top: 60px;
}

.third{
    background-color: #a37b3d;
    color: #fff;
}

.subtitle{
    font-size: 24px;
    font-weight: 500;
}

.flex-v{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.gap-40{
    gap: 40px;
}

.about__p {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.result{
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 1fr;
}

.faq-wrapp {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.faq-title__wrapp {
    cursor: pointer;
    display: flex;
    width: 100%;
    gap: 40px;
    justify-content: space-between;
    align-content: center;
    align-items: center;
    padding-bottom: 40px;
    border-bottom: 1px solid #cecece;
    margin-bottom: 40px;
}


.faq-title__text {
    font-size: 28px;
    font-weight: 500;
}

.faq-title__arrow {
    display: flex;
    align-content: center;
    align-items: center;
    width: 100%;
    max-width: 20px;
    transition: transform 0.3s;
}

.faq-title__wrapp.active .faq-title__arrow {
    transform: rotate(180deg);
}

.faq-descr__wrapp {
    display: none;
}

.show-tablet{
    display: none;
}

.hide-tablet{
    display: block;
}

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

.w100{
    width: 100%;
}

.mw-450{
    max-width: 450px;
}

.mw-640{
    max-width: 640px;
}

.mh-500{
    max-height: 500px;
}

.mb-20{
    margin-bottom: 20px;
}

.gallery-wrapp{
    margin-top: 60px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}

.gallery-item{
    
}

.gallery__item-img{
   
}

.cards-wrapp{
    margin-top: 60px;
    align-content: flex-start;
    align-items: flex-start;
    display: flex;
    flex: none;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 40px;
    height: min-content;
    justify-content: center;
    overflow: visible;
    padding: 0;
    position: relative;
    width: 100%;
}

.card-item{
    display: flex;
    flex: 1 0 0px;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 20px;
    height: min-content;
    justify-content: center;
    overflow: visible;
    padding: 0;
    position: relative;
    color: #fff;
}

.card-item__img{
    max-width: 50%;
    border: 2px solid #fff;
}

.dev__wrapp{
    margin-top: 60px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 20px;
    width: 100%;
}

.dev__item{
    max-width: 15%;
}

.strtg-h1{
    font-size: 72px;
    text-align: center;
}

.footer{
    background-color: #000;
    padding: 60px 60px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
}

@media screen and (max-width: 992px) {
    h1{
        font-size: 80px;
    }
    
    h2{
        font-size: 40px;
    }
    
    h3{
        font-size: 28px;
    }

    section{
        padding: 100px 40px;
    }

    .show-tablet{
        display: block;
    }

    .hide-tablet, .author-img{
        display: none;
    }

    .nav{
        padding: 40px 40px;
    }

    .video-wrapp{
        flex-direction: column;
    }

    .video-wrapp__left{
        display: flex;
        flex-direction: row;
        gap: 20px;
        max-width: 100%;
    }

    .descr__wrapp{
        margin-top: 0px;
    }

    .video__img-left{
        height: auto;
        max-width: 40%;
    }
    
}

@media screen and (max-width: 479px) {
    h1{
        font-size:48px;
    }
    
    h2{
        font-size: 32px;
    }
    
    h3{
        font-size: 24px;
    }

    section{
        padding: 80px 20px;
    }

    .gap-40{
        gap: 20px;
    }

    .nav{
        padding: 20px 20px;
    }

    .navbar__wrapp{
        gap: 10px;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .navbar__item{
        font-size: 12px;
    }

    .logo img{
        width: 75%;
    }

    .hero{
        min-height: auto;
    }

    .gallery-wrapp{
        gap: 10px;
    }

    .subtitle{
        font-size: 20px;
    }

    .cards-wrapp{
        flex-direction: column;
    }

    .dev__wrapp{
        margin-top: 40px;
        flex-wrap: wrap;
        gap: 10px;
    }
    
    .dev__item{
        max-width: 20%;
    }

    .strtg-h1{
        font-size: 48px;
    }

}