/* Typography */
html { background: #fbedd0; color: #320b11; }

body { font: 20px/1.4 'Bitter', serif; font-weight: 300; text-rendering: geometricPrecision; }

a:link { color: #931f31; }

a:visited { color: #ce7e8a; }

h1 { font-weight: 900; font-size: Min(8vw, 3rem); line-height: 1; }

h1 a:link, h1 a:visited { color: #931f31; text-decoration: none; animation: logo 1s ease-in; }

@keyframes logo { 0% { opacity: 0;
    color: #595959; }
  100% { opacity: 1;
    color: #931f31; } }

h2 { margin-bottom: 1.5rem; font-weight: 800; line-height: 1.5rem; }

h2.strapline { font-size: Min(6vw, 1.75rem); line-height: 1; font-weight: 300; font-style: italic; }

h3 { margin-bottom: 1.5rem; font-weight: 600; line-height: 1.5rem; }

figcaption { font-weight: 300; }

blockquote { padding: 0 0.5rem; font-size: 0.9em; line-height: 1.5rem; font-style: italic; }

.left { float: left; width: 49%; }

.right { float: right; width: 49%; }

blockquote.left { padding-left: 0; }

footer { font-size: 0.85rem; }

/* Layout */
.container { margin: 1.5rem 0.5rem 1.5rem 1rem; }

@media (min-width: 50rem) { .container { margin: 3rem 6rem 6rem 3rem; } }

header { margin: 0 0 3rem 0; }

footer { margin: 3rem 0 0 0; }

.home .map { margin-bottom: 3rem; }

.home .places ol { list-style: none; padding: 0; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 3rem 1.5rem; }

.home .places ol li { width: 15rem; margin: 0; flex-grow: 1; }

.home .places ol li.highlight { width: 66%; }

.home .places ol li h3 { text-wrap: balance; }

.home .places ol li img.thumb { margin-bottom: 1.5rem; }

.home .places ol li p { margin: 0; text-wrap: balance; }

.home #map { height: 500px; }

.home #map .leaflet-control-attribution { font-size: 9px; }

.post { width: 100%; max-width: 30em; margin-bottom: 1.5rem; }

ol, ul { margin: 0; }

p, li, blockquote { margin-bottom: 0.75rem; hanging-punctuation: first allow-end last; }

.nearby ol { list-style: none; padding-left: 0; }

.nearby ol li { margin-bottom: 0.75em; }

hr { width: 50%; margin: 1.5rem auto; border: solid #931f31; border-width: 1px 0 0 0; }

figure img, img.thumb { border-radius: 8px; }

picture, img { max-height: 97vh; }

.place .top { margin-bottom: 1.5rem; }

.place .map { margin-bottom: 1.5rem; }

.place #map { height: 18rem; }

.place #map .leaflet-control-attribution { font-size: 9px; }

.place figure { margin-bottom: 1.5rem; }

@media (min-width: 40rem) { .place .top { display: flex; flex-direction: row; justify-content: flex-start; align-items: flex-start; gap: 1.5rem; } .place .top .post { margin-bottom: 0; width: 15rem; flex: 1 1 15rem; } .place .top .map { width: 15rem; flex: 1 1 15rem; } .place .top .nearby { width: 18rem; flex: 1 1 15rem; } }

@media (min-width: 54rem) { .place .images { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1.5rem; } .place .images figure { flex: 1 1 50%; margin-bottom: 0; } .place .images figure.portrait { flex: 1 1 25%; } .place .images figure img { max-height: calc(100vh - 5rem); } }

.place-essay .top { margin-bottom: 1.5rem; }

.place-essay .map { margin-bottom: 1.5rem; }

.place-essay #map { clear: both; height: 15rem; }

.place-essay #map .leaflet-control-attribution { font-size: 9px; }

.place-essay .post { font-weight: 300; }

.place-essay figure { margin-bottom: 1.5rem; }

@media (min-width: 40rem) { .place-essay .top { display: flex; flex-direction: row; justify-content: flex-start; align-items: flex-start; gap: 1.5rem; } .place-essay .top .post { margin-bottom: 0; width: 18rem; flex: 1 1; } .place-essay .top .geo { width: 18rem; flex: none; } }

@media (min-width: 54rem) { .place-essay .images { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1.5rem; } .place-essay .images figure { flex: 1 1 50%; margin-bottom: 0; } .place-essay .images figure.portrait { flex: 1 1 25%; } }

ol.rioni { list-style: none; padding: 0; }

ol.rioni .numeral { display: inline-block; min-width: 5.5em; font-variant: small-caps; }

.home ol.rioni { margin-bottom: 3rem; }

.home ol.rioni li .numeral { min-width: 2.5em; }

@media (min-width: 24em) { .home ol.rioni { display: flex; flex-flow: row wrap; justify-content: flex-start; gap: 0; } .home ol.rioni li { flex: 1 1 50%; } }

@media (min-width: 35rem) { .home ol.rioni { flex-flow: column wrap; height: 20rem; } .home ol.rioni li { flex: 0 1 1em; } }

@media (min-width: 60rem) { .home ol.rioni { height: 16rem; } }

/*# sourceMappingURL=main.css.map */