:root {
    --content-width: min(700px, calc(100vw - 2em));
}
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
body {
    font-family: "Libre Baskerville", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;

    display: flex;
    flex-direction: column;
    min-height: 100vh;
    /* Ensures body is at least as tall as the viewport */
    margin: 0;


}

#site-name {
text-transform: uppercase;
letter-spacing: 1.18em;
font-size: 2em;
margin-top: 1em;
margin-bottom: 1em;
margin-right: -1.18em;
color: darkred;
}
#site-name  a {
    text-decoration: none;
    color: darkred;
}

#site-name  a:hover {
    text-decoration: none;
}

@media (max-width: 500px) {
    #site-name {
        font-size: 1.75em;
    }
}

@media (max-width: 450px) {
    #site-name {
        font-size: 1.5em;
    }
}


#header {
    text-align: center;
    width: calc(var(--content-width));
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

#menu-bar {
    display: flex;
    justify-content: space-between;
 border-bottom: 1px solid lightgray;
padding-bottom: 2em;
}

#portrait-photo {
    margin-top: 2em;
    margin-bottom: 0.25em;
    overflow: hidden;
    height: calc(var(--content-width) * 0.85);
}

#portrait-photo img {
    width: 100%;
}

#portrait-credit {
    font-style: italic;
    font-size: 0.75em;
    text-align:right;
}

#propaganda {
    margin-top: 2em;
}

body a {
    text-decoration: underline;
    text-decoration-color: black;
    transition: text-decoration-color 0.3s ease;
    transition: color 0.3s ease;
    color: black;
}

body a:hover {
    text-decoration: underline;
    text-decoration-color: darkred;
    color: darkred;
}

.menu-item a {
    padding:3px;
    font-size: 0.85em;
        border:1px solid rgb(255, 255, 255);
        transition: border-color 0.3s ease;
    text-decoration: none;
}
.menu-item a:hover {
    text-decoration: none;
    border:1px solid darkred;
}

.menu-item.current a{
    border:1px solid rgb(196, 196, 196)
}
.menu-item.current a:hover{
    color: black;
}

#content {
    width: var(--content-width);
    margin-left:auto;
    margin-right: auto;
    margin-bottom: 2em;
}

.section-content {
    text-align: left;
}

.section-content ul {

    padding: 0;
    padding-left: 1em;
}

.section-content ul li {
    margin-bottom: 1em;
    line-height: 1.8em;
}

#footer {
margin: auto;
margin-bottom: 1em;
font-size: 0.75em;
font-style: italic;
width: calc(var(--content-width));
margin-left: auto;
margin-right: auto;
text-align: center;
}
.section-title {
    display:none;
    font-size: 1.5em;
    text-transform: uppercase;
letter-spacing: 1.18em;
margin-top: 2em;
margin-bottom: 1em;
margin-right: -1.18em;
/* color: darkred; */

}

.section-listing a{
    display:flex;
    gap: 1.5em;
    transition: text-decoration 0.3s ease;
     text-decoration: none;
     text-decoration-color: transparent;

}
.section-listing a:hover{
     text-decoration-color: black;
          text-decoration: none;
          color:black


}

.section-listing-image {
    width: 40%;
}
.section-listing-text {
   width: calc(60% - 1.5em);
}
.section-listing-image img {
    width: 100%;
    border: 1px solid lightgray;
}
.section-listing {
    margin-bottom: 2em;
}
.catalog-title {
    font-size: 1.5em;
    font-style: italic;
    margin-bottom: 0.25em;
}
.catalog-date {
    font-style:italic;
    margin-top:0.25em;
    margin-bottom:0.25em;
}
.catalog-hint {
    font-style:italic;
    font-size: 0.75em;
}
.catalog-hint a,
a .catalog-hint {
    text-decoration: underline;
    text-decoration-color: black;
    transition: text-decoration-color 0.3s ease;
    transition: color 0.3s ease;

}
.catalog-hint a:hover,
a .catalog-hint:hover {
     text-decoration: underline;
    text-decoration-color: darkred;
    color: darkred;
}