/* Responsive refinements shared by public pages. */
.grid > *, .flex-1 { min-width: 0; }
img, video, iframe { max-width: 100%; }
.post-text, .post-desc, .post-title { overflow-wrap: break-word; word-wrap: break-word; }
.post-text img, .post-text video { height: auto; }
.post-text iframe { max-width: 100%; }
.post-text table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible { outline: 2px solid #38206a; outline-offset: 3px; }
.main-header .search-toggle, .main-header .menu-toggle { min-width: 44px; min-height: 44px; }
.main-header .menu-dropdown a { min-height: 44px; display: flex; align-items: center; }
#searchInput { font-size: 16px; min-width: 0; }
.main-header .header-search-panel { max-width: calc(100vw - 32px); }
.main-header .header-search-panel > div { max-width: 100%; }
.map-load-notice { padding: 16px; background: #fff; color: #38206a; border: 1px solid #ded8e8; border-radius: 8px; }
@media (max-width: 1279px) { .main-header .header-social-link { display: none !important; } }
@media (max-width: 1023px) {
  .main-header .header-main-menu { display: none !important; }
  .main-header .header-mobile-menu { display: block !important; }
}
@media (min-width: 1024px) { .main-header .header-mobile-menu { display: none !important; } }
@media (max-width: 639px) {
  .header-search-holder { position: static !important; }
  .main-header .header-search-panel { left: 0 !important; right: 0 !important; top: calc(100% + 8px) !important; transform: none !important; margin: 0 !important; width: auto !important; z-index: 30; }
  .main-header .header-search-panel > div { width: 100% !important; }
  .post-text { line-height: 1.9; }
  input, textarea, select { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (max-width: 767px) {
  #map_form { width: calc(100% - 24px); max-width: 100%; }
  #map_form > .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #map_form select { width: 100%; min-width: 0; }
}

.main-header .menu-dropdown { max-height: 70vh; max-height: calc(100dvh - 190px); overflow-y: auto; overscroll-behavior: contain; max-width: calc(100vw - 32px); }

/* Justify news prose, including editor-supplied paragraph alignment. */
.page-post .post-text,
.page-post .post-desc,
.page-post .post-text p,
.page-post .post-text div,
.page-post .post-text li,
.page-post .post-desc p,
.page-post .post-desc div,
.page-post .post-desc li {
  text-align: justify !important;
  text-align-last: start;
}
