/* QUDWATT V11 — single isolated header system for every page */
:root{
  --qwh-bg:#0A1512;
  --qwh-band:29px;
  --qwh-nav:92px;
  --qwh-stack:121px;
  --qwh-ink:#F4F1E8;
  --qwh-text:#D4DDD8;
  --qwh-muted:#A8B5AE;
  --qwh-gold:#D5A34A;
  --qwh-gold-dark:#AD7115;
  --qwh-line:rgba(255,255,255,.12);
  --qw-nav:92px;
  --qw-stack:121px;
}
html{scroll-padding-top:var(--qwh-stack)!important}
body{
  padding-top:var(--qwh-stack)!important;
}
body.qw-production main{
  padding-top:0!important;
}

/* The old header/prototype is physically removed from the DOM.
   These unique qwh-* classes are intentionally immune to legacy page CSS. */
.qwh-prototype{
  position:fixed;
  z-index:3001;
  top:0; left:0; right:0;
  height:var(--qwh-band);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 16px;
  overflow:hidden;
  background:#07100E;
  border-bottom:1px solid rgba(255,255,255,.07);
  color:#95A29B;
  font:500 .62rem/1.2 "IBM Plex Sans",Inter,system-ui,sans-serif;
  letter-spacing:.02em;
  text-align:center;
  white-space:nowrap;
}
.qwh-proto-short{display:none}

.qwh-header{
  position:fixed;
  z-index:3000;
  top:var(--qwh-band);
  left:0; right:0;
  height:var(--qwh-nav);
  min-height:var(--qwh-nav);
  background:rgba(10,21,18,.965);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  border:0;
}
.qwh-header::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:1px;
  background:rgba(255,255,255,.15);
}
.qwh-wrap{
  width:min(1360px,calc(100% - 56px));
  height:100%;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:24px;
  min-width:0;
}
.qwh-brand{
  width:218px;
  height:100%;
  flex:0 0 218px;
  display:flex;
  align-items:center;
  text-decoration:none;
  overflow:visible;
}
.qwh-brand img{
  display:block;
  width:auto;
  height:82px;
  max-width:218px;
  object-fit:contain;
  background:transparent;
}
.qwh-menu{
  height:100%;
  min-width:0;
  display:flex;
  align-items:center;
  gap:24px;
  margin-left:6px;
}
.qwh-menu a{
  height:100%;
  display:inline-flex;
  align-items:center;
  padding:0;
  border-bottom:2px solid transparent;
  color:var(--qwh-text);
  text-decoration:none;
  white-space:nowrap;
  font:500 .82rem/1 "IBM Plex Sans",Inter,system-ui,sans-serif;
}
.qwh-menu a:hover,
.qwh-menu a.is-active{
  color:#FFF8EA;
  border-bottom-color:var(--qwh-gold);
}
.qwh-menu-contact{display:none!important}
.qwh-tools{
  margin-left:auto;
  flex:none;
  display:flex;
  align-items:center;
  gap:11px;
}
.qwh-langs{
  display:flex;
  padding:3px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:999px;
  background:rgba(255,255,255,.025);
}
.qwh-langs a{
  min-width:32px;
  height:29px;
  display:grid;
  place-items:center;
  padding:0 7px;
  border-radius:999px;
  color:var(--qwh-muted);
  text-decoration:none;
  font:600 .65rem/1 "IBM Plex Sans",Inter,system-ui,sans-serif;
}
.qwh-langs a.is-current{
  background:#C88418;
  color:#09120F;
}
.qwh-contact{
  min-height:42px;
  display:flex;
  align-items:center;
  padding:0 2px;
  color:var(--qwh-text);
  text-decoration:none;
  white-space:nowrap;
  font:500 .8rem/1 "IBM Plex Sans",Inter,system-ui,sans-serif;
}
.qwh-contact:hover,
.qwh-contact.is-active{color:var(--qwh-gold)}
.qwh-hamb{
  display:none;
  position:relative;
  width:40px;
  height:40px;
  flex:0 0 40px;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}
.qwh-hamb::before,
.qwh-hamb::after,
.qwh-hamb span{
  content:"";
  position:absolute;
  left:8px; right:8px;
  height:1.5px;
  border-radius:2px;
  background:var(--qwh-ink);
  transition:transform .22s ease,opacity .18s ease;
}
.qwh-hamb::before{top:12px}
.qwh-hamb span{top:19px}
.qwh-hamb::after{top:26px}
.qwh-hamb.is-open::before{transform:translateY(7px) rotate(45deg)}
.qwh-hamb.is-open::after{transform:translateY(-7px) rotate(-45deg)}
.qwh-hamb.is-open span{opacity:0}
.qwh-hamb:focus-visible,
.qwh-menu a:focus-visible,
.qwh-contact:focus-visible,
.qwh-langs a:focus-visible{
  outline:2px solid rgba(213,163,74,.85);
  outline-offset:3px;
}

/* Intermediate desktop: same component, tighter rhythm */
@media(max-width:1180px){
  .qwh-wrap{gap:16px}
  .qwh-brand{width:184px;flex-basis:184px}
  .qwh-brand img{height:72px;max-width:184px}
  .qwh-menu{gap:16px;margin-left:0}
  .qwh-menu a{font-size:.76rem}
  .qwh-tools{gap:8px}
}

/* Mobile/tablet: single identical dropdown implementation on every page */
@media(max-width:1050px){
  :root{
    --qwh-nav:70px;
    --qwh-stack:99px;
    --qw-nav:70px;
    --qw-stack:99px;
  }
  .qwh-wrap{width:calc(100% - 34px);gap:8px}
  .qwh-brand{width:160px;flex-basis:160px}
  .qwh-brand img{height:62px;max-width:160px}
  .qwh-menu{
    display:none;
    position:absolute;
    top:var(--qwh-nav);
    left:0; right:0;
    height:auto;
    min-height:0;
    margin:0;
    padding:10px max(18px,calc((100vw - min(1360px,100vw - 34px))/2)) 16px;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    background:#0A1512;
    border-bottom:1px solid var(--qwh-line);
    box-shadow:0 18px 32px rgba(0,0,0,.22);
  }
  .qwh-menu.is-open{display:flex}
  .qwh-menu a{
    width:100%;
    min-height:45px;
    height:auto;
    border-bottom:1px solid rgba(255,255,255,.07);
    font-size:.84rem;
  }
  .qwh-menu a.is-active{
    color:var(--qwh-gold);
    border-bottom-color:rgba(255,255,255,.07);
  }
  .qwh-menu-contact{display:flex!important}
  .qwh-hamb{display:block}
}

@media(max-width:620px){
  :root{
    --qwh-nav:64px;
    --qwh-stack:93px;
    --qw-nav:64px;
    --qw-stack:93px;
  }
  .qwh-prototype{
    padding:0 8px;
    font-size:.55rem;
  }
  .qwh-proto-full{display:none}
  .qwh-proto-short{display:inline}
  .qwh-wrap{width:calc(100% - 28px);gap:6px}
  .qwh-brand{width:132px;flex-basis:132px}
  .qwh-brand img{height:52px;max-width:132px}
  .qwh-contact{font-size:.7rem}
  .qwh-langs a{min-width:29px;height:27px;padding:0 5px;font-size:.6rem}
}

@media(max-width:430px){
  .qwh-contact{display:none}
  .qwh-brand{width:132px;flex-basis:132px}
  .qwh-tools{gap:5px}
}
@media(max-width:350px){
  .qwh-wrap{width:calc(100% - 20px)}
  .qwh-brand{width:118px;flex-basis:118px}
  .qwh-brand img{height:48px;max-width:118px}
}
