/* Unvarnish — Media pages (Podcasts / Vidéos). Enqueued by mu-plugin unvarnish-media.
   All selectors prefixed .unv-media- (global CSS — avoid theme collisions). rem only.
   Reuses tokens from unvarnish-swiss.css (:root --unv-*). */

/* ---- layout: media pages use the page-no-title template (no theme title/featured dup). ----
   Two swiss caps must be lifted ON MEDIA PAGES ONLY (articles keep their reading measure):
   1) `.wp-block-post-content{max-width:46rem}` — the article reading cap ; pins the whole
      content block to 736px, so even wide children can't breathe.
   2) `.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull))`
      clamp — forgets to exclude `.alignwide`, capping the columns to content-size. */
.page-id-193 .wp-block-post-content,
.page-id-194 .wp-block-post-content,
.wp-block-post-content:has(.unv-media-cols){max-width:none !important;}
.unv-media-cols.alignwide{max-width:var(--wp--style--global--wide-size) !important;margin-left:auto !important;margin-right:auto !important;}

/* hero = shared .unv-hero (defined at bottom) — media pages AND category archives use
   the SAME hero ([unv_hero] shortcode inside an alignfull wrapper). */

/* ---- tag filter bar (chips) ---- */
.unv-media-tagbar{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0 0 1rem;border-bottom:1px solid var(--unv-line);}
.unv-media-chip{display:inline-block;font-size:.78rem;font-weight:600;letter-spacing:-.01em;color:var(--unv-ink);background:var(--unv-paper);border:1px solid var(--unv-line);padding:.32rem .8rem;border-radius:999px;}
.unv-media-chip:hover{border-color:var(--unv-red);color:var(--unv-red);text-decoration:none;}
.unv-media-chip.is-active{background:var(--unv-ink);color:#fff;border-color:var(--unv-ink);}
.unv-media-active{font-size:.82rem;color:var(--unv-grey);margin:.8rem 0 0;}
.unv-media-active a{color:var(--unv-red);}

/* ---- grid + cards ---- */
.unv-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1.6rem;margin:1.5rem 0 0;}
.unv-media-card{display:flex;flex-direction:column;border:1px solid var(--unv-line);background:var(--unv-paper);}
.unv-media-thumb{display:block;}
.unv-media-thumb img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;}
.unv-media-player--video video{display:block;width:100%;aspect-ratio:16/9;height:auto;background:#000;}
.unv-media-body{display:flex;flex-direction:column;flex:1;padding:.9rem 1rem 1.1rem;}
.unv-media-player{margin:0 0 .7rem;}
.unv-media-card audio{display:block;width:100%;height:2.5rem;}

/* card title: override the global giant h2 (swiss: clamp 1.7-2.5rem + margin-top 4.25rem) */
.unv-media-card .unv-media-title{font-weight:600 !important;font-size:1.05rem !important;line-height:1.2 !important;letter-spacing:-.01em;margin:0 0 .45rem !important;}
.unv-media-title a{color:var(--unv-ink);}
.unv-media-title a:hover{color:var(--unv-red);}

.unv-media-desc{font-size:.86rem;line-height:1.5;color:var(--unv-grey);margin:0 0 .7rem;}

/* per-card tag links */
.unv-media-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin:0 0 .8rem;}
.unv-media-tag{display:inline-block;font-size:.68rem;font-weight:600;letter-spacing:.02em;color:var(--unv-grey);border:1px solid var(--unv-line);padding:.1rem .45rem;border-radius:999px;}
.unv-media-tag:hover{color:var(--unv-red);border-color:var(--unv-red);text-decoration:none;}
.unv-media-tag.is-active{background:var(--unv-ink);color:#fff;border-color:var(--unv-ink);}

.unv-media-cta{margin:auto 0 0;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;}
.unv-media-cta a{color:var(--unv-red);}

/* ---- pagination ---- */
.unv-media-pagination{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;margin:2.5rem 0 1rem;}
.unv-media-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:2.2rem;height:2.2rem;padding:0 .5rem;border:1px solid var(--unv-line);font-size:.85rem;font-weight:600;color:var(--unv-ink);}
.unv-media-pagination a.page-numbers:hover{border-color:var(--unv-red);color:var(--unv-red);text-decoration:none;}
.unv-media-pagination .page-numbers.current{background:var(--unv-ink);color:#fff;border-color:var(--unv-ink);}
.unv-media-pagination .page-numbers.dots{border-color:transparent;min-width:auto;}

/* ---- empty ---- */
.unv-media-empty{font-size:.95rem;color:var(--unv-grey);padding:2rem 0;}
.unv-media-empty a{color:var(--unv-red);}

@media (max-width:30rem){.unv-media-grid{grid-template-columns:1fr;}}

/* ---- SHARED section hero: [unv_hero] inside an alignfull wrapper (.unv-herowrap).
   Used by BOTH the media pages (Podcasts/Vidéos) and the category archives — same template.
   The alignfull wrapper does the full-bleed (core handles it, swiss excludes alignfull) ;
   the hero is width:100% of it. Height is CAPPED (clamp) so the image is never too tall. ---- */
.unv-herowrap{margin-top:0;margin-bottom:0;}
.unv-hero{position:relative;width:100%;height:clamp(11rem,26vh,19rem);display:flex;align-items:flex-end;background:var(--unv-ink) center/cover no-repeat;}
.unv-hero::after{content:"";position:absolute;inset:0;background:rgba(17,17,17,.45);}
.unv-hero__inner{position:relative;z-index:1;width:100%;max-width:var(--wp--style--global--wide-size);margin:0 auto;padding:1.5rem var(--wp--preset--spacing--32,1.2rem);box-sizing:border-box;}
.unv-hero__title{color:#fff !important;margin:0 !important;font-weight:600 !important;}
.unv-hero__desc,.unv-hero__desc p{color:#fff;margin:0;}
.unv-hero__desc{max-width:40rem;margin-top:.5rem;font-size:1.05rem;line-height:1.5;}

/* ---- articles archive (/enquetes/) : filter bar = category chips only (reuse .unv-media-tagbar/.chip). ---- */
.unv-art-filterbar{margin:0 0 .2rem;}
