/* Shared header and footer details; page-specific layout stays in existing styles. */
.nav .my-menu-group{display:grid;grid-template-columns:auto auto;column-gap:18px;align-items:start;}
.nav .my-menu-label{display:block;color:inherit;white-space:nowrap;}
.nav .my-menu-links{display:flex;flex-direction:column;align-items:flex-start;}
.nav .my-menu-links a{white-space:nowrap;}
.host-topbar > .brand{display:inline-flex;align-items:center;text-decoration:none;}
.host-topbar > .brand .brand-logo{display:block;height:38px;width:auto;}
.site-footer .footer-social{flex-wrap:wrap;}
.site-footer .footer-social .social-link{flex:0 0 30px;box-sizing:border-box;}
.site-footer .social-envelope{display:block;position:relative;width:16px;height:11px;border:1.5px solid currentColor;border-radius:2px;box-sizing:border-box;overflow:hidden;}
.site-footer .social-envelope::before{content:"";position:absolute;width:10px;height:10px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;left:1.5px;top:-6px;transform:rotate(45deg);}

/* Cameras / Live — desktop */
.nav > .nav-links > a{font-size:16px;}

/* Mobile landscape */
@media (max-width:950px) and (orientation:landscape){
  .nav > .nav-links > a{font-size:14px;}
}

/* Mobile portrait */
@media (max-width:950px) and (orientation:portrait){
  .nav > .nav-links > a{font-size:13px;}
  .nav > .nav-links{gap:10px;}
}

/* Narrow mobile portrait */
@media (max-width:409px) and (orientation:portrait){
  .nav > .nav-links > a{font-size:12px;}
  .nav > .nav-links{gap:9px;}
}

/* Burger position — desktop only */
@media (min-width:951px) and (pointer:fine){
  .nav > .menu-wrap{transform:translateY(5px);}
}