
/* Elite Golden Care - mobile navigation polish */
.egc-menu-toggle {
  display:none;
  width:46px;height:46px;border:1px solid rgba(212,175,55,.35);
  border-radius:14px;background:rgba(255,255,255,.07);backdrop-filter:blur(12px);
  align-items:center;justify-content:center;flex-direction:column;gap:5px;
  cursor:pointer;z-index:10001;box-shadow:0 10px 30px rgba(0,0,0,.12);
}
.egc-menu-toggle span { display:block;width:21px;height:2px;background:currentColor;border-radius:99px;transition:.25s ease; }
.egc-menu-open .egc-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.egc-menu-open .egc-menu-toggle span:nth-child(2){opacity:0}
.egc-menu-open .egc-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.egc-lock-scroll{overflow:hidden}

/* Tablet (681-900px): keep the horizontal nav and just tighten it.
   Previously this stylesheet hid the nav from 900px down while the only
   hamburger (.menu) is display:none above 680px, which left tablet users
   with no navigation at all. */
@media (min-width: 681px) and (max-width: 900px) {
  header .logo { width: 132px; }
  header .navlinks, header .navbar-nav, header .main-nav, header .navigation { gap: 14px; }
  header .navlinks a { padding: 24px 0; }
  header nav .request, header .navlinks .request { min-height: 40px; padding: 9px 14px; }
}

/* Phone (<=680px): off-canvas-ish panel. */
@media (max-width: 680px) {
  header .egc-menu-toggle { display:flex; }
  header nav, header .navbar-nav, header .main-nav, header .navigation {
    position:fixed !important; left:16px !important; right:16px !important; top:70px !important;
    max-height:calc(100vh - 158px); overflow:auto; z-index:9999;
    padding:18px !important; border-radius:24px;
    background:rgba(15,18,22,.96) !important;
    backdrop-filter:blur(22px);
    box-shadow:0 25px 70px rgba(0,0,0,.35);
    border:1px solid rgba(212,175,55,.22);
    opacity:0; visibility:hidden; transform:translateY(-12px) scale(.98);
    transition:opacity .22s ease, transform .22s ease, visibility .22s;
  }
  header.egc-menu-open nav, header.egc-menu-open .navbar-nav,
  header.egc-menu-open .main-nav, header.egc-menu-open .navigation {
    display:flex !important; flex-direction:column;
    opacity:1; visibility:visible; transform:translateY(0) scale(1);
  }
  /* The panel is dark, so its links must not inherit the dark ink colour. */
  header.egc-menu-open nav a, header.egc-menu-open .navbar-nav a,
  header.egc-menu-open .main-nav a, header.egc-menu-open .navigation a {
    color:#f4f1ea !important; font-size:13.5px; letter-spacing:.06em;
  }
  header.egc-menu-open nav a.active, header.egc-menu-open nav a[aria-current],
  header.egc-menu-open .navbar-nav a.active, header.egc-menu-open .main-nav a.active {
    color:#e6c778 !important;
  }
  header.egc-menu-open nav a.active:after { display:none !important; }
  header.egc-menu-open nav .request { color:#fff !important; margin:8px 0 2px; width:100%; justify-content:center; }
  header nav a, header .navbar-nav a, header .main-nav a, header .navigation a {
    display:block !important; padding:13px 14px !important; border-radius:13px;
  }
  header nav a:hover, header .navbar-nav a:hover, header .main-nav a:hover, header .navigation a:hover {
    background:rgba(212,175,55,.12);
  }
}
