/* NΞONMIND CORPORATE HEADER & FOOTER — exact main-site treatment */
:root {
  --text: #f1f7fb;
  --text-muted: #b4c6d3;
  --text-soft: #7f97a8;
  --line: rgba(129, 192, 220, 0.16);
  --line-strong: rgba(83, 244, 221, 0.52);
  --accent: #53f4dd;
  --accent-strong: #a2fff3;
  --blue: #8fc4ff;
  --container: 1200px;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  border-bottom: 1px solid rgba(255,255,255,.06);
  background: rgba(5, 12, 19, .78);
  backdrop-filter: blur(22px) saturate(125%);
  -webkit-backdrop-filter: blur(22px) saturate(125%);
}
.site-header::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent 8%, rgba(83,244,221,.58) 28%, rgba(143,196,255,.22) 68%, transparent 92%);
  opacity: .68;
}
.header-inner {
  width: min(calc(100% - 2rem), var(--container));
  min-height: 84px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.brand {
  display: inline-flex;
  align-items: center;
  min-width: 210px;
  line-height: 1.05;
}
.brand-lockup {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  width: auto;
  max-width: 100%;
  gap: .7rem;
}
.brand-lockup-logo {
  display: block;
  width: 42px !important;
  min-width: 42px;
  max-width: 42px !important;
  height: 42px !important;
  flex: 0 0 42px;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  filter: brightness(1.28) saturate(1.22) contrast(1.06)
          drop-shadow(0 0 10px rgba(83,244,221,.32));
}
.brand-lockup-wordmark {
  display: block;
  width: clamp(138px, 14vw, 190px) !important;
  min-width: 0;
  max-width: min(190px, calc(100vw - 125px)) !important;
  height: auto !important;
  flex: 0 1 auto;
  object-fit: contain;
  filter: brightness(1.34) saturate(1.18) contrast(1.08)
          drop-shadow(0 0 10px rgba(83,244,221,.24));
}
.main-nav {
  display: flex;
  justify-content: center;
  gap: 1.45rem;
  margin-left: auto;
}
.main-nav a {
  position: relative;
  color: var(--text-muted);
  font-size: .92rem;
  font-weight: 650;
  white-space: nowrap;
}
.main-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -.55rem;
  height: 2px;
  background: linear-gradient(90deg,var(--accent),var(--blue));
  box-shadow: 0 0 12px rgba(83,244,221,.34);
  transition: right .22s ease;
}
.main-nav a:hover,
.main-nav a:focus-visible,
.main-nav a.is-active,
.footer-list a:hover,
.footer-list a:focus-visible {
  color: var(--accent-strong);
}
.main-nav a:hover::after,
.main-nav a:focus-visible::after,
.main-nav a.is-active::after { right: 0; }
.header-cta { margin-left: .5rem; }
.button-outline {
  color: var(--text);
  border-color: rgba(83,244,221,.38);
  background: rgba(83,244,221,.065);
}

.site-footer {
  border-top: 1px solid rgba(255,255,255,.07);
  background: rgba(3,9,15,.95);
}
.footer-grid {
  width: min(calc(100% - 2rem), var(--container));
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 2rem;
  padding: 3rem 0 2rem;
}
.brand-footer { min-width: 0; margin-bottom: 1rem; }
.brand-footer .brand-lockup-logo {
  width: 36px !important;
  min-width: 36px;
  max-width: 36px !important;
  height: 36px !important;
  flex-basis: 36px;
}
.brand-footer .brand-lockup-wordmark {
  width: clamp(132px, 13vw, 178px) !important;
  max-width: 178px !important;
}
.footer-copy { max-width: 35ch; }
.site-footer h3 { margin: 0 0 .7rem; font-size: 1.08rem; color: var(--text); }
.site-footer p, .footer-list li { margin: 0; color: var(--text-muted); }
.footer-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.footer-meta {
  width: min(calc(100% - 2rem), var(--container));
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  padding: 0 0 2rem;
  color: var(--text-soft);
  font-size: .9rem;
}
.footer-meta a { color: var(--accent-strong); }
.footer-muted { color: var(--text-soft); }

@media (max-width: 1050px) {
  .main-nav { order: 3; width: 100%; justify-content: flex-start; padding-bottom: .9rem; overflow-x: auto; }
  .header-inner { flex-wrap: wrap; padding-top: .9rem; }
  .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .header-inner { gap: .8rem; }
  .brand { min-width: 0; }
  .brand-lockup { gap: .55rem; }
  .brand-lockup-logo {
    width: 29px !important;
    min-width: 29px;
    max-width: 29px !important;
    height: 29px !important;
    flex-basis: 29px;
  }
  .brand-lockup-wordmark {
    width: clamp(125px, 35vw, 160px) !important;
    max-width: calc(100vw - 150px) !important;
  }
  .header-cta { margin-left: auto; min-height: 42px; padding: .65rem .9rem; font-size: .82rem; }
  .main-nav { gap: 1rem; font-size: .86rem; }
  .footer-grid { grid-template-columns: 1fr; }
}
@media (max-width: 420px) {
  .brand-lockup-logo {
    width: 27px !important;
    min-width: 27px;
    max-width: 27px !important;
    height: 27px !important;
    flex-basis: 27px;
  }
  .brand-lockup-wordmark {
    width: clamp(118px, 38vw, 148px) !important;
    max-width: calc(100vw - 138px) !important;
  }
}
