/* Site theme on top of Bootstrap 5.3.3 (/assets/bootstrap-5.3.3/bootstrap.min.css). */
:root, [data-bs-theme] {
  --bs-link-color: #2e7d4f;
  --bs-link-color-rgb: 46,125,79;
  --bs-link-hover-color: #1f5a38;
  --bs-primary: #2e7d4f;
  --bs-primary-rgb: 46,125,79;
}
.btn-outline-primary {
  --bs-btn-color: #2e7d4f;
  --bs-btn-border-color: #2e7d4f;
  --bs-btn-hover-bg: #2e7d4f;
  --bs-btn-hover-border-color: #2e7d4f;
  --bs-btn-hover-color: #fff;
  --bs-btn-active-bg: #1f5a38;
  --bs-btn-active-border-color: #1f5a38;
}
body { background: #f6f5f2; }
.banner { height: 220px; background-size: cover; background-position: center; }
@media (max-width: 575.98px) { .banner { height: 120px; } }
.site-title { font-family: Georgia, "Iowan Old Style", "Palatino Linotype", serif; font-size: 1.6rem; }
.site-logo { height: 72px; width: auto; }
@media (min-width: 768px) { .site-logo { height: 110px; } }
.navbar .nav-link { white-space: nowrap; font-size: .8rem; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; }
.navbar .nav-link.active { color: var(--bs-link-color); }
.entry h1, .entry h2, .post-card h2 { font-family: Georgia, "Iowan Old Style", "Palatino Linotype", serif; }
.content { font-family: Georgia, "Iowan Old Style", "Palatino Linotype", serif; font-size: 1.1rem; line-height: 1.7; overflow-wrap: break-word; }
.content h2, .content h3 { margin-top: 1.6rem; }
.content::after { content: ""; display: table; clear: both; }
.post-thumb { display: block; width: 100%; height: 100%; min-height: 180px; max-height: 260px; object-fit: cover; }
@media (min-width: 576px) { .post-thumb { max-height: none; border-radius: var(--bs-card-inner-border-radius) 0 0 var(--bs-card-inner-border-radius); } }
@media (max-width: 575.98px) { .post-thumb { border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0; } }
.gallery-img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; }
.alignleft { float: left; margin: .3em 1.2em .8em 0; }
.alignright { float: right; margin: .3em 0 .8em 1.2em; }
.aligncenter { display: block; margin: 1em auto; }
figure.alignnone, figure.aligncenter { display: table; margin-left: auto; margin-right: auto; }
@media (max-width: 575.98px) { .alignleft, .alignright { float: none; display: block; margin: 1em auto; } }
.content pre { background: var(--bs-tertiary-bg); padding: 12px; border-radius: 4px; }
