/* R382 - Stadt NexVerse public header. The Go template owns labels and routes.
   This layer intentionally never styles citizen/admin sidebars. */
body[data-section="public"] .nv-home-header {
  min-height:72px;
  background:linear-gradient(110deg,rgba(2,13,29,.97),rgba(4,26,47,.95) 53%,rgba(8,22,43,.97));
  border-bottom:1px solid rgba(73,174,226,.42);
  box-shadow:0 10px 34px rgba(0,0,0,.32),inset 0 -1px rgba(103,216,255,.06);
  backdrop-filter:blur(22px);
}
body[data-section="public"] .nv-home-header:before {
  content:"";pointer-events:none;position:absolute;left:12%;right:12%;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(66,215,252,.7),rgba(97,110,255,.38),transparent);
}
body[data-section="public"] .nv-home-header .nv-home-container {
  display:flex;align-items:center;flex-wrap:wrap;
  width:min(calc(100% - 36px),3060px);min-height:72px;gap:12px;
}
body[data-section="public"] .nv-home-header .nv-home-brand {
  flex:0 0 auto;margin-right:clamp(8px,1vw,22px);height:70px;
}
body[data-section="public"] .nv-home-header .nv-home-brand img {
  display:block;width:clamp(178px,10.6vw,214px);height:58px;max-height:58px;
  object-fit:contain;object-position:left center;background:transparent!important;
  filter:drop-shadow(0 0 8px rgba(24,167,238,.2));
}
body[data-section="public"] .nv-home-header .navbar-collapse {display:flex;flex:1;min-width:0;align-items:center}
body[data-section="public"] .nv-home-header .nv-home-nav {
  display:flex;height:auto;min-width:0;align-items:center;gap:clamp(2px,.3vw,7px);
  padding:5px;border:1px solid rgba(80,155,205,.23);border-radius:16px;
  background:linear-gradient(180deg,rgba(13,47,71,.48),rgba(4,21,39,.4));
}
body[data-section="public"] .nv-home-header .nv-home-nav .nv-nav-entry {
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  gap:7px;min-height:42px;border:1px solid transparent;border-radius:11px;
  padding:6px clamp(5px,.55vw,12px)!important;
  background:transparent;color:#cfe4f3!important;
  font-size:clamp(12px,.75vw,14px);font-weight:670;line-height:1.25;
  text-decoration:none;white-space:nowrap;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}
body[data-section="public"] .nv-home-header .nv-nav-entry > i {
  display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;
  border-radius:8px;color:#88d8f5;font-size:15px;
  background:rgba(45,144,196,.11);border:1px solid rgba(94,191,237,.12);
}
body[data-section="public"] .nv-home-header .nv-nav-entry .nv-nav-label {white-space:nowrap}
body[data-section="public"] .nv-home-header .nv-nav-entry:hover,
body[data-section="public"] .nv-home-header .nv-nav-entry:focus-visible {
  background:rgba(28,110,157,.26)!important;color:#fff!important;
  border-color:rgba(87,192,237,.45);box-shadow:0 0 20px rgba(7,156,232,.13);
}
body[data-section="public"] .nv-home-header .nv-nav-entry:hover > i,
body[data-section="public"] .nv-home-header .nv-nav-entry:focus-visible > i {
  color:#fff;background:rgba(29,164,217,.3);
}
body[data-section="public"] .nv-home-header .nv-nav-entry.active {
  color:#f8feff!important;border-color:rgba(73,213,247,.63);
  background:linear-gradient(120deg,rgba(10,106,162,.52),rgba(37,83,142,.27))!important;
  box-shadow:inset 0 0 14px rgba(18,171,239,.08),0 0 18px rgba(10,172,243,.18);
}
body[data-section="public"] .nv-home-header .nv-nav-entry.active > i {
  color:#e6fdff;border-color:rgba(113,222,252,.41);
  background:linear-gradient(135deg,rgba(17,158,211,.65),rgba(39,93,171,.45));
}
/* R392 – recognizable official WhatsApp channel, alongside the primary links. */
body[data-section="public"] .nv-home-header .nv-nav-whatsapp {
  border-color:rgba(37,211,102,.44);
  background:linear-gradient(125deg,rgba(21,130,65,.22),rgba(6,73,44,.15));
  color:#e2ffeb!important;
  gap:8px;
}
body[data-section="public"] .nv-home-header .nv-nav-whatsapp > i {
  color:#44ee91;border-color:rgba(37,211,102,.33);
  background:rgba(37,211,102,.13);
  font-size:18px;
}
body[data-section="public"] .nv-home-header .nv-whatsapp-text {
  display:flex;flex-direction:column;gap:1px;align-items:flex-start;
}
body[data-section="public"] .nv-home-header .nv-whatsapp-service {
  font-size:10px;font-weight:720;letter-spacing:.045em;line-height:1.1;
  color:#78f6a6;
}
body[data-section="public"] .nv-home-header .nv-nav-whatsapp:hover,
body[data-section="public"] .nv-home-header .nv-nav-whatsapp:focus-visible {
  border-color:rgba(37,211,102,.88);
  background:rgba(24,129,72,.42)!important;
  box-shadow:0 0 19px rgba(37,211,102,.18);
}
body[data-section="public"] .nv-home-header .nv-nav-whatsapp:hover > i,
body[data-section="public"] .nv-home-header .nv-nav-whatsapp:focus-visible > i {
  color:#fff;background:rgba(37,211,102,.34);
}
body[data-section="public"] .nv-home-header .nv-nav-whatsapp:is(:hover,:focus-visible) .nv-whatsapp-service {color:#d0ffdf}
body[data-section="public"] .nv-home-header .nv-nav-entry.active:after {content:none!important}
body[data-section="public"] .nv-home-header .nv-home-more {position:relative;align-items:center}
body[data-section="public"] .nv-home-header .nv-home-more-menu:not(.show) {display:none}
body[data-section="public"] .nv-home-header .nv-language-menu:not(.show) {display:none}
body[data-section="public"] .nv-home-header .nv-home-more > button {width:100%;font-family:inherit}
body[data-section="public"] .nv-home-header .nv-home-more > button.dropdown-toggle:after {
  border:0;content:"";height:6px;width:6px;flex:0 0 6px;margin:0 0 4px 1px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);
}
body[data-section="public"] .nv-home-header .nv-home-more-menu {
  position:absolute;right:0;left:auto;top:100%;min-width:258px;margin-top:8px;padding:9px;border:1px solid rgba(76,181,224,.48);
  border-radius:13px;background:linear-gradient(145deg,#061b31,#0a2a42);
  box-shadow:0 18px 46px rgba(0,0,0,.54),0 0 30px rgba(19,153,221,.12);
}
body[data-section="public"] .nv-home-header .nv-home-more-menu .dropdown-item {
  min-height:39px;border-radius:9px;gap:12px;font-size:13px;font-weight:630;
}
body[data-section="public"] .nv-home-header .nv-home-more-menu .dropdown-item > i {
  width:24px;display:grid;place-items:center;font-size:16px;color:#80d7f5;
}
body[data-section="public"] .nv-home-header .nv-home-more-menu .dropdown-item:hover,
body[data-section="public"] .nv-home-header .nv-home-more-menu .dropdown-item:focus-visible {
  background:#17648a;color:#fff;
}
body[data-section="public"] .nv-home-header .nv-home-more-menu .dropdown-item:hover > i {color:#fff}
body[data-section="public"] .nv-home-header .nv-home-more-menu .dropdown-item.active {
  background:rgba(19,123,166,.38);color:#e7faff;border:1px solid rgba(85,209,243,.34);
}
body[data-section="public"] .nv-home-header .nv-home-more-menu .dropdown-item.active > i {color:#9af0ff}
body[data-section="public"] .nv-home-header .nv-home-tools {margin-left:clamp(7px,1vw,20px);gap:9px}
body[data-section="public"] .nv-home-header .nv-icon-button,
body[data-section="public"] .nv-home-header .nv-lang-button {
  border:1px solid rgba(99,168,205,.29);border-radius:11px;
  background:rgba(11,49,75,.5);color:#d9f5ff;min-height:42px;
}
body[data-section="public"] .nv-home-header .nv-icon-button:hover,
body[data-section="public"] .nv-home-header .nv-lang-button:hover {
  border-color:rgba(109,216,251,.75);background:rgba(27,111,151,.44);color:#fff;
}
body[data-section="public"] .nv-home-header .nv-lang-button {padding-inline:10px;font-size:13px}
body[data-section="public"] .nv-home-header :is(.nav-link,.dropdown-item,button):focus-visible {
  outline:2px solid #8defff;outline-offset:3px;
}
body[data-section="public"] .nv-public-menu-toggle {
  display:none;align-items:center;gap:7px;border:1px solid rgba(98,195,231,.43);border-radius:11px;
  padding:7px 12px;min-height:43px;background:rgba(5,51,79,.74);color:#effaff;
  font-size:13px;font-weight:700;
}
body[data-section="public"] .nv-public-menu-toggle > i {font-size:22px;line-height:1}
@media(max-width:1399.98px) {
  body[data-section="public"] .nv-home-header {height:auto;min-height:70px}
  body[data-section="public"] .nv-home-header .nv-home-container {min-height:70px}
  body[data-section="public"] .nv-home-header .nv-home-brand {height:70px}
  body[data-section="public"] .nv-home-header .nv-home-brand img {width:clamp(172px,21vw,210px);height:58px}
  body[data-section="public"] .nv-public-menu-toggle {display:inline-flex;margin-left:auto}
  body[data-section="public"] .nv-home-header .navbar-collapse:not(.show) {display:none}
  body[data-section="public"] .nv-home-header .navbar-collapse.show {display:block}
  body[data-section="public"] .nv-home-header .navbar-collapse {
    flex-basis:100%;width:100%;max-height:min(78svh,730px);overflow-y:auto;
    padding:12px;margin:0 0 12px;border:1px solid rgba(80,170,209,.37);
    border-radius:16px;background:linear-gradient(140deg,rgba(4,23,43,.99),rgba(7,37,61,.99));
    box-shadow:0 24px 50px rgba(0,0,0,.46);
  }
  body[data-section="public"] .nv-home-header .nv-home-nav {
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;margin:0!important;padding:7px;gap:7px;border:0;
    background:transparent;
  }
  body[data-section="public"] .nv-home-header .nv-home-nav .nv-nav-entry {
    display:flex;justify-content:flex-start;min-width:0;width:100%;
    min-height:45px;padding:8px 12px!important;font-size:13px;
    white-space:normal;
  }
  body[data-section="public"] .nv-home-header .nv-nav-entry .nv-nav-label {white-space:normal}
  body[data-section="public"] .nv-home-header .nv-home-more {display:block;min-width:0}
  body[data-section="public"] .nv-home-header .nv-home-more-menu {
    position:static!important;float:none;transform:none!important;
    width:100%;min-width:0;max-width:100%;margin:7px 0 0;box-shadow:none;
  }
  body[data-section="public"] .nv-home-header .nv-home-tools {
    padding:12px 10px 2px;margin:5px 7px 0;border-top:1px solid rgba(99,183,219,.23);
  }
  body[data-section="public"] .nv-home-header .nv-home-tools .nv-nav-search {min-width:0}
  body[data-section="public"] .nv-home-header .nv-home-tools .nv-nav-search-box {max-width:100%}
}
@media(min-width:900px) and (max-width:1399.98px) {
  body[data-section="public"] .nv-home-header .nv-home-nav {grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:559.98px) {
  body[data-section="public"] .nv-home-header .nv-home-container {width:calc(100% - 20px);gap:4px}
  body[data-section="public"] .nv-home-header .nv-home-brand img {width:clamp(162px,43vw,186px);height:56px}
  body[data-section="public"] .nv-home-header .nv-home-nav {grid-template-columns:1fr}
  body[data-section="public"] .nv-home-header .nv-home-nav .nv-nav-entry {min-height:43px;font-size:13px}
}
@media(prefers-reduced-motion:reduce) {
  body[data-section="public"] .nv-home-header .nv-nav-entry {transition:none}
}

/* R384: searchable public route index and accessible keyboard highlighting. */
body[data-section="public"] .nv-home-header #publicNavSearch {min-width:0}
body[data-section="public"] .nv-home-header .nv-nav-search-box {max-width:min(100%,390px)}
body[data-section="public"] .nv-home-header .nv-nav-search-box input {min-width:0}
body[data-section="public"] .nv-home-header .nv-nav-search-results {
  max-height:min(56svh,460px);overflow-y:auto;overscroll-behavior:contain;
  border:1px solid rgba(87,186,229,.53);border-radius:12px;
  background:linear-gradient(160deg,#071a2b,#0b2b43);
  box-shadow:0 22px 52px rgba(0,0,0,.6),0 0 20px rgba(16,166,222,.12);
}
body[data-section="public"] .nv-home-header .nv-nav-search-result {
  border:1px solid transparent;border-radius:9px;outline:none;
}
body[data-section="public"] .nv-home-header .nv-nav-search-result:is(.is-active,:hover,:focus-visible) {
  color:#fff;background:rgba(33,125,168,.52);border-color:rgba(113,225,246,.55);
}
body[data-section="public"] .nv-home-header .nv-nav-search-result:is(.is-active,:focus-visible) > i {
  background:rgba(31,154,198,.45);color:#fff;
}
body[data-section="public"] .nv-home-header #publicSearchInput:focus-visible {
  outline:2px solid rgba(115,230,254,.85);outline-offset:2px;border-radius:5px;
}
@media(max-width:1399.98px) {
  body[data-section="public"] .nv-home-header .nv-nav-search-box {width:min(100%,420px)}
  body[data-section="public"] .nv-home-header #publicNavSearch {max-width:100%;flex:1}
}
@media(max-width:559.98px) {
  body[data-section="public"] .nv-home-header .nv-home-tools {flex-wrap:wrap}
  body[data-section="public"] .nv-home-header .nv-nav-search-results {left:0;right:0;max-height:min(48svh,370px)}
}

/* R431: the additional Mitmachen entry must never push the Explore dropdown
   or the search/language controls off the header at narrow desktop widths. */
@media(min-width:1400px) and (max-width:1699.98px){
 body[data-section="public"] .nv-home-header .nv-home-container{
  width:calc(100% - 16px);gap:4px;
 }
 body[data-section="public"] .nv-home-header .nv-home-brand{
  margin-right:4px;
 }
 body[data-section="public"] .nv-home-header .nv-home-brand img{
  width:170px;
 }
 body[data-section="public"] .nv-home-header .nv-home-nav{
  gap:1px;padding:3px;border-radius:12px;
 }
 body[data-section="public"] .nv-home-header .nv-home-nav .nv-nav-entry{
  gap:3px;padding:5px 4px!important;font-size:11.5px;
 }
 body[data-section="public"] .nv-home-header .nv-home-nav .nv-nav-entry > i{
  flex-basis:19px;width:19px;height:23px;font-size:13px;border-radius:6px;
 }
 body[data-section="public"] .nv-home-header .nv-home-tools{
  margin-left:3px;gap:5px;
 }
 body[data-section="public"] .nv-home-header .nv-whatsapp-service{
  display:none;
 }
}
