/* Static HTML5 layer for BIENERGY. Keeps the old inFocus look, removes WordPress dependencies. */
* { box-sizing: border-box; }
html { width: 100%; max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; }
body { width: 100%; max-width: 100%; min-width: 0; overflow-x: hidden; }
a { transition: color .18s ease, opacity .18s ease; }
.inner { width: min(94vw, 960px); min-width: 0; max-width: 960px; }
#primary_full, #primary, #secondary, #body_block #primary-full { max-width: 100%; }
#primary_full .content, #primary .content { max-width: 100%; }
#breadcrumbs { height: auto; min-height: 68px; }
#header { background: #fff url("../theme/images/header.jpg") repeat-x left top; }
#logo { left: 0; top: 22px; width: 250px; height: 94px; }
#logo a { display: block; width: 250px; height: 94px; }
#logo img { width: 1px; height: 1px; opacity: 0; }
#main_navigation { top: 5px; }
.mobile-nav-toggle { display: none; }
.jqueryslidemenu ul li.current_page_item > a,
.jqueryslidemenu ul li a:hover { color: #004b85; }
.jqueryslidemenu ul ul { display: none; visibility: visible; }
.jqueryslidemenu ul li:hover > ul,
.jqueryslidemenu ul li:focus-within > ul { display: block; visibility: visible; }
.jqueryslidemenu ul ul li { position: relative; }
.jqueryslidemenu ul ul ul {
  left: 100%;
  top: 0;
  z-index: 60;
  min-width: 186px;
  margin-left: -4px;
}
.jqueryslidemenu a:focus-visible,
#footer_nav a:focus-visible,
.static-slider-pager button:focus-visible { outline: 2px solid #1d5f9f; outline-offset: 2px; }
#home_feature { background: #06223a url("../theme/styles/blue/home_feature.jpg") repeat-x center top; }
#home_feature .background,
#home_feature.staged .background { height: 400px; background: transparent url("../theme/styles/blue/stage.jpg") no-repeat center top; }
#home_feature #slider_img.static-slider { position: relative; right: auto; top: auto; width: 960px; height: 320px; margin-top: 20px; overflow: hidden; }
#home_feature #slider_img .slider_cropped.static-slide { display: none; position: absolute; inset: 0; width: 960px; height: 320px; margin-top: 0; overflow: hidden; }
#home_feature #slider_img .slider_cropped.static-slide.active { display: block; }
.static-slide .slider_content { display: block !important; position: absolute; left: 0; top: 0; z-index: 2; width: 330px; padding: 30px 0 0 30px; }
.static-slide .slider_content p { max-height: 148px; overflow: hidden; }
.static-slide-image { position: absolute; right: 0; top: 18px; width: 545px; height: 282px; display: flex; align-items: center; justify-content: flex-end; overflow: hidden; }
.static-slide-image img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; object-position: right center; }
.static-slider-pager { position: absolute; left: 0; top: 355px; z-index: 10; width: 960px; text-align: center; }
.static-slider-pager button { border: 0; padding: 0; margin: 0 2px; text-indent: 0; overflow: hidden; color: transparent; vertical-align: top; }
.static-slider-pager button span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
#loading_slider { display: none; }
#intro_blurb { background: #e6e6e6; }
#intro_blurb #blurb { min-height: 70px; }
#body_block .inner { padding-bottom: 8px; }
.static-entry { overflow: hidden; }
.static-entry img { max-width: 100%; height: auto; }
.static-entry .divider.top a { text-transform: uppercase; font-size: 10px; }
.scrolling-quote { overflow: hidden; white-space: nowrap; color: #1d5f9f; line-height: 36px; padding-bottom: 6px; }
.scrolling-quote__text { display: inline-block; min-width: 100%; animation: bienergy-marquee 24s linear infinite; }
@keyframes bienergy-marquee { from { transform: translateX(100%); } to { transform: translateX(-100%); } }
.anniversary-songs { clear: both; margin: 26px 0 30px; padding: 18px 20px 20px; background: #eef7fc; border-top: 1px solid #c9e3f4; border-bottom: 1px solid #c9e3f4; }
.anniversary-songs__intro h3 { margin-bottom: 8px; color: #1d5f9f; }
.anniversary-songs__intro p { margin-bottom: 14px; }
.anniversary-songs__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.anniversary-song { min-width: 0; }
.anniversary-song h4 { margin-bottom: 8px; color: #666; }
.anniversary-song audio { display: block; width: 100%; max-width: 100%; }
#footer { display: none; }
#sub_footer { margin-top: 40px; background-color: #d5eeff; border-top: 1px solid #a7cde8; }
#sub_footer .last { text-align: right; }
#footer_nav ul { margin: 0; padding: 0; }
#footer_nav li { display: inline; }
#footer_nav a { padding: 0 5px; }
.sitemap-list { margin-bottom: 26px; }
blockquote { margin-left: 0; }

@media (max-width: 980px) {
  .inner, #slider_thumbnails, .static-slider-pager, #home_feature #slider_img.static-slider, #home_feature #slider_img .slider_cropped.static-slide { width: min(94vw, 960px); min-width: 0; }
  #header { height: auto; min-height: 150px; background-position: left top; }
  #header .inner { min-height: 150px; }
  #main_navigation { position: relative; top: 112px; right: auto; left: 0; height: auto; padding-bottom: 12px; }
  .jqueryslidemenu ul li a { padding-left: 10px; padding-right: 10px; }
  #home_feature, #home_feature .background, #home_feature.staged .background { min-height: 420px; height: auto; background-size: auto 100%; }
  #home_feature #slider_img.static-slider { height: 340px; }
  #home_feature #slider_img .slider_cropped.static-slide { width: 100%; height: 340px; }
  .static-slide .slider_content { width: 38%; padding-left: 18px; }
  .static-slide-image { width: 58%; height: 292px; top: 24px; }
  .static-slide-image img { max-width: 100%; max-height: 100%; }
  .static-slider-pager { top: 368px; width: 100%; }
  .one_half, .one_third, .two_third, .three_fourth, .one_fourth, #primary .two_third, #primary .one_fourth { width: 100%; margin-right: 0; }
}

@media (max-width: 720px) {
  #header { background-size: auto 150px; }
  #logo, #logo a { width: 210px; height: 82px; }
  #main_navigation { top: 110px; }
  .jqueryslidemenu ul li { float: none; display: inline-block; }
  .jqueryslidemenu ul li a { height: auto; line-height: 18px; padding: 7px 8px; }
  .jqueryslidemenu ul li ul { position: static; width: 100% !important; background: rgba(255,255,255,.96); }
  .jqueryslidemenu ul li ul li a { width: auto; }
  #home_feature, #home_feature .background, #home_feature.staged .background { min-height: 610px; }
  #home_feature #slider_img.static-slider { height: 540px; }
  #home_feature #slider_img .slider_cropped.static-slide { height: 540px; }
  .static-slide .slider_content { position: relative; width: 100%; padding: 26px 20px 14px; }
  .static-slide .slider_content p { max-height: none; }
  .static-slide-image { position: relative; top: auto; width: calc(100% - 40px); height: auto; margin: 8px 20px 0; display: block; }
  .static-slide-image img { width: 100%; height: auto; max-height: none; }
  .static-slider-pager { top: 560px; }
  .anniversary-songs__list { grid-template-columns: 1fr; }
  #intro_blurb_title { float: none; margin-top: 20px; }
  #intro_blurb #blurb { float: none; width: auto; padding: 16px 0 22px; }
  #sub_footer .one_half, #sub_footer .last { text-align: left !important; }
  .scrolling-quote { white-space: normal; }
  .scrolling-quote__text { animation: none; }
}

@media (max-width: 900px) {
  body#home_page #header,
  #header { height: auto; min-height: 0; background-position: left top; background-size: auto 120px; }
  #header .inner { min-height: 0; padding: 14px 0 12px; }
  #logo { position: relative; top: auto; left: auto; width: 220px; height: 80px; margin: 0; }
  #logo a { width: 220px; height: 80px; }
  .mobile-nav-toggle {
    display: block;
    position: absolute;
    right: 0;
    top: 38px;
    min-width: 86px;
    min-height: 36px;
    padding: 0 13px;
    border: 1px solid #9ec9e6;
    background: rgba(255,255,255,.93);
    color: #0b568e;
    font: 700 12px/36px Tahoma, Geneva, Arial, sans-serif;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
  }
  #main_navigation {
    display: none;
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    clear: both;
    width: 100%;
    height: auto;
    padding: 10px 0 0;
    font-size: 12px;
  }
  #main_navigation.is-open { display: block; }
  .jqueryslidemenu ul,
  .jqueryslidemenu ul li,
  .jqueryslidemenu ul li ul,
  .jqueryslidemenu ul ul ul {
    display: block;
    float: none;
    position: static;
    left: auto;
    top: auto;
    width: 100% !important;
    min-width: 0;
    margin: 0;
    padding: 0;
    visibility: visible;
    background: transparent;
  }
  .jqueryslidemenu ul li a,
  .jqueryslidemenu ul li a:link,
  .jqueryslidemenu ul li a:visited {
    display: block;
    width: 100%;
    height: auto;
    min-height: 36px;
    padding: 9px 12px;
    border-bottom: 1px solid #dbeaf4;
    background: rgba(255,255,255,.94);
    color: #637481;
    line-height: 18px;
    overflow: visible;
  }
  .jqueryslidemenu ul ul li a,
  .jqueryslidemenu ul ul li a:link,
  .jqueryslidemenu ul ul li a:visited { width: 100%; padding-left: 28px; }
  .jqueryslidemenu ul ul ul li a,
  .jqueryslidemenu ul ul ul li a:link,
  .jqueryslidemenu ul ul ul li a:visited { padding-left: 44px; }
  .jqueryslidemenu ul li.current_page_item > a,
  .jqueryslidemenu ul li a:hover { color: #004b85; background: #eef8ff; }

  #home_feature,
  #home_feature .background,
  #home_feature.staged .background {
    height: auto;
    min-height: 0;
    background-size: auto 100%;
  }
  #home_feature .background { padding: 10px 0 46px; }
  #home_feature #slider_img.static-slider {
    width: min(94vw, 960px);
    height: auto;
    min-height: 0;
    margin-top: 0;
    overflow: visible;
  }
  #home_feature #slider_img .slider_cropped.static-slide {
    width: 100%;
    height: auto;
    min-height: 0;
    overflow: visible;
  }
  #home_feature #slider_img .slider_cropped.static-slide.active {
    display: block;
    position: relative;
  }
  .static-slide .slider_content {
    position: relative;
    width: 100%;
    padding: 22px 18px 12px;
  }
  .static-slide .slider_content p { max-height: none; }
  .static-slide-image {
    position: relative;
    top: auto;
    right: auto;
    width: 100%;
    height: auto;
    display: block;
    margin: 8px 0 0;
    text-align: center;
  }
  .static-slide-image img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 240px;
    margin: 0 auto;
  }
  .static-slider-pager {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    margin-top: 12px;
  }

  #intro_blurb { min-height: 0; }
  #intro_blurb .inner { padding: 16px 0; }
  #intro_blurb_title {
    float: none;
    height: auto;
    margin: 0 0 10px;
    padding-right: 0;
    font-size: 24px;
  }
  #intro_blurb_title span {
    display: inline-block;
    padding: 10px 18px 12px 24px;
    line-height: 26px;
  }
  #intro_blurb #blurb,
  #blurb {
    float: none;
    width: auto;
    min-width: 0;
    min-height: 0;
    padding: 0 2px 6px;
    font-size: 20px;
    line-height: 26px;
  }
  #breadcrumbs .inner { padding-top: 16px; padding-bottom: 14px; }
  .breadcrumb { line-height: 18px; }
  #body_block { padding-top: 8px; }
  h1 { font-size: 28px; }
  h2 { font-size: 23px; }
  h3 { font-size: 20px; }
  #home_feature h2 { font-size: 22px; line-height: 26px; }
  p, li, blockquote { overflow-wrap: anywhere; }
  .one_half,
  .one_third,
  .two_third,
  .three_fourth,
  .one_fourth,
  #primary .one_half,
  #primary .one_third,
  #primary .two_third,
  #primary .three_fourth,
  #primary .one_fourth {
    float: none;
    width: 100%;
    margin-right: 0;
    clear: none;
  }
  .anniversary-songs { margin: 20px 0 24px; padding: 16px; }
  #sub_footer { margin-top: 28px; padding-bottom: 10px; }
  #footer_nav li { display: inline-block; margin-top: 4px; }
  .legacy-gallery { padding-bottom: 8px; }
  .legacy-gallery img { width: min(var(--gallery-width, 320px), 88vw); }
}

.legacy-gallery { display: flex; gap: 10px; max-width: 100%; margin: 0 auto 20px; padding: 4px 0 10px; overflow-x: auto; }
.legacy-gallery figure { flex: 0 0 auto; margin: 0; }
.legacy-gallery img { display: block; width: min(var(--gallery-width, 320px), 82vw); height: auto; background: #f5f5f5; border: 1px solid #fff; padding: 4px; outline: 1px solid #eaeaea; }
