/*
Theme Name: Blocksy Child NOL
Description: Maatwerk voor radioamateurclub NOL.
Template: blocksy
Version: 1.1
*/

@font-face{font-family:'Archivo';src:url('fonts/Archivo-400.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'PlexSans';src:url('fonts/IBM-Plex-Sans-400.woff2') format('woff2');font-weight:100 700;font-display:swap}
@font-face{font-family:'PlexMono';src:url('fonts/IBM-Plex-Mono-400.woff2') format('woff2');font-weight:100 700;font-display:swap}

:root{
 --navy:#0d2233; --navy2:#143550;
 --ink:#12161c; --muted:#5d6775;
 --paper:#faf9f5; --card:#fff; --line:#e5e2d9;
 --geel:#ffce00;
 --c-verg:#2b6ca3; --c-act:#d1442f; --c-veld:#2f7d5e; --c-nieuws:#0d2233; --c-versl:#6b5b95; --c-curs:#b06a1f;
 --r:12px;
}

body{background:var(--paper);color:var(--ink);font-family:'PlexSans',system-ui,sans-serif}
h1,h2,h3,h4{font-family:'Archivo',system-ui,sans-serif;letter-spacing:-.02em}

/* ---------- masthead ---------- */
header.ct-header{background:var(--navy);position:relative;overflow:visible}
header.ct-header::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
 background:repeating-linear-gradient(74deg,transparent 0 38px,rgba(255,255,255,.10) 38px 39px),
            repeating-linear-gradient(-58deg,transparent 0 52px,rgba(255,255,255,.06) 52px 53px)}
header.ct-header>*{position:relative;z-index:1}
header.ct-header a,header.ct-header .ct-toggle{color:#dce7f0}
header.ct-header a:hover{color:#fff}
header.ct-header .ct-toggle svg,header.ct-header svg{fill:#dce7f0}

/* ---------- bijeenkomstbalk ---------- */
.nol-strip{background:var(--navy2);border-top:1px solid rgba(255,255,255,.09);color:#fff}
.nol-strip-in{max-width:1200px;margin:0 auto;padding:13px 30px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.nol-strip .lbl{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--geel);font-weight:600}
.nol-strip .dt{font-family:'PlexMono',monospace;font-size:18px;font-weight:600}
.nol-strip .rest{color:#b9cbd9;font-size:14.5px}

/* ---------- layout ---------- */
.nol-wrap{max-width:1200px;margin:0 auto;padding:0 30px}
.nol-grid{display:grid;grid-template-columns:1fr 316px;gap:46px;padding:40px 0 64px}
.nol-kop{display:flex;align-items:center;gap:11px;margin-bottom:22px}
.nol-ruit{width:13px;height:19px;background:var(--geel);flex:none;
 clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.nol-kop h1{font-size:27px;font-weight:700;margin:0}

/* ---------- kaarten ---------- */
.nol-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);
 padding:16px;display:grid;grid-template-columns:200px 1fr;gap:18px;margin-bottom:16px;
 box-shadow:0 1px 2px rgba(13,34,51,.05)}
.nol-thumb{border-radius:8px;overflow:hidden;aspect-ratio:16/10;background:linear-gradient(135deg,#dbe4ec,#c8d6e2)}
.nol-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.nol-thumb.leeg{display:flex;align-items:center;justify-content:center}
.nol-meta{display:flex;align-items:center;gap:9px;margin-bottom:7px;flex-wrap:wrap}
.nol-tag{font-family:'Archivo',sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.07em;
 text-transform:uppercase;padding:4px 9px;border-radius:20px;color:#fff;background:var(--muted)}
.nol-tag.t-vergaderingen{background:var(--c-verg)}
.nol-tag.t-activiteiten,.nol-tag.t-hambeurzen{background:var(--c-act)}
.nol-tag.t-velddagen{background:var(--c-veld)}
.nol-tag.t-nieuws{background:var(--c-nieuws)}
.nol-tag.t-verslagen{background:var(--c-versl)}
.nol-tag.t-cursussen{background:var(--c-curs)}
.nol-datum{font-family:'PlexMono',monospace;font-size:12.5px;color:var(--muted)}
.nol-titel{font-size:19.5px;font-weight:700;margin:0 0 5px}
.nol-titel a{color:var(--ink);text-decoration:none}
.nol-titel a:hover{color:var(--c-verg)}
.nol-excerpt{color:var(--muted);font-size:14.8px;margin:0;max-width:60ch}
.nol-meer{font-family:'Archivo',sans-serif;font-weight:600;color:var(--navy);font-size:14px;
 text-decoration:none;display:inline-block;margin-top:9px;border-bottom:2px solid var(--geel);padding-bottom:1px}

/* ---------- zijkolom ---------- */
.nol-side section{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:16px}
.nol-side h3{font-family:'PlexSans',sans-serif;font-size:11.5px;text-transform:uppercase;
 letter-spacing:.1em;color:var(--muted);margin:0 0 13px;font-weight:600}
.nol-qrg{font-family:'PlexMono',monospace;font-size:13px;line-height:1.9;color:var(--muted)}
.nol-qrg b{color:var(--ink);font-weight:600}
.nol-cats{display:flex;flex-wrap:wrap;gap:7px}
.nol-cats a{font-size:12.5px;padding:5px 11px;border-radius:20px;background:var(--paper);
 border:1px solid var(--line);font-weight:500;color:var(--ink);text-decoration:none}
.nol-cats a:hover{border-color:var(--geel)}
.nol-sp{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.nol-sp .leeg,.nol-sp img{aspect-ratio:3/2;background:var(--paper);border:1px solid var(--line);
 border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#a9b3bd;
 width:100%;object-fit:contain}

/* ---------- paginering ---------- */
.nol-pag{margin-top:26px}
.nol-pag .page-numbers{display:inline-block;padding:7px 13px;border:1px solid var(--line);
 border-radius:8px;background:var(--card);margin-right:6px;text-decoration:none;color:var(--ink);font-size:14px}
.nol-pag .page-numbers.current{background:var(--navy);color:#fff;border-color:var(--navy)}

/* ---------- mobiel ---------- */
@media(max-width:980px){
 .nol-grid{grid-template-columns:1fr;gap:26px;padding:28px 0 44px}
 .nol-side{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
 .nol-side section{margin-bottom:0}
}
@media(max-width:620px){
 .nol-wrap{padding:0 18px}
 .nol-strip-in{padding:12px 18px;gap:4px;flex-direction:column;align-items:flex-start}
 .nol-strip .dt{font-size:16px}
 .nol-kop h1{font-size:22px}
 .nol-card{grid-template-columns:1fr;gap:13px;padding:13px}
 .nol-thumb{aspect-ratio:16/9}
 .nol-titel{font-size:18px}
 .nol-side{grid-template-columns:1fr}
}

/* ---------- header: alle rijen donker ---------- */
header.ct-header [data-row],
header.ct-header [data-column],
header.ct-header .ct-container,
header.ct-header .ct-container-fluid{background:transparent!important}
header.ct-header [data-row]{border-color:rgba(255,255,255,.10)!important}
header.ct-header a,
header.ct-header .ct-menu-link,
header.ct-header [data-row] a{color:#dce7f0!important}
header.ct-header a:hover,header.ct-header .ct-menu-link:hover{color:#fff!important}
header.ct-header .ct-toggle svg,header.ct-header svg{fill:currentColor;color:#dce7f0}

/* tweede menubalk verbergen: de mockup heeft één menu */
header.ct-header [data-id="menu-secondary"],
header.ct-header [data-row="top"]{display:none!important}

/* ---------- logo ---------- */
header.ct-header .site-branding img,
header.ct-header .site-logo-container img,
header.ct-header img.default-logo{
  height:70px!important; width:auto!important; max-height:none!important;
  background:#fff; border-radius:10px; padding:9px 14px; box-sizing:content-box;
}
header.ct-header [data-id="logo"]{padding-top:10px;padding-bottom:10px}
@media(max-width:620px){
  header.ct-header .site-branding img,
  header.ct-header img.default-logo{height:46px!important;padding:6px 9px}
}


/* ---------- uitklapmenu's ---------- */
header.ct-header ul.sub-menu{
  background:var(--navy2)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:10px!important;
  padding:6px!important;
  box-shadow:0 14px 34px rgba(0,0,0,.38)!important;
}
header.ct-header ul.sub-menu li{border:0!important;background:transparent!important}
header.ct-header ul.sub-menu a{
  color:#dce7f0!important; padding:8px 12px!important; border-radius:6px;
  font-size:14px!important; white-space:nowrap;
}
header.ct-header ul.sub-menu a:hover{background:rgba(255,255,255,.09)!important;color:#fff!important}
/* mobiele lade: geen doos eromheen */
.ct-panel ul.sub-menu{background:transparent!important;box-shadow:none!important;border:0!important}

/* dropdown mag buiten de header vallen */
header.ct-header,header.ct-header [data-row],header.ct-header [data-column]{overflow:visible!important}
header.ct-header ul.sub-menu{z-index:200}

.nol-paginakop{font-size:30px;font-weight:700;margin:0 0 18px}

.nol-sp a{display:block}
.nol-sp img{width:100%;height:auto;aspect-ratio:auto;background:#fff;border:1px solid var(--line);
 border-radius:7px;padding:7px;object-fit:contain;display:block}
