* {padding: 0; margin: 0; box-sizing: border-box; }
html {
    font-size: 12px; 
    scroll-behavior: smooth; 
    line-height: 1.4; 
    font-family: 'Montserrat', sans-serif;
}
.main {font-size: 1.4rem; line-height: 1.7; font-weight: 300;}
.main > * {padding: 5rem 0 6.5rem;}
.container {padding: 0 1rem; margin: 0 auto; max-width: 90rem;}
h1, h2, h3 {color: #1A76D2; font-size: 3.2rem; line-height: 1.3; text-transform: uppercase; font-family: 'Nunito', sans-serif; font-weight: 800;}
h2 {font-size: 2.4rem; line-height: 1.2;}
h3 {font-size: 1.55rem; margin-bottom: 0.3rem;}
p {margin-bottom: 2rem;}
p:last-child {margin-bottom: 0;}
p + h3 {margin-top: 3rem;}


/* HEADER */

.header a, footer a {color: white;}
header {
    color: #17734D;
    background: #f2f2f2;
    background-image: url(img/bg.jpg), url(img/bg_small.png);
    background-position: center 15%, center 15%;
    background-size: cover, cover;
    background-repeat: no-repeat;
    height: 32.5vw;
    padding-top: 7.66rem!important;
}
header {position: relative; margin-top: 4.66rem;}
header > img {position: absolute; right: 5vw; top: 50%; margin-top: 8vw; width: 18vw; height: auto;}
.header  {
    color: white;
    background: #1A76D2;
}
.header {
    height: 4.66rem;
    line-height: 4.66rem;
    text-align: right;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.3);
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 99;
}
.header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    max-width: 110rem;
}
.header .container a {display: block; height: 4rem; padding: 1rem; position: relative; left: 1rem; text-decoration: none;}
.header .container a:first-child {padding: 0; line-height: 2; left: 0;}
.header .container a img {display: block; height: 100%;}
@media only screen and (min-width: 1600px) {
    header {
        background-position: center 15%;
        background-size: auto 152%, cover;
        height: 43.5rem;
    }
    header > img {
        right: auto;
        left: 50%;
        margin-top: 10.7rem;
        margin-left: 35.5rem;
        width: 24rem;
    }
}

/* CONTENT */

.content .container {display: flex; text-align: right; gap: 5rem;}
.content .container > h2:nth-child(1) {min-width: 20rem;}
.content .container > div:nth-child(2) {text-align: left;}

.content + .content {background: #f2f2f2;}

/* FOOTER */

footer {
    color: white;
    background: #505050;
    font-size: 1.1rem;
    padding: 0!important;
    border-top: 0.5rem solid #1A76D2;
}
footer .footer {
    height: 10vw;
    background-image: url(img/bg.jpg), url(img/bg_small.png);
    background-position: center 65%, center 65%;
    background-size: cover, cover;
    background-repeat: no-repeat;
}
footer .container {padding-top: 3.5rem; padding-bottom: 3.5rem; display: flex; gap: 10rem;}
footer .container > div > img {width: 15rem;}
footer .container > div > h3 {color: white; font-size: 1.2rem;}
footer .container a {text-decoration: none;}
@media only screen and (min-width: 1600px) {
    footer .footer {
        height: 13rem;
        background-size: auto 66.15rem, cover;
    }
}


@media only screen and (max-width: 1400px) {
    html {font-size: 1.07vw;}
}
@media only screen and (max-width: 600px) {
    .content .container {flex-direction: column; gap: 1rem; text-align: left;}
    .container {padding: 0 2rem;}
    html {font-size: 10px;}
    footer .container {flex-direction: column; gap: 3rem; padding-top: 5rem; padding-bottom: 5rem;}
    .content .container > div:nth-child(2) > h3:first-child {margin-top: 2rem;}
}