:root {
    --sect-bg: #EDF2FA;
    --element-bg: #C6D8F4;
    --btn-bg: #4A7CD2;
    --btn-hover-bg: #5388e2;
    --btn-active-bg: #4070c4;
    --dark-bg: #000A5B;
    --dark-bg2: #10244B;

    --main-text: #10244B;
    --dark-text: #10244B;
    --gray-text: #899EB4;
    --color-text: #4F81D5;

    --main-radius: 12px;
}


/* styles */
body {
    min-width: 480px;
    background: #fff;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.5em;
    color: var(--main-text);
    cursor: default;
}

header, section, footer {
    margin: 0 auto;
}

.wrapper {
    margin: 0 auto;
    padding: 0 10px;
    max-width: 1440px;
    position: relative;
}

img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}

b {
    font-weight: 700;
}


/*form*/
.main_form input{
    border: 1px solid #d1d1d1;
    background: #fff;
    width: 100%;
    height: 90px;
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.10) inset;
    font-size: 22px;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    color: #000;
    border-radius: var(--main-radius);
    margin-bottom: 30px;
    text-align: center;
}
.main_form ::-webkit-input-placeholder {
    color: #333;
}
.main_form ::-moz-placeholder {
    color: #333;
}
.main_form :-moz-placeholder {
    color: #333;
}
.main_form :-ms-input-placeholder {
    color: #333;
}
.main_form ::placeholder{
    color: #000;
}
.main_form :focus::-webkit-input-placeholder {
    color: transparent;
}
.main_form :focus::-moz-placeholder {
    color: transparent;
}
.main_form :focus:-moz-placeholder {
    color: transparent;
}
.main_form :focus:-ms-input-placeholder {
    color: transparent;
}

/* button */
.main-btn {
    border: none;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    display: inline-block;
    max-width: 300px;
    -webkit-border-radius: 14px;
    -moz-border-radius: 14px;
    border-radius: 14px;
    background: var(--btn-bg);
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight: 500;
    color: #fff;
    font-size: 16px;
    line-height: 1.3em;
    text-align: center;
    padding: 12px 20px;
    transition: background 0.2s ease-in-out;
}
.main-btn:hover {
    background: var(--btn-hover-bg);
}
.main-btn:active{
    background: var(--btn-active-bg);
    top: 2px;
}

.main_form .main-btn{
    text-transform: uppercase;
    display: block;
    width: 100%;
    max-width: 100%;
    font-size: 22px;
    padding: 0 15px;
    line-height: 90px;
    font-weight: 700;
    height: 90px;
}

/* titles */
.title {
    font-weight: 700;
    font-size: 41px;
    line-height: 1.3em;
    text-align: center;
    margin-bottom: 50px;
}
.subtitle{
    color: var(--gray-text);
    text-align: center;
    margin: -20px auto 60px;
    font-size: 18px;
}
.pretitle{
    color: var(--color-text);
    font-weight: 500;
    margin-bottom: 20px;
}


section{
    padding: 70px 0;
}

.gray-bg{
    background: var(--sect-bg);
}




/*header*/
.header{
    padding: 20px 0;
}
.header-content{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
.logo{
    display: flex;
    align-items: center;
    gap: 10px;
}
.logo p{
    font-weight: 500;
    font-size: 21px;
    line-height: 1.1em;
}
.header-benefit-list{
    display: flex;
    align-items: center;
    gap: 20px;
}
.header-benefit-list>li{
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 500;
}



/* offer */
.offer{
    padding-top: 40px;
    padding-bottom: 0;
}
.offer-content{
    display: flex;
    align-items: flex-end;
    gap: 50px;
}

.offer-text{
    flex: 0 0 710px;
    padding-bottom: 90px;
}
.main-subtitle{
    font-size: 16px;
    line-height: 1.2em;
    font-weight: 500;
    color: var(--color-text);
}
.main-title{
    font-size: 66px;
    line-height: 1.1em;
    color: var(--dark-text);
    font-weight: 700;
    margin-top: 20px;
}
.main-desctiprion{
    color: var(--gray-text);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5em;
    margin-top: 20px;
}
.offer .btn-container{
    margin-top: 50px;
}

.main-benefits{
    display: flex;
    gap: 30px;
    margin-top: 40px;
    padding-top: 40px;
    border-top: 2px solid #caced4;
}
.main-benefits>li{
    display: flex;
    align-items: center;
    flex: 0 0 50%;
    gap: 10px;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3em;
}
.main-benefits>li:before{
    content: '';
    width: 25px;
    height: 25px;
    background: url(../img/check.svg);
    flex: 0 0 25px;
}


.offer-img{
    flex: 0 0 calc(100% - 710px - 50px);
    position: relative;
}
.offer-img:before{
    content: '';
    background: var(--element-bg);
    width: 80%;
    height: 90%;
    position: absolute;
    bottom: 0;
    Left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    border-radius: 30px 30px 0 0;
}
.offer-img .people{
    position: relative;
    z-index: 2;
    max-width: 90%;
    width: auto;
    margin-left: auto;
}
.offer-img .product{
    position: absolute;
    z-index: 2;
    max-width: 70%;
    width: auto;
    bottom: 0;
    left: 0;
}

.offer-label{
    padding: 18px 16px;
    border-radius: var(--main-radius);
    position: absolute;
    z-index: 3;
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.1);
    font-size: 12px;
    line-height: 1.3em;
    font-weight: 700;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 10px;
}
.offer-label big{
    display: block;
    font-size: 16px;
    line-height: 1.2em;
}

.safe-label{
    background: var(--dark-bg);
    color: #fff;
    top: 15%;
    left: -20px;
    max-width: 340px;
}
.approve-label{
    background: #fff;
    bottom: 25%;
    right: 10%;
    max-width: 250px;
}



/*SECT2*/
.s2-content{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 60px;
}

.s2-content .left{
    flex-shrink: 0;
    flex-basis: 40%;
}
.s2-content .title{
    text-align: left;
}
.s2-content .right>p{
    color: var(--gray-text);
}

.s2-content .list-type1{
    margin-top: 50px;
}

.list-type1{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.list-type1>li{
    background: var(--dark-bg2);
    color: #fff;
    border-radius: var(--main-radius);
    padding: 25px 40px;
}
.list-type1>li>b{
    font-size: 22px;
    line-height: 1.1em;
    display: block;
    margin-bottom: 10px;
}



/*sect3*/
.sect3 .subtitle{
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
.list-3{
    display: flex;
    justify-content: space-between;
    gap: 15px;
}
.list-3>li{
    flex-basis: 365px;
    border-radius: var(--main-radius);
    background: #fff;
    box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1);
}
.list-3>li>img{
    display: block;
    margin: 0 auto;
    border-radius: var(--main-radius);
}
.list-3>li .text{
    padding: 30px;
    text-align: center;
}
.list-3>li .text>span{
    display: block;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.1em;
    margin-bottom: 15px;
}


/*sect4*/
.sect4{
    padding-bottom: 30px;
}
.s4-content{
    min-height: 685px;
    padding-left: 760px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.s4-content .doc{
    position: absolute;
    left: 0;
    top: 0;
    max-width: 720px;
    border-radius: var(--main-radius);
}
.s4-content .title{
    text-align: left;
}

.blockquote{
    padding-left: 20px;
    border-left: 4px solid var(--dark-bg);
    display: flex;
    flex-direction: column;
    gap: 15px;
    color: var(--gray-text);
    line-height: 1.7em;
}
.blockquote .author{
    color: var(--dark-bg);
    font-weight: 700;
}
.s4-content .btn-container{
    margin-top: 40px;
}




/*sect5*/
.sect5{
    padding: 40px 0 40px;
    position: relative;
    overflow: hidden;
}
.sect5:before{
    content: '';
    position: absolute;
    background: var(--sect-bg);
    width: 100%;
    height: 50%;
    top: 55%;
    z-index: 1;
}
.prod-table{
    position: relative;
    z-index: 5;
    padding-top: 30px;
    border-radius: var(--main-radius);
    box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.15);
    background: #fff;
}
.prod-table .title{
    margin-bottom: 30px;
    padding: 0 10px;
}
.table{
    width: 100%;
    font-weight: 500;
}
.table th{
    background: var(--dark-bg);
    color: #fff;
    padding: 15px;
    font-weight: 500;
}
.table td{
    padding: 20px 30px;
}
.table td:nth-child(2){
    background: #E6F5E6;
}
.table tbody tr:not(:last-child){
    border-bottom: 2px solid #caced4;
}




/*sect6*/
.sect6{
    padding-top: 30px;
}

.list-3v2{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
}
.list-3v2>li{
    flex: 0 0 calc(33% - 10px);
    background: #fff;
    border-radius: var(--main-radius);
    padding: 30px 40px;
}
.list-3v2 .plane{
    color: #fff;
    font-weight: 700;
    background: #FFBB33;
    font-size: 20px;
    line-height: 1.1em;
    padding: 12px 15px;
    margin-bottom: 35px;
    display: inline-block;
}
.list-3v2>li>span{
    display: block;
    font-weight: 700;
    font-size: 25px;
    line-height: 1.1em;
    margin-bottom: 15px;
}
.list-3v2>li p{
    color: var(--gray-text);
}


/*sect7*/
.s7-content{
    display: flex;
    justify-content: center;
    gap: 50px;
}
.s7-content .title{
    text-align: left;
}

.s7-content .right{
    flex: 0 0 540px;
}
.s7-content .right>img{
    display: block;
    margin: 0 auto;
    border-radius: var(--main-radius);
}
.s7-content .btn-container{
    margin-top: 40px;
    text-align: center;
}
.s7-content .left>p{
    color: var(--gray-text);
}
.s7-content .left>p:not(:last-of-type){
    margin-bottom: 20px;
}

.list-type2{
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.list-type2>li{
    width: 100%;
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.15);
    background: #fff;
    border-radius: var(--main-radius);
    display: flex;
}
.list-type2>li .info{
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--dark-bg);
    color: #fff;
    font-weight: 700;
    font-size: 42px;
    line-height: 1.1em;
    padding: 10px;
    border-radius: var(--main-radius);
    min-width: 130px;
    min-height: 130px;
}
.list-type2>li .text{
    padding: 20px 30px;
}
.list-type2>li .text>span{
    display: block;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.2em;
    margin-bottom: 15px;
}
.list-type2>li .text>p{
    color: var(--gray-text);
}



/*sect8*/
.reviews{
    display: flex;
    flex-wrap: wrap;
    gap: 21px;
}
.reviews .rev-item{
    flex-basis: calc(33.3% - 14px);
    padding: 0 20px;
    text-align: center;
}
.rev-item .info{
    font-weight: 700;
}
.rev-item .info {
    padding: 0 60px;
    font-size: 20px;
    line-height: 1.6em;
    background: url(../img/quote.svg) 0% 50% / 55px no-repeat;
    margin-bottom: 20px;
}
.reviews .rev-item>p{
    color: var(--gray-text);
}



/*sect9*/
.sect9{
    background: var(--dark-bg);
    padding-bottom: 0;
}
.s9-content{
    display: flex;
    justify-content: center;
}
.s9-content .left{
    flex: 0 0 660px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    position: relative;
    z-index: 6;
}
.s9-content .people{
    display: block;
    max-width: calc(100% + 30px);
    width: calc(100% + 30px);
    position: relative;
    pointer-events: none;
}

.s9-content .right{
    max-width: 710px;
    padding-bottom: 20px;
    position: relative;
    z-index: 5;
}
.formbox{
    padding: 40px 80px;
    background: #F9FAFF;
    border-radius: var(--main-radius);
}
.form-title{
    font-size: 40px;
    line-height: 1.2em;
    margin-bottom: 35px;
    text-align: center;
    font-weight: 700;
}

.price-block{
    display: flex;
    align-items: center;
    margin-bottom: 25px;
    gap: 10px;
}
.price-block .sale{
    color: #fff;
    font-weight: 700;
    background: #FFBB33;
    font-size: 20px;
    line-height: 1.1em;
    padding: 15px 15px;
    text-transform: uppercase;
    flex-shrink: 0;
}
.price{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    text-align: center;
}
.price .old small,
.price .new small{
    font-size: 0.8em;
}
.price .old{
    font-weight: 500;
    color: var(--gray-text);
    font-size: 22px;
    line-height: 1.1em;
    text-decoration: line-through;
}
.price .new{
    font-size: 50px;
    line-height: 1em;
    font-weight: 700;
    color: var(--color-text);
}

.prod-count{
    text-align: center;
    color: #0D990D;
    margin-bottom: 25px;
    font-weight: 500;
}
.prod-count span{
    font-weight: 700;
    background: #0D990D;
    color: #fff;
    padding: 2px 8px;
    border-radius: 4px;
    margin: 0 2px;
}
.form-info{
    color: var(--gray-text);
    text-align: center;
    margin-top: 20px;
}



.cpu{
    padding: 20px 0;
    background: var(--dark-bg2);
    color: #fff;
    text-align: center;
}
.cpu>img{
    display: block;
    margin: 0 auto;
}
.cpu>a{
    display: inline-block;
    margin: 5px;
    color: #fff;
    font-weight: 500;
    font-size: 14px;
}




@media screen and (max-width: 1439px) {
    .logo img{
        max-width: 30px;
    }
    .logo p{
        font-size: 18px;
    }
    .header-benefit-list>li:nth-child(3){
        display: none;
    }
    .header .main-btn{
        padding: 8px 15px;
        font-size: 15px;
    }

    /* OFFER */
    .offer-content{
        gap: 30px;
    }
    .offer-text{
        flex: 0 0 60%;
        padding-bottom: 40px;
    }
    .offer-img{
        flex: 0 0 calc(100% - 60% - 30px);
    }
    .main-title{
        font-size: 40px;
    }

    .main-benefits{
        margin-top: 30px;
        padding-top: 30px;
        flex-direction: column;
        gap: 15px;
    }
    .offer-label{
        font-size: 11px;
        padding: 10px 14px;
    }
    .offer-label big{
        font-size: 13px;
    }
    .safe-label{
        max-width: 280px;
    }
    .safe-label img{
        max-width: 22px;
    }
    .approve-label{
        max-width: 220px;
    }
    .approve-label img{
        max-width: 18px;
    }
    
    /*sect2*/
    .s2-content{
        align-items: flex-start;
        gap: 40px;
    }

    /*sect3*/


    /*sect4*/
    .s4-content .doc{
        max-width: 400px;
        object-fit: cover;
        height: 100%;
    }
    .s4-content{
        padding-left: 430px;
    }
    

    /*sect5*/


    /*sect6*/
    .list-3v2>li{
        padding: 25px;
    }

    /*sect7*/
    .s7-content{
        gap: 30px;
    }
    .s7-content .right {
        flex: 0 0 360px;
    }
    .list-type2{
        gap: 25px;
    }


    /*sect8*/
    .reviews .rev-item{
        padding: 0;
    }


    /*sect9*/
    .s9-content .left {
        flex: 0 0 510px;
    }
    .formbox {
        padding: 25px 40px;
    }
    .form-title {
        font-size: 32px;
    }
    .price-block .sale {
        font-size: 18px;
        line-height: 1.1em;
    }
    .price .new {
        font-size: 34px;
        line-height: 1.1em;
    }
    .price .old {
        font-size: 18px;
        line-height: 1.1em;
    }
    .main_form input {
        height: 75px;
        font-size: 18px;
    }
    .main_form .main-btn{
        height: 75px;
        line-height: 75px;
    }
}



@media screen and (max-width: 999px) {
    .pretitle{
        text-align: center;
    }
    
    .header .main-btn{
        display: none;
    }


    /* OFFER */
    .offer-content{
        gap: 0;
    }
    .offer-text{
        flex: 0 0 50%;
    }
    .offer-img {
        flex: 0 0 calc(100% - 50%);
    }
    .main-title {
        font-size: 36px;
    }

    .safe-label{
        top: 5%;
        left: 0;
    }

    /*sect2*/
    .s2-content{
        flex-direction: column;
        align-items: center;
        max-width: 770px;
        margin: 0 auto;
    }
    .s2-content .left{
        order: 1;
    }
    .sect2 .title{
        text-align: center;
    }

    /*sect3*/
    .list-3{
        flex-wrap: wrap;
        justify-content: center;
    }
    .list-3>li .text{
        padding: 15px 10px;
    }
    .list-3>li .text>span{
        font-size: 20px;
    }


    /*sect4*/
    .s4-content .doc{
        max-width: 400px;
        object-fit: auto;
        height: auto;
        position: static;
        display: block;
        margin: 0 auto 25px;
    }
    .s4-content{
        padding-left: 430px;
    }
    .s4-content{
        padding-left: 0;
    }
    .s4-content .title{
        text-align: center;
    }
    .s4-content .btn-container{
        text-align: center;
    }

    /*sect5*/
    .table td{
        padding: 20px 10px;
    }


    /*sect6*/
    .list-3v2>li{
        flex-basis: calc(50% - 8px);
    }



    /*sect7*/
    .s7-content{
        flex-direction: column;
        gap: 50px;
    }
    .s7-content .title{
        text-align: center;
    }
    .s7-content .left>p{
        text-align: center;
    }



    /*sect8*/
    .sect8{
        padding-bottom: 80px;
    }
    .reviews{
        gap: 30px;
        justify-content: center;
    }
    .reviews .rev-item{
        flex-basis: calc(50% - 15px);
    }


    /*sect9*/
    .sect9{
        padding-top: 0;
        padding-bottom: 40px;
    }
    .s9-content{
        flex-direction: column;
        align-items: center;
    }
    .s9-content .left{
        flex: auto;
        margin-top: -40px;
    }
    .s9-content .people{
        max-width: 500px;
        width: 80%;
        display: block;
        margin: 0 auto;
    }
    .s9-content .right{
        padding-bottom: 0;
    }
}

@media screen and (max-width: 768px) {
    section{
        padding: 50px 0;
    }
    .title{
        margin-bottom: 40px;
        font-size: 32px;
        line-height: 1.3em;
    }
    .subtitle{
        margin-bottom: 30px;
    }
    .header-benefit-list>li:nth-child(1){
        display: none;
    }
    
    /* OFFER */
    .offer-content{
        flex-direction: column;
    }
    .main-subtitle{
        text-align: center;
    }
    .main-title{
        margin-right: 0;
        text-align: center;
    }
    .main-desctiprion{
        text-align: center;
    }
    .offer-text{
        flex: 0 0 100%;
    }
    .main-benefits{
        max-width: 480px;
        margin-left: auto;
        margin-right: auto;
    }
    .btn-container{
        text-align: center;
    }

    .offer-img{
        flex: auto;
        max-width: 500px;
        margin: 0 auto;
    }
    .safe-label{
        top: 3%;
        left: 10px;
    }

    .list-type1>li{
        padding: 18px 20px;
    }
    .list-type1>li>b{
        font-size: 20px;
    }

    /*sect3*/

    /*sect5*/
    .table td{
        padding: 15px 10px;
    }
    .table-scroll{
        overflow-x: scroll;
    }
    .table-scroll .table{
        width: 820px;
    }


    /*sect6*/
    .list-3v2>li{
        flex-basis: 100%;
    }


    /*sect7*/
    .list-type2>li .info{
        min-width: auto;
        font-size: 36px;
    }


    /*sect8*/
    .reviews .rev-item{
        flex-basis: 420px;
    }


    /*sect9*/
    .form-title{
        font-size: 28px;
    }
}
