/* AUDIO GHOSTS · April theme, second pass (Belma, 14 Oct 2026):
   past events, events ↔ works, and the polish of photographs, galleries, work pages and publications.
   Draft tokens only (style.css :root). Loaded after ext.css. */

.theme-april{--cat-guest:#E0905A;--cat-series:#3DB896;--cat-other:#7B5CE0}

/* ── past events: by year, one row each, filter chips in the timeline's colours ── */
.theme-april .pe{max-width:1080px}
.theme-april .pe-head{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-5)}
.theme-april .pe-head .kicker{margin:0}
.theme-april .pe-filter{display:flex;gap:6px;flex-wrap:wrap}
.theme-april .pe-filter button{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);background:none;
  border:.5px solid var(--border-strong);border-radius:100px;padding:7px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:color .2s,border-color .2s,background .2s}
.theme-april .pe-filter button:hover{color:var(--ink);border-color:var(--ink)}
.theme-april .pe-filter button[aria-pressed=true]{color:#fff;background:var(--ink);border-color:var(--ink)}
.theme-april .pe-filter i,.theme-april .pe-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex:none}
.theme-april i.guest,.theme-april [data-cat=guest] .pe-dot{background:var(--cat-guest)}
.theme-april i.series,.theme-april [data-cat=series] .pe-dot{background:var(--cat-series)}
.theme-april i.other,.theme-april [data-cat=other] .pe-dot{background:var(--cat-other)}
.theme-april .pe-year{display:grid;grid-template-columns:120px minmax(0,1fr);gap:var(--s-5);padding:var(--s-5) 0;border-top:.5px solid var(--border-strong)}
.theme-april .pe-year[hidden]{display:none}
.theme-april .pe-y{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,3vw,40px);letter-spacing:-.02em;color:rgba(26,32,56,.16);line-height:1;margin:0;position:sticky;top:90px;align-self:start}
.theme-april .pe-list{list-style:none;margin:0;padding:0}
.theme-april .pe-row{border-bottom:.5px solid var(--border)}
.theme-april .pe-row:last-child{border-bottom:0}
.theme-april .pe-row[hidden]{display:none}
.theme-april .pe-row a{display:grid;grid-template-columns:10px 92px minmax(0,1fr) minmax(0,.55fr) 20px;gap:var(--s-4);align-items:baseline;padding:13px var(--s-2);text-decoration:none;color:var(--ink);
  transition:background .25s var(--ease-smooth),padding .3s var(--ease-smooth)}
.theme-april .pe-row a:hover{background:rgba(255,255,255,.75);padding-left:var(--s-4)}
.theme-april .pe-dot{transform:translateY(-1px)}
.theme-april .pe-date{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--slate);white-space:nowrap}
.theme-april .pe-t{font-family:var(--font-body);font-weight:600;font-size:15.5px;line-height:1.4}
.theme-april .pe-v{font-family:var(--font-body);font-size:13px;color:var(--slate);line-height:1.4}
.theme-april .pe-ar{font-family:var(--font-mono);color:var(--slate);transition:transform .3s var(--ease-smooth)}
.theme-april .pe-row a:hover .pe-ar{transform:translateX(4px);color:var(--ink)}

/* ── the work an event presents: one card, picture left, the work's own opening words right ── */
.theme-april .wc-sec{max-width:1080px}
.theme-april .work-card{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:var(--s-6);align-items:center;text-decoration:none;color:var(--ink);
  background:var(--bg-card);border:.5px solid rgba(176,148,255,.28);padding:var(--s-4);margin-bottom:var(--s-4);
  box-shadow:inset 0 1px 0 rgba(176,148,255,.08),0 1px 2px rgba(26,32,56,.03),0 12px 40px rgba(26,32,56,.06);
  transition:transform .4s var(--ease-smooth),box-shadow .4s var(--ease-smooth),border-color .4s var(--ease-smooth)}
.theme-april .work-card:hover{transform:translateY(-2px);border-color:rgba(176,148,255,.5);box-shadow:inset 0 1px 0 rgba(176,148,255,.12),0 2px 6px rgba(26,32,56,.04),0 18px 50px rgba(176,148,255,.14)}
.theme-april .work-card.wc-noimg{grid-template-columns:minmax(0,1fr);padding:var(--s-5) var(--s-6)}
.theme-april .wc-img{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--bg)}
.theme-april .wc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease-smooth)}
.theme-april .work-card:hover .wc-img img{transform:scale(1.03)}
.theme-april .wc-body{display:flex;flex-direction:column;gap:8px;padding-right:var(--s-4)}
.theme-april .wc-k{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#7B5CE0}
.theme-april .wc-name{font-family:var(--font-display);font-weight:700;font-size:clamp(22px,2.2vw,30px);letter-spacing:-.01em;line-height:1.15}
.theme-april .wc-work{font-family:var(--font-display);font-size:15px;color:var(--ink-soft)}
.theme-april .wc-ex{font-family:var(--font-body);font-size:15.5px;line-height:1.65;color:var(--ink-soft);margin-top:4px}
.theme-april .wc-more{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-top:6px}
.theme-april .work-card:hover .wc-more{color:#7B5CE0}

/* ── a work's dates (artist and project pages) ── */
.theme-april .wd-sec{max-width:1080px}
.theme-april .work-dates{list-style:none;margin:0;padding:0;border-top:.5px solid var(--border-strong)}
.theme-april .wd-row{border-bottom:.5px solid var(--border)}
.theme-april .wd-row a{display:grid;grid-template-columns:200px minmax(0,1fr) minmax(0,.5fr) auto 20px;gap:var(--s-4);align-items:baseline;padding:13px var(--s-2);text-decoration:none;color:var(--ink);transition:background .25s,padding .3s var(--ease-smooth)}
.theme-april .wd-row a:hover{background:rgba(255,255,255,.75);padding-left:var(--s-4)}
.theme-april .wd-date{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--slate)}
.theme-april .wd-t{font-family:var(--font-body);font-weight:600;font-size:15px}
.theme-april .wd-v{font-size:13px;color:var(--slate)}
.theme-april .wd-ar{font-family:var(--font-mono);color:var(--slate)}
.theme-april .wd-badge{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:#7B5CE0;padding:3px 8px;border-radius:100px}
.theme-april .wd-row.is-ahead .wd-date{color:var(--ink)}

@media (max-width:860px){
  .theme-april .pe-year{grid-template-columns:minmax(0,1fr);gap:var(--s-2)}
  .theme-april .pe-y{position:static}
  .theme-april .pe-row a{grid-template-columns:10px minmax(0,1fr) 16px;row-gap:2px}
  .theme-april .pe-date{grid-column:2}
  .theme-april .pe-t{grid-column:2}
  .theme-april .pe-v{grid-column:2}
  .theme-april .pe-ar{grid-column:3;grid-row:1}
  .theme-april .work-card{grid-template-columns:minmax(0,1fr);gap:var(--s-4)}
  .theme-april .wc-body{padding:0 var(--s-2) var(--s-2)}
  .theme-april .wd-row a{grid-template-columns:minmax(0,1fr) auto;row-gap:2px}
  .theme-april .wd-row a>*{grid-column:1}
  .theme-april .wd-badge{grid-column:2;grid-row:1;justify-self:end}
  .theme-april .wd-ar{display:none}
}

/* event details (Tribe Events labels): the draft's info grid, in line with the card above */
.theme-april .ev-facts{max-width:1080px}
.theme-april .ev-facts dl{display:grid;grid-template-columns:140px minmax(0,1fr);border-top:.5px solid var(--border-strong);margin:0}
.theme-april .ev-facts dt,.theme-april .ev-facts dd{padding:12px 0;border-bottom:.5px solid var(--border);margin:0}
.theme-april .ev-facts dt{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.theme-april .ev-facts dd{font-size:15px;color:var(--ink);overflow-wrap:anywhere}
.theme-april .ev-facts dd a{color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--border-strong)}
.theme-april .pe-y{color:rgba(26,32,56,.24)}

/* ── A · photographs: the original in the draft's frame (style.css § 12 .content-figure-frame), no ghost layers ── */
.theme-april main .gimg:not(.float){background:var(--bg-card);border:.5px solid rgba(176,148,255,.28);isolation:auto;
  box-shadow:inset 0 0 32px rgba(176,148,255,.04),0 1px 2px rgba(26,32,56,.03),0 12px 40px rgba(26,32,56,.07);
  transition:transform .45s var(--ease-smooth),box-shadow .45s var(--ease-smooth),border-color .45s var(--ease-smooth)}
.theme-april main .gimg:not(.float) i{display:none}
.theme-april main .gimg:not(.float) img{opacity:1}
.theme-april main .gimg[data-lb]:hover{transform:translateY(-3px);border-color:rgba(176,148,255,.5);
  box-shadow:inset 0 0 32px rgba(176,148,255,.06),0 2px 6px rgba(26,32,56,.05),0 22px 56px rgba(123,92,224,.16)}
/* pictures inside the running text: framed, never wider than a reading column, never taller than the screen */
.theme-april .ed-col figure,.theme-april .editorial-body figure,.theme-april .dz-text figure,.theme-april .cp-text figure{margin:var(--s-6) auto;text-align:center}
.theme-april .ed-col figure img,.theme-april .editorial-body figure img,.theme-april .dz-text figure img,.theme-april .cp-text figure img,
.theme-april .ed-col p>a>img,.theme-april .dz-text p>a>img,.theme-april .editorial-body p>a>img,.theme-april .editorial-body p>img{display:block;margin:var(--s-5) auto;max-width:min(100%,560px);max-height:70vh;width:auto;height:auto;
  border:.5px solid rgba(176,148,255,.28);box-shadow:0 1px 2px rgba(26,32,56,.03),0 12px 40px rgba(26,32,56,.07);cursor:zoom-in;
  transition:transform .45s var(--ease-smooth),box-shadow .45s var(--ease-smooth)}
.theme-april main img.zoomable:hover{transform:translateY(-3px);box-shadow:0 2px 6px rgba(26,32,56,.05),0 22px 56px rgba(123,92,224,.16)}
.theme-april main .cap{font-family:var(--font-body);font-style:italic;font-size:13px;letter-spacing:0;text-transform:none;color:var(--slate);margin-top:10px;line-height:1.5}

/* develop: a photograph arrives once, pale and soft, and settles into the original (polish.js marks it; the head script turns it on) */
.theme-april img.dv{transition:opacity 1.1s var(--ease-smooth),filter 1.8s var(--ease-smooth),transform 2s var(--ease-smooth)}
html.ag-dev .theme-april img.dv:not(.developed){opacity:.3;filter:blur(10px) grayscale(1) contrast(.75) brightness(1.15);transform:scale(1.035)}
@media (prefers-reduced-motion:reduce){html.ag-dev .theme-april img.dv:not(.developed){opacity:1;filter:none;transform:none}}

/* lightbox: the draft's (§ 12) dark veil; the photograph itself, at once */
.theme-april .lb{background:rgba(10,6,24,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.theme-april .lb .gimg{background:transparent;box-shadow:0 0 0 1px rgba(176,148,255,.14),0 20px 80px rgba(0,0,0,.55)}
.theme-april .lb .gimg i{display:none}
.theme-april .lb .gimg img{opacity:1;transition:opacity .4s ease}
.theme-april .lb .cap{font-family:var(--font-body);font-style:italic;font-size:13px;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.72);text-align:center;margin-top:14px}
.theme-april .lb-count{color:rgba(255,255,255,.6)}

/* ── B · galleries: four or more photographs slide in one row; fewer stand side by side ── */
.theme-april .gal-sec{max-width:none;padding-left:0;padding-right:0}
.theme-april .gal-head{max-width:1240px;margin:0 auto var(--s-5);padding:0 var(--s-5);display:flex;justify-content:space-between;align-items:center;gap:var(--s-4)}
.theme-april .gal-head .kicker{margin:0}
.theme-april .strip-nav{display:flex;align-items:center;gap:var(--s-3)}
.theme-april .strip-b{width:40px;height:40px;border-radius:50%;border:.5px solid var(--border-strong);background:var(--bg-card);color:var(--ink);font-family:var(--font-mono);cursor:pointer;transition:border-color .2s,transform .2s}
.theme-april .strip-b:hover{border-color:#7B5CE0;transform:scale(1.06)}
.theme-april .strip-b:disabled{opacity:.35;cursor:default;transform:none}
.theme-april .strip-n{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:var(--slate);min-width:64px;text-align:center}
.theme-april .strip{display:flex;gap:var(--s-5);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;
  padding:var(--s-3) max(var(--s-5),calc(50vw - 330px)) var(--s-6);cursor:grab;outline:none}
.theme-april .strip::-webkit-scrollbar{display:none}
.theme-april .strip.is-drag{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.theme-april .strip .sf{flex:none;margin:0;scroll-snap-align:center;height:clamp(240px,52vh,540px);display:flex;flex-direction:column;
  transition:opacity .6s var(--ease-smooth),filter .6s var(--ease-smooth)}
.theme-april .strip .sf .gimg{height:100%;width:auto;flex:1 1 auto}
.theme-april .strip .sf:not(.is-center){opacity:.5;filter:saturate(.55)}
.theme-april .strip .sf .cap{max-width:100%;text-align:center}
.theme-april .strip:focus-visible{box-shadow:inset 0 0 0 1px rgba(123,92,224,.5)}
.theme-april .gal-row{max-width:1240px;margin:0 auto;padding:var(--s-3) var(--s-5) var(--s-6);display:flex;gap:var(--s-5);justify-content:center;flex-wrap:wrap}
.theme-april .gal-row .sf{margin:0;flex:0 1 auto;max-width:100%}
.theme-april .gal-row .gimg{height:clamp(220px,42vh,440px);width:auto;max-width:100%}

/* ── C · a work page as a dossier: picture and head lines side by side, the text, the bio as a colophon ── */
.theme-april .dossier{max-width:1180px}
.theme-april .dz-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s-6);align-items:stretch;margin-bottom:96px}
.theme-april .dz-head:last-child{margin-bottom:0}
.theme-april .dz-head.dz-solo{grid-template-columns:minmax(0,640px);justify-content:center}
/* the photograph is as tall as the fact card beside it (never smaller than 340px): one row, no picture towering over its facts.
   The frame crops; the lightbox shows the whole original. */
.theme-april .dz-lead{margin:0;width:100%;display:flex;min-height:340px;max-height:620px}
.theme-april .dz-lead .gimg{width:100%;height:auto;flex:1 1 auto;aspect-ratio:auto!important}
.theme-april .dz-facts{align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.theme-april .dz-statement{margin-top:var(--s-5);padding-top:var(--s-4);border-top:.5px solid var(--border-strong)}
.theme-april .dz-statement p{font-family:var(--font-display);font-style:italic;font-size:clamp(17px,1.5vw,20px);line-height:1.5;color:#7B5CE0;margin:0}
.theme-april .dz-facts{position:relative;background:var(--bg-card);border:.5px solid var(--border);padding:var(--s-6);
  box-shadow:0 1px 2px rgba(26,32,56,.03),0 8px 32px rgba(26,32,56,.05)}
.theme-april .dz-facts::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--ghost-warm),var(--purple-light),var(--ghost-cool))}
.theme-april .dz-lines{list-style:none;margin:0;padding:0}
.theme-april .dz-lines li{font-family:var(--font-mono);font-size:12.5px;line-height:1.6;color:var(--ink-soft);padding:10px 0;border-bottom:.5px solid var(--border)}
.theme-april .dz-lines li:last-child{border-bottom:0}
.theme-april .dz-lines li::before{content:none}
.theme-april .dz-lines li.is-b{font-family:var(--font-display);font-size:15px;color:var(--ink)}
.theme-april .dz-lines li:first-child.is-b{font-size:clamp(20px,2vw,26px);letter-spacing:-.01em;padding-top:0}
.theme-april .dz-lines li:nth-child(2) em{font-family:var(--font-display);font-size:15px;color:#7B5CE0}
.theme-april .dz-lines a{color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--border-strong)}
.theme-april .dz-text{max-width:720px;margin:0 auto}
.theme-april .dz-text p{font-family:var(--font-body);font-size:17px;line-height:1.75;color:var(--ink-soft);margin-bottom:var(--s-5)}
.theme-april .dz-text p.dz-lede{font-size:clamp(19px,1.6vw,22px);line-height:1.6;color:var(--ink)}
.theme-april .dz-text p.dz-lede.dz-cap::first-letter{font-family:var(--font-display);font-weight:700;float:left;font-size:3.6em;line-height:.82;margin:.06em .1em 0 0;color:#7B5CE0}
.theme-april .dz-text p.dz-verse{margin:0;font-family:var(--font-display);font-size:clamp(16px,1.4vw,19px);line-height:1.75;color:var(--ink)}
.theme-april .dz-text p.dz-verse+p:not(.dz-verse){margin-top:var(--s-5)}
.theme-april .dz-text a{color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--border-strong)}
/* artist pages: the phenomena named in the text stand beside it; "Part of …" closes the fact card in the body face */
.theme-april .dz-body{max-width:1080px;margin:0 auto}
.theme-april .dz-body.has-phen{display:grid;grid-template-columns:250px minmax(0,1fr);gap:var(--s-7);align-items:start}
.theme-april .dz-body.has-phen aside{position:sticky;top:100px}
.theme-april .dz-body.has-phen .dz-text{margin:0}
.theme-april .dz-lines li.is-part{font-family:var(--font-body);font-size:14px;color:var(--ink-soft)}
.theme-april .dz-inline{max-width:320px;margin:var(--s-6) auto 0}
.theme-april .dz-bio{max-width:1000px}
.theme-april .colophon{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--s-6);align-items:start;background:#F5F7FA;border-top:.5px solid var(--border-strong);border-bottom:.5px solid var(--border-strong);padding:var(--s-6)}
.theme-april .colophon.cp-solo{grid-template-columns:minmax(0,1fr)}
.theme-april .cp-portrait{margin:0}
.theme-april .cp-name{font-family:var(--font-display);font-size:clamp(20px,1.8vw,24px);letter-spacing:-.01em;color:var(--ink);margin:0 0 var(--s-4)}
.theme-april .cp-text p{font-size:15.5px;line-height:1.7;color:var(--ink-soft);margin-bottom:var(--s-4)}
.theme-april .cp-text a{color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--border-strong)}

/* ── D · publications: one card per publication, the date as its marker, the abstract folded ── */
.theme-april .pubs{max-width:1080px}
.theme-april .pubs-intro p{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--slate);margin:0 0 var(--s-6)}
.theme-april .pubs-intro strong{font-weight:500}
.theme-april .pub{display:grid;grid-template-columns:150px minmax(0,1fr);gap:var(--s-6);margin-bottom:var(--s-7)}
.theme-april .pub-when{font-family:var(--font-display);font-weight:700;line-height:1;color:rgba(26,32,56,.2);padding-top:var(--s-5)}
.theme-april .pub-y{display:block;font-size:clamp(40px,4vw,56px);letter-spacing:-.03em}
.theme-april .pub-m{display:block;font-size:20px;color:#7B5CE0;margin-top:6px;letter-spacing:.04em}
.theme-april .pub-card{position:relative;background:var(--bg-card);border:.5px solid rgba(176,148,255,.28);padding:var(--s-6) var(--s-6) var(--s-5);
  box-shadow:inset 0 1px 0 rgba(176,148,255,.08),0 1px 2px rgba(26,32,56,.03),0 12px 40px rgba(26,32,56,.06)}
.theme-april .pub-card::before{content:"";position:absolute;left:-.5px;top:-.5px;right:-.5px;height:2px;background:linear-gradient(90deg,var(--ghost-warm),var(--purple-light),var(--ghost-cool))}
.theme-april .pub-t{font-family:var(--font-display);font-weight:700;font-size:clamp(20px,2vw,27px);line-height:1.3;letter-spacing:-.01em;color:var(--ink);margin:0 0 var(--s-5)}
.theme-april .pub-f{display:grid;grid-template-columns:190px minmax(0,1fr);margin:0;border-top:.5px solid var(--border)}
.theme-april .pub-f dt,.theme-april .pub-f dd{margin:0;padding:12px 0;border-bottom:.5px solid var(--border)}
.theme-april .pub-f dt{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);padding-top:15px;padding-right:var(--s-4)}
.theme-april .pub-f dd{font-size:15px;line-height:1.6;color:var(--ink-soft)}
.theme-april .pub-f dd p{margin:0}
.theme-april .pub-f dd.pub-link a{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;
  font-family:var(--font-mono);font-size:12.5px;color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(123,92,224,.4)}
.theme-april .pub-f dd.pub-link a::after{content:" \2197";color:#7B5CE0}
.theme-april .pub-f dd.pub-link a:hover{border-bottom-color:#7B5CE0}
.theme-april .pub-abs{margin-top:var(--s-5)}
.theme-april .pub-abs summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);
  border:.5px solid var(--border-strong);border-radius:100px;padding:8px 16px;transition:border-color .2s,background .2s}
.theme-april .pub-abs summary::-webkit-details-marker{display:none}
.theme-april .pub-abs summary:hover{border-color:#7B5CE0}
.theme-april .pub-abs summary i{font-style:normal;color:#7B5CE0;transition:transform .3s var(--ease-smooth)}
.theme-april .pub-abs[open] summary i{transform:rotate(45deg)}
.theme-april .pub-abs-t{margin-top:var(--s-4);padding-left:var(--s-4);border-left:2px solid rgba(176,148,255,.35)}
.theme-april .pub-abs-t p{font-size:15.5px;line-height:1.75;color:var(--ink-soft)}

@media (max-width:860px){
  .theme-april .dz-head{grid-template-columns:minmax(0,1fr);gap:var(--s-5);margin-bottom:var(--s-6)}
  .theme-april .dz-lead{min-height:0;max-height:none}
  .theme-april .dz-lead .gimg{width:100%;aspect-ratio:var(--ar,1.33)!important}
  .theme-april .dz-body.has-phen{grid-template-columns:minmax(0,1fr);gap:var(--s-5)}
  .theme-april .dz-body.has-phen aside{position:static}
  .theme-april .colophon{grid-template-columns:minmax(0,1fr);padding:var(--s-5)}
  .theme-april .cp-portrait{max-width:220px}
  .theme-april .strip .sf{height:clamp(220px,46vh,420px)}
  .theme-april .strip{padding-left:var(--s-4);padding-right:var(--s-4)}
  .theme-april .gal-row .gimg{height:auto;width:100%}
  .theme-april .gal-row .sf{width:100%}
  .theme-april .pub{grid-template-columns:minmax(0,1fr);gap:var(--s-3)}
  .theme-april .pub-when{padding-top:0;display:flex;align-items:baseline;gap:4px}
  .theme-april .pub-y{font-size:34px}
  .theme-april .pub-m{font-size:16px;margin:0}
  .theme-april .pub-card{padding:var(--s-5) var(--s-4)}
  .theme-april .pub-f{grid-template-columns:minmax(0,1fr)}
  .theme-april .pub-f dt{border-bottom:0;padding-bottom:0}
  /* nothing under 11px on a phone: the draft's footer, labels and hints were 8 to 10px */
  .theme-april .footer-col h4,.theme-april .fp-label,.theme-april .fp-list,.theme-april .fp-list *,.theme-april .footer-signature,.theme-april .footer-signature *,
  .theme-april .footer-credit,.theme-april .fwf-sticker *,.theme-april .editorial-marker-label,.theme-april .editorial-divider-label,
  .theme-april .side-note,.theme-april .morse-hint,.theme-april .hero-hud,.theme-april .hero-hud *,
  .theme-april .pe-filter button,.theme-april .pe-filter span,.theme-april .wc-k,.theme-april .pub-f dt,.theme-april .ev-facts dt,
  .theme-april .chip,.theme-april .badge,.theme-april .ch,.theme-april .wd-badge,.theme-april main label,.theme-april main small{font-size:11px}
  .theme-april .footer-signature{gap:8px;flex-wrap:wrap}
}

/* ── legibility and narrow screens (mobile sweep, 14 Oct 2026) ── */
/* small lavender labels: the draft's rgba(176,148,255,.85) measures about 2.3:1 on paper; this violet keeps the hue at 5:1 */
.theme-april .editorial-divider-label,.theme-april .form-row label,.theme-april .morse-hint{color:#6B4BD8}
/* media library: titles in the body face, never wider than their tile; two columns on a phone, the featured tile across both */
.theme-april .tile h4{font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:-.01em;text-transform:none;line-height:1.3;color:var(--ink);margin-top:12px;overflow-wrap:anywhere}
.theme-april .tile small{color:var(--slate)}
@media (max-width:900px){
  .theme-april .mgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .theme-april .tile{grid-column:span 1}
  .theme-april .tile.big{grid-column:span 2;grid-row:auto}
  .theme-april .tile.big .frame{height:auto;min-height:0;aspect-ratio:16/10}
  .theme-april .tile h4{font-size:14px}
  /* a long hero label wraps instead of running off the screen (Presentations) */
  .theme-april .page-hero-content .module-id{white-space:normal;overflow-wrap:anywhere;line-height:1.6;padding:0 var(--s-2)}
}

/* ── photo captions (14 Oct 2026): the description in italics, the credit apart in small mono; as wide as the photo ── */
.theme-april .cap .cap-d{display:block;font-style:italic}
.theme-april .cap .cap-c{display:block;font-family:var(--font-mono);font-style:normal;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin-top:4px}
.theme-april figure.fig{display:block;width:fit-content;max-width:min(100%,560px);margin:var(--s-6) auto}
.theme-april figure.fig img{margin:0;max-width:100%}
.theme-april figure.fig figcaption{text-align:center}
/* every caption centred under its photo, as the draft's .content-figure figcaption: a centred line never runs past the photo's edge (Belma, 14 Oct 2026) */
.theme-april main .cap,.theme-april .strip .sf .cap,.theme-april .gal-row .cap,.theme-april .cp-portrait .cap{text-align:center}
@media (max-width:860px){.theme-april .cap .cap-c{font-size:11px}}

/* News (Bernhard, 14 Oct 2026): the posts among the events, marked in ink */
.theme-april{--cat-news:var(--ink)}
.theme-april i.news,.theme-april [data-cat=news] .pe-dot{background:var(--cat-news);border-radius:1px}
.theme-april .pe-tag{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);border:.5px solid var(--border-strong);border-radius:100px;padding:3px 9px}

/* the imprint under Contact: its own title, the document below it; the footer link lands here */
.theme-april .doc-title{max-width:760px;margin:96px auto var(--s-5);padding:0 var(--s-5);font-family:var(--font-display);font-weight:700;font-size:clamp(22px,2.4vw,30px);letter-spacing:.04em;text-align:center;color:var(--ink);scroll-margin-top:110px}
@media (max-width:860px){.theme-april .pe-tag{font-size:11px}}

/* the home hero: the project's name is the ghost title, its tagline stands under it as the subtitle (as on About) */
.theme-april .ghost-title.is-name{font-weight:800;font-size:clamp(34px,9.4vw,120px);letter-spacing:.06em;line-height:1.08;margin-right:-.06em}
.theme-april .hero-subtitle{font-family:var(--font-display);font-weight:500;font-size:clamp(15px,1.85vw,24px);letter-spacing:.005em;line-height:1.4;color:rgba(255,255,255,.95);margin:var(--s-4) 0 0;text-shadow:-1.5px -1px 0 rgba(160,232,216,.5),1.5px 1px 0 rgba(249,197,160,.5);opacity:0;transform:translateY(6px);transition:opacity .8s var(--ease-smooth),transform .8s var(--ease-smooth);transition-delay:.85s}
.theme-april:not(.is-loading) .hero-subtitle{opacity:1;transform:none}
.theme-april .hero-subtitle span{display:inline-block}   /* on a phone it breaks after the dash, not inside a half */
.theme-april .hero-subtitle + .hero-tagline{margin-top:var(--s-5)}
.theme-april .hero-supra{color:rgba(255,255,255,.92);text-shadow:0 1px 10px rgba(43,28,90,.45)}   /* over the light photograph it was white at 55 %, barely there */
@media (prefers-reduced-motion:reduce){.theme-april .hero-subtitle{opacity:1;transform:none}}
