/* ------------------------------------------------------------------
   Static-mirror runtime shims.
   Elementor's frontend JS does not boot outside WordPress, so this CSS +
   static-fixes.js restore the behaviors the site actually needs.
   ------------------------------------------------------------------ */

/* Safety: if JS is disabled, never leave entrance-animated content hidden. */
.no-js .elementor-invisible { visibility: visible !important; }

/* Mobile hamburger dropdown menu */
.elementor-nav-menu--dropdown { display: none; }
.elementor-nav-menu--dropdown.pis-open { display: block !important; }
.elementor-menu-toggle { cursor: pointer; }

/* Elementor's JS normally sizes/positions the dropdown; it can't run here,
   so anchor it as a readable panel that never overflows the screen. */
@media (max-width: 1024px) {
  .elementor-nav-menu--dropdown.pis-open {
    position: fixed !important;
    top: 84px !important;
    right: 12px !important;
    left: auto !important;
    width: auto !important;
    min-width: 240px !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 100px) !important;
    overflow-y: auto !important;
    z-index: 99999 !important;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .28) !important;
    border-radius: 8px !important;
  }
  .elementor-nav-menu--dropdown.pis-open .elementor-item {
    white-space: nowrap;
  }

  /* Tablet/iPad: move the hamburger to the far right of the header,
     to the right of the "View Camps" button (header id = element-70ee6df).
     Anchor to the centered content row (.e-con-inner) so it lines up
     vertically with the button. */
  .elementor-element-70ee6df > .e-con-inner { position: relative !important; }
  .elementor-element-70ee6df .elementor-element-0fed7d6,
  .elementor-element-70ee6df .elementor-element-1978da1,
  .elementor-element-70ee6df .elementor-element-4d270b2 { position: static !important; }
  .elementor-element-70ee6df .elementor-menu-toggle {
    position: absolute !important;
    right: 12px !important;
    top: calc(50% + 11px) !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    z-index: 200 !important;
  }
}

/* Burger <-> close icon swap (Elementor normally toggles this in JS) */
.elementor-menu-toggle .elementor-menu-toggle__icon--close { display: none; }
.elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--open { display: none; }
.elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close { display: inline-block; }
