html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}*{margin: 0;padding: 0;box-sizing:border-box}

:root {
    --font: "Golos Text";

    --blue: #1b2f76;
    --blue-light: #B7D1FF;
    --cyan: #41B4D8;
    --text: #737373;
}

body {
    font-size: clamp(15px, 1.0416666666666667vw, 20px);
    font-family: var(--font);
    color: var(--text);
}

a, a:hover, a:focus {
    text-decoration: none;
    transition: all 0.3s;
}

section {
    max-width: 85%;
    margin: 0 auto;
}

header, main {
    background-color: var(--blue);
}

@media (min-width: 768px) {
    section {
        max-width: clamp(700px, 67.70833333333333vw, 1300px);
    }
}

header {
    padding: clamp(28px, 2.6041666666666665vw, 50px) 0 0;
    text-align: center;
}

footer section,
header section, 
header section a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

header section {
    justify-content: center;
}

header section p.call a svg {
    margin: 0 clamp(6px, 0.46875vw, 9px) 0 0;
}

header section p.call a:hover,
header section p.call a:focus {
    color: var(--cyan);
}

header a {
    color: #fff;
}

header h1 {
    margin: 0;
}

header .desc {
    flex: 0 0 100%;
    margin: clamp(35px, 2.6041666666666665vw, 50px) 0 0;
    font-size: clamp(17px, 1.3020833333333333vw, 25px);
    font-weight: 300;
    color: #fff;
    line-height: 1.5;
}

header .brand a img {
    height: clamp(80px, 6.25vw, 120px);
    width: auto;
    display: block;
}

footer {
    font-size: clamp(13px, 0.8333333333333334vw, 16px);
    padding: clamp(125px, 10.416666666666666vw, 200px) 0 clamp(17px, 1.3020833333333333vw, 25px);
    background-color: #fff;
}

footer a {
    color: var(--cyan);
    text-decoration: underline;
}

footer a:hover,
footer a:focus {
    text-decoration: underline;
    color: #333;
}

main {
    padding: clamp(28px, 2.0833333333333335vw, 40px) 0 0;
    background-image: url(i/bg.jpg?v=4);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom center;
}

main ul {
    list-style: none;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    margin: 0 0 clamp(-120px, -6.25vw, -70px);
}

main ul li a {
    background: #fff;
    display: block;
    padding: clamp(28px, 2.0833333333333335vw, 40px) clamp(35px, 2.6041666666666665vw, 50px) clamp(35px, 2.6041666666666665vw, 50px);
    border-top: clamp(6px, 0.5208333333333334vw, 10px) solid #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    height: 100%;
}

main ul li {
    flex: 0 0 48%;
    max-width: 48%;
}

main ul li a img {
    max-height: clamp(30px, 2.6041666666666665vw, 50px);
    display: block;
    margin: 0 0 clamp(28px, 2.0833333333333335vw, 40px);
    width: auto;
    transition: all 0.3s;
}

main ul li a span {
    display: block;
    transition: all 0.3s;
}

main ul li a span.title {
    font-weight: 700;
    color: var(--blue);
    font-size: clamp(17px, 1.1458333333333333vw, 22px);
}

main ul li a span.desc {
    color: var(--text);
    font-size: clamp(14px, 0.9375vw, 18px);
    line-height: 1.5;
    margin: 3px 0 clamp(28px, 2.0833333333333335vw, 40px);
}

main ul li a span.title:after {
    content: "";
    display: block;
    width: clamp(35px, 2.6041666666666665vw, 50px);
    height: clamp(2px, 0.20833333333333334vw, 4px);
    background-color: var(--cyan);
    margin: clamp(5px, 0.4166666666666667vw, 8px) 0 clamp(13px, 0.8854166666666666vw, 17px);
}

main ul li a span.button {
    background-color: var(--cyan);
    color: #fff;
    padding: clamp(14px, 1.0416666666666667vw, 20px) clamp(20px, 1.5625vw, 30px);
    max-width: clamp(160px, 11.979166666666666vw, 230px);
    text-align: center;
    margin-top: auto;
}

main ul li a:hover span.button, main ul li a:focus span.button {
    background: var(--blue);
}

main ul li a:hover span.title, main ul li a:focus span.title,
main ul li a:hover span.desc, main ul li a:focus span.desc,
main ul li a:hover img, main ul li a:focus img {
    filter: grayscale(1);
    opacity: 0.9;
}

main ul li a:hover, main ul li a:focus {
    border-top: clamp(6px, 0.5208333333333334vw, 10px) solid var(--cyan);
}

@media (max-width: 767px) {

    header section p.call a svg {
        width: 18px;
        height: 18px;
    }

    main {
        background-size: contain;
    }
    
    main ul {
        display: block;
        margin: 0;
    }
    
    main ul li {
        max-width: 100%;
    }
    
    main ul li a {
        box-shadow: none;
        height: auto;
    }
    
    main ul li:first-child {
        margin: 0 0 20px;
    }
    
    main {
        padding: 40px 0 70px;
    }
    
    footer {
        padding: 30px 0;
    }
    
    footer section {
        display: block;
        text-align: center;
    }
    
    footer section p:last-child {
        margin: 7px 0 0;
    }    

}