/* Shared navigation and footer. Keep the brand at the left edge of the shell. */
.pk-site-header { min-height: 76px; gap: 20px; }
.pk-site-header .pk-brand { font-size: 23px; flex-shrink: 0; }
.pk-site-header > .wp-block-navigation { margin-left: auto; font-size: 15px; }
.pk-site-header .wp-block-navigation__container { gap: 22px; }
.pk-site-header .wp-block-navigation-submenu__toggle { min-height: 44px; }
.pk-site-header .wp-block-navigation__submenu-container { min-width: 235px !important; padding: 8px; border: 1px solid #d7dce2; background: white; box-shadow: 0 8px 20px #0000000d; }
.pk-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 10px 12px; }
.pk-site-header a:focus-visible,.pk-site-header button:focus-visible,.pk-site-footer a:focus-visible { outline: 3px solid var(--pk-amber); outline-offset: 3px; }
.pk-site-footer { grid-template-columns: minmax(0,1fr); gap: 32px; }
.pk-site-footer .pk-brand { font-size: 23px; }
.pk-footer-brand > p:not(.pk-brand) { font-size: 15px; max-width: 32ch; color: var(--pk-ink-2); }
.pk-footer-links h2 { font: 600 17px/1.4 var(--pk-font-sans); margin: 0 0 16px; }
.pk-site-footer .wp-block-navigation { align-items: flex-start; }
.pk-site-footer .wp-block-navigation-item__content { padding: 4px 0; min-height: 32px; text-underline-offset: 4px; }
@media(min-width:700px) { .pk-site-footer { grid-template-columns: 1.3fr 1fr 1fr; gap: 40px; } }
@media(min-width:600px) and (max-width:1039px) {
 .pk-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
 .pk-site-header .wp-block-navigation__responsive-container-open { display: flex !important; }
}
.pk-site-header .is-menu-open .wp-block-navigation__container { align-items: flex-start; gap: 12px; width: 100%; }
.pk-site-header .is-menu-open .wp-block-navigation__submenu-container { box-shadow: none; border: 0; padding: 0 0 12px 16px; }

/* "Cookie-instellingen" in the footer: only shown while the cookie banner is active (parkeerdata consent.php adds body.pk-consent-on). */
.wp-block-navigation .pk-consent-link, .pk-consent-link { display: none; }

/* Menus from inc/site-nav.php (owner, 2026-10-04): direct links, no dropdowns with one city. Desktop: a row of links
   on the right. Phones: a "Menu" button (details/summary, no script) opening a left-aligned list with even spacing. */
.pk-site-header { display: flex; align-items: center; position: relative; }
.pk-nav { margin-left: auto; }
.pk-nav ul { list-style: none; margin: 0; padding: 0; }
.pk-nav a { color: inherit; text-decoration: none; font-weight: 600; }
.pk-nav a:hover, .pk-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 2px; }
.pk-nav-list { display: flex; gap: 24px; font-size: 15px; }
.pk-nav-list a { display: inline-flex; align-items: center; min-height: 44px; }
.pk-nav-mobile { display: none; }
@media (max-width: 899px) {
 .pk-nav-list { display: none; }
 .pk-nav-mobile { display: block; }
 .pk-nav-toggle { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 4px; font-weight: 600; cursor: pointer; list-style: none; }
 .pk-nav-toggle::-webkit-details-marker { display: none; }
 .pk-nav-toggle:focus-visible { outline: 3px solid var(--pk-amber); outline-offset: 3px; }
 .pk-nav-panel { position: absolute; left: 0; right: 0; top: 100%; z-index: 50; padding: 8px 16px 16px; background: var(--pk-blue, #0b3d91); border-top: 1px solid rgba(255,255,255,.2); box-shadow: 0 8px 20px #0000002e; }
 .pk-nav-panel li a { display: flex; align-items: center; min-height: 48px; padding: 0; font-size: 17px; border-bottom: 1px solid rgba(255,255,255,.15); text-align: left; }
 .pk-nav-panel li:last-child a { border-bottom: 0; }
}
.pk-footer-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.pk-footer-list a { display: inline-flex; align-items: center; min-height: 32px; padding: 4px 0; color: inherit; text-underline-offset: 4px; }
body.pk-consent-on .pk-footer-list .pk-consent-link { display: list-item; }
/* Colours follow the header: white links on the blue prijsbord header, ink on the white header of older templates. */
.pk-nav .pk-nav-list a, .pk-nav .pk-nav-panel a, .pk-nav .pk-nav-toggle { color: inherit; }
.pk-prijsbord .pk-site-header .pk-nav a, .pk-prijsbord .pk-site-header .pk-nav-toggle { color: #fff; }
@media (max-width: 899px) {
 .pk-nav .pk-nav-panel { padding: 8px 16px 16px; background: #fff; border-top: 1px solid #d7dce2; }
 .pk-nav .pk-nav-panel li a { border-bottom-color: #e3e7ec; }
 .pk-prijsbord .pk-site-header .pk-nav .pk-nav-panel { background: var(--pb-blue); border-top-color: rgba(255,255,255,.2); }
 .pk-prijsbord .pk-site-header .pk-nav .pk-nav-panel li a { border-bottom-color: rgba(255,255,255,.15); }
}
/* The footer lists sit under their headings (an older rule in responsive.css right-aligned .pk-footer-nav). */
.pk-site-footer .pk-footer-links .pk-footer-nav { justify-self: start; }

/* Menu by type with city dropdowns (release 0.3.2, inc/site-nav.php). Desktop: five buttons in a row, each opening a
   white dropdown with the cities. Phones (< 900px): the "Menu" button opens a full-width list; each type opens as an
   accordion. html.pk-js is set by the menu's inline script; without it the dropdowns open on hover and focus. */
.pk-nav { margin-left: auto; position: relative; }
.pk-nav .pk-nav-toggle { display: none; }
.pk-nav .pk-nav-list { display: flex; gap: 4px; margin: 0; padding: 0; list-style: none; font-size: 15px; }
.pk-nav-item { position: relative; }
.pk-nav-top { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 10px; border: 0; background: none; color: inherit; font: inherit; font-weight: 600; cursor: pointer; }
.pk-nav-top:hover, .pk-nav-item.is-current > .pk-nav-top { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 2px; }
.pk-nav-chevron { transition: transform .15s; }
.pk-nav-top[aria-expanded="true"] .pk-nav-chevron { transform: rotate(180deg); }
.pk-nav .pk-nav-sub { display: none; position: absolute; top: 100%; left: 0; z-index: 60; min-width: 210px; margin: 0; padding: 6px; list-style: none; background: #fff; border: 1px solid #d7dce2; border-radius: 8px; box-shadow: 0 8px 20px #0000001f; }
.pk-nav .pk-nav-item:last-child .pk-nav-sub { left: auto; right: 0; }
.pk-nav-top[aria-expanded="true"] + .pk-nav-sub { display: block; }
html:not(.pk-js) .pk-nav-item:hover > .pk-nav-sub, html:not(.pk-js) .pk-nav-item:focus-within > .pk-nav-sub { display: block; }
.pk-nav .pk-nav-sub a, .pk-prijsbord .pk-site-header .pk-nav .pk-nav-sub a { display: flex; align-items: center; min-height: 44px; padding: 0 12px; border-radius: 6px; color: var(--pb-blue, #0b3d91); font-weight: 600; text-decoration: none; }
.pk-nav .pk-nav-sub a:hover, .pk-nav .pk-nav-sub a[aria-current="page"] { background: #f2f4f7; text-decoration: underline; }
/* more than nine links (16 cities, 2026-11-02, inc/site-nav.php): two columns, on desktop and in the phone accordion */
.pk-nav .pk-nav-sub--cols { column-count: 2; column-gap: 4px; min-width: 400px; }
.pk-nav .pk-nav-sub--cols li { break-inside: avoid; }
.pk-nav-top:focus-visible, .pk-nav .pk-nav-sub a:focus-visible, .pk-nav .pk-nav-toggle:focus-visible { outline: 3px solid var(--pk-amber, #f2b01e); outline-offset: 2px; }
@media (max-width: 899px) {
 .pk-nav { position: static; }
 .pk-nav .pk-nav-toggle { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 4px; border: 0; background: none; color: inherit; font: inherit; font-weight: 600; cursor: pointer; }
 .pk-nav .pk-nav-list { display: none; position: absolute; left: 0; right: 0; top: 100%; z-index: 60; flex-direction: column; gap: 0; padding: 8px 16px 16px; background: #fff; border-top: 1px solid #d7dce2; box-shadow: 0 8px 20px #0000002e; font-size: 17px; }
 .pk-nav-toggle[aria-expanded="true"] + .pk-nav-list, html:not(.pk-js) .pk-nav .pk-nav-list { display: flex; }
 .pk-nav-top { width: 100%; justify-content: space-between; min-height: 48px; padding: 0; border-bottom: 1px solid #e3e7ec; text-align: left; }
 .pk-nav .pk-nav-sub, .pk-nav .pk-nav-item:last-child .pk-nav-sub { position: static; min-width: 0; padding: 4px 0 8px 16px; background: none; border: 0; border-radius: 0; box-shadow: none; }
 .pk-nav .pk-nav-sub--cols { column-gap: 16px; }
 .pk-nav .pk-nav-sub a, .pk-prijsbord .pk-site-header .pk-nav .pk-nav-sub a { padding: 0; font-size: 17px; }
 .pk-prijsbord .pk-site-header .pk-nav .pk-nav-list { background: var(--pb-blue); border-top-color: rgba(255,255,255,.2); }
 .pk-prijsbord .pk-site-header .pk-nav-top { color: #fff; border-bottom-color: rgba(255,255,255,.18); }
 .pk-prijsbord .pk-site-header .pk-nav .pk-nav-sub a { color: #fff; }
 .pk-prijsbord .pk-site-header .pk-nav .pk-nav-sub a:hover, .pk-prijsbord .pk-site-header .pk-nav .pk-nav-sub a[aria-current="page"] { background: rgba(255,255,255,.1); }
}

/* The bottom line (mobile polish round, 2026-10-05; inc/page-notes.php): sources, check date and disclaimers, once, at the
   very bottom of the page. */
.pk-bottom-line { margin: 24px 0 0; padding: 12px 0 0; border-top: 1px solid #e3e6eb; font-size: 13px; line-height: 1.5; color: #555d6b; max-width: 80ch; }
