/* Richard Casazza François · feuille de style */

@font-face{font-family:"Instrument Sans";src:url("fonts/instrument-sans-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url("fonts/instrument-sans-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url("fonts/instrument-sans-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("fonts/instrument-serif-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("fonts/instrument-serif-400-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}

:root{
  --paper:#FAFAF7;
  --ink:#111111;
  --text:#2A2A27;
  --muted:#5C5C57;
  --line:#DEDCD5;
  --ikb:#002FA7;
  --ikb-deep:#00217A;
  --ikb-tint:#EEF1FA;
  --sans:"Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --wrap:1320px;
  --gutter:clamp(20px,4vw,48px);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{max-width:100%;display:block}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em;transition:color .2s}
a:hover{color:var(--ikb)}
:focus-visible{outline:2px solid var(--ikb);outline-offset:3px}
::selection{background:var(--ikb);color:#fff}
p{margin:0 0 1em}
h1,h2,h3,h4{font-weight:400;margin:0;line-height:1.08;letter-spacing:-.02em}

.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gutter)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:-9999px;top:12px;z-index:50;background:var(--ikb);color:#fff;padding:12px 18px;text-decoration:none}
.skip:focus{left:12px;color:#fff}

/* Typographie utilitaire */
.eyebrow{font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0}
.it{font-family:var(--serif);font-style:italic;font-weight:400}
.blue{color:var(--ikb)}
.muted{color:var(--muted)}
.lead{font-size:clamp(1.15rem,1.7vw,1.4rem);line-height:1.5;color:var(--text);max-width:40ch}
.prose{max-width:64ch;color:var(--text)}
.prose p{margin:0 0 1.15em}
.prose strong{color:var(--ink);font-weight:500}

/* En-tête */
.site-header{border-bottom:1px solid var(--line);background:var(--paper)}
.site-header .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 32px;padding-block:18px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-weight:500;font-size:1rem;letter-spacing:.005em;min-height:44px}
.brand:hover{color:var(--ink)}
.brand-mark{width:18px;height:18px;background:var(--ikb);flex:none;transition:transform .35s ease}
.brand:hover .brand-mark{transform:rotate(90deg)}
.nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 28px}
.nav a{position:relative;display:inline-block;padding:10px 0;text-decoration:none;font-size:.95rem}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:var(--ikb);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav a[aria-current="page"]{color:var(--ikb)}
@media (max-width:760px){
  .nav{width:100%}
  .nav ul{gap:0 20px}
  .nav a{white-space:nowrap;font-size:.92rem}
}

/* Boutons */
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 22px;border:1px solid var(--ink);background:transparent;color:var(--ink);text-decoration:none;font:inherit;font-weight:500;font-size:.95rem;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn:hover{background:var(--ink);color:var(--paper)}
.btn-ikb{background:var(--ikb);border-color:var(--ikb);color:#fff}
.btn-ikb:hover{background:var(--ikb-deep);border-color:var(--ikb-deep);color:#fff}
.btn-light{border-color:#fff;color:#fff}
.btn-light:hover{background:#fff;color:var(--ikb)}
.arrow{display:inline-block;transition:transform .2s}
.btn:hover .arrow,.link-arrow:hover .arrow{transform:translateX(4px)}
.link-arrow{font-weight:500;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.ext{font-size:.8em}

/* Accueil : ouverture */
.hero{padding-block:clamp(56px,9vw,132px) clamp(40px,6vw,88px)}
.onair{display:inline-flex;align-items:center;gap:12px}
.bars{display:inline-flex;align-items:flex-end;gap:3px;height:14px}
.bars i{display:block;width:3px;height:100%;background:var(--ikb);transform-origin:bottom;animation:eq 1.2s ease-in-out infinite}
.bars i:nth-child(2){animation-delay:-.45s}
.bars i:nth-child(3){animation-delay:-.2s}
.bars i:nth-child(4){animation-delay:-.75s}
.bars i:nth-child(5){animation-delay:-.6s}
@keyframes eq{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
.display{font-size:clamp(3.3rem,9.4vw,9rem);line-height:.96;letter-spacing:-.04em;margin-top:28px}
.display .it{letter-spacing:-.02em;display:inline-block;white-space:nowrap}
.hero-foot{display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-end;justify-content:space-between;margin-top:clamp(36px,5vw,56px)}

/* Rendez-vous */
.rdv{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rdv li{padding:20px 24px 22px 0;display:grid;gap:4px}
.rdv li+li{padding-left:24px;border-left:1px solid var(--line)}
.rdv strong{font-weight:500}
.rdv span{font-size:.9rem;color:var(--muted)}
@media (max-width:540px){.rdv li+li{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

/* Sections */
.section{padding-block:clamp(64px,8vw,120px)}
.section-head{display:flex;flex-wrap:wrap;gap:12px 48px;align-items:baseline;justify-content:space-between;border-top:1px solid var(--ink);padding-top:18px;margin-bottom:clamp(28px,4vw,52px)}
.section-head h2{font-size:clamp(1.9rem,3.4vw,2.9rem)}
.section-head p{margin:0;max-width:52ch;color:var(--muted)}

/* À la une */
.feature{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(24px,4vw,64px);align-items:end}
.mono{grid-column:span 7;position:relative;aspect-ratio:4/3;background:var(--ikb);color:#fff;padding:clamp(22px,3vw,40px);display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;overflow:hidden;isolation:isolate}
.mono::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 85% 15%,rgba(255,255,255,.10),transparent 60%);z-index:-1;transition:opacity .4s;opacity:.6}
.mono:hover{color:#fff}
.mono:hover::before{opacity:1}
.mono .big{font-family:var(--serif);font-style:italic;font-size:clamp(2.6rem,6.4vw,6rem);line-height:.98;letter-spacing:-.02em}
.mono .top{display:flex;justify-content:space-between;gap:16px;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase}
.feature-text{grid-column:span 5;display:grid;gap:18px}
.feature-text h3{font-size:clamp(1.6rem,2.4vw,2.2rem)}
.feature-text p{margin:0;color:var(--text)}
@media (max-width:900px){.mono,.feature-text{grid-column:1/-1}}

/* Cartes émissions */
.shows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
@media (max-width:980px){.shows{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.shows{grid-template-columns:1fr}.show-card{min-height:0}}
.show-card.is-cta{background:var(--ikb);color:#fff}
.show-card.is-cta .muted{color:rgba(255,255,255,.86)}
.show-card.is-cta .num{color:rgba(255,255,255,.7)}
.show-card.is-cta:hover,.show-card.is-cta:focus-visible{background:var(--ikb-deep)}
.show-card{display:flex;flex-direction:column;gap:14px;min-height:320px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;transition:background .3s,color .3s}
.show-card:hover,.show-card:focus-visible{background:var(--ikb);color:#fff}
.show-card:hover .muted,.show-card:focus-visible .muted{color:rgba(255,255,255,.86)}
.show-card .num{font-family:var(--serif);font-size:1.3rem;color:var(--muted)}
.show-card h3{font-family:var(--serif);font-style:italic;font-size:clamp(2.1rem,3.1vw,2.7rem);line-height:1}
.show-card p{margin:0}
.show-card .when{margin-top:auto;font-size:.875rem;display:flex;justify-content:space-between;gap:12px;align-items:baseline}

/* Bandeau bleu */
.band{background:var(--ikb);color:#fff;padding-block:clamp(84px,12vw,184px);overflow:hidden}
.band .eyebrow{color:rgba(255,255,255,.82)}
.motto{font-family:var(--serif);font-style:italic;font-size:clamp(3.2rem,9vw,8.4rem);line-height:.98;letter-spacing:-.025em;margin:24px 0 0}
.motto span{display:inline-block}
.band-foot{display:flex;flex-wrap:wrap;gap:24px 48px;align-items:flex-end;justify-content:space-between;margin-top:clamp(36px,5vw,64px)}
.band-foot p{margin:0;max-width:46ch;color:rgba(255,255,255,.9)}
.band a:hover{color:#fff}

/* Listes de productions */
.list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.item{display:grid;grid-template-columns:150px minmax(0,1fr) 240px;gap:6px 32px;padding:24px 0;border-bottom:1px solid var(--line);align-items:baseline}
.item[hidden]{display:none}
.item .date{font-size:.875rem;color:var(--muted)}
.item h3{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2.3vw,2.05rem);line-height:1.1}
.item h3 a{text-decoration:none}
.item h3 a:hover{color:var(--ikb)}
.item .place{margin:.4rem 0 0;color:var(--text)}
.item .guests{margin:.3rem 0 0;color:var(--muted);font-size:.95rem}
.item .side{display:grid;gap:8px;justify-items:start;font-size:.9rem}
.tag{display:inline-block;font-size:.8125rem;line-height:1.4;border:1px solid var(--line);padding:3px 11px;border-radius:999px;text-decoration:none;background:var(--paper)}
a.tag:hover{border-color:var(--ikb);color:var(--ikb)}
.tag-ikb{border-color:var(--ikb);color:var(--ikb)}
@media (max-width:820px){.item{grid-template-columns:1fr}.item .side{margin-top:6px}}

/* Défilement des invités */
.marquee{position:relative;overflow:hidden;border-block:1px solid var(--line);padding-block:clamp(22px,3vw,34px)}
.marquee-track{display:flex;width:max-content;animation:scroll 80s linear infinite}
.marquee:hover .marquee-track,.marquee.is-paused .marquee-track{animation-play-state:paused}
.marquee ul{display:flex;list-style:none;margin:0;padding:0}
.marquee li{font-family:var(--serif);font-style:italic;font-size:clamp(2rem,4.6vw,3.9rem);line-height:1.1;white-space:nowrap;padding-right:.55em}
.marquee li::after{content:"\00B7";font-style:normal;margin-left:.55em;color:var(--line)}
.marquee li:nth-child(3n+2){color:var(--ikb)}
@keyframes scroll{to{transform:translateX(-50%)}}
.marquee-ctrl{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;flex-wrap:wrap}
.pause-btn{min-height:44px;padding:0 16px;border:1px solid var(--line);background:transparent;font:inherit;font-size:.875rem;color:var(--muted);cursor:pointer}
.pause-btn:hover{border-color:var(--ink);color:var(--ink)}

/* Colonnes actualité / lectures */
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(48px,6vw,104px)}
.cols h3.col-title{font-size:clamp(1.5rem,2.4vw,2rem);margin-bottom:12px}
.news{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.news li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.news .when{font-size:.875rem;color:var(--muted)}
.news p{margin:0}
.news .t{font-weight:500}
@media (max-width:480px){.news li{grid-template-columns:1fr;gap:4px}}
.books{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.book{display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center}
.cover{width:52px;height:74px;background:var(--ikb);box-shadow:inset -6px 0 0 rgba(0,0,0,.14)}
.cover-ink{background:var(--ink)}
.cover-tint{background:var(--ikb-tint);box-shadow:inset -6px 0 0 rgba(0,47,167,.18)}
.cover-line{background:var(--paper);border:1px solid var(--ink);box-shadow:none}
.book .t{font-family:var(--serif);font-style:italic;font-size:1.45rem;line-height:1.15}
.book p{margin:0}

/* Appel à collaborer */
.cta{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:32px 72px;align-items:end;border-top:1px solid var(--ink);padding-top:clamp(28px,4vw,48px)}
.cta h2{font-size:clamp(2.4rem,5.6vw,5rem);line-height:1}
.cta p{color:var(--text)}

/* Pages intérieures */
.page-head{padding-block:clamp(40px,6vw,88px) clamp(28px,4vw,56px)}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 clamp(24px,4vw,40px);padding:0;font-size:.875rem;color:var(--muted)}
.breadcrumb li+li::before{content:"/";margin-right:8px;color:#B9B7AF}
.breadcrumb a{text-decoration:none}
.page-title{font-size:clamp(3rem,8vw,7.2rem);line-height:1;letter-spacing:-.035em;padding-top:.08em}
.page-head .eyebrow{margin-bottom:14px}
.page-intro{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:32px 72px;align-items:start;margin-top:clamp(28px,4vw,48px)}
.facts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0;list-style:none}
.aside-box{border-top:1px solid var(--ink);padding-top:18px;display:grid;gap:16px}
.aside-box p{margin:0}

/* Navigation entre émissions */
.pager{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));border-top:1px solid var(--line)}
.pager a{display:grid;gap:6px;padding:24px 24px 24px 0;text-decoration:none;border-bottom:1px solid var(--line)}
.pager a:hover .it{color:var(--ikb)}
.pager .it{font-size:1.9rem;line-height:1}

/* Filtres */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}
.chip{min-height:44px;padding:0 18px;border:1px solid var(--ink);background:transparent;color:var(--ink);border-radius:999px;font:inherit;font-size:.9rem;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.chip:hover{border-color:var(--ikb);color:var(--ikb)}
.chip[aria-pressed="true"]{background:var(--ikb);border-color:var(--ikb);color:#fff}
.count{font-size:.9rem;color:var(--muted);margin:0 0 12px}

/* Index des invités */
.guests-index{columns:3 220px;column-gap:40px;list-style:none;margin:0;padding:0}
.guests-index li{break-inside:avoid;padding:6px 0;border-bottom:1px solid var(--line);font-size:1rem}

/* À propos */
.about-quote{font-family:var(--serif);font-style:italic;font-size:clamp(2rem,4.4vw,3.8rem);line-height:1.08;letter-spacing:-.02em;margin:0;max-width:20ch}
.about-quote .blue{font-style:italic}
.terr{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}

/* Formulaire */
.form{display:grid;gap:22px;max-width:760px}
.field{display:grid;gap:8px;align-content:start}
.field label,.field legend{font-weight:500;font-size:.95rem}
.field .hint{font-size:.85rem;color:var(--muted);margin:0}
.req{color:var(--ikb)}
input,select,textarea{font:inherit;color:var(--ink);background:#fff;border:1px solid #A9A79F;border-radius:0;padding:12px 14px;min-height:48px;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--ikb);outline-offset:0;border-color:var(--ikb)}
textarea{min-height:200px;resize:vertical;line-height:1.5}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
.row2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:22px}
.check{display:flex;gap:12px;align-items:flex-start;font-size:.95rem}
.check input{width:22px;height:22px;min-height:0;margin:2px 0 0;flex:none;accent-color:var(--ikb)}
.hp{display:none!important}
.notice{border-left:3px solid var(--ikb);padding:4px 0 4px 16px;color:var(--text)}

/* Pied de page */
.site-footer{border-top:1px solid var(--ink);margin-top:clamp(56px,8vw,112px)}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:32px 40px;padding-block:40px 28px}
.footer-grid h2{font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-family:var(--sans)}
.footer-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.footer-grid a{text-decoration:none;display:inline-block;padding:3px 0}
.footer-motto{font-family:var(--serif);font-style:italic;font-size:1.6rem;line-height:1.15;margin:12px 0 0}
.footer-bottom{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;padding-block:20px 40px;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}
.footer-bottom a{text-decoration:none}

/* Mouvement réduit */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .marquee-track{width:auto}
  .marquee ul{flex-wrap:wrap;padding-inline:var(--gutter)}
  .marquee ul[aria-hidden="true"]{display:none}
  .pause-btn{display:none}
}

/* Impression */
@media print{
  .site-header .nav,.marquee,.band,.btns,.pause-btn,.skip{display:none!important}
  body{background:#fff}
  a{text-decoration:underline}
}


/* ---------- Écoute directe (flux RSS) ---------- */
.listen-subscribe{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.listen-subscribe a{color:var(--ink)}
.listen-subscribe a:hover{border-color:var(--ikb);color:var(--ikb)}
.listen-status{color:var(--muted);padding:24px 0;margin:0}
.player{display:grid;grid-template-columns:160px minmax(0,1fr);gap:28px;padding:28px;background:var(--ikb-tint);border-left:3px solid var(--ikb);margin-bottom:8px}
.player-cover{width:160px;height:160px;object-fit:cover;display:block;background:var(--line)}
.player-info{min-width:0}
.player-kicker{font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ikb);margin:0 0 6px}
.player-title{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.15;color:var(--ink);margin:0 0 16px}
.player-audio{width:100%;max-width:620px;display:block;margin:0 0 14px;accent-color:var(--ikb)}
.player-text{color:var(--text);font-size:.9375rem;line-height:1.55;max-width:68ch;margin:0}
.episodes{list-style:none;margin:0;padding:0}
.ep{display:flex;align-items:center;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}
.ep-play{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--ikb);background:transparent;color:var(--ikb);display:grid;place-items:center;cursor:pointer;transition:background .15s,color .15s}
.ep-play:hover,.ep-play:focus-visible,.ep.is-current .ep-play{background:var(--ikb);color:#fff}
.ep-play:focus-visible{outline:2px solid var(--ikb);outline-offset:3px}
.ep-play svg{margin-left:2px}
.ep-meta{display:flex;flex-direction:column;gap:2px;min-width:0}
.ep-title{color:var(--ink);font-weight:500}
.ep.is-current .ep-title{color:var(--ikb)}
.ep-info{color:var(--muted);font-size:.875rem}
.ep-more{margin-top:18px;font:inherit;font-size:.9375rem;background:none;border:1px solid var(--ink);color:var(--ink);padding:10px 18px;cursor:pointer}
.ep-more:hover{border-color:var(--ikb);color:var(--ikb)}

/* ---------- Contact par message privé ---------- */
.social-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:8px}
.social-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:28px 32px;border:1px solid var(--line);border-left:3px solid var(--ikb);background:var(--paper);text-decoration:none;color:var(--ink);transition:border-color .15s,background .15s}
.social-card:hover,.social-card:focus-visible{border-color:var(--ikb);background:var(--ikb-tint)}
.social-card strong{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.1}
.social-card .social-handle{display:block;color:var(--muted);font-size:.9375rem;margin-top:4px}
.social-arrow{font-size:1.5rem;color:var(--ikb)}
.social-tips{margin-top:28px}
.social-tips ul{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:8px}
@media (max-width:640px){
  .player{grid-template-columns:1fr;padding:20px;gap:18px}
  .player-cover{width:120px;height:120px}
  .social-cards{grid-template-columns:1fr}
  .social-card{padding:22px 24px}
}


/* ---------- Lecteurs intégrés, livres, bande des invités ---------- */
.feature-player{margin:0 0 20px}
.feature-player iframe,.inline-player iframe{width:100%;height:150px;border:0;display:block}
.inline-player{grid-column:1/-1;margin-top:6px}
.play-inline{display:flex;align-items:center;gap:10px;margin-top:12px;font:inherit;font-size:.9375rem;background:none;border:0;padding:0;color:var(--ikb);cursor:pointer;text-align:left}
.play-inline .play-ico{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid var(--ikb);display:grid;place-items:center;transition:background .15s,color .15s}
.play-inline .play-ico svg{margin-left:2px}
.play-inline:hover .play-ico,.play-inline:focus-visible .play-ico,.play-inline[aria-expanded="true"] .play-ico{background:var(--ikb);color:#fff}
.play-inline:focus-visible{outline:2px solid var(--ikb);outline-offset:4px}
.shows-more{margin:24px 0 0;color:var(--muted)}
.shows-more a{color:var(--ikb)}
.book .t a{color:inherit;text-decoration:none;border-bottom:1px solid var(--line);transition:color .15s,border-color .15s}
.book .t a:hover,.book .t a:focus-visible{color:var(--ikb);border-color:var(--ikb)}
.book .t .ext{font-family:var(--sans);font-style:normal;font-size:.8em;color:var(--ikb)}
.marquee-track a{color:inherit;text-decoration:none}
.marquee-track a:hover,.marquee-track a:focus-visible{color:var(--ikb);text-decoration:underline}
.marquee:hover *,.marquee:focus-within *{animation-play-state:paused !important}


/* ---------- Ailleurs à l'antenne ---------- */
.elsewhere{margin-top:40px}
.elsewhere:first-of-type{margin-top:8px}
.elsewhere-head h3{font-family:var(--serif);font-style:italic;font-size:clamp(1.6rem,2.6vw,2.2rem)}
.elsewhere-head h3 a{color:var(--ink);text-decoration:none}
.elsewhere-head h3 a:hover{color:var(--ikb)}
.elsewhere-head h3 .ext{font-family:var(--sans);font-style:normal;font-size:.6em;color:var(--ikb)}
.elsewhere-head p{max-width:68ch;margin:8px 0 12px}


/* ---------- Index des invités et ancres ---------- */
.guests-index a{color:inherit;text-decoration:none}
.guests-index a:hover,.guests-index a:focus-visible{color:var(--ikb);text-decoration:underline}
.list .item{scroll-margin-top:96px}
.list .item:target{background:var(--ikb-tint);box-shadow:-16px 0 0 var(--ikb-tint),16px 0 0 var(--ikb-tint)}


/* ---------- Entretiens par mois (dépliants) ---------- */
.months{border-bottom:1px solid var(--line)}
.month{border-top:1px solid var(--line)}
.month>summary,.guests-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:16px;padding:22px 0}
.month>summary::-webkit-details-marker,.guests-fold>summary::-webkit-details-marker{display:none}
.month-name{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.1;color:var(--ink)}
.month-count{font-size:.875rem;color:var(--muted)}
.month>summary::after,.guests-fold>summary::after{content:"+";margin-left:auto;font-size:1.5rem;line-height:1;color:var(--ikb)}
.month[open]>summary::after,.guests-fold[open]>summary::after{content:"\2212"}
.month>summary:hover .month-name,.guests-fold>summary:hover{color:var(--ikb)}
.month>summary:focus-visible,.guests-fold>summary:focus-visible{outline:2px solid var(--ikb);outline-offset:4px}
.month .list{margin-bottom:24px}
.guests-fold{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.guests-fold>summary{font-size:1.0625rem;color:var(--ink)}
.guests-fold .guests-index{padding-bottom:24px}

.terr a.tag{color:var(--ink);text-decoration:none;transition:border-color .15s,color .15s}
.terr a.tag:hover,.terr a.tag:focus-visible{border-color:var(--ikb);color:var(--ikb)}

.news-prep .prep-link{margin:6px 0 0}
.news-prep .prep-link .link-arrow{font-size:.875rem}


/* ---------- Sur ma table : en cours / lus, notes en F ---------- */
.books-sub{font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin:28px 0 10px}
.books-sub:first-of-type{margin-top:8px}
.book-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}

.books-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:0 48px;align-items:start}
.rating{flex:none;display:inline-flex;gap:2px;font-family:"Pinyon Script","Snell Roundhand","Apple Chancery",cursive;font-size:1.9rem;line-height:.8;color:var(--ikb)}
.rating i{font-style:normal}
