:root{
  --blue:#009fe4;
  --frost:rgba(18,18,18,0.78);
  --text:#F3F6FA;
  --muted:#C9CFD6;
  --accent:#009fe4;
}
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;600;700&display=swap');
*{box-sizing:border-box}
body.ls-no-scroll{overflow:hidden}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* TOP overlay 60% */
#ls-mega{position:fixed;left:0;right:0;top:5vh;height:60vh;background:var(--frost);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);color:var(--text);z-index:1000;pointer-events:none;transform:translateY(-100%);opacity:0;transition:transform .6s cubic-bezier(.23,1,.32,1),opacity .6s cubic-bezier(.23,1,.32,1);border-radius:0 0 20px 20px;box-shadow:0 15px 60px rgba(0,0,0,.35)}
#ls-mega.is-open{pointer-events:auto;transform:translateY(0);opacity:1}
#ls-mega .ls-mega__inner{max-width:1600px;width:92%;margin:0 auto;padding:calc(18px + 2vh) 0 18px;font-family:'Manrope',sans-serif;display:flex;flex-direction:column;height:100%}
.ls-mega__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.brand-logo{height:46px;width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}
.close{background:none;border:0;color:var(--muted);font-size:28px;cursor:pointer;transition:.25s}
.close:hover{color:var(--accent);transform:rotate(90deg)}

.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:42px;padding:6px 0 0;margin-top:6px}
.group{display:flex;flex-direction:column}
.group-title{font-weight:700;margin:0 0 .6rem;font-size:18px;color:#009fe4;cursor:default}
.group-title a{color:inherit;text-decoration:none;font-weight:inherit}
.group-title a:hover{text-decoration:underline}
.group-body{margin:0}
.group-body ul{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.group-body a{color:#fff;text-decoration:none;font-weight:500;font-size:16px;transition:.2s}
.group-body a:hover{color:#009fe4}
.group-body ul ul{margin:.2rem 0 0 .6rem;gap:.35rem}
.group-body ul ul a{font-size:14px;color:#ffffffcc}
#ls-mega .grid .group-body ul ul a:hover{color:#009fe4}

.foot{text-align:center;font-size:13px;color:var(--muted);margin-top:auto;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}

@media(max-width:980px){
  #ls-mega{height:100vh;border-radius:0;padding:env(safe-area-inset-top,0) 0 env(safe-area-inset-bottom,0);top:0!important}
  #ls-mega .ls-mega__inner{overflow:auto;-webkit-overflow-scrolling:touch;padding:calc(10px + env(safe-area-inset-top,0)) 0 calc(22px + env(safe-area-inset-bottom,0))}
  .ls-mega__top{position:sticky;top:0;background:transparent;padding:6px 0 8px;margin-bottom:14px;z-index:2}
  .grid{grid-template-columns:1fr;gap:16px;margin-top:0;padding:0 8px 18px}
  .group{background:rgba(255,255,255,.04);border-radius:18px;padding:0;border:1px solid rgba(255,255,255,.08);box-shadow:0 10px 30px rgba(0,0,0,.25);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden}
  .group-title{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 14px;font-size:19px;text-align:left;border-bottom:1px solid rgba(255,255,255,.05);min-height:64px}
  .group:not(.has-children) .group-title{border-bottom:none}
  .group.is-accordion.has-children .group-title{cursor:pointer}
  .group-title::after{content:none}
  .group.is-accordion.has-children .group-title::after{content:'';width:12px;height:12px;border-right:2px solid rgba(255,255,255,.85);border-bottom:2px solid rgba(255,255,255,.85);transform:rotate(45deg);transition:transform .25s ease}
  .group.is-accordion.has-children.is-open .group-title::after{transform:rotate(225deg)}
  .group-body{padding:12px 18px 16px}
  .group-body ul{gap:.6rem;text-align:left}
  .group-body ul ul{margin:.35rem 0 0 1.1rem}
  .group-body ul ul a{font-size:14px;color:#ffffffcc}
  .group.is-accordion .group-body{max-height:0;overflow:hidden;opacity:0;transition:max-height .35s ease,opacity .3s ease;padding:0 18px}
  .group.is-accordion.is-open .group-body{max-height:999px;opacity:1;padding:12px 18px 16px}
}
