.elementor-2159 .elementor-element.elementor-element-ae2f922{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-f51cad2 *//* ===== StayFit Header V2 — SINGLE SOURCE OF TRUTH ===== */
:root{
  --sfr-purple:#2C244F;
  --sfr-white:#FFFFFF;
  --sfr-lime:#DCE72C;
  --sfr-pad-x:16px;
  --sfr-underline-h:3px;
}

/* Kill legacy header if still present (safety) */
.site-header{ display:none !important; }

/* Header bar */
header.sfr-header{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  position:sticky;
  top:0;
  z-index:10000;
  background:var(--sfr-purple);
  color:var(--sfr-white);
  box-shadow:0 1px 0 rgba(255,255,255,.08);
  font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
.admin-bar header.sfr-header{ top:32px; } /* WP admin bar offset */

header.sfr-header *{ box-sizing:border-box; }

header.sfr-header .sfr-row{
  max-width:1200px;
  margin:0 auto;
  padding:14px var(--sfr-pad-x);
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:20px;
  align-items:center;
  position:relative; /* anchor for panels */
  z-index:2;
}

/* Logo */
header.sfr-header .sfr-logo{
  display:block;
  transform:translateX(-6px);
  position:relative;
  z-index:3;
}
header.sfr-header .sfr-logo img{
  max-height:48px;
  width:auto;
  display:block;
}
header.sfr-header .sfr-logo,
header.sfr-header .sfr-logo *{ pointer-events:auto; }

/* Desktop nav */
header.sfr-header .sfr-nav{ position:relative; z-index:3; }
header.sfr-header .sfr-nav ul{
  list-style:none;
  margin:0; padding:0;
  display:flex; gap:32px;
}
header.sfr-header .sfr-nav a{
  color:#fff; text-decoration:none;
  font-weight:400; font-size:16px; line-height:1;
  position:relative; padding:10px 2px; display:inline-block;
  transition:color .18s ease, text-shadow .18s ease;
}
header.sfr-header .sfr-nav a::after{
  content:"";
  position:absolute; left:0; right:0; bottom:-7px;
  height:var(--sfr-underline-h);
  background:linear-gradient(90deg, rgba(220,231,44,.15), var(--sfr-lime), rgba(220,231,44,.15));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .22s ease;
  border-radius:2px;
}
header.sfr-header .sfr-nav a:hover{ text-shadow:0 0 10px rgba(220,231,44,.25); }
header.sfr-header .sfr-nav a:hover::after,
header.sfr-header .sfr-nav a.is-active::after,
header.sfr-header .sfr-nav a[aria-current="page"]::after{ transform:scaleX(1); }

/* Desktop CTA */
header.sfr-header .sfr-cta{
  background:var(--sfr-lime);
  color:#111;
  padding:10px 16px;
  font-weight:800;
  border-radius:12px;
  text-decoration:none;
  white-space:nowrap;
  transition:filter .15s ease, transform .15s ease;
  position:relative; z-index:3;
}
header.sfr-header .sfr-cta:hover{ filter:brightness(.95); transform:translateY(-1px); }

/* Mobile controls (hidden on desktop) */
header.sfr-header .sfr-btn{
  display:none;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  position:relative;
  z-index:3;
}

/* Burger — locked sizes so other CSS can’t override */
header.sfr-header #sfr-burger{
  width:46px; height:46px;
  background:var(--sfr-white);
  border:0; border-radius:8px;
  box-shadow:0 4px 10px rgba(0,0,0,.15);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:0;
}
header.sfr-header #sfr-burger .bar{
  width:26px !important;
  height:3.5px !important;
  background:var(--sfr-purple);
  border-radius:3px;
  margin:3px 0;
  display:block;
  transition:background .2s ease;
}
header.sfr-header #sfr-burger .bar:nth-child(2){ width:22px !important; } /* middle shorter */
header.sfr-header #sfr-burger:hover .bar{ background:var(--sfr-lime) !important; }

/* Icon-only search */
header.sfr-header #sfr-searchbtn{
  width:50px; height:50px;
  background:transparent; border:0; color:#fff;
  display:flex; align-items:center; justify-content:center;
}
header.sfr-header #sfr-searchbtn svg{ width:26px; height:26px; display:block; }
header.sfr-header #sfr-searchbtn:hover{ filter:drop-shadow(0 0 6px rgba(220,231,44,.9)); }
header.sfr-header #sfr-searchbtn:focus-visible{ outline:none; filter:drop-shadow(0 0 8px rgba(220,231,44,1)); }

/* Panels (mobile) — open under the row */
header.sfr-header .sfr-panel{
  display:none;
  position:absolute; left:0; right:0; top:100%;
  background:var(--sfr-purple);
  border-top:1px solid rgba(255,255,255,.12);
  overflow:hidden;
  z-index:4;
}
header.sfr-header .sfr-panel.is-open{
  display:block;
  animation:sfrSlide .22s ease;
}
@keyframes sfrSlide{
  from{ opacity:0; transform:translateY(-6px); }
  to{   opacity:1; transform:translateY(0); }
}
@media (prefers-reduced-motion: reduce){
  header.sfr-header .sfr-panel.is-open{ animation:none; }
}

/* Mobile menu list */
header.sfr-header #sfr-mobile ul{
  list-style:none;
  margin:0; padding:12px var(--sfr-pad-x);
  display:grid; gap:8px;
}
header.sfr-header #sfr-mobile a{
  color:#fff; text-decoration:none;
  padding:12px 0; display:block; font-weight:400; position:relative;
}
header.sfr-header #sfr-mobile a::after{
  content:""; position:absolute; left:0; right:0; bottom:-2px; height:2px;
  background:var(--sfr-lime);
  transform:scaleX(0); transform-origin:left;
  transition:transform .2s ease;
}
header.sfr-header #sfr-mobile a:hover::after{ transform:scaleX(1); }

/* Search drawer */
header.sfr-header #sfr-searchbar form{
  max-width:1200px; margin:0 auto;
  padding:12px var(--sfr-pad-x);
  display:flex; gap:8px;
}
header.sfr-header #sfr-searchbar input{
  flex:1;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
  border-radius:10px;
  padding:10px 12px;
  outline:none;
}
header.sfr-header #sfr-searchbar button{
  background:var(--sfr-lime);
  color:#111; border:0;
  padding:10px 14px;
  border-radius:10px;
  font-weight:700;
}

/* Responsive */
@media (max-width:980px){
  header.sfr-header .sfr-row{ grid-template-columns:46px 1fr 50px; gap:12px; }
  header.sfr-header .sfr-logo{ justify-self:center; transform:none; }
  header.sfr-header .sfr-logo img{ max-height:42px; }
  header.sfr-header .sfr-nav,
  header.sfr-header .sfr-cta{ display:none; }
  header.sfr-header .sfr-btn{ display:flex; }
}

/* Extra safety: hide any theme/mobile toggles on desktop; force our nav visible */
@media (min-width:1025px){
  .elementor-menu-toggle,
  #sfr-burger, #sfr-searchbtn, #sfr-mobile, #sfr-searchbar,
  .menu-toggle, .mobile-menu-toggle, .gp-mobile-menu-control, .gp-icon.menu-bars,
  .gp-icon--menu, .menu-bar-item{ display:none !important; }
  header.sfr-header .sfr-nav{ display:flex !important; }
}/* End custom CSS */