/* Graphene Dome — responsive layout + mobile/tablet navigation menu */

/* ---- Hamburger button (hidden on desktop) ---- */
.topbar .gd-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:9px;margin-left:auto;background:none;border:0;cursor:pointer;}
.topbar .gd-burger span{display:block;height:2px;width:100%;background:#0ef901;border-radius:2px;transition:transform .2s,opacity .2s;}
.topbar.gd-menu-open .gd-burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.topbar.gd-menu-open .gd-burger span:nth-child(2){opacity:0;}
.topbar.gd-menu-open .gd-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ---- Mobile menu panel (body-level fixed overlay, below the top bar) ---- */
.gd-mobile-menu{display:none;position:fixed;left:0;right:0;top:0;z-index:99990;flex-direction:column;background:rgba(3,6,13,.985);border-top:1px solid #16233d;border-bottom:1px solid #16233d;box-shadow:0 18px 40px rgba(0,0,0,.6);padding:6px 0 14px;max-height:calc(100vh - 40px);overflow:auto;}
.gd-mobile-menu.gd-open{display:flex;}
.gd-mobile-menu a{padding:15px 26px;color:#e7eefc;font-family:"Cinzel",Georgia,serif;text-transform:uppercase;letter-spacing:.1em;font-size:13px;text-decoration:none;border-bottom:1px solid rgba(22,35,61,.55);}
.gd-mobile-menu a:hover{color:#0ef901;background:rgba(14,249,1,.05);}
.gd-mobile-menu .gd-mm-cta{margin:12px 22px 4px;text-align:center;border-radius:7px;border-bottom:none;background:linear-gradient(180deg,#0ef901,#0bbf02);color:#012 !important;font-weight:700;box-shadow:0 0 16px rgba(14,249,1,.3);}

/* ---- Tablet / mobile: show burger, hide desktop nav + inline CTA ---- */
@media (max-width:1024px){
  .topbar .gd-burger{display:flex;}
  .topbar .wrap{position:relative;}
  .topbar nav.main{display:none !important;}
  .topbar .wrap > a.btn-green,.topbar .wrap > .btn.btn-green{display:none;}
}

/* ---- Phone refinements (most grids already stack at <=1024) ---- */
@media (max-width:600px){
  .topbar .wrap{height:auto;min-height:62px;padding:8px 16px;gap:10px;}
  .topbar .brand .bt-name,.gd-prof .brand .nm{font-size:14px;}
  .topbar .brand .bt-sub,.topbar .brand .bt-beacon,.gd-prof .brand .sb,.gd-prof .brand .bc{display:none;}
  .gd-prof .phead h1{font-size:26px;}
  .gd-prof .svcgrid{grid-template-columns:1fr 1fr;}
  .gd-home .hero h1,.gd-dir .hero h1,.gd-ev .hero h1{font-size:30px !important;}
  .gd-statemap-section .gdsm-head h2{font-size:22px;}
  /* keep wide rows from overflowing */
  .gd-prof .tabs,.gd-dir .pills{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  /* directory: stack cards over map */
  .gd-dir .grid2{grid-template-columns:1fr !important;}
}

/* Safety: never allow horizontal overflow of the page body from branded sections */
.gd-prof,.gd-home,.gd-dir,.gd-ev,.gd-ac,.gd-involve,.gd-statemap-section{max-width:100%;overflow-x:hidden;}
