.mega-overlay, .mega-overlay *{ box-sizing:border-box; margin:0; padding:0; }
.mega-overlay{
  position:fixed; inset:0; z-index:99999;
  background:#050505; color:#fff; font-family:'Inter',sans-serif;
  display:flex; flex-direction:column; overflow:hidden; padding:16px 44px;
  transform:translateY(-100%); transition:transform .5s cubic-bezier(.65,.05,.36,1);
  pointer-events:none;
}
.mega-overlay.open{ transform:translateY(0); pointer-events:auto; }

.mega-overlay .mega-header{ display:flex; align-items:center; justify-content:space-between; padding-bottom:4px; }
.mega-overlay .mega-logo{ display:flex; align-items:center; text-decoration:none; }
.mega-overlay .mega-logo-img{ height:120px; width:auto; max-width:340px; object-fit:contain; display:block; }
.mega-overlay .mega-close{ background:none; border:1px solid rgba(255,255,255,.4); color:#fff; cursor:pointer; padding:10px 20px; font-family:'Bebas Neue',sans-serif; font-size:14px; letter-spacing:1.5px; text-transform:uppercase; transition:all .2s; display:flex; align-items:center; gap:10px; }
.mega-overlay .mega-close:hover{ border-color:#fff; background:rgba(255,255,255,.05); }
.mega-overlay .mega-close svg{ transition:transform .3s ease; }
.mega-overlay .mega-close:hover svg{ transform:rotate(90deg); }

.mega-overlay .mega-content{ flex:1; min-height:0; display:grid; grid-template-columns:300px 360px 1fr; gap:48px; padding-top:0; margin-top:-40px; align-content:center; overflow:hidden; }
.mega-overlay .mega-content > div{ overflow-y:auto; max-height:100%; }
.mega-overlay .mega-content aside{ overflow:hidden; display:flex; flex-direction:column; justify-content:flex-start; }
.mega-overlay .mega-content > div::-webkit-scrollbar{ width:6px; }
.mega-overlay .mega-content > div::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.15); border-radius:3px; }

.mega-overlay h2.mega-h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.03em; font-size:clamp(22px,3vh,30px); font-weight:500; margin-bottom:18px; color:#fff; }
.mega-overlay ul.main-nav, .mega-overlay ul.second-nav, .mega-overlay ul.third-nav{ list-style:none; }
.mega-overlay .second-nav li, .mega-overlay .third-nav li{ border-bottom:1px solid rgba(255,255,255,.12); }
.mega-overlay .main-nav button, .mega-overlay .second-nav button, .mega-overlay .third-nav a{
  width:100%; background:none; border:none; color:rgba(255,255,255,.55); text-align:left; padding:11px 0;
  font-size:24px; cursor:pointer; text-decoration:none; display:flex; align-items:center; justify-content:space-between; transition:.2s; }
.mega-overlay .second-nav button, .mega-overlay .third-nav a{ font-family:'Inter',sans-serif; font-size:17px; font-weight:600; }
.mega-overlay .second-nav button{ font-size:15px; }
.mega-overlay .main-nav button{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.02em; font-size:clamp(32px,6vh,60px); line-height:1.0; padding:clamp(8px,1.8vh,22px) 0; font-weight:500; transition:color .2s ease; }
.mega-overlay .main-nav li{ border-bottom:none; }
.mega-overlay .main-nav button:hover, .mega-overlay .main-nav button.active,
.mega-overlay .second-nav button:hover, .mega-overlay .second-nav button.active,
.mega-overlay .third-nav a:hover{ color:#fff; }
.mega-overlay .third-title{ display:flex; align-items:center; gap:12px; font-size:28px; font-weight:700; margin-bottom:14px; color:#fff; }
.mega-overlay .third-nav a{ color:#fff; }
.mega-overlay .second-nav a.second-link{ width:100%; display:block; color:#fff; text-decoration:none; padding:15px 0; font-family:'Inter',sans-serif; font-size:15px; font-weight:600; transition:.2s; }
.mega-overlay .second-nav a.second-link:hover{ color:#C49A20; }

.mega-overlay .bg-layer{ position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity .7s ease; z-index:0; }
.mega-overlay .bg-layer.show{ opacity:.32; }
.mega-overlay .bg-scrim{ position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,5,5,.96) 0%,rgba(5,5,5,.9) 45%,rgba(5,5,5,.78) 100%); z-index:1; }
.mega-overlay .mega-header, .mega-overlay .mega-content{ position:relative; z-index:2; }

.mega-overlay .mega-content.is-open .main-nav button{ color:rgba(255,255,255,.5); }
.mega-overlay .mega-content.is-open .main-nav button.active{ color:#fff; }
.mega-overlay .main-nav button.active{ position:relative; }
.mega-overlay .mega-content.is-open .main-nav button.active::after{ content:""; position:absolute; left:0; bottom:2px; width:1.2em; height:2px; background:#fff; }

.mega-overlay .highlight{ color:#C49A20 !important; }

@media (max-width:900px){
  .mega-overlay{ padding:22px; }
  .mega-overlay .mega-content{ grid-template-columns:1fr; gap:32px; align-content:start; overflow-y:auto; }
  .mega-overlay .main-nav button{ font-size:28px; }
  .mega-overlay .mega-logo-text strong{ font-size:22px; }
}
