html {
    scroll-behavior: smooth;
}

.ivu {
    color:#18345d;
    width: 100%;
}

.ivu * {
    box-sizing:border-box
}

.ivu-wrap {
    max-width:1180px;
    margin:auto;
    padding:0 20px  ;
}

.ivu-end .ivu-wrap h2,
.ivu-end .ivu-wrap p {
    color: white;
}

.ivu-hero {
    background:#1c4e99;
    color:white;
    padding:40px 0
}

.ivu-herogrid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    align-items:center
}

.ivu-hero h1 {
    font-size:clamp(36px,5vw,66px);
    line-height:1.08;
    margin:0;
    color: yellow;
}

.ivu-hero p, .ivu-hero p b {
    font-size:21px;
    color: white;
}

.ivu-hero span {
    color: white;
}

.ivu-hero aside {
    /* background: white; */
    color: #18345d;
    /* padding: 35px; */
    /* border-top: 6px solid #ffeb00; */
    border-radius: 5px;
}

.ivu-hero aside strong {
    font-size:25px
}

.ivu-hero aside p {
    font-size:17px
}

.ivu-button {
    display:inline-block;
    background:#1c4e99;
    color:white!important;
    text-decoration:none!important;
    border-radius:6px;
    padding:14px 22px;
    font-weight:700;
    margin-top:20px
}

.ivu-button.yellow {
    background:#ffeb00;
    color:#18345d!important
}

.ivu-section {
    padding:75px 0;
    scroll-margin-top:120px
}

.ivu-section h2 {
    font-size:clamp(30px,4vw,44px);
    margin:12px 0 25px
}

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

.ivu-steps>div {
    border-top:3px solid #1c4e99;
    padding-top:18px
}

.ivu-steps b {
    font-size:32px
}

.ivu-catalog {
    background:#f1f3f7
}

.ivu-filters {
    display:flex;
    gap:16px;
    margin:30px 0;
    flex-wrap:wrap
}

.ivu-filters>* {
    flex:1 1 220px;
    min-width:0;
    background:white;
    border:1px solid #cbd3df;
    padding:13px;
    border-radius:5px
}

.ivu-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px
}

.ivu-card {
    background:white;
    border-radius:9px;
    overflow:hidden;
    box-shadow:0 2px 10px #001a3c12
}

.ivu-cardhead {
    padding: 24px;
    min-height: 165px;
    display: flex;
    color: white;
    gap: 20px;
}

.ivu-cardhead small {
    font-weight:800
}

.ivu-cardhead h3 {
    font-size:21px;
    line-height:1.25;
    margin: 0;
    color: white;
}

.ivu-cardhead img {
    width: 80px;
    height: auto;
    object-fit: contain;
    flex-shrink: 0;
    align-self: start;
}

.ivu-meta div, .ivu-meta div small {
    font-size: 0.8rem !important;
}

.color-0 {
    background:#005ce6
}

.color-1 {
    background:#ff0092
}

.color-2 {
    background:#1aae00
}

.color-3 {
    background:#946aff
}

.color-4 {
    background:#ff5100
}

.ivu-meta {
    display:grid;
    grid-template-columns:1fr 1fr .8fr;
    gap:10px;
    padding:19px
}

.ivu-meta small {
    display:block;
    color:#667084
}

.ivu-meta b {
    display:block;
    font-size:13px;
    margin-top:5px;
    overflow-wrap:anywhere
}

.ivu-end {
    text-align:center;
    background:#1c4e99;
    color:white
}

.ivu-wrap ul {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

ul.ivu-benefity {
    flex-direction: row;
    flex-wrap: wrap;
}

ul.ivu-benefity li {
    width: calc(50% - 15px);
}

@media(max-width:900px) {
    .ivu-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
}

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


}

@media(max-width:650px) {
    .ivu-herogrid,.ivu-grid,.ivu-steps {
    grid-template-columns:1fr
}

.ivu-hero {
    padding:45px 0
}

.ivu-section {
    padding:50px 0
}


}


