/* Noorderwind thema — layout: skip-link, header/footer-aanvullingen, secties, panelen, fotopanelen, rasters. */

html{scroll-behavior:smooth;scroll-padding-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.nw-skip{position:absolute;left:16px;top:-120px;z-index:200;padding:12px 20px;border-radius:var(--nw-radius-pill);background:var(--nw-navy-950);color:var(--nw-white);font-weight:600;text-decoration:none;transition:top var(--nw-motion-fast) var(--nw-motion-ease)}
.nw-skip:focus{top:12px;color:var(--nw-white);outline-offset:3px}

.nw-main{display:flex;flex-direction:column;gap:var(--nw-space-section);padding-top:12px;margin-bottom:var(--nw-space-section)}
.nw-main:focus{outline:none}
.nw-main>*{min-width:0}
.nw-main>.nw-container{margin-inline:auto}

/* ---------- Header ---------- */
.admin-bar .nw-header--sticky{top:32px}
@media (max-width:782px){.admin-bar .nw-header--sticky{top:46px}}
.nw-header{transition:box-shadow var(--nw-motion-base) var(--nw-motion-ease)}
.nw-header.is-scrolled{box-shadow:var(--nw-shadow-sm)}
.nw-header__brand:focus-visible{outline:2px solid var(--nw-focus-ring);outline-offset:4px}
.nw-header__toggle-open,.nw-header__toggle-close{display:inline-flex}
.nw-header__toggle-close,.nw-header__toggle[aria-expanded="true"] .nw-header__toggle-open{display:none}
.nw-header__toggle[aria-expanded="true"] .nw-header__toggle-close{display:inline-flex}
@container nw-header (max-width:900px){
.nw-header__mobile[data-open="true"]{max-height:calc(100dvh - 68px);overflow-y:auto}
.nw-header__mobile .nw-btn{margin-top:4px}
}
@container nw-header (max-width:1080px) and (min-width:901px){
.nw-navlink{padding:0 11px;font-size:15px}
.nw-header__inner{gap:12px}
}

/* ---------- Footer-aanvullingen ---------- */
.nw-footer{margin-top:0}
.nw-footer__brand a{display:inline-flex;border-radius:var(--nw-radius-sm)}
.nw-footer__sep{margin:0 6px;opacity:.6}
.nw-footer__credit{color:var(--nw-white);text-decoration-color:rgba(255,255,255,.4)}
.nw-footer__credit:hover{color:var(--nw-cyan-300)}
.nw-footer__link:focus-visible,.nw-footer__credit:focus-visible{outline-color:var(--nw-cyan-300)}

/* ---------- Gedeelde onderdelen ---------- */
.nw-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.nw-actions--center{justify-content:center}
.nw-sectionhead{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.nw-sectionhead--center{align-items:center;text-align:center}
.nw-sectionhead .nw-lead{max-width:60ch}
.nw-sectionhead--dark h1,.nw-sectionhead--dark h2{color:var(--nw-white)}
.nw-sectionhead--dark{max-width:720px}
.nw-copy{max-width:60ch}
.nw-card{border-radius:var(--nw-radius-xl);background:var(--nw-white);box-shadow:var(--nw-shadow-md)}
.nw-card--form{padding:clamp(24px,4vw,48px)}
.nw-card--tint{padding:32px;border-radius:var(--nw-radius-lg);background:var(--nw-sky-50);box-shadow:none}
.nw-card--tint>h2{margin-bottom:20px}
.nw-intro{display:flex;flex-direction:column;gap:24px;max-width:calc(900px + var(--nw-space-gutter) * 2)}
.nw-intro--narrow{max-width:calc(820px + var(--nw-space-gutter) * 2)}
.nw-empty{display:flex;flex-direction:column;align-items:center;gap:16px;padding:48px 0;text-align:center}
.nw-empty__icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--nw-sky-100);color:var(--nw-blue-700)}
.nw-empty .nw-lead{max-width:48ch}

/* ---------- Fotopanelen: hero en paginakop ---------- */
.nw-hero,.nw-pagehead{display:flex;align-items:flex-end;isolation:isolate}
.nw-hero{min-height:min(84vh,780px);background:var(--nw-navy-950)}
.nw-hero__media,.nw-pagehead__media,.nw-news__media{position:absolute;inset:0;z-index:-1;overflow:hidden}
.nw-hero__media img,.nw-hero__media video,.nw-pagehead__media img,.nw-news__media img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.nw-hero__video{position:absolute;inset:0;opacity:0;transition:opacity .9s var(--nw-motion-ease)}
.nw-hero__video.is-playing{opacity:1}
.nw-hero__media::after,.nw-pagehead__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,27,44,.08) 0%,rgba(14,27,44,.18) 40%,rgba(14,27,44,.85) 100%),linear-gradient(90deg,rgba(14,27,44,.5) 0%,rgba(14,27,44,0) 65%)}
.nw-hero__content{position:relative;display:flex;flex-direction:column;gap:18px;max-width:860px;padding:clamp(28px,5vw,64px)}
.nw-hero__title{font-size:clamp(44px,8.4vw,var(--nw-font-size-display));color:var(--nw-white)}
.nw-hero__sub{font-size:var(--nw-font-size-lead);font-weight:500;color:var(--nw-cyan-300)}

.nw-pagehead{min-height:clamp(260px,30vw,360px);align-items:center}
.nw-pagehead--photo{align-items:flex-end;min-height:clamp(380px,44vw,560px);background:var(--nw-navy-950)}
.nw-pagehead__content{position:relative;padding-block:clamp(36px,5vw,72px)}
.nw-pagehead--photo .nw-pagehead__content{padding-block:clamp(32px,5vw,64px)}
.nw-pagehead__inner{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:860px}
.nw-pagehead__tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.nw-pagehead__title{font-size:clamp(40px,6.2vw,76px);font-weight:800;line-height:1;letter-spacing:var(--nw-font-tracking-display);color:var(--nw-navy-950)}
.nw-pagehead__sub{max-width:60ch;font-size:var(--nw-font-size-lead);line-height:1.5;color:var(--nw-slate-600)}
.nw-pagehead--photo .nw-pagehead__title{color:var(--nw-white)}
.nw-pagehead--photo .nw-pagehead__sub{color:var(--nw-white);opacity:.92}
.nw-pagehead--over-ons.nw-pagehead--photo{min-height:clamp(500px,46vw,820px)}
.nw-pagehead--over-ons .nw-pagehead__media img{object-position:center 60%}

/* ---------- Over / intro: tekst + overlappende foto's ---------- */
.nw-about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(40px,7vw,96px);align-items:center}
.nw-about__text{display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.nw-photopair{position:relative;aspect-ratio:1/.92}
.nw-photopair img{width:100%;height:100%;object-fit:cover}
.nw-photopair__a{position:absolute;top:0;right:0;width:84%;height:74%;border-radius:var(--nw-radius-lg);overflow:hidden}
.nw-photopair__b{position:absolute;left:0;bottom:0;width:54%;height:50%;overflow:hidden;border:8px solid var(--nw-white);border-radius:calc(var(--nw-radius-lg) + 8px);box-shadow:var(--nw-shadow-md)}
.nw-photopair--single{aspect-ratio:4/3}
.nw-photopair--single .nw-photopair__a{position:relative;width:100%;height:100%}

/* ---------- Gesplitste secties (foto + tekst) ---------- */
.nw-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,6vw,96px);align-items:center}
.nw-split--reverse .nw-split__media{order:-1}
.nw-split__text{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.nw-split__media{aspect-ratio:4/3;border-radius:var(--nw-radius-lg);overflow:hidden;box-shadow:var(--nw-shadow-md)}
.nw-split__media img{width:100%;height:100%;object-fit:cover}
.nw-split--text-only{display:block;max-width:calc(820px + var(--nw-space-gutter) * 2)}

/* ---------- Kaarten ---------- */
.nw-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.nw-cards--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.nw-cards--single{grid-template-columns:minmax(0,1fr)}
.nw-cards--single .nw-eventcard{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px}
.nw-cards--single .nw-eventcard__media{aspect-ratio:auto;min-height:320px}
.nw-eventcard__badge{display:flex;flex-wrap:wrap;gap:6px}
.nw-eventcard__cta::after{content:"";position:absolute;inset:0;border-radius:var(--nw-radius-lg)}
.nw-eventcard:has(.nw-eventcard__cta:focus-visible){outline:2px solid var(--nw-focus-ring);outline-offset:3px}
.nw-eventcard__cta:focus-visible{box-shadow:none}

/* ---------- Aanbod (navy paneel) ---------- */
.nw-offer{padding:clamp(56px,8vw,104px) 0}
.nw-offer__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px}

/* ---------- Ticker-aanvullingen ---------- */
.nw-ticker__pair{display:contents}
.nw-ticker__pause{position:absolute;left:16px;top:8px;z-index:2;height:32px;padding:0 14px;border:0;border-radius:var(--nw-radius-pill);background:var(--nw-navy-950);color:var(--nw-white);font:600 13px/1 var(--nw-font-sans);cursor:pointer;clip:rect(0,0,0,0);width:1px;overflow:hidden;white-space:nowrap}
.nw-ticker__pause:focus-visible{clip:auto;width:auto;overflow:visible;outline:2px solid var(--nw-focus-ring);outline-offset:2px}
.nw-ticker.is-paused .nw-ticker__track{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){
.nw-ticker__track{animation:none;width:100%}
.nw-ticker__group{flex-wrap:wrap;justify-content:center;width:100%;padding:0 24px;gap:16px 40px}
.nw-ticker__group+.nw-ticker__group,.nw-ticker__rep,.nw-ticker__pause{display:none}
}

/* ---------- Fotoraster / mozaïek ---------- */
.nw-mood{display:flex;flex-direction:column;gap:48px}
.nw-gallery{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.nw-gallery--grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.nw-gallery--mosaic{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(140px,17.5vw,230px);grid-auto-flow:dense}
.nw-gallery--mosaic .nw-gallery__cell:nth-child(7n+1){grid-column:span 2;grid-row:span 2}
.nw-gallery--mosaic .nw-gallery__cell:nth-child(7n+4){grid-row:span 2}
.nw-gallery--mosaic .nw-gallery__cell:nth-child(7n+6){grid-column:span 2}
.nw-gallery__cell{min-width:0}
.nw-gallery__item{position:relative;display:block;height:100%;border-radius:var(--nw-radius-lg);overflow:hidden;background:var(--nw-sky-100);cursor:zoom-in}
.nw-gallery--grid .nw-gallery__item{aspect-ratio:4/3}
.nw-gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform var(--nw-motion-slow) var(--nw-motion-ease)}
.nw-gallery__item:hover img{transform:scale(1.04)}
.nw-gallery__item:focus-visible{outline:2px solid var(--nw-focus-ring);outline-offset:3px}
.nw-gallery__zoom{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--nw-white);color:var(--nw-navy-950);box-shadow:var(--nw-shadow-sm);opacity:0;transform:translateY(4px);transition:opacity var(--nw-motion-base) var(--nw-motion-ease),transform var(--nw-motion-base) var(--nw-motion-ease)}
.nw-gallery__item:hover .nw-gallery__zoom,.nw-gallery__item:focus-visible .nw-gallery__zoom{opacity:1;transform:none}

/* ---------- Lightbox ---------- */
.nw-lightbox{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:var(--nw-white)}
.nw-lightbox::backdrop{background:rgba(14,27,44,.94)}
.nw-lightbox__stage{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:72px clamp(12px,7vw,112px) 32px;touch-action:pan-y}
.nw-lightbox__figure{display:flex;flex-direction:column;align-items:center;gap:14px;margin:0;max-width:100%}
.nw-lightbox__img{max-width:100%;max-height:calc(100dvh - 190px);width:auto;height:auto;border-radius:var(--nw-radius-md);object-fit:contain;background:var(--nw-navy-900);box-shadow:var(--nw-shadow-lg);transition:opacity var(--nw-motion-base) var(--nw-motion-ease)}
.nw-lightbox__img.is-loading{opacity:.35}
.nw-lightbox__caption{font-size:15px;color:var(--nw-slate-300);text-align:center;max-width:70ch}
.nw-lightbox__close{position:fixed;top:16px;right:16px}
.nw-lightbox__prev,.nw-lightbox__next{position:fixed;top:50%;transform:translateY(-50%)}
.nw-lightbox__prev{left:clamp(8px,2vw,24px)}
.nw-lightbox__next{right:clamp(8px,2vw,24px)}
.nw-lightbox__prev:active,.nw-lightbox__next:active{transform:translateY(-50%) scale(.96)}
.nw-lightbox .nw-btn:focus-visible{box-shadow:0 0 0 4px rgba(127,216,245,.6)}
body.nw-lightbox-open{overflow:hidden}

/* ---------- Nieuwsbrief-paneel ---------- */
.nw-news{display:flex;justify-content:center;padding:clamp(40px,8vw,112px) var(--nw-space-gutter);isolation:isolate;background:var(--nw-navy-900)}
.nw-news__card{display:flex;flex-direction:column;gap:32px;width:100%;max-width:720px;padding:clamp(28px,5vw,56px);border-radius:var(--nw-radius-xl);background:var(--nw-white);box-shadow:var(--nw-shadow-lg)}
.nw-news__head{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}

/* ---------- Formulierpaneel ---------- */
.nw-formsection{padding:clamp(48px,7vw,96px) 0}
.nw-formsection__inner{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,80px);align-items:start}
.nw-formsection__intro{display:flex;flex-direction:column;gap:20px}

/* ---------- Afsluitende oproep ---------- */
.nw-cta{padding:clamp(56px,8vw,104px) 0}
.nw-cta__inner{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}
.nw-cta__title{max-width:760px}
.nw-cta__text{max-width:56ch}
.nw-panel--dark .nw-cta__title{color:var(--nw-white)}
.nw-panel--dark .nw-cta__text{color:var(--nw-text-on-dark-muted)}

/* ---------- Prose ---------- */
.nw-prose{font-size:var(--nw-font-size-body);line-height:1.65;color:var(--nw-text-body)}
.nw-prose>*+*{margin-top:1.15em}
.nw-prose h2{margin-top:2.1em;font-size:clamp(26px,3.2vw,34px)}
.nw-prose h3{margin-top:1.8em;font-size:clamp(21px,2.4vw,26px)}
.nw-prose h4{margin-top:1.6em}
.nw-prose h2+*,.nw-prose h3+*,.nw-prose h4+*{margin-top:.6em}
.nw-prose>:first-child{margin-top:0}
.nw-prose ul,.nw-prose ol{padding-left:1.35em}
.nw-prose li{margin-top:.45em;padding-left:.2em}
.nw-prose li::marker{color:var(--nw-blue-700);font-weight:600}
.nw-prose a{font-weight:500}
.nw-prose strong{color:var(--nw-text-strong);font-weight:600}
.nw-prose blockquote{margin-left:0;margin-right:0;padding:4px 0 4px 24px;border-left:4px solid var(--nw-cyan-500);font-size:1.2em;line-height:1.45;font-weight:500;color:var(--nw-navy-950)}
.nw-prose blockquote p+p{margin-top:.8em}
.nw-prose hr{height:1px;margin:2.4em 0;border:0;background:var(--nw-border-subtle)}
.nw-prose img,.nw-prose video,.nw-prose iframe{max-width:100%;border-radius:var(--nw-radius-lg)}
.nw-prose figure{margin-inline:0}
.nw-prose figcaption{margin-top:10px;font-size:14px;color:var(--nw-text-muted)}
.nw-prose table{display:block;width:100%;overflow-x:auto;border-collapse:separate;border-spacing:0;font-size:16px}
.nw-prose th,.nw-prose td{padding:12px 16px;border-bottom:1px solid var(--nw-border-subtle);text-align:left;vertical-align:top}
.nw-prose th{background:var(--nw-sky-50);font-weight:600;color:var(--nw-navy-950);white-space:nowrap}
.nw-prose th:first-child{border-top-left-radius:var(--nw-radius-sm)}
.nw-prose th:last-child{border-top-right-radius:var(--nw-radius-sm)}
.nw-prose code{padding:2px 7px;border-radius:var(--nw-radius-xs);background:var(--nw-sky-50);font-size:.9em}
.nw-prose pre{overflow-x:auto;padding:20px;border-radius:var(--nw-radius-md);background:var(--nw-navy-950);color:var(--nw-white)}
.nw-prose pre code{padding:0;background:none}
.nw-prose--lead{font-size:var(--nw-font-size-lead);line-height:1.55}
.nw-prose--compact>*+*{margin-top:.8em}
.nw-prose--dark{color:var(--nw-text-on-dark-muted)}
.nw-prose--dark h2,.nw-prose--dark h3,.nw-prose--dark strong{color:var(--nw-white)}
.nw-prose--dark a{color:var(--nw-cyan-300)}
.nw-article{max-width:calc(720px + var(--nw-space-gutter) * 2)}
.nw-pagelinks{display:flex;gap:8px;margin-top:2em}
.nw-article .nw-prose>.nw-nb,.nw-article .nw-prose>[class^="nw-"]{max-width:none}

/* ---------- Berichtenlijst (index) ---------- */
.nw-postlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.nw-article:has(.nw-postlist){max-width:calc(var(--nw-space-container) + var(--nw-space-gutter) * 2)}
.nw-postcard{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:28px;border:1px solid var(--nw-border-subtle);border-radius:var(--nw-radius-lg);background:var(--nw-white)}
.nw-postcard h2 a{color:var(--nw-navy-950);text-decoration:none}
.nw-postcard h2 a:hover{color:var(--nw-blue-700)}
.nw-postcard__date{font-size:14px;font-weight:600;color:var(--nw-text-muted)}
.nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:48px}
.nav-links .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 16px;border-radius:var(--nw-radius-pill);color:var(--nw-navy-950);font-weight:600;text-decoration:none}
.nav-links a.page-numbers:hover{background:var(--nw-sky-50)}
.nav-links .page-numbers.current{background:var(--nw-sky-100)}

/* ---------- Reveal (alleen met JS, nooit zonder JS verborgen) ---------- */
.nw-js .nw-reveal{opacity:0;transform:translateY(16px);transition:opacity .6s var(--nw-motion-ease),transform .6s var(--nw-motion-ease)}
.nw-js .nw-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.nw-js .nw-reveal{opacity:1;transform:none}}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
.nw-cards--three{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
.nw-about,.nw-split,.nw-formsection__inner,.nw-cards,.nw-cards--three{grid-template-columns:minmax(0,1fr)}
.nw-split--reverse .nw-split__media{order:0}
.nw-cards--single .nw-eventcard{display:flex}
.nw-cards--single .nw-eventcard__media{aspect-ratio:16/10;min-height:0}
.nw-offer__head{margin-bottom:32px}
.nw-gallery--grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.nw-gallery--mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(130px,36vw,220px)}
.nw-gallery--mosaic .nw-gallery__cell:nth-child(7n+1){grid-column:span 2;grid-row:span 2}
.nw-gallery--mosaic .nw-gallery__cell:nth-child(7n+6){grid-column:auto}
.nw-postlist{grid-template-columns:minmax(0,1fr)}
.nw-gallery__zoom{opacity:1;transform:none}
.nw-hero{min-height:min(78vh,640px)}
.nw-hero__content{padding:28px 22px 32px}
.nw-lightbox__stage{padding:64px 12px 24px}
.nw-lightbox__prev,.nw-lightbox__next{top:auto;bottom:16px;transform:none}
.nw-lightbox__prev:active,.nw-lightbox__next:active{transform:scale(.96)}
}
@media (max-width:700px){.nw-pagehead--over-ons.nw-pagehead--photo{min-height:620px}}

/* Eyebrow en badges op foto's: genoeg contrast. */
.nw-pagehead--photo .nw-eyebrow--on-dark{background:rgba(14,27,44,.72)}
