/* ── MOBILE MENU ─────────────────────────────────────────────
   Shared across all FRF / FRF Think Tank pages.
   The hamburger button is inline-flex only at <=1180px (the breakpoint
   where the inline nav links collapse).
*/

.mobile-toggle{
  display:none;
  align-items:center;justify-content:center;
  width:36px;height:36px;
  background:transparent;border:1px solid rgba(255,255,255,.18);
  border-radius:3px;cursor:pointer;color:#fff;
  margin-left:12px;flex-shrink:0;
  font-family:inherit;
  transition:border-color .2s,background .2s;
}
.mobile-toggle:hover{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.04);}
.mobile-toggle svg{width:18px;height:14px;}

@media(max-width:1180px){
  .mobile-toggle{display:inline-flex;}
}
@media(max-width:560px){
  .mobile-toggle{
    margin-left:0;
    border-color:var(--blue);
    background:var(--blue);
  }
}

/* Overlay + drawer */
.md-overlay{
  position:fixed;inset:0;
  background:rgba(8,10,15,.55);
  opacity:0;pointer-events:none;
  transition:opacity .25s ease;
  z-index:998;
}
.md-overlay.open{opacity:1;pointer-events:auto;}

.md-drawer{
  position:fixed;top:0;right:0;bottom:0;
  width:min(360px,86vw);
  background:#1d1b1b;
  z-index:999;
  transform:translateX(100%);
  transition:transform .3s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;
  overflow:hidden;
  font-family:"Proxima Nova","Nunito Sans","Helvetica Neue",Arial,sans-serif;
}
.md-drawer.open{transform:translateX(0) !important;}

.md-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 22px;
  border-bottom:1px solid rgba(255,255,255,.08);
  flex-shrink:0;
  min-height:54px;
}
.md-head .md-brand{
  display:flex;align-items:center;gap:10px;
  font-size:13px;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:#fff;
}
.md-head .md-brand img{height:22px;width:auto;display:block;}

.md-close{
  width:32px;height:32px;
  background:transparent;border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.55);
  transition:color .2s;
  font-family:inherit;
  border-radius:3px;
}
.md-close:hover{color:#fff;background:rgba(255,255,255,.05);}
.md-close svg{width:14px;height:14px;}

.md-body{
  flex:1;overflow-y:auto;
  padding:18px 22px;
  display:flex;flex-direction:column;gap:22px;
  -webkit-overflow-scrolling:touch;
}

.md-search{
  display:flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  padding:9px 14px;border-radius:3px;
  flex-shrink:0;
}
.md-search svg{flex-shrink:0;color:rgba(255,255,255,.4);}
.md-search input{
  flex:1;min-width:0;
  background:transparent;border:none;outline:none;
  color:#fff;font-family:inherit;font-size:14px;
}
.md-search input::placeholder{color:rgba(255,255,255,.35);}
.md-search-results{display:flex;flex-direction:column;margin-top:-14px;}
.md-search-results a{display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08);}
.md-search-results a span{grid-column:1 / -1;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#6db8ef;}
.md-search-results a strong{font-size:14px;line-height:1.25;color:#fff;text-transform:uppercase;font-family:"Barlow Condensed","Proxima Nova Cond","Proxima Nova",sans-serif;}
.md-search-results a em,.md-search-results .live-search-empty{font-size:12px;color:rgba(255,255,255,.45);font-style:normal;}

.md-section h5{
  font-size:10px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.38);
  margin:0 0 6px;
}
.md-section nav{display:flex;flex-direction:column;gap:0;}
.md-section nav a{
  color:rgba(255,255,255,.78);
  font-size:15px;font-weight:500;
  padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,.05);
  transition:color .15s;
  display:flex;align-items:center;justify-content:space-between;
  text-decoration:none;
}
.md-section nav a:last-child{border-bottom:none;}
.md-section nav a:hover{color:#fff;}
.md-section nav a.act{color:#fff;}
.md-section nav a.act::after{
  content:'';width:6px;height:6px;border-radius:50%;
  background:#0063ae;
}

.md-footer{
  padding:16px 22px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;flex-direction:column;gap:12px;flex-shrink:0;
}
.md-donate{
  background:#0063ae;color:#fff;
  text-align:center;font-size:14px;font-weight:600;
  padding:12px;border-radius:3px;letter-spacing:.02em;
  transition:background .2s;
  text-decoration:none;
}
.md-donate:hover{background:rgba(0,99,174,.85);}

.md-lang{
  display:flex;justify-content:center;gap:14px;
  font-size:12px;color:rgba(255,255,255,.4);
  font-weight:500;letter-spacing:.04em;text-transform:uppercase;
}
.md-lang a{
  text-decoration:none;color:inherit;
  padding:4px 8px;border-radius:2px;
  transition:color .15s,background .15s;
}
.md-lang a:hover,.md-lang a.act{color:#fff;background:rgba(255,255,255,.05);}

body.md-open{overflow:hidden;}
