@media screen {
    body h2{
        padding-bottom: .75ex;
        border-bottom: .15ex solid black;
    }
}
body h3{
    text-transform: none;
}


body .with {
    font-size: 1.1em;
    font-style: italic;
    padding:0;
    margin:0;
}

body .with p{
    margin-top: 0;
    padding-top: 0;
}

body .with p:before {
    content: "With ";
}


body .keywords p:before {
    content: "Keywords: ";
}

body .intro {
    margin-top: 2em;
    display: flex;
    flex-direction: column;
}

@media print, (min-width: 800px) {
    body .intro {
        flex-direction:  row;
    }
    body .intro-text {
        max-width: 50%;
    }
}

body .intro img {
    min-width: 50%;
    max-width: 100%;
    align-self: flex-end;
}

body .intro > figure {
    margin-bottom: 0;
}

body .intro > img {
    border: none;
}

body .intro-text {
    align-self: flex-end;
}

body .research-article-checkbox {display:none;}
body .research-article label {cursor: pointer;}

@media screen {
    body .research-article::before {
        content: "➤";
        display: inline-block;
        padding-right: .5ex;
        font-size: 75%;
        transition: transform .45s ease-out;
        transform: rotate(0deg);
    }

    body input:checked ~ .research-article::before {
        transition: transform .35s ease-in;
        transform: rotate(90deg);
    }

    .research-article-outline {
        overflow: hidden;
        transition: max-height .35s ease-in;
    }

    body input:not(:checked) ~ .research-article-outline {
        max-height: 0 !important;
    }
}

.research-article-outline {
    margin-left: 1em;
}

body .pdf-icon {
    border: none;
    display: inline;
    height: 1.1em;
    vertical-align:-.4ex;
    padding-left: .2em;
    border-radius: 0;
}

@media print {
    body .pdf-icon {
        display: none;
    }
}

