
:root {
    --page-background: rgb(229, 224, 218);
    --text-highlight: rgb(70, 100, 220);
    --text-soft: rgb(144, 133, 110);
    --fine-line: rgb(183, 173, 151);
    --button-background: rgb(76, 117, 192);
    --button-background-hover: rgb(89, 146, 230);
    --button-text: white;
}

body {
    font-family: Overpass, Helvetica;
    font-size: max(min(2vw, 1.5rem), 1rem);
    margin: 0;
    background-color: var(--page-background);
}

h2 {
    font-family: Montserrat, Helvetica;
    font-weight: normal;
    margin: 0;
}

h3 {
    font-family: Montserrat, Helvetica;
    font-weight: normal;
    margin: 0;
    margin-top: 1em;
}

ul {
    list-style: none;
    padding-left: 1.5em;
}

ul > li {
    margin-bottom: 0.5em;
}

ul > li:before {
    content: '❧';
    margin-left: -1.3em;
    margin-right: 0.5em;
}






.ContentBlock {
    max-width: 80rem;
    margin-left: auto;
    margin-right: auto;
    padding: 2em;
}

.Header {
    font-family: Montserrat, Helvetica;
    font-size: 1em;
    font-weight: bold;
}


.SplashText {
    font-family: Montserrat, Helvetica;
    display: flex;
    flex-direction: row;
    position: relative;
    font-size: min(4.2vw, 3rem);
    width: 95%;
    max-width: 80rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
}

.SplashText > div {
    position: relative;
    width: min(70vw, 50rem);
}

.SplashText > div > span {
    color: var(--text-highlight);
}

.SplashText > img {
    position: absolute;
    right: 0;
    top: 0;
    width: 3.8em;
    max-width: 14rem;
}


.IntroVideoButton {
    margin-bottom: 2em;
    text-align: center;
    filter: grayscale(30%);
    cursor: pointer;
}
.IntroVideoButton:hover {
    filter: none;
}

.IntroVideoButton > div {
    font-size: 0.9em;
    color: var(--text-soft);
}

.IntroVideoButton > img {
    width: 6em;
}

.IntroVideo {
    display: none;
    text-align: center;
    margin-bottom: 3em;
}

.IntroVideo > iframe {
    border-radius: 0.2em;
    width: min(80vw, 60rem);
    height: min(45vw, 35rem);
}


.Quotation {
    font-size: 1.4em;
    padding-left: 1em;
    margin-bottom: 2em;
}

.Quotation > div {
    font-size: 0.8em;
    padding-left: 0.5em;
    padding-top: 0.25em;
    color: var(--text-soft);
}


.BonaFides {
    display: flex;
    flex-direction: row;
}

.BonaFides > div:first-child {
    width: 45%;
    position: relative;
}

.BonaFides > div:first-child > img:first-child {
    width: 70%;
    margin-bottom: 3em;
    border-radius: 0.3em;
}

.BonaFides > div:first-child > img:last-child {
    position: absolute;
    width: 50%;
    top: min(20vw, 8.5em);
    right: 0;
    border-radius: 0.3em;
}

.BonaFides > div:last-child {
    width: 55%;
    padding-left: 2em;
    padding-top: 2em;
}


.BulletBlock {
    display: flex;
    flex-direction: row;
    gap: 1.5em;
}

.BulletBlock h2 {
    font-size: 1.5em;
    margin-top: 0.5em;
}

.BulletBlock > div {
    width: 33.3%;
}

.BulletBlock > div > img {
    width: 5.7em;
    max-width: 21rem;
}
.BulletBlock > div:nth-child(2) > img {
    transform: rotate(90deg);
}
.BulletBlock > div:nth-child(3) > img {
    transform: rotate(180deg);
}


.NarrativeText {
    margin-top: 1em;
    padding-top: 1em;
    border-top: 1px solid var(--fine-line);
}

.NarrativeText nav {
    margin-top: 2em;
    margin-bottom: 2em;
    text-align: center;
}

.NarrativeText .Button {
    font-size: 1.2em;
    margin-left: 0.1em;
    margin-right: 0.1em;
    padding: 0.25em 1em;
    padding-bottom: 0.1em;
    text-decoration: none;
    border-radius: 0.25em;
    background-color: var(--button-background);
    color: var(--button-text);
    cursor: pointer;
}
.NarrativeText .Button:hover {
    background-color: var(--button-background-hover);
}




@media (pointer: coarse) and (orientation: portrait) and (max-width: 1000px) {

    body {
        font-size: 2.2rem;
        max-width: 100vw;
    }

    .ContentBlock {
        max-width: 100vw;
        padding: 2rem;
        overflow: auto;
    }

    .SplashText > div {
        width: 75vw;
    }

    .SplashText > img {
        width: 3.8em;
    }


    .BonaFides {
        flex-direction: column;
    }

    .BonaFides > div:first-child {
        display: flex;
        flex-direction: column;
        width: auto;
        position: auto;
    }

    .BonaFides > div:first-child > img:first-child {
        position: relative;
        width: 100%;
        margin-bottom: auto;
        border-radius: 0;
    }
    .BonaFides > div:first-child > img:last-child {
        position: relative;
        width: 100%;
        top: -12em;
        right: auto;
        margin-bottom: -12em;
        border-radius: 0;
        border-top: 1em solid var(--page-background);
    }

    .BonaFides > div:last-child {
        width: 100%;
        padding-left: 0;
        padding-top: 2em;
    }

    .BulletBlock {
        flex-direction: column;
        margin-top: 2em;
        gap: 2em;
    }

    .BulletBlock > div {
        width: auto;
    }

    .NarrativeText {
        margin-top: 2em;
        padding-top: 2em;
    }

    .NarrativeText nav {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 1em;
    }

    .NarrativeText .Button {
        font-size: 2em;
        width: 100%;
        max-width: 8em;
        padding: 1em;
        padding-bottom: 0.75em;
        text-decoration: none;
        border-radius: 0.25em;
        background-color: var(--button-background);
        color: var(--button-text);
        cursor: pointer;
    }

}
