:root {
    --page: 350px;
    font-family: "STIX Two Text", "STIX Fallback", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-variant-numeric: oldstyle-nums;
    letter-spacing: .05em;
    interpolate-size: allow-keywords;
    scrollbar-width: none;
    -ms-overflow-style: none;
    ::-webkit-scrollbar {
        width: 0;
        height: 0;
    }
}
html{
	overscroll-behavior: none;
}
html, body{
	background-color: white;
}
body{
    position: relative;
    margin-top: 0;
}
nav {
    width: 100%;
    scroll-behavior: smooth;
    position: relative;
}
#vignette-top {
    width: 100%;
    height: 3em;
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    position: absolute;
    top: 55px;
    left: 0;
}
#vignette-bottom {
    width: 100%;
    height: 3em;
    background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    position: absolute;
    bottom: 0;
    left: 0;
}
#wordmark {
    display: block;
    width: 100%;
}
#wordmark-vertical {
    display: none;
    width: 100%;
}
header, p, img, footer {
    max-width: 400px;
    width: 100%;
    background-color: white;
}
header {
    position: -webkit-sticky;
    position: sticky;
    padding-top: 8px;
    padding-bottom: 1em;
    top: 0;
    z-index:1;
}
aside.marker {
    height: 8px;
}
aside.address {
    position: -webkit-sticky;
    position: sticky;
    bottom: 1em;
    padding: 1em 0 1em 1em;
    background-color: white;
}
address{
    font-style: normal;
}
footer.copyright {
    position: -webkit-fixed;
    position: fixed;
    bottom: 0;
}
aside p, footer p {
    white-space: nowrap;
    text-indent: 0;
    margin: 0;
}
details p {
    hyphens: auto;
    margin-block-end: 0;
}
details > p + p {
    margin-block-start: 0;
    text-indent: 1em;
}
.s-c {
    font-variant-caps: all-small-caps;
}
.no-select {
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    pointer-events: none;
}
details {
    overflow: hidden;
    margin-block-start: 1em;
}
details summary { 
    list-style-type: none;
    margin-left: 1em;
    cursor: pointer;
    display: block;
    white-space: nowrap;
    z-index:1;
}
details::details-content{
    height:0;
    transition: height 1s,
    content-visibility 1s;
    transition-behavior: allow-discrete;
}
details[open]::details-content{
    height: auto;
}
details summary::-webkit-details-marker,
details summary::marker {
    display: none;
}
details summary::after {
    content: "\261C";
    display: inline-block;
    margin-left: 10px;
}
details[open] summary::after {
    content: "\261F";
}

@font-face {
    font-family: "STIX Fallback";
    src: url("STIXTwoText-VariableFont_wght.ttf") format("truetype");
    font-weight: 400 700;
    font-style: normal;
}
@font-face {
    font-family: "STIX Fallback";
    src: url("STIXTwoText-Italic-VariableFont_wght.ttf") format("truetype");
    font-weight: 400 700;
    font-style: italic;
}
@media (max-width: 350px) {
    #wordmark {
    display: none;
    }
    #wordmark-vertical {
    display: block;
    width: 150px;
    }
}