/* ===========================
   Elementor Navigation Dropdown
   =========================== */
.elementor-nav-menu--dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  width: auto;
}

.elementor-nav-menu__container {
  max-height: none;
  overflow: visible;
}

/* ===========================
   Hyperlink Styling
   =========================== */
a {
  color: #1c86ee;
  text-decoration: none;
}

a:hover,
a:focus {
  color: #0d3d71;
  text-decoration: underline;
}

/* Mobile Link Styling */
@media (max-width: 768px) {
  a {
    color: #1c86ee;
    text-decoration: none;
  }

  a:hover,
  a:focus {
    color: #0d3d71;
    text-decoration: underline;
  }
}

/* ===========================
   Page + Scroll Reset
   =========================== */
html, body {
  overflow-x: hidden;          /* no horizontal scroll */
  overflow-y: auto;            /* allow vertical scroll */
  margin: 0;
  padding: 0;
  height: 100%;                /* keep page height */
  overscroll-behavior: none;
  -webkit-overflow-scrolling: touch; /* smooth iOS scroll */
}

/* Universal layout safety */
* {
  box-sizing: border-box;
  max-width: 100%;
}

/* ===========================
   Embedded App iFrame Fullscreen
   =========================== */
iframe[src*="swipeeventsfull.web.app"] {
  width: 100vw !important;
  height: calc(var(--vh, 1vh) * 100) !important;
  display: block !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ===========================
   Sticky / Floating Container
   =========================== */
.sd-sticky {
  position: sticky;
  top: 200px;   /* distance from top on desktop */
  bottom: auto;
  z-index: 1000;
}

/* Mobile override: pin to bottom */
@media screen and (max-width: 768px) {
  .sd-sticky {
    position: fixed;
    top: auto;
    bottom: 0;
    width: 100%;
    left: 0;
    background-color: #ffffff;
   box-shadow: none;

    z-index: 9999;
  }

  .ct-footer {
    position: relative;
    z-index: 1;
  }
}

/* ===========================
   Glassy Animated Menu Bar
   =========================== */
#menu-animation {
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 0 0 8px 8px;
  z-index: 9999;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}

/* Hide = slow (2000ms) */
#menu-animation.hidden {
  transform: translateY(-100%);
  opacity: 0;
  transition: transform 2s cubic-bezier(0.65, 0, 0.35, 1),
              opacity 2s cubic-bezier(0.65, 0, 0.35, 1);
}

/* Show = fast (600ms) */
#menu-animation.visible {
  transform: translateY(0);
  opacity: 1;
  transition: transform 0.6s cubic-bezier(0.65, 0, 0.35, 1),
              opacity 0.6s cubic-bezier(0.65, 0, 0.35, 1);
}
