/* Native WordPress menus, blocks, pagination and optional comments. */
.sl-menu { list-style:none; padding:0; margin:0; }
#navigation>.sl-menu { display:flex; gap:27px; align-items:center; }
.sl-menu li { position:relative; }
.sl-menu .sub-menu { position:absolute; z-index:20; top:100%; left:0; min-width:210px; list-style:none; padding:12px 17px; margin:0; background:var(--paper); box-shadow:0 10px 25px rgb(0 0 0 / 12%); display:none; }
.sl-menu li:hover>.sub-menu,.sl-menu li:focus-within>.sub-menu { display:block; }
.sl-menu .sub-menu a { display:block; padding:10px 0; }
.sl-menu .current-menu-item>a { color:var(--brown); text-decoration:underline; text-underline-offset:5px; }
.footer-top .sl-menu a { display:block; font-size:12px; margin-top:10px; color:#ddd8ca; }
.footer-top .sub-menu { position:static; box-shadow:none; padding:5px 0 5px 15px; background:transparent; display:block; }
.custom-logo-link { display:block; flex-shrink:0; }
.custom-logo-link img { max-width:225px; max-height:75px; width:auto; height:auto; object-fit:contain; outline:none; }
.site-header .brand { max-width:250px; overflow-wrap:anywhere; }
.brand small { line-height:1.5; }
.image-placeholder { display:flex; align-items:center; justify-content:center; width:100%; height:100%; min-height:90px; padding:20px; background:#e1e5d1; color:var(--olive-dark); font:italic 22px var(--serif); text-align:center; }
.hero-feature>.image-placeholder { position:absolute; inset:0; }
.hero-empty { background:var(--cream); padding:45px 30px; display:flex; justify-content:center; flex-direction:column; }
.hero-empty p { margin-top:22px; color:var(--muted); }
.hero-feature-caption h2 { overflow-wrap:anywhere; }
.home-post-grid { margin-top:30px; }
.category-item>.image-placeholder { width:82px; height:82px; min-height:82px; border-radius:50%; }
.category-directory-card>.image-placeholder { aspect-ratio:1.45; height:auto; }
.without-cover { grid-template-columns:1fr; }
.page-intro { color:var(--muted); font-size:15px; max-width:58ch; margin-top:22px; }
.page-intro p { margin-bottom:15px; }
.article-content:after { content:''; display:table; clear:both; }
.article-content .alignwide { width:calc(100% + 120px); max-width:calc(100vw - 70px); margin-left:-60px; }
.article-content .alignfull { width:100%; }
.article-content .alignleft { float:left; max-width:45%; margin:8px 25px 20px 0; }
.article-content .alignright { float:right; max-width:45%; margin:8px 0 20px 25px; }
.article-content .aligncenter { margin-inline:auto; }
.article-content .wp-block-image img,.article-content video { max-width:100%; height:auto; }
.article-content iframe { max-width:100%; }
.standard-page { padding-bottom:60px; }
.pagination .page-numbers { display:grid; place-items:center; min-width:44px; min-height:44px; border:1px solid var(--line); padding:7px; font-size:13px; }
.pagination .current { background:var(--olive); color:white; }
.post-navigation { display:block; }
.post-navigation .nav-links { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.post-navigation .nav-next { text-align:right; grid-column:2; }
.post-navigation a { display:block; padding:15px 0; }
.post-navigation a h2 { font-size:25px; margin-top:12px; }
.screen-reader-text { border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute!important; width:1px; word-wrap:normal!important; }
.screen-reader-text:focus { clip:auto!important; clip-path:none; background:var(--paper); height:auto; width:auto; padding:12px; z-index:100; }
.comments-area { max-width:740px; margin:45px auto; padding-top:30px; border-top:1px solid var(--line); }
.comments-area h2,.comments-area h3 { font-size:30px; margin-bottom:20px; }
.comments-area label { display:block; margin:15px 0 6px; }
.comments-area input:not([type=checkbox]),.comments-area textarea,.post-password-form input { max-width:100%; border:1px solid var(--line); padding:12px; background:var(--paper); font:inherit; }
.comments-area textarea { width:100%; }
.comments-area input[type=submit] { background:var(--olive); color:white; cursor:pointer; }
.comment-list { list-style:none; padding:0; }
.comment-list>li { margin:20px 0; padding:20px 0; border-bottom:1px solid var(--line); }
.comment-author img { width:40px; height:40px; display:inline-block; margin-right:10px; vertical-align:middle; }
.comment-meta { font-size:12px; color:var(--muted); }
.comment-content { margin:15px 0; }
@media(max-width:1150px) { #navigation>.sl-menu { gap:16px; } }
@media(max-width:850px) {
  .no-js #navigation { display:block; }
  .no-js .menu-toggle { display:none; }
  #navigation>.sl-menu { display:flex; align-items:stretch; flex-direction:column; gap:0; width:100%; }
  #navigation .sl-menu>li+li { border-top:1px solid var(--line); }
  #navigation .sl-menu a { display:flex; align-items:center; min-height:48px; padding:12px 4px; font-size:16px; line-height:1.5; }
  #navigation .sl-menu a:hover { background:var(--cream); }
  #navigation .sl-menu .sub-menu { position:static; display:block; min-width:0; background:none; box-shadow:none; padding:0 0 8px 20px; }
  #navigation .sub-menu a { font-size:14px; }
  .article-content .alignwide { margin-inline:0; width:100%; max-width:100%; }
  .custom-logo-link { min-width:0; }
  .custom-logo-link img { max-width:min(180px,100%); max-height:48px; }
}
@media(max-width:580px) {
  .category-item>.image-placeholder { width:63px; height:63px; min-height:63px; }
  .post-navigation .nav-links { gap:20px; }
  .post-navigation a h2 { font-size:21px; }
  .article-content .alignleft,.article-content .alignright { float:none; max-width:100%; margin:20px 0; }
}
