/* Small static replacements for the old theme's JavaScript-driven behavior. */
html { scroll-behavior: smooth; }
[hidden] { display: none !important; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 10000; padding: 12px 20px; background: #fff; color: #111; }
.skip-link:focus { top: 8px; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid #1672d4; outline-offset: 3px; }
.contact-box { margin: 24px 0; padding: 24px; border-left: 4px solid #27c24c; border-radius: 4px; background: #f1f8f2; color: #202820; }
.contact-box p { margin: 0 0 12px; }
.contact-email { font-size: 1.1em; font-weight: 700; overflow-wrap: anywhere; }
.support-band { padding: 32px 5%; text-align: center; background: #f1f8f2; color: #202820; }
.support-band h2 { margin: 0 0 10px; }
.support-band p { margin: 0; }
.support-band a { font-weight: 700; overflow-wrap: anywhere; }
#header .ssup { padding: 3px 15px 4px; margin-top: -4px; margin-left: 10px; border-radius: 5px; background: #27c24c; color: #fff; text-transform: uppercase; font-size: 11px; font-weight: bold; }
#header .ssup a { color: #fff; }
#header li.festd { text-transform: uppercase; font-size: 11px; font-weight: bold; }
.utility-page { min-height: 42vh; padding: 60px 0; }
.utility-page h1 { margin-bottom: 24px; }
.local-search label { display: block; margin-bottom: 10px; }
.local-search > div { display: flex; gap: 10px; max-width: 760px; }
.local-search input { flex: 1; min-width: 0; padding: 12px; border: 1px solid #aaa; }
.local-search button { padding: 12px 22px; border: 0; background: #27c24c; color: #fff; cursor: pointer; }
#search-results { margin: 30px 0; list-style: none; }
#search-results li { margin: 0 0 24px; padding: 0 0 20px; border-bottom: 1px solid #ddd; }
#search-results h2 { font-size: 1.4em; margin-bottom: 8px; }
.module-accordion .accordion-content:not([hidden]) { display: block !important; }
.module-accordion .accordion-active-icon { display: none; }
.module-accordion [aria-expanded="true"] .accordion-active-icon { display: inline-block; }
.module-accordion [aria-expanded="true"] .accordion-icon { display: none; }
.module-tab .tab-content:not([hidden]), .lazycrab-tabs .tab-content:not([hidden]) { display: block !important; }
.tabcontent:not([hidden]) { display: block !important; }
.animated, .wow, [data-animation] { opacity: 1 !important; visibility: visible !important; }
.lazycrab_builder .module_row, .lazycrab_builder .module_column { visibility: visible; }
#main-nav a[aria-current="page"] { color: #27c24c; }
img { max-width: 100%; height: auto; }
@media (max-width: 1000px) {
  #headerwrap { position: relative !important; }
  #header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; padding: 12px 0; height: auto !important; }
  #site-logo { margin: 0; max-width: 200px; }
  #header #site-description { display: none; }
  #menu-icon { display: block !important; position: static; margin: 0; padding: 8px; width: auto; height: auto; color: #222; }
  #menu-icon::before { content: '☰'; font: 26px/1 sans-serif; }
  #mobile-menu { display: none !important; position: static !important; width: 100% !important; height: auto !important; max-height: none !important; transform: none !important; visibility: visible !important; opacity: 1 !important; overflow: visible !important; padding: 16px 0 4px; background: #fff; color: #222; }
  .nav-open #mobile-menu { display: block !important; }
  #main-nav-wrap, #main-nav { float: none !important; width: 100% !important; margin: 12px 0 0 !important; padding: 0 !important; }
  #main-nav li { display: block !important; float: none !important; margin: 0; }
  #main-nav li a { color: #333; display: block; padding: 12px 4px; }
  #main-nav .sub-menu { display: none !important; }
  .n-thumb { position: static; float: none; }
  .forloggedin { display: flex; gap: 14px; align-items: center; margin: 8px 0; }
  .ssup, li.festd { float: none; margin: 0 !important; }
  .top-search h1 { font-size: clamp(28px, 8vw, 40px) !important; line-height: 1.3; padding: 12px; }
  .top-search { padding-top: 25px; }
  .searchform-music { width: 90%; margin: auto; }
  .searchform-music form { display: flex; width: 100% !important; box-sizing: border-box; }
  .searchform-music input { min-width: 0; flex: 1; }
  .searchform-music button { flex-shrink: 0; }
  .utility-page { padding: 32px 0; }
  .footer-up0 .foot-up { display: flex; flex-wrap: wrap; gap: 24px; margin: 0; }
  .footer-up0 .foot-up > li { width: calc(50% - 24px); margin: 0; }
}
@media (max-width: 480px) {
  .footer-up0 .foot-up > li { width: 100%; }
  .contact-box { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; transition: none !important; } }
