  /* -----------------------------
   Floating Navbar (desktop + mobile bar)
------------------------------ */
.floating-nav{
  position: fixed;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  width: min(1500px, calc(100% - 48px));
  padding: 20px 18px;
  border-radius: 15px;
  z-index: 9999;

  /* Cinematic glass */
  background: linear-gradient(
    90deg,
    rgba(3, 41, 129, 0.66) 0%,
    rgba(2, 31, 119, 0.50) 40%,
    rgba(10, 16, 91, 0.52) 60%,
    rgba(71, 90, 139, 0.99) 100%
  );

  backdrop-filter: blur(2.95px) saturate(10%);
  -webkit-backdrop-filter: blur(2.95px) saturate(10%);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    inset 0 -1px 0 rgba(0,0,0,0.6),
    var(--glass-shadow);

  border: 1px solid var(--glass-border);

  transition: transform 220ms ease, opacity 220ms ease;
}

.floating-nav::after{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: radial-gradient(
    ellipse at center,
    rgba(255,255,255,0.035) 0%,
    rgba(0,0,0,0.22) 70%,
    rgba(0,0,0,0.40) 100%
  );
}

.floating-nav.is-hidden{
  transform: translateX(-50%) translateY(-22px);
  opacity: 0;
  pointer-events: none;
}

.floating-nav__inner{ width: 100%; }

/* Logo */
.floating-nav__logo img{
  height: 36px;
  width: auto;
  display: block;
}

@media (max-width: 1025px){
  .floating-nav__logo img{ height: 20px; }
}

/* Mobile centered logo */
.floating-nav__logo--mobile img{
  height: 28px;
  width: auto;
}

/* Nav links */
.nav-linkish{
  color: #fcfcfc;
  text-decoration: none;
  transition: color 150ms ease;
  white-space: nowrap;
}

.nav-linkish:hover{
  color: rgba(255,255,255,0.95);
}

.floating-nav__menu .nav-linkish{
  padding: 2px 12px;
  border-radius: 15px;
  font-size: 16px;
  font-weight: 300;
  letter-spacing: .02em;
}

.floating-nav__menu a{color: #eaffff;}

.floating-nav__menu .nav-linkish.is-active{
  color: #eaffff;
  background: rgba(180, 0, 0, 0.56);
  border: 1px solid rgba(103, 15, 2, 0.44);
}

/* Icon buttons (plain) */
.icon-btn--plain{
  width: auto;
  height: auto;
  border: none;
  background: transparent;
  padding: 6px;
  border-radius: 10px;
  color: rgba(255,255,255,0.85);
}

.icon-btn--plain i{ font-size: 25px; }

.icon-btn--plain:hover{
  color: #fff;
  background: rgba(255,255,255,0.08);
}

/* Right icon row: keep icons aligned */
#floatingNav .floating-nav__icons,
#floatingNav .d-flex.align-items-center.gap-3{
  display: flex;
  align-items: center;
  gap: 12px;            /* match your design */
  position: relative;
  z-index: 5;
}

@media(max-width: 900px){
  .search--icon{display: none;}
}
 

/* GTranslate wrapper must behave like an icon */
#floatingNav .gtranslate_wrapper{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;          /* same as icon-btn */
  height: 42px;
  overflow: visible;
}

/* Kill "floating" positioning from widget content */
#floatingNav .gtranslate_wrapper *{
  position: static !important;
  float: none !important;
}

/* If the widget outputs an <img> flag, keep it sized */
#floatingNav .gtranslate_wrapper img{
  width: 22px !important;
  height: 22px !important;
  display: block;
  border-radius: 999px;
}

/* If it outputs a <select> dropdown, keep it neat */
#floatingNav .gtranslate_wrapper select{
  height: 34px;
  border-radius: 999px;
}

/*==========================================================================================
                   GTRANSLATE LANGUAGE SWITCHER
============================================================================================*/
/* Position the floating wrapper in the header */
#gt_float_wrapper {
    position: fixed !important;
    top: 19px !important;
    right: 50px !important;   /* tweak this to move left/right */
    z-index: 1100 !important;
    margin: 0 !important;
}

/* Remove default pill styling */
#gt_float_wrapper .gt_float_switcher {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    transform: none !important;
}

/* circular flag ONLY on the main button (not on dropdown rows) */
#gt_float_wrapper .gt_float_switcher > .gt-selected {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 2px solid #ffffff !important;
    padding: 0 !important;
}

/* flag inside the circle */
#gt_float_wrapper .gt_float_switcher > .gt-selected img {
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* hide text + arrow only inside the main button */
#gt_float_wrapper .gt_float_switcher > .gt-selected .gt-current-lang span,
#gt_float_wrapper .gt_float_switcher > .gt-selected .gt-lang-code,
#gt_float_wrapper .gt_float_switcher > .gt-selected .gt_float_switcher-arrow {
    display: none !important;
}

/* Position the dropdown list under the circle */
#gt_float_wrapper .gt_float_switcher .gt_options .gt-open {
    right: 0 !important;
    margin-top: 6px !important;
}

/* Slightly reduce logo to give breathing room */
.hellper-logo img {
    width: 220px;
}

/* dropdown panel: solid background, shadow, etc. */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open {
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.25) !important;
    padding: 4px 0 !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
}

/* each language row */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl {
    display: flex !important;
    align-items: center;
    gap: 8px;
    padding: 6px 12px !important;
    color: #051d36 !important;          /* Hellper navy-ish */
    font-size: 13px !important;
    text-decoration: none !important;
    background: transparent !important;
}

/* flags inside dropdown list */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl img {
    width: 20px !important;
    height: 14px !important;
    border-radius: 2px !important;
    object-fit: cover !important;
}

/* show text again inside dropdown rows (override any "display:none") */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl span {
    display: inline !important;
}

/* hover / active state */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl:hover {
    background: rgba(5, 29, 54, 0.06) !important;
}

@media(max-width:1025px){
  #gt_float_wrapper{
    right: 100px !important;
  }
}

@media(max-width:768px){
  #gt_float_wrapper{
    right: 80px !important;
  }
}
@media(max-width:550px){
  #gt_float_wrapper{
    right: 70px !important;
  }
}

#gt_float_wrapper .gt_float_switcher .gt_options{
  max-height: 350px !important;
}

/* Dropdown panel: dark glass + accent border */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open{
    margin-top: 310px;
  background: rgba(47, 65, 119, 0.50) !important;
  border: 1px solid rgba(0, 47, 210, 0.25) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  padding: 6px 0 !important;
}

/* Language rows: light text, slightly bolder, cleaner spacing */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl{
  color: rgba(235, 250, 248, 0.92) !important;
  font-weight: 500 !important;
  letter-spacing: 0.2px !important;
  padding: 8px 12px !important;
}

/* Divider between language rows */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl {
  position: relative;
}

/* Subtle divider line */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 0;
  height: 1px;
  background: rgba(195, 226, 221, .25);
}

/* Remove divider on last item */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl:last-child::after {
  display: none;
}

/* Hover: subtle teal glow background */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl:hover{
  background: rgba(0, 210, 190, 0.14) !important;
}

/* Current/active language row (nice “selected” state if plugin adds gt-current) */
#gt_float_wrapper .gt_float_switcher .gt_options a.gt-current,
#gt_float_wrapper .gt_float_switcher .gt_options .gt-current{
  background: rgba(0, 210, 190, 0.22) !important;
}

/* Dropdown flags: slightly cleaner + consistent */
#gt_float_wrapper .gt_float_switcher .gt_options.gt-open .nturl img{
  border-radius: 3px !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.35) !important;
}




/* MOBILE preference: show language, hide mobile search icon */
@media (max-width: 991.98px){
  #floatingNav #search-open-mobile{ 
    display: none !important;
  }

  #floatingNav .floating-nav__lang{
    display: inline-flex !important;
    align-items: center;
  }
}

/* DESKTOP: keep both search + language visible */
@media (min-width: 992px){
  #floatingNav .floating-nav__lang{
    display: inline-flex !important;
    margin-top: 8px;
  }
}

/* Accessibility helper */
.sr-only{
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border-width: 0;
}

 /* ==================================================
               SEARCH OVERLAY 
====================================================== */
    .search-overlay {
      position: fixed;
      inset: 0;                      /* full screen */
      display: flex;
      justify-content: center;
      align-items: flex-start;
      padding-top: 65px;             /* drop a bit below header */

      background: rgba(0, 0, 0, 0.7);/* darker backdrop */

      opacity: 0;
      visibility: hidden;
      transform: translateY(-20px);  /* slide from top */
      transition:
        opacity 0.35s ease,
        transform 0.35s ease,
        visibility 0s linear 0.35s;  /* hide after animation */
      z-index: 999;
    }

    .search-overlay.active {
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
      transition:
        opacity 0.35s ease,
        transform 0.35s ease,
        visibility 0s;              /* show immediately */
    }

    .search-overlay-inner {
      position: relative;
      width: 80%;
      margin-top: 60px;
      /*max-width: 1200px;
      padding: 0 20px;*/
    }
    
    @media(max-width: 1025px){
      .search-overlay-inner{
        margin-top: 40px;
      }
    }

    /* Red panel that looks like your screenshot */
    .search-panel {
      width: 100%;
      background-image: var(--bg-panel);
      padding: 40px 24px 60px;
      border-bottom-left-radius: 32px;
      border-bottom-right-radius: 32px;
    }

    /* Close button – far top-right, away from the bar */
    .search-close {
      position: absolute;
      top: 10px;
      right: 8px;

      background: none;
      border: none;
      font-size: 22px;
      color: #bcbcbc;
      cursor: pointer;
    }

    /* Search box wrapper */
    .search-box {
      width: 100%;
      margin-top: 20px;

      background: rgba(255, 255, 255, 0.15);
      border-radius: 12px;
      padding: 16px 20px;

      display: flex;
      align-items: center;
    }

    /* Make the form fill the search-box and behave like an input + icon bar */
    .search-overlay-form {
      display: flex;
      align-items: center;
      width: 100%;
      background: rgba(255, 255, 255, 0.12);
      border-radius: 999px;
      padding: 0 0 0 1.25rem;  /* left padding for text, none on right (button touches edge) */
      box-sizing: border-box;
    }

    /* Input */
    .search-overlay-form .search-input {
      flex: 1;
      border: none;
      background: transparent;
      color: #fff;
      font-size: 16px;
      font-weight: 300;
      outline: none;
    }

    /* Placeholder color tweak (optional) */
    .search-input::placeholder {
      color: rgba(255, 255, 255, 0.7);
    }

    /* Search icon button */
    .search-overlay-form .search-submit {
      background: none;
      border: none;
      width: 45px;
      height: 45px;
      color: #fff;
      cursor: pointer;
    }

    /* =========================================================
   MOBILE MENU OVERLAY (NEW LAYOUT)
   - #mobileMenu is a fixed full-viewport wrapper
   - #mobileMenuBackdrop is absolute inset:0 INSIDE wrapper
   - Panel is positioned above backdrop
   ========================================================= */

/* Overlay wrapper controls visibility */
#mobileMenu{
  position: fixed;
  inset: 0;
  z-index: 10000;

  opacity: 0;
  pointer-events: none;
  transition: opacity 200ms ease;
}

#mobileMenu.is-open{
  opacity: 1;
  pointer-events: auto;
}

/* Backdrop fills wrapper (example-site pattern) */
#mobileMenuBackdrop{
  position: absolute;
  inset: 0;

  background: rgba(0,0,0,0.55);
  backdrop-filter: blur(1.2px) saturate(180%);
  -webkit-backdrop-filter: blur(1.2px) saturate(180%);
}

/* Panel above backdrop */
.mobile-menu__panel{
  position: relative;
  z-index: 1;

  width: min(520px, calc(100% - 28px));
  margin: 18px auto 0;
  padding: 18px 16px 20px;
  border-radius: 22px;

  background: linear-gradient(
    180deg,
    rgba(5,42,81,0.65),
    rgba(7,37,77,0.56)
  );

  backdrop-filter: blur(.85px) saturate(120%);
  -webkit-backdrop-filter: blur(14px) saturate(120%);

  box-shadow: 0 24px 70px rgba(0,0,0,0.75);
  border: 1px solid rgba(255,255,255,0.12);
}

/* Search row */
.mobile-menu__search{
  display: grid;
  grid-template-columns: 46px 1fr 46px;
  gap: 10px;
  align-items: center;

  border: 1px solid rgba(255,255,255,0.22);
  border-radius: 10px;
  padding: 0 10px;
  background: rgba(255,255,255,0.04);
}

.mobile-menu__close,
.mobile-menu__searchBtn{
  height: 40px;
  width: 40px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: rgba(255,255,255,0.85);
}

.mobile-menu__input{
  width: 100%;
  border: 0;
  outline: none;
  background: transparent;
  color: rgba(255,255,255,0.92);
  font-size: 16px;
}

.mobile-menu__input::placeholder{
  color: rgba(255,255,255,0.35);
}

/* Big stacked links */
.mobile-menu__links{
  margin-top: 18px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.mobile-menu__links a{
  text-decoration: none;
  color: rgba(255,255,255,0.92);
  font-size: 25px;
  font-weight: 400;
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

.mobile-menu__links i{
  margin-top: 10px;
  font-size: 18px;
  color: rgba(255,255,255,0.35);
}

