/* Shared navigation and footer shell. Page-specific visual styles remain in each HTML file. */
.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(4,12,28,.94);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(0,216,255,.18);
}
.site-header .nav{
  max-width:1220px;
  margin:0 auto;
  padding:14px 24px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:22px;
}
.site-header .logo{display:inline-flex;align-items:center;justify-self:start;}
.site-header .logo img{
  width:58px;
  height:58px;
  object-fit:contain;
  margin:0;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.site-header .menu{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  margin:0;
  padding:0;
  background:none;
  border:0;
  position:static;
}
.site-header .menu a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:rgba(255,255,255,.9);
  font-size:14px;
  font-weight:900;
  letter-spacing:.03em;
  text-decoration:none;
}
.site-header .menu a:hover,
.site-header .menu a.active{color:#00d8ff;}
.site-controls{display:flex;align-items:center;gap:10px;justify-self:end;}
.language-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.language-select{
  min-height:42px;
  padding:0 34px 0 12px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  background:#0b244d;
  color:#fff;
  font:800 13px 'Nunito',Arial,sans-serif;
  cursor:pointer;
}
.menu-toggle{
  display:none;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  background:rgba(255,255,255,.06);
  color:#fff;
  cursor:pointer;
  align-items:center;
  justify-content:center;
}
.menu-toggle-lines,
.menu-toggle-lines::before,
.menu-toggle-lines::after{
  display:block;
  width:22px;
  height:2px;
  border-radius:2px;
  background:currentColor;
  content:"";
  transition:transform .2s ease,opacity .2s ease;
}
.menu-toggle-lines{position:relative;}
.menu-toggle-lines::before{position:absolute;top:-7px;left:0;}
.menu-toggle-lines::after{position:absolute;top:7px;left:0;}
.menu-toggle[aria-expanded="true"] .menu-toggle-lines{background:transparent;}
.menu-toggle[aria-expanded="true"] .menu-toggle-lines::before{transform:translateY(7px) rotate(45deg);}
.menu-toggle[aria-expanded="true"] .menu-toggle-lines::after{transform:translateY(-7px) rotate(-45deg);}
.site-header a:focus-visible,
.site-footer a:focus-visible,
.menu-toggle:focus-visible,
.language-select:focus-visible{outline:3px solid #ffd336;outline-offset:3px;}
.site-page .page-hero{padding-top:4rem;}

.site-footer{
  position:relative;
  z-index:1;
  margin-top:45px;
  padding:0;
  text-align:left;
  background:rgba(0,0,0,.28);
  border-top:1px solid rgba(255,255,255,.12);
}
.site-footer .footer-inner{
  max-width:1160px;
  margin:0 auto;
  padding:36px 24px;
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr 1fr;
  gap:28px;
}
.site-footer .footer-logo{display:block;margin:0;text-align:inherit;}
.site-footer .footer-logo img{width:64px;height:64px;object-fit:contain;margin:0 0 14px;border:0;border-radius:0;box-shadow:none;}
.site-footer h4{color:#00dfff;margin:0 0 12px;font-weight:900;}
.site-footer a,.site-footer p{display:block;color:rgba(255,255,255,.72);margin:7px 0;text-decoration:none;font-size:14px;}
.site-footer a:hover{color:#00d8ff;}
.site-footer .socials{display:flex;gap:12px;margin:10px 0 14px;}
.site-footer .socials a{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);}
.site-footer .socials i{font-size:22px;}
.site-footer .socials img{width:22px;height:22px;object-fit:contain;margin:0;filter:invert(1);border:0;box-shadow:none;}

html[dir="rtl"] .site-header .nav{direction:rtl;}
html[dir="rtl"] .site-footer{text-align:right;}
html[dir="rtl"] .site-footer .socials{justify-content:flex-start;}

@media(max-width:900px){
  .site-header .nav{grid-template-columns:auto 1fr auto;gap:12px;padding:10px 16px;}
  .site-controls{grid-column:3;grid-row:1;}
  .menu-toggle{display:inline-flex;}
  .site-header .menu{
    display:none;
    grid-column:1/-1;
    grid-row:2;
    flex-direction:column;
    align-items:stretch;
    gap:2px;
    padding:10px 0 4px;
    border-top:1px solid rgba(255,255,255,.1);
  }
  .site-header .menu.is-open{display:flex;}
  .site-header .menu a{justify-content:center;border-radius:8px;}
  .site-header .menu a:hover,.site-header .menu a.active{background:rgba(0,216,255,.08);}
  .site-footer .footer-inner{grid-template-columns:1fr;text-align:center;}
  .site-footer .footer-logo img{margin-left:auto;margin-right:auto;}
  .site-footer .socials{justify-content:center;}
  html[dir="rtl"] .site-footer{text-align:center;}
  html[dir="rtl"] .site-footer .socials{justify-content:center;}
}
@media(max-width:520px){
  .site-header .logo img{width:50px;height:50px;}
  .language-select{max-width:118px;padding-left:9px;font-size:12px;}
  .site-page .page-hero{padding-top:3rem;}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important;}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
}
