@charset "utf-8";
/* CSS Document */



.tagline {
    flex-basis: 100%;
    height: max(40vw, 250px);
    background-position-y: center;
    align-content: flex-start;
}

.theme {
    /* flex-direction: column; */
    flex-wrap: wrap;
}

.herophoto {
    margin: 0;
    flex-basis: 100%;
    margin-top: -27vw;
}

h1 {
    max-width: 100%;
    font-size: max(26px, 4vw);
    line-height: max(31px, 5vw);
}

.tagline span {
    font-size: max(20px, 3vw);
    line-height: max(26px, 3.3vw);
}

.description {
    font-size: 13px;
    line-height: 17px;
    flex-grow: 1;
}

img.wave {
    bottom: -9.4vw;
}

.intro {
    flex-basis: 100%;
}

.body-container {
    padding-top: 13vw;
}

.body-content {
    flex-wrap: wrap;
    padding: max(2vw, 20px);
    padding-top: 0;
    border: 0;
    margin-top: 0;
    gap: 2vw;
    padding-bottom: 12vw;
}

.body-content .col1, .body-content .col2, .body-content .col3 {
    flex-basis: 100%;
    padding: 0;
}

.strip {
    margin-top: 2vw;
    width: 100%;
    border-radius: 25px;
}

.footer-container .col1 {
    font-size: 13px;
    line-height: 18px;
}

.col1.intro span {
    font-size: 30px;
    line-height: 36px;
}

ol li:before {
    font-size: 16px;
    line-height: 21px;
}

.col4.langs {
    font-size: 12px;
    line-height: 13px;
    position: relative;
    width: fit-content;
}

.header .col3 {
    display: none;
}

.header {
    gap: 4vw;
    margin-top: 2vw;
    margin-bottom: 10vw;
}

.logo {
    flex-grow: 1;
}