/* Gegenereerd door tools/build_mijnoverheid.py uit layout/styles.html. Niet met de hand bewerken. */
@font-face {font-family: 'Playfair Display';
      src: url('/fonts/playfair-display.woff2') format('woff2');
      font-weight: 400 900;
      font-style: normal;
      font-display: swap;}
@font-face {font-family: 'Playfair Display';
      src: url('/fonts/playfair-display-italic.woff2') format('woff2');
      font-weight: 400 900;
      font-style: italic;
      font-display: swap;}
@font-face {font-family: 'DM Mono';
      src: url('/fonts/dm-mono.woff2') format('woff2');
      font-weight: 400 500;
      font-style: normal;
      font-display: swap;}
body > nav {position: fixed; top: 0; left: 0; right: 0; z-index: 200; display: flex; flex-wrap: nowrap; align-items: center; gap: 1.1rem; padding: 0.95rem 1.75rem; background: rgba(255,255,255,0.92); border-bottom: 1px solid var(--rule); backdrop-filter: blur(12px);}
.nav-left {flex: 0 0 auto; display: flex; align-items: center; justify-content: flex-start;}
.nav-center {flex: 1 1 auto; min-width: 0; display: flex; align-items: center; justify-content: center;}
.nav-right {flex: 0 0 auto; display: flex; align-items: center; justify-content: flex-end;}
.nav-logo {display: inline-flex; align-items: center; gap: 0.55rem; font-family: 'DM Mono', monospace; font-size: 0.72rem; letter-spacing: 0.18em; color: var(--muted); text-transform: uppercase; text-decoration: none; transition: color 0.2s; white-space: nowrap; flex-shrink: 0;}
.nav-logo:hover {color: var(--amber);}
.nav-wapen {height: 30px; width: auto; display: block; flex-shrink: 0;}
.nav-links {display: flex; align-items: center; gap: 0; list-style: none; flex-wrap: nowrap; margin: 0; padding: 0; flex-shrink: 0;}
.nav-links > li {position: relative; padding: 0 0.95rem; display: flex; align-items: center;}
.nav-links > li:last-child {padding-right: 0.4rem;}
.nav-links > li + li::before {content: ''; position: absolute; left: 0; top: 50%;
      transform: translateY(-50%);
      width: 1px; height: 12px;
      background: var(--rule);}
.nav-links a {font-family: 'DM Mono', monospace; font-size: 0.7rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-soft); text-decoration: none; transition: color 0.2s; white-space: nowrap;}
.nav-links a:hover {color: var(--amber);}
.nav-group {display: flex;
      position: relative;
      padding: 0.75rem 1.1rem 0.05rem 1.1rem !important;
      gap: 1.05rem;
      align-items: center;}
.nav-group::after {content: ''; position: absolute;
      top: 0.55rem; left: 1.1rem; right: 1.1rem;
      height: 1px; background: var(--rule);}
.nav-group-label {position: absolute; top: -0.05rem; left: 50%;
      transform: translateX(-50%);
      font-family: 'DM Mono', monospace;
      font-size: 0.52rem; letter-spacing: 0.26em;
      text-transform: uppercase; color: var(--muted);
      white-space: nowrap;
      background: rgba(255,255,255,0.92);
      padding: 0 0.55rem; line-height: 1;
      z-index: 1;}
.nav-group-link {display: inline-flex; flex-direction: column; align-items: center;
      line-height: 1.05; gap: 0.18rem;
      padding: 0.1rem 0 0.05rem;
      text-decoration: none; color: inherit;}
.nav-group-link + .nav-group-link {border-left: 1px solid var(--rule);
      padding-left: 1.05rem;}
.nav-group-name {font-family: 'DM Mono', monospace;
      font-size: 0.68rem; letter-spacing: 0.1em;
      text-transform: uppercase; color: var(--ink-soft);
      white-space: nowrap;
      transition: color 0.2s;}
.nav-group-sub {font-family: 'DM Mono', monospace;
      font-size: 0.5rem; letter-spacing: 0.18em;
      text-transform: uppercase; color: var(--muted);}
.nav-group-link:hover .nav-group-name {color: var(--amber);}
.nav-toggle {display: none; align-items: center; justify-content: center; background: none; border: 0; cursor: pointer; padding: 0.6rem; min-width: 44px; min-height: 44px; margin-left: auto; -webkit-tap-highlight-color: transparent;}
.nav-toggle-bars, .nav-toggle-bars::before, .nav-toggle-bars::after {display: block; width: 22px; height: 2px; background: var(--ink-soft); border-radius: 2px; transition: transform 0.2s ease, opacity 0.2s ease;}
.nav-toggle-bars {position: relative;}
.nav-toggle-bars::before, .nav-toggle-bars::after {content: ''; position: absolute; left: 0;}
.nav-toggle-bars::before {top: -6px;}
.nav-toggle-bars::after {top: 6px;}
body > nav.open .nav-toggle-bars {background: transparent;}
body > nav.open .nav-toggle-bars::before {top: 0; transform: rotate(45deg);}
body > nav.open .nav-toggle-bars::after {top: 0; transform: rotate(-45deg);}
@media (min-width: 1241px) and (max-width: 1440px) {
  body > nav {padding: 0.95rem 1.25rem; gap: 0.8rem;}
  .nav-links > li {padding: 0 0.65rem;}
  .nav-links a {font-size: 0.64rem; letter-spacing: 0.08em;}
  .nav-group {padding: 0.75rem 0.8rem 0.05rem 0.8rem !important; gap: 0.8rem;}
  .nav-group::after {left: 0.8rem; right: 0.8rem;}
  .nav-group-link + .nav-group-link {padding-left: 0.8rem;}
  .nav-group-name {font-size: 0.62rem; letter-spacing: 0.05em;}
  .nav-group-sub {font-size: 0.46rem; letter-spacing: 0.12em;}
  .nav-logo {font-size: 0.66rem; letter-spacing: 0.12em;}
}
@media (max-width: 1240px) {
  body > nav {flex-wrap: wrap; padding: 0.7rem 1.2rem; gap: 0.6rem;}
  .nav-left {flex: 1 1 auto;}
  .nav-toggle {display: inline-flex;}
  .nav-center, .nav-right {flex-basis: 100%; order: 3; display: none;}
  body > nav.open {background: #ffffff;}
  body > nav.open .nav-center, body > nav.open .nav-right {display: flex;}
  .nav-right {justify-content: flex-start; padding-bottom: 0.3rem;}
  .nav-links {flex-direction: column; align-items: stretch; width: 100%; gap: 0;}
  .nav-links > li {padding: 0; width: 100%;}
  .nav-links > li + li::before {display: none;}
  .nav-links > li + li {border-top: 1px solid var(--rule);}
  .nav-links a {display: block; padding: 0.85rem 0.2rem; font-size: 0.78rem; letter-spacing: 0.12em;}
  .nav-center {justify-content: flex-start;}
  .nav-group {width: 100%; flex-wrap: wrap; gap: 1.2rem; justify-content: flex-start; padding: 0.5rem 0.2rem 0.8rem !important; border-bottom: 1px solid var(--rule);}
  .nav-group::after {display: none;}
  .nav-group-label {position: static; transform: none; background: none; padding: 0; display: block; width: 100%; margin-bottom: 0.5rem; font-size: 0.5rem;}
  .nav-group-link {align-items: flex-start;}
  .nav-group-link + .nav-group-link {border-left: 0; padding-left: 0;}
  .nav-group-sub {display: inline;}
}
@media (max-width: 560px) {
  .nav-logo-text {display: none;}
  .nav-wapen {height: 26px;}
}
body > footer {background: #0a0c0f; color: rgba(255,255,255,0.78); padding: 3.5rem 3rem 2.5rem;}
.footer-inner {max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr auto; gap: 4rem; align-items: start;}
.footer-brand {max-width: 38ch;}
.footer-name {font-family: 'Inter', system-ui, sans-serif; font-size: 1.55rem; font-weight: 700; letter-spacing: -0.02em; color: #ffffff; margin-bottom: 0.5rem;}
.footer-tagline {font-size: 0.95rem; line-height: 1.5; color: rgba(255,255,255,0.7); margin: 0 0 0.3rem; font-weight: 400;}
.footer-meta {font-size: 0.82rem; color: rgba(255,255,255,0.62); line-height: 1.5; margin: 0;}
.footer-cols {display: flex; gap: 3.25rem; flex-wrap: wrap; justify-content: flex-end;}
.footer-col {display: flex; flex-direction: column; gap: 0.35rem;}
.footer-col-label {font-family: 'DM Mono', monospace; font-size: 0.6rem; letter-spacing: 0.22em; text-transform: uppercase; color: rgba(255,255,255,0.6); margin-bottom: 0.35rem;}
.footer-col a {font-family: 'Inter', system-ui, sans-serif; font-size: 0.88rem; font-weight: 500; color: rgba(255,255,255,0.82); text-decoration: none; transition: color 0.18s; padding: 0.35rem 0;}
.footer-col a:hover {color: #ffffff;}
.footer-bottom {max-width: 1100px; margin: 2.5rem auto 0; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,0.08); font-size: 0.78rem; color: rgba(255,255,255,0.6); display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; flex-wrap: wrap;}
.footer-rev {font-family: 'DM Mono', monospace; font-size: 0.66rem; letter-spacing: 0.18em; text-transform: uppercase; color: rgba(255,255,255,0.55); display: inline-flex; align-items: center; gap: 0.45rem;}
.footer-rev-mark {font-size: 0.85rem; color: rgba(255,255,255,0.6); transform: translateY(-1px);}
@media (max-width: 560px) {
  .footer-bottom {justify-content: flex-start;}
  .footer-rev {font-size: 0.6rem; letter-spacing: 0.15em;}
}
@media (max-width: 900px) {
  body > nav {padding: 0.8rem 1rem;}
  .footer-inner {grid-template-columns: 1fr; gap: 2.5rem;}
  .footer-cols {justify-content: flex-start; gap: 2.5rem;}
}
.nav-links a.active {color: var(--amber);}
.nav-links a.active::after {content: ""; display: block; height: 2px; background: var(--amber);
    margin-top: 4px; border-radius: 2px;}
.footer-col-label {font-family: 'Playfair Display', Georgia, serif;
      font-variant: small-caps;
      text-transform: none;
      letter-spacing: 0.045em;
      font-weight: 800;
      font-size: 0.95rem;
      color: var(--ink);}
body > nav {display: flex; align-items: center; gap: 1rem; flex-wrap: wrap;
      padding: 0.55rem clamp(1rem, 4vw, 2rem);
      background: color-mix(in srgb, var(--paper) 88%, transparent);
      -webkit-backdrop-filter: blur(12px) saturate(1.3);
              backdrop-filter: blur(12px) saturate(1.3);
      border-bottom: 1px solid var(--rule);}
.nav-left {flex: 0 0 auto;}
.nav-logo {text-transform: none; letter-spacing: 0; gap: 0.6rem;}
.nav-logo-text {font-family: 'Playfair Display', Georgia, serif;
      font-size: 1.14rem; font-weight: 700; letter-spacing: 0.01em;
      color: var(--ink); text-transform: none;}
.nav-tld {color: var(--muted);}
.nav-logo:hover .nav-logo-text {color: var(--amber);}
.nav-right {flex: 1 1 auto; display: flex; align-items: center;
      justify-content: flex-end; gap: 1.3rem; min-width: 0;}
.nav-links {display: flex; align-items: center; gap: 0.05rem; list-style: none; margin: 0; padding: 0;}
.nav-links a {font-family: 'Inter', system-ui, sans-serif;
      font-size: 0.85rem; letter-spacing: 0; text-transform: none;
      color: var(--ink-soft); text-decoration: none;
      border-radius: 8px; padding: 0.35rem 0.6rem; white-space: nowrap;}
.nav-links a:hover {color: var(--ink); background: var(--paper-warm);}
.nav-links a.active {color: var(--amber); font-weight: 600;}
.nav-links a.active::after {display: none;}
@media (max-width: 560px) {
  .nav-logo-text {display: inline; font-size: 1.02rem;}
  body > nav {padding: 0.5rem 1rem;}
}
@media (max-width: 1240px) {
  .nav-toggle {display: inline-flex; margin-left: auto;}
  .nav-right {display: none;}
  body > nav.open .nav-right {display: flex; flex-direction: column; align-items: stretch;
        width: 100%; order: 3; gap: 0; padding: 0.1rem 0 0.55rem;}
  body > nav.open .nav-links {flex-direction: column; align-items: stretch; width: 100%; gap: 0;}
  body > nav.open .nav-links > li + li {border-top: 0;}
  body > nav.open .nav-links a {display: block; padding: 0.45rem 0.2rem;
        border-bottom: 1px solid var(--rule);
        font-family: 'Playfair Display', Georgia, serif;
        font-variant: small-caps; letter-spacing: 0.03em;
        font-size: 0.95rem; border-radius: 0;}
  body > nav.open .nav-meet {flex-direction: column; align-items: stretch;
        border-left: 0; padding: 0.5rem 0 0; gap: 0.35rem;}
  body > nav.open .nav-meet-label {display: block; font-size: 0.82rem; margin-bottom: -0.1rem;}
  body > nav.open .nav-meet a {font-size: 0.86rem;}
}
.footer-name {font-family: 'Playfair Display', Georgia, serif;
      font-variant: small-caps; letter-spacing: 0.06em;
      text-transform: none; font-weight: 700;}
.footer-tagline {font-family: var(--lees);}
.footer-meta, .footer-bottom {font-family: 'DM Mono', monospace; letter-spacing: 0.06em;}
.nav-right {justify-content: center; flex: 1 1 auto;}
.nav-links {gap: 0.05rem;}
.nav-links > li + li::before {display: none !important; content: none !important;}
.nav-links > li {padding: 0;}
body > nav {gap: 0.8rem;}
.nav-left {flex: 0 0 auto;}
body > nav .nav-right {display: flex !important;}
.nav-zoek {display: inline-flex; align-items: center; gap: 0.35rem;}
.nav-zoek-icoon {flex: 0 0 auto; opacity: 0.8;}
@media (max-width: 1240px) {
  body > nav {flex-wrap: nowrap;}
  body > nav .nav-right {flex: 1 1 auto; order: 0; width: auto;
        flex-direction: row !important; justify-content: flex-end;
        padding: 0; border: 0;}
  body > nav .nav-links {flex-direction: row !important; align-items: center;
        width: auto; gap: 0.05rem;}
  body > nav .nav-links > li {width: auto; border-top: 0 !important;}
  body > nav .nav-links a {display: inline-block; border-bottom: 0 !important;
        padding: 0.35rem 0.5rem; font-size: 0.82rem; letter-spacing: 0;}
}
@media (max-width: 720px) {
  body > nav .nav-links a {padding: 0.3rem 0.38rem; font-size: 0.78rem;}
}
@media (max-width: 560px) {
  body > nav {gap: 0.3rem; padding: 0.5rem 0.6rem;}
  body > nav .nav-links a {padding: 0.28rem 0.24rem; font-size: 0.72rem;}
  .nav-logo-text {font-size: 0.95rem;}
  .nav-wapen {width: 20px;}
}
@media (max-width: 400px) {
  body > nav .nav-links a {padding: 0.26rem 0.18rem; font-size: 0.68rem;}
  .nav-logo-text .nav-tld {display: none;}
}
}

  
    
    .footer-nav {display: flex; flex-wrap: wrap; gap: 0.4rem 1.35rem;
      align-items: baseline; align-self: end;}
.footer-nav a {font-family: 'Inter', system-ui, sans-serif; font-size: 0.88rem;
      color: rgba(255,255,255,0.72); text-decoration: none; white-space: nowrap;}
.footer-nav a:hover {color: #ffffff; text-decoration: underline;}
@media (max-width: 760px) {
  .footer-nav {align-self: start; gap: 0.35rem 1.1rem;}
  .footer-nav a {font-size: 0.85rem;}
}
.nav-zoek {padding: 0.35rem 0.55rem;}
.nav-zoek-icoon {width: 17px; height: 17px; opacity: 0.85;}
.nav-zoek:hover .nav-zoek-icoon {opacity: 1;}
@media (max-width: 720px) {
  body > nav {gap: 0.5rem;}
  .nav-left {flex: 0 0 auto; min-width: 0;}
  .nav-logo-text {display: none;}
  .nav-wapen {width: 26px;}
  body > nav .nav-right {flex: 1 1 auto; min-width: 0;}
  body > nav .nav-links {justify-content: flex-end; flex-wrap: nowrap;}
  body > nav .nav-links a {padding: 0.35rem 0.42rem; font-size: 0.8rem;}
}
@media (max-width: 420px) {
  body > nav {padding: 0.5rem 0.7rem;}
  body > nav .nav-links a {padding: 0.32rem 0.3rem; font-size: 0.76rem;}
}
.nav-toggle {display: none !important;}
.nav-zoek-tekst {display: none;}
@media (max-width: 720px) {
  body > nav {flex-wrap: wrap !important; gap: 0.6rem; padding: 0.55rem 1rem;}
  .nav-left {flex: 0 1 auto; min-width: 0;}
  .nav-logo-text {display: inline !important; font-size: 1.02rem;}
  .nav-logo-text .nav-tld {display: inline !important;}
  .nav-toggle {display: inline-flex !important; margin-left: auto;}
  body > nav:not(.open) .nav-right {display: none !important;}
  body > nav.open {background: var(--paper);}
  body > nav.open .nav-right {display: flex !important;
    flex: 1 1 100% !important;
    flex-direction: column !important;
    order: 3; width: 100%;
    justify-content: flex-start !important;
    padding: 0.2rem 0 0.5rem !important;
    border: 0;}
  body > nav.open .nav-links {flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: 100%; gap: 0;}
  body > nav.open .nav-links > li {width: 100%; padding: 0 !important;}
  body > nav.open .nav-links > li + li {border-top: 1px solid var(--rule) !important;}
  body > nav.open .nav-links a {display: flex !important; align-items: center;
    min-height: 44px;
    padding: 0.55rem 0.25rem !important;
    font-size: 0.95rem !important; letter-spacing: 0;
    border-bottom: 0 !important; border-radius: 0;
    color: var(--ink);
    
    font-family: 'Inter', system-ui, sans-serif !important;
    font-variant: normal !important; text-transform: none !important;}
  body > nav.open .nav-links a[aria-current], body > nav.open .nav-links a.active {color: var(--amber);}
  body > nav.open .nav-zoek {gap: 0.5rem;}
  body > nav.open .nav-zoek-tekst {display: inline;}
}

/* Eigen aan /mijnoverheid/: ruimte onder de vaste navigatie, en de verhuisregel. */
body.mb-chrome { padding-top: 64px; }
@media (max-width: 1240px) { body.mb-chrome { padding-top: 58px; } }
body > nav { font-family: 'Inter', system-ui, sans-serif; line-height: 1.65; }
body > nav ul, body > nav li { margin: 0; }
body > nav a { border: 0; }
body > nav .nav-toggle { color: inherit; }
.mb-verhuisd { max-width: 1100px; margin: 0.75rem auto 0; padding: 0.55rem 1rem;
  font-size: 0.85rem; line-height: 1.45; color: var(--ink-soft, #2c2d32);
  background: var(--amber-tint, #E8F0F2); border-radius: 6px; }
.mb-verhuisd a { color: var(--amber, #155E75); }
@media (max-width: 1140px) { .mb-verhuisd { margin: 0.75rem 16px 0; } }
body > footer { margin-top: 3rem; font-family: 'Inter', system-ui, sans-serif; }
body > footer a { color: rgba(255,255,255,0.82); }
body > footer .footer-nav { display: flex; flex-wrap: wrap; gap: 0.4rem 1.2rem; }
