/* /woordenlijst/ -- index of terms, generated by scripts/build-woordenlijst.mjs.
   Builds on the tokens and components in kelder.css / verslag.css (hero, hbadge,
   dual-pill, shead, eyebrow, btn, tech-section); only what is new lives here. */

/* ---------- hero ---------- */
.wl-hero h1 .serif{font-family:var(--serif);font-style:italic;font-weight:400;}
.wl-search{display:flex;align-items:center;gap:12px;background:#fff;border-radius:var(--radius);padding:7px 7px 7px 18px;max-width:540px;box-shadow:0 20px 50px rgba(40,0,6,.35);margin:0 0 26px;}
.wl-search svg{width:20px;height:20px;color:var(--red);flex:none;}
.wl-search input{flex:1;min-width:0;border:0;background:transparent;font:500 16px/1.4 var(--font);color:var(--ink);padding:11px 0;}
.wl-search input:focus{outline:none;}
.wl-search:focus-within{box-shadow:0 0 0 3px rgba(255,255,255,.5),0 20px 50px rgba(40,0,6,.35);}
.wl-search .wl-count{flex:none;font-size:13px;font-weight:700;color:var(--red);background:var(--red-soft);border-radius:10px;padding:9px 12px;white-space:nowrap;}
.wl-hero .dual-lead a{text-decoration:none;color:inherit;}
.wl-hero .dual-pill b{font-weight:800;margin-left:4px;opacity:.75;}
.wl-hero .hero-media img.imgslot{height:540px;object-fit:cover;object-position:center 40%;}

/* ---------- sticky A-Z ---------- */
.wl-az{position:sticky;top:var(--wl-top,0px);z-index:40;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm);}
.wl-az .wrap{display:flex;align-items:center;gap:4px;overflow-x:auto;padding-top:10px;padding-bottom:10px;scrollbar-width:none;}
.wl-az .wrap::-webkit-scrollbar{display:none;}
.wl-az .lbl{flex:none;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin-right:10px;}
.wl-az a{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;font-weight:800;font-size:15px;color:var(--ink);text-decoration:none;transition:background .15s,color .15s;}
.wl-az a:hover,.wl-az a:focus-visible{background:var(--red);color:#fff;}
.wl-az a[aria-disabled="true"]{color:#cdc6c4;pointer-events:none;}

/* ---------- category sections ---------- */
.wl-cat{padding:88px 0;scroll-margin-top:70px;}
.wl-cat:nth-of-type(even){background:var(--bg-soft);}
.wl-cat-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:48px;align-items:start;}
.wl-crew{position:sticky;top:calc(var(--wl-top,0px) + 84px);margin:0;}
.wl-crew img{display:block;width:100%;aspect-ratio:4/5;object-position:center 35%;height:auto;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow);}
.wl-crew figcaption{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;font-weight:700;color:var(--ink);}
.wl-crew figcaption span{font-size:13px;font-weight:700;color:var(--red);background:var(--red-soft);border-radius:9999px;padding:5px 12px;}
.wl-cat .shead{margin-bottom:34px;}
.wl-cat .shead h2{font-size:40px;}

.wl-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;}
.wl-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s;scroll-margin-top:90px;}
.wl-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);}
.wl-card:focus-within{box-shadow:0 0 0 3px var(--red),var(--shadow);}
.wl-card img{display:block;width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;background:var(--bg-soft);}
.wl-card .wl-b{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1;}
.wl-tags{display:flex;flex-wrap:wrap;gap:6px;}
.wl-chip{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:9999px;padding:5px 11px;background:var(--red-soft);color:var(--red);}
.wl-chip.new{background:#e5f4ec;color:#0f7a52;}
/* .deffn is styled as a callout in vocht.css; inside a card it is the title + text. */
.wl-card .deffn{margin:12px 0 0;background:none;border:0;border-radius:0;padding:0;}
.wl-card .deffn b{font-size:19px;font-weight:800;letter-spacing:0;text-transform:none;color:var(--ink);margin-bottom:8px;line-height:1.25;}
.wl-card .deffn span{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-size:14.5px;line-height:1.6;color:var(--text-mid);}
.wl-go{margin-top:auto;padding-top:14px;display:inline-flex;align-items:center;gap:7px;font-weight:800;font-size:14.5px;color:var(--red);text-decoration:none;}
.wl-go::after{content:"";position:absolute;inset:0;} /* whole card is one link */
.wl-go svg{width:16px;height:16px;transition:transform .2s;}
.wl-card:hover .wl-go svg{transform:translateX(4px);}

.wl-empty{display:none;padding:56px 0 8px;}
.wl-empty.show{display:block;}
.wl-empty .box{max-width:620px;margin:0 auto;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-sm);}
.wl-empty h2{font-size:26px;margin:0 0 8px;}
.wl-empty p{color:var(--text-mid);margin:0 0 18px;}

/* ---------- CTA band ---------- */
.wl-cta{padding:88px 0;color:#fff;overflow:hidden;}
.wl-cta .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px;align-items:center;}
.wl-cta h2{font-size:44px;color:#fff;margin:16px 0 0;text-wrap:balance;}
.wl-cta p{font-size:18px;color:rgba(255,255,255,.85);margin:18px 0 0;max-width:520px;}
.wl-cta .btn{margin-top:30px;}
.wl-cta-photo{margin:0;width:100%;max-width:480px;justify-self:end;}
.wl-cta-photo img{display:block;width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;object-position:center 22%;border-radius:var(--radius-lg);box-shadow:0 30px 70px rgba(0,0,0,.35);}

@media (max-width:1100px){
  .wl-cat-grid{grid-template-columns:240px minmax(0,1fr);gap:32px;}
}
@media (max-width:860px){
  .wl-cat{padding:64px 0;}
  .wl-cat-grid{grid-template-columns:1fr;gap:24px;}
  .wl-crew{position:static;display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;}
  .wl-crew img{aspect-ratio:1/1;object-position:center 22%;border-radius:50%;}
  .wl-crew figcaption{margin:0;flex-direction:column;align-items:flex-start;gap:6px;}
  .wl-cat .shead h2{font-size:30px;}
  .wl-cta{padding:64px 0;}
  .wl-cta .wrap{grid-template-columns:1fr;gap:32px;}
  .wl-cta h2{font-size:32px;}
  .wl-cta-photo{justify-self:stretch;max-width:none;}
  .wl-cta-photo img{aspect-ratio:4/3;}
  .wl-hero .hero-media img.imgslot{height:420px;}
}
@media (max-width:560px){
  .wl-cards{grid-template-columns:1fr;}
  .wl-search .wl-count{display:none;}
}
@media (prefers-reduced-motion:reduce){
  .wl-card,.wl-go svg{transition:none;}
}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
