/* The fixed Divi header depends on removed scripts for its offset. Normal flow
   keeps the existing text before the page container from being covered. */
body.et_fixed_nav #main-header,
body.et_fixed_nav #top-header { position: relative !important; top: auto !important; }
body.et_fixed_nav.et_show_nav #page-container { padding-top: 0 !important; }
/* External social anchors were removed; their existing names are still useful. */
#top-header .et-social-icon span { display: inline; }

/* Slider Revolution no longer positions its captured images. A swipeable strip
   preserves every slide and its natural aspect ratio without a script. */
#rev_slider_1_1 { display: block !important; }
#rev_slider_1_1 > ul {
  display: flex;
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  width: 100%;
}
#rev_slider_1_1 > ul > li {
  position: relative;
  flex: 0 0 100%;
  width: 100%;
  height: auto;
  overflow: hidden;
  scroll-snap-align: start;
}
#rev_slider_1_1 .tp-caption { position: relative; visibility: visible; }
#rev_slider_1_1 .tp-caption img {
  display: block;
  width: 100%;
  max-width: 100% !important;
  height: auto;
}
/* Transparent background placeholders and the timer have no content. */
#rev_slider_1_1 .rev-slidebg,
#rev_slider_1_1 .tp-bannertimer { display: none; }

/* These form remnants have labels but no fields or submission mechanism. */
#respond:not(:has(input, textarea, select)),
.et_pb_contact_form_container:not(:has(input, textarea, select)) {
  display: none;
}
#comment-wrap:not(:has(input, textarea, select, .commentlist, .comment-list)) { padding: 0; }

.site-fix-menu-open, .site-fix-menu-close { display: none; }
@media only screen and (max-width: 980px) {
  /* The original menu remains the only source of labels and destinations. */
  #main-header .mobile_menu_bar { position: absolute; }
  #main-header .site-fix-menu-open,
  #main-header:target .site-fix-menu-close {
    display: block;
    position: absolute;
    inset: -6px;
    z-index: 2;
  }
  #main-header:target .site-fix-menu-open { display: none; }
  #main-header:target .mobile_menu_bar:before { content: '\4d'; }
  #main-header:target #top-menu-nav {
    display: block;
    padding: 0;
    text-align: left;
  }
  #main-header:target #top-menu {
    display: block;
    padding: 12px 0;
    line-height: 1.5;
  }
  #main-header:target #top-menu li {
    display: block;
    padding: 0;
    font-size: 15px;
  }
  #main-header:target #top-menu li a {
    display: block;
    padding: 8px 12px;
    color: #fff;
    line-height: 1.5;
  }
  #main-header:target #top-menu li > a:after { display: none; }
  #main-header:target #top-menu .sub-menu {
    position: static;
    visibility: visible;
    opacity: 1;
    width: auto;
    padding: 0 0 0 16px;
    border: 0;
    box-shadow: none;
    background: transparent;
  }
  #main-header:target #top-menu .sub-menu li,
  #main-header:target #top-menu .sub-menu a { width: auto; }
}
