/* ============================================================
   HEADER — brand · dock · cta
============================================================ */
.head{
  position:fixed;top:0;left:0;right:0;z-index:50;
  height:var(--header-h);
  display:grid;grid-template-columns:auto 1fr auto;
  align-items:center;gap:1rem;
  padding:0 var(--pad-x);
  background:var(--bg-glass);
  backdrop-filter:blur(20px) saturate(150%);
  -webkit-backdrop-filter:blur(20px) saturate(150%);
  border-bottom:1px solid var(--line);
}

.brand{
  display:inline-flex;align-items:center;gap:.65rem;color:var(--t);
  position:relative;padding:.15rem 0;
  transition:opacity .25s var(--e);
}
.brand:hover{opacity:.85}
.brand:hover .brand-mark::after{transform:translate(-50%,-50%) scale(1.15);opacity:.9}

.brand-mark{
  width:32px;height:32px;
  display:grid;place-items:center;
  background:
    radial-gradient(circle at 30% 20%, rgba(197,240,43,.18), transparent 60%),
    linear-gradient(145deg, #14161B 0%, #0A0B0F 100%);
  border:1px solid rgba(197,240,43,.28);
  border-radius:9px;
  position:relative;overflow:hidden;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.4) inset,
    0 1px 0 rgba(255,255,255,.04) inset,
    0 6px 16px -8px rgba(197,240,43,.35);
}
.brand-mark svg{
  width:19px;height:19px;color:var(--lime);position:relative;z-index:2;
  filter:drop-shadow(0 0 5px rgba(197,240,43,.55));
}
.brand-mark::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 50% 115%, rgba(197,240,43,.4), transparent 55%);
  opacity:.6;z-index:1;
}
.brand-mark::after{
  content:"";position:absolute;
  top:50%;left:50%;width:140%;height:140%;
  transform:translate(-50%,-50%) scale(1);
  background:conic-gradient(from 220deg, transparent 0deg, rgba(197,240,43,.1) 60deg, transparent 120deg);
  opacity:.7;z-index:1;
  transition:transform .6s var(--e), opacity .4s var(--e);
  animation:brandShimmer 8s linear infinite;
}
@keyframes brandShimmer{to{transform:translate(-50%,-50%) rotate(360deg)}}

.brand-text{
  display:inline-flex;align-items:baseline;gap:.42rem;line-height:1;
  font-family:var(--f-display);
  font-size:1.08rem;
  letter-spacing:-.04em;
}
.brand-text .word{
  display:inline-flex;align-items:baseline;
}
.brand-text .my{
  font-weight:300;color:var(--t-soft);
  letter-spacing:-.04em;
  font-style:italic;
}
.brand-text .office{
  font-weight:600;color:var(--t);
  letter-spacing:-.04em;
}
.brand-text .os{
  font-weight:800;color:var(--lime);
  letter-spacing:-.03em;
  margin-left:.08em;
  position:relative;
  text-shadow:0 0 14px rgba(197,240,43,.45);
}
.brand-text .os::after{
  content:"";position:absolute;
  left:-.05em;right:-.05em;bottom:-.18em;
  height:2px;
  background:linear-gradient(90deg, transparent, var(--lime), transparent);
  opacity:.7;
}
.brand-text .v{
  font-family:var(--f-mono);font-size:.46rem;
  color:var(--t-mute);letter-spacing:.18em;
  padding:.18rem .38rem;
  background:transparent;
  border:1px solid var(--line);
  border-radius:3px;font-weight:500;
  text-transform:uppercase;
  align-self:center;
  margin-left:.15rem;
  transition:color .25s var(--e), border-color .25s var(--e);
}
.brand:hover .brand-text .v{color:var(--lime);border-color:rgba(197,240,43,.3)}

/* DOCK */
.dock{
  justify-self:center;
  display:inline-flex;gap:.18rem;
  padding:.28rem;
  background:var(--bg-1);
  border:1px solid var(--line);
  border-radius:99px;
  position:relative;
}
.dock-btn{
  position:relative;
  width:38px;height:38px;
  display:grid;place-items:center;border-radius:99px;
  color:var(--t-mute);
  transition:color .25s var(--e), background .25s var(--e), transform .25s var(--e);
}
.dock-btn svg{width:18px;height:18px;stroke-width:1.8;transition:transform .3s var(--e)}
.dock-btn:hover{color:var(--t);background:var(--bg-2)}
.dock-btn:hover svg{transform:scale(1.08)}
.dock-btn[aria-current="true"]{
  color:var(--bg);background:var(--lime);
  box-shadow:0 0 18px var(--lime-glow);
}
.dock-btn[aria-current="true"] svg{stroke-width:2.2}

/* tooltip on hover */
.dock-btn .tip{
  position:absolute;top:calc(100% + .5rem);left:50%;transform:translateX(-50%);
  background:var(--bg-2);color:var(--t);
  border:1px solid var(--line-2);
  padding:.28rem .55rem;border-radius:6px;
  font-family:var(--f-mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;
  white-space:nowrap;pointer-events:none;opacity:0;
  transition:opacity .2s var(--e), transform .2s var(--e);
}
.dock-btn:hover .tip{opacity:1;transform:translateX(-50%) translateY(2px)}
.dock-btn[aria-current="true"] .tip{display:none}
.dock-btn .kbd{
  position:absolute;top:-.3rem;right:-.3rem;
  font-family:var(--f-mono);font-size:.5rem;font-weight:700;
  background:var(--bg-3);color:var(--t-mute);
  width:1.05rem;height:1.05rem;border-radius:50%;
  display:grid;place-items:center;
  border:1px solid var(--line);
  opacity:0;transition:opacity .2s var(--e);
}
.dock-btn:hover .kbd{opacity:1}

/* HEADER CTAS */
.head-cta{display:inline-flex;align-items:center;gap:.4rem}
.btn{
  display:inline-flex;align-items:center;gap:.45rem;
  padding:.5rem .9rem;
  font-size:.78rem;font-weight:500;letter-spacing:-.005em;
  border:1px solid var(--line-2);color:var(--t);
  background:var(--bg-1);
  border-radius:99px;
  transition:background .25s var(--e), border-color .25s var(--e), box-shadow .25s var(--e);
  white-space:nowrap;
}
.btn:hover{background:var(--bg-2);border-color:var(--line-3)}
.btn svg{width:12px;height:12px;transition:transform .25s var(--e)}
.btn:hover svg{transform:translateX(2px)}
.btn-lime{background:var(--lime);color:var(--bg);border-color:var(--lime);font-weight:600}
.btn-lime:hover{background:var(--lime-2);border-color:var(--lime-2);box-shadow:0 0 22px var(--lime-glow);color:var(--bg)}
.btn-ghost{background:transparent;border-color:transparent;color:var(--t-soft)}
.btn-ghost:hover{color:var(--t);background:var(--bg-1)}

/* ============================================================
   LANGUAGE DOCK BUTTON · #langDockBtn
   Text-only — shows current lang code (EN/DE).
   Click cycles. Hover lights up lime.
============================================================ */
.dock-lang{
  margin-left:.4rem;
  position:relative;
  width:auto;
  min-width:38px;
  padding:0 .55rem;
}
.dock-lang::before{
  content:"";
  position:absolute;left:-.4rem;top:50%;transform:translateY(-50%);
  width:1px;height:18px;background:var(--line-2);
  opacity:.6;
}
.dock-lang .lang-code{
  font-family:'JetBrains Mono', ui-monospace, monospace;
  font-size:.72rem;
  letter-spacing:.06em;
  font-weight:700;
  color:var(--lime);
  line-height:1;
  transition:color .25s var(--e), text-shadow .25s var(--e);
}
.dock-lang:hover{
  border-color:rgba(197,240,43,.45);
  background:rgba(197,240,43,.06);
}
.dock-lang:hover .lang-code{
  text-shadow:0 0 12px var(--lime-glow);
}

/* ============================================================
   LANGUAGE SWITCH (legacy pill — retained for fallback only)
============================================================ */
.lang-switch{display:none}

@media(max-width:880px){
  .dock-btn{width:34px;height:34px}
  .dock-btn svg{width:16px;height:16px}
  .btn{padding:.45rem .8rem;font-size:.74rem}
  .head-cta .btn-ghost{display:none}
}
@media(max-width:640px){
  .head{grid-template-columns:auto 1fr auto;gap:.4rem}
  .brand-text{display:none}
  .dock-btn{width:30px;height:30px}
  .dock-btn svg{width:14px;height:14px}
  .dock-lang{width:auto;min-width:32px;padding:0 .4rem}
  .dock-lang .lang-code{font-size:.62rem}
}
