*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f5f6fa;color:#18213a;font-family:Arial,Helvetica,sans-serif}
.wrap{max-width:1400px;margin:auto;padding:0 18px}

.top{background:#fff}
.head{height:105px;display:flex;align-items:center;justify-content:space-between}

.brand{display:flex;gap:12px;align-items:center;color:#24327e}
.brand-mark{width:55px;height:70px;border-radius:5px;background:linear-gradient(145deg,#24327e,#5665b8);display:grid;place-items:center;color:#fff;font-weight:900;font-size:18px;box-shadow:0 5px 14px #18213a30}
.brand b{display:block;font-size:27px}
.brand small{display:block;color:#9a751c;margin-top:4px;font-size:15px}

.head-right{display:flex;align-items:center;gap:18px}
.social{color:#5361aa}
.phone{font-size:20px;font-weight:800}

.call,.btn{
    background:#e0a62b;
    color:#fff;
    padding:13px 19px;
    border-radius:5px;
    font-weight:800;
    display:inline-block;
    border:0;
    cursor:pointer;
}

.nav{
    background:#29347f;
    box-shadow:0 4px 12px #11193645
}

.nav-in{
    display:flex;
    justify-content:space-between
}

.nav a{
    color:#fff;
    padding:20px 28px;
    font-size:15px
}

.nav a:hover{
    background:#1e2869
}

.page{
    display:grid;
    grid-template-columns:290px 1fr;
    gap:35px;
    padding-top:35px
}

.sidebar section{
    background:#fff;
    margin-bottom:20px;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 2px 10px #18213a10
}

.sidebar h3{
    margin:0;
    padding:15px 22px;
    background:#303b91;
    color:#fff;
    font-size:21px;
    line-height:1.25
}

.sidebar a{
    display:block;
    padding:11px 22px;
    color:#252b39;
    font-size:15px
}

.sidebar a:hover{
    background:#f0f1fa;
    color:#29347f
}

.sidebar button{
    margin:12px;
    width:calc(100% - 24px);
    border:1px solid #333;
    background:#fff;
    border-radius:8px;
    padding:9px;
    font-weight:800
}

.hero{
    background:#fff;
    border-radius:12px;
    box-shadow:0 2px 12px #18213a12;
    overflow:hidden
}

.slider{
    position:relative;
    min-height:420px
}

.slide{
    display:none;
    grid-template-columns:1.2fr .8fr;
    align-items:center;
    padding:48px 55px;
    min-height:420px;
    background:linear-gradient(110deg,#f9fafc,#edf0fb)
}

.slide.active{
    display:grid
}

.slide>div:first-child>span,
.title>span,
.feature>div>span,
.article>span,
.request>div>span{
    font-size:11px;
    letter-spacing:2px;
    font-weight:900;
    color:#b07b15
}

.slide h1{
    font-size:42px;
    line-height:1.08;
    margin:12px 0 17px;
    color:#29347f
}

.slide p{
    font-size:17px;
    line-height:1.6;
    color:#596275;
    max-width:630px
}

.slide-art{
    display:grid;
    place-items:center
}

.document{
    width:205px;
    height:265px;
    background:#fff;
    border:10px solid #303b91;
    box-shadow:12px 15px 35px #19213c30;
    display:grid;
    place-items:center;
    text-align:center;
    font-weight:900;
    color:#303b91;
    font-size:22px;
    transform:rotate(4deg)
}

.document small{
    font-size:11px
}

.circle{
    width:220px;
    height:220px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#e0a62b;
    color:#fff;
    font-size:90px;
    font-weight:300
}

.map{
    width:250px;
    height:170px;
    background:#303b91;
    color:#fff;
    border-radius:50% 45% 55% 40%;
    display:grid;
    place-items:center;
    font-size:70px;
    font-weight:900;
    transform:rotate(-8deg)
}

.arrows{
    position:absolute;
    inset:50% 14px auto;
    display:flex;
    justify-content:space-between
}

.arrows button{
    border:0;
    background:#fff;
    border-radius:50%;
    width:40px;
    height:40px;
    font-size:30px;
    box-shadow:0 2px 10px #1113;
    cursor:pointer;
    color:#29347f
}

.dots{
    position:absolute;
    bottom:17px;
    left:0;
    right:0;
    text-align:center
}

.dots button{
    width:9px;
    height:9px;
    border-radius:50%;
    border:0;
    margin:4px;
    background:#b7bfd7
}

.dots button.active{
    background:#e0a62b
}

.section{
    padding:50px 0
}

.title h2,
.feature h2,
.article h2,
.request h2{
    font-size:31px;
    margin:7px 0 25px;
    color:#29347f
}

.cards{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:17px
}

.cards article{
    background:#fff;
    border-radius:10px;
    padding:12px;
    box-shadow:0 2px 10px #18213a12
}

.card-img{
    height:170px;
    border-radius:7px;
    display:grid;
    place-items:center;
    font-size:50px;
    font-weight:900;
    color:#fff
}

.i1{background:#303b91}
.i2{background:#5967aa}
.i3{background:#b07b15}
.i4{background:#65738e}

.cards h3{
    font-size:18px;
    margin:17px 7px 8px
}

.cards p{
    font-size:13px;
    line-height:1.5;
    color:#697386;
    margin:0 7px 15px
}

.cards a{
    font-weight:800;
    color:#29347f;
    font-size:13px;
    margin:7px
}

.feature{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:35px;
    background:#29347f;
    color:#fff;
    padding:38px;
    border-radius:11px
}

.feature h2{
    color:#fff
}

.feature p{
    line-height:1.65;
    color:#d6d9e8
}

.feature-list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px
}

.feature-list b{
    background:#ffffff12;
    padding:18px;
    border-radius:8px
}

.steps{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:15px
}

.steps div{
    background:#fff;
    padding:22px;
    border-radius:10px;
    box-shadow:0 2px 10px #18213a10
}

.steps i{
    font-style:normal;
    color:#e0a62b;
    font-size:25px;
    font-weight:900
}

.steps b{
    display:block;
    margin:22px 0 8px
}

.steps p{
    font-size:13px;
    line-height:1.5;
    color:#697386
}

.article{
    background:#fff;
    padding:35px;
    border-radius:11px;
    box-shadow:0 2px 10px #18213a10
}

.article>p{
    line-height:1.7;
    color:#596275
}

.columns{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:25px
}

.columns li,
.columns p{
    color:#596275;
    line-height:1.7
}

.request{
    margin:50px 0;
    background:#19213c;
    color:#fff;
    padding:38px;
    border-radius:11px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px
}

.request h2{
    color:#fff
}

.request p{
    color:#cbd0dc;
    line-height:1.6
}

.request form{
    display:grid;
    gap:10px
}

.request input,
.request textarea{
    width:100%;
    padding:14px;
    border-radius:6px;
    border:1px solid #424d6d;
    background:#242d4a;
    color:#fff;
    font:inherit
}

.request textarea{
    min-height:100px
}

.request small{
    color:#9da7bc
}

.faq{
    padding-bottom:55px
}

.faq details{
    background:#fff;
    margin:9px 0;
    padding:17px;
    border-radius:8px
}

.faq summary{
    font-weight:800;
    cursor:pointer
}

.faq p{
    color:#697386;
    line-height:1.6
}

footer{
    background:#19213c;
    color:#cbd0dc
}

.foot{
    min-height:110px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-size:13px
}

.foot .brand b{
    color:#fff
}

.foot .brand small{
    color:#b9a06b
}


/* ==============================
   НАЗВАНИЕ ТОВАРА + КНОПКА
   ============================== */

.product-row{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.product-title{
    flex:1;
    min-width:0;
    margin:0;
    font-size:18px;
    line-height:1.35;
    font-weight:800;
    color:#29347f;
}

.product-button{
    flex:0 0 auto;
    display:inline-block;
    background:#e0a62b;
    color:#fff;
    padding:10px 18px;
    border-radius:5px;
    font-size:13px;
    line-height:1.2;
    font-weight:800;
    text-decoration:none;
    border:0;
    cursor:pointer;
    transition:background .2s ease,transform .2s ease;
}

.product-button:hover{
    background:#c9921f;
    color:#fff;
    transform:translateY(-1px);
}


/* ==============================
   АДАПТИВНОСТЬ
   ============================== */

@media(max-width:1050px){

    .cards{
        grid-template-columns:repeat(2,1fr)
    }

    .page{
        grid-template-columns:240px 1fr
    }

    .slide h1{
        font-size:34px
    }

    .steps{
        grid-template-columns:repeat(2,1fr)
    }
}

@media(max-width:760px){

    .head{
        height:auto;
        padding:15px 18px
    }

    .head-right .social,
    .phone{
        display:none
    }

    .brand b{
        font-size:22px
    }

    .nav-in{
        overflow:auto;
        justify-content:flex-start
    }

    .nav a{
        white-space:nowrap;
        padding:16px
    }

    .page{
        display:block
    }

    .sidebar{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:12px;
        margin-bottom:20px
    }

    .sidebar section{
        margin:0
    }

    .sidebar section:last-child{
        display:none
    }

    .slide{
        grid-template-columns:1fr;
        padding:35px 25px
    }

    .slide-art{
        display:none
    }

    .slide h1{
        font-size:31px
    }

    .cards,
    .feature,
    .request,
    .columns{
        grid-template-columns:1fr
    }

    .steps{
        grid-template-columns:1fr 1fr
    }

    .feature-list{
        grid-template-columns:1fr
    }

    .product-row{
        gap:12px
    }

    .product-title{
        font-size:16px
    }

    .product-button{
        padding:9px 14px;
        font-size:12px
    }

    .foot{
        display:grid;
        padding:25px 18px;
        gap:15px
    }
}
.product-row{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    padding:12px 0 !important;
}

.product-title{
    color:#29347f !important;
    font-size:18px !important;
    font-weight:700 !important;
}

.product-button{
    display:inline-block !important;
    background:#e0a62b !important;
    color:#fff !important;
    padding:10px 20px !important;
    border-radius:5px !important;
    text-decoration:none !important;
    font-weight:700 !important;
}

```css
/* =========================================
   КАК МЫ РАБОТАЕМ
   Сине-золотой стиль
========================================= */

.work-process {
    width: 100%;
    padding: 75px 20px 80px;
    background: #f7f9fc;
    overflow: hidden;
}

.work-process *,
.work-process *::before,
.work-process *::after {
    box-sizing: border-box;
}

.work-process__inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

/* Заголовок */

.work-process__head {
    text-align: center;
    margin-bottom: 65px;
}

.work-process__label {
    display: inline-block;
    margin-bottom: 12px;

    color: #d5a33a;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
}

.work-process__head h2 {
    margin: 0 0 12px;

    color: #29347f;
    font-size: 36px;
    line-height: 1.2;
    font-weight: 800;
}

.work-process__head p {
    margin: 0;

    color: #737985;
    font-size: 16px;
    line-height: 1.6;
}


/* =========================================
   ШАГИ
========================================= */

.work-process__steps {
    position: relative;

    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 20px;
}


/* Соединительная линия */

.work-process__steps::before {
    content: "";

    position: absolute;
    top: 43px;
    left: 8%;
    right: 8%;

    height: 2px;

    background: #d5a33a;
    opacity: .65;
    z-index: 0;
}


/* Карточка */

.work-step {
    position: relative;
    z-index: 1;

    text-align: center;
}


/* =========================================
   КРУГ ИКОНКИ
========================================= */

.work-step__circle {
    position: relative;

    width: 86px;
    height: 86px;

    margin: 0 auto 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #29347f;
    border: 5px solid #fff;
    border-radius: 50%;

    box-shadow:
        0 5px 18px rgba(41, 52, 127, .18),
        0 0 0 2px #d5a33a;

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        background .35s ease;
}


/* Иконка */

.work-step__icon {
    color: #fff;

    font-size: 29px;
    line-height: 1;
    font-weight: 400;

    transition: transform .35s ease;
}


/* Номер */

.work-step__number {
    position: absolute;

    right: -8px;
    top: -8px;

    width: 29px;
    height: 29px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #d5a33a;
    color: #fff;

    border: 3px solid #f7f9fc;
    border-radius: 50%;

    font-size: 10px;
    font-weight: 800;
}


/* =========================================
   ТЕКСТ
========================================= */

.work-step h3 {
    margin: 0 0 9px;

    color: #29347f;

    font-size: 17px;
    line-height: 1.35;
    font-weight: 700;
}

.work-step p {
    margin: 0;

    color: #727782;

    font-size: 13px;
    line-height: 1.55;
}


/* =========================================
   АНИМАЦИЯ
========================================= */

.work-step:hover .work-step__circle {
    background: #d5a33a;

    transform: translateY(-8px);

    box-shadow:
        0 12px 28px rgba(41, 52, 127, .22),
        0 0 0 3px #29347f;
}

.work-step:hover .work-step__icon {
    transform: scale(1.15) rotate(-3deg);
}

.work-step:hover h3 {
    color: #d5a33a;
}


/* =========================================
   ПЛАНШЕТ
========================================= */

@media (max-width: 1050px) {

    .work-process__steps {
        grid-template-columns: repeat(3, 1fr);
        row-gap: 55px;
    }

    .work-process__steps::before {
        display: none;
    }

}


/* =========================================
   МОБИЛЬНЫЙ
========================================= */

@media (max-width: 650px) {

    .work-process {
        padding: 50px 15px 55px;
    }

    .work-process__head {
        margin-bottom: 40px;
    }

    .work-process__head h2 {
        font-size: 29px;
    }

    .work-process__head p {
        font-size: 15px;
    }

    .work-process__steps {
        display: flex;
        flex-direction: column;
        gap: 0;
        padding-left: 10px;
    }

    /* Вертикальная линия */

    .work-process__steps::before {
        display: block;

        top: 42px;
        bottom: 42px;
        left: 52px;
        right: auto;

        width: 2px;
        height: auto;

        background: #d5a33a;
    }

    .work-step {
        min-height: 125px;

        display: grid;
        grid-template-columns: 85px 1fr;
        column-gap: 25px;

        text-align: left;
    }

    .work-step__circle {
        grid-column: 1;
        grid-row: 1 / span 2;

        width: 85px;
        height: 85px;

        margin: 0;
    }

    .work-step h3 {
        grid-column: 2;

        margin: 8px 0 6px;
    }

    .work-step p {
        grid-column: 2;

        padding-right: 5px;
    }

}


/* =========================================
   МАЛЕНЬКИЕ ТЕЛЕФОНЫ
========================================= */

@media (max-width: 400px) {

    .work-process {
        padding-left: 10px;
        padding-right: 10px;
    }

    .work-step {
        grid-template-columns: 72px 1fr;
        column-gap: 18px;
    }

    .work-step__circle {
        width: 72px;
        height: 72px;
    }

    .work-process__steps::before {
        left: 45px;
    }

    .work-step h3 {
        font-size: 16px;
    }

    .work-step p {
        font-size: 13px;
    }

}
```
