/* Gravité Média — page mère
   CSS unique pour homepage-mere.php + template-parts.
   Les composants internes des récents balados et videos-shorts ne sont pas modifiés. */

:root {
  --gm-navy: #282846;
  --gm-navy-deep: #171637;
  --gm-pink: #f72585;
  --gm-bg: #f2f2fa;
  --gm-white: #fff;
  --gm-text: #20223f;
  --gm-muted: #69697d;
  --gm-border: rgba(32,34,63,.10);
  --gm-radius: 10px;
  --gm-shadow: 0 14px 36px rgba(26,25,61,.08);
  --gm-container: 1200px;
  --gm-section-space: clamp(64px, 8vw, 108px);
}

.gm-home { overflow: hidden; background: var(--gm-bg); }
.gm-container { width: min(calc(100% - 48px), var(--gm-container)); margin-inline: auto; }
.gm-section { padding-block: var(--gm-section-space); }
.gm-section--light { background: var(--gm-bg); color: var(--gm-text); }
.gm-section--dark { background: var(--gm-navy); color: var(--gm-white); }

/* Titres de section communs */
.gm-eyebrow,
.network-heading__eyebrow,
.distribution-heading__eyebrow,
.podcasts-heading__eyebrow,
.jrn-eyebrow {
  display: inline-block; position: relative; margin: 0 0 28px;
  color: var(--gm-pink); font-size: 12px; font-weight: 800;
  line-height: 1; letter-spacing: .24em; text-transform: uppercase;
}
.gm-eyebrow::after,
.network-heading__eyebrow::after,
.distribution-heading__eyebrow::after,
.podcasts-heading__eyebrow::after,
.jrn-eyebrow::after {
  content: ""; position: absolute; left: 0; bottom: -13px;
  width: 38px; height: 2px; background: currentColor;
}
.network-heading__eyebrow::after { left: 50%; transform: translateX(-50%); }
.gm-section-title,
.network-heading__title,
.distribution-heading__title,
.podcasts-heading__title,
.jrn-title {
  margin: 0; font-size: clamp(34px, 4.2vw, 54px); font-weight: 750;
  line-height: 1.05; letter-spacing: -.035em;
}

#notre-equipe{
  margin-top:60px;
}

#notre-equipe p.jrn-subtitle{
    text-align:center;
  }

.network-heading__title{
  color:var(--gm-navy) !important;
}

h1.network-heading__title{
      font-size: clamp(32px, 4vw, 56px);
      text-align: left;
      max-width: 100%;
}

h1.network-heading__title span{
  color:var(--gm-pink);
}



/* Présentation DG */
.gm-hero { padding: 0 0 clamp(72px,8vw,100px); }
.gm-hero-inner { margin: 0 auto; }
.gm-hero-photo { position: relative; width: min(100%, 330px); margin-inline: auto; padding: 16px 0 0 16px; }
.gm-hero-photo-shape { position: absolute; inset: 0 18px 24px 0; border: 10px solid var(--gm-pink); border-radius: 16px; z-index: 0; }
.gm-hero-photo > img { position: relative; z-index: 1; width: 100%; aspect-ratio: .82; object-fit: cover; object-position: center top; border-radius: 10px; display: block; background: #fff; }
.gm-hero-photo-tag { position: relative; z-index: 2; width: calc(100% - 24px); margin: -44px 12px 0; padding: 17px 18px; background: #fff; border-radius: 8px; box-shadow: var(--gm-shadow); }
.gm-hero-photo-tag strong,.gm-hero-photo-tag span { display:block; }
.gm-hero-photo-tag strong { color:var(--gm-text); font-size:15px; }
.gm-hero-photo-tag span { margin-top:4px; color:var(--gm-muted); font-size:11px; line-height:1.35; }
.gm-hero-content h2 { margin: 0 0 7px; color: var(--gm-text); font-size: clamp(36px,4vw,52px); line-height:1; letter-spacing:-.035em; }
.gm-role { margin:0 0 25px; color:var(--gm-text); font-size:15px; font-weight:700; }
.gm-hero-content p:not(.gm-role) { color:#4e4e61; font-size:15px; line-height:1.75; }

/* Réseau */
.network-section { padding: 0;margin-bottom:60px}
.network-heading { text-align:center; margin-bottom:42px; }
.network-heading__title { max-width: 880px; margin-inline:auto; font-size:clamp(32px,3.7vw,48px); }
.network-sites { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; margin:0 auto; }
.network-site { min-width:0; min-height:128px; padding:26px 22px; display:flex; align-items:center; justify-content:center; background:#fff; border:1px solid var(--gm-border); border-radius:var(--gm-radius); box-shadow:0 5px 18px rgba(26,25,61,.035); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.network-site:hover { transform:translateY(-4px); box-shadow:var(--gm-shadow); border-color:rgba(247,37,133,.22); }
.network-site img { display:block; width:100%; height:64px; object-fit:contain; transition:transform .25s ease; }
.network-site:hover img { transform:scale(1.025); }

/* Distribution */
.distribution-section { padding-block:var(--gm-section-space); }
.distribution-heading { margin-bottom:24px; }
.distribution-heading__title { color:#fff; }
.distribution-intro { max-width:900px; margin-bottom:40px; color:rgba(255,255,255,.72); font-size:16px; line-height:1.7; }
.distribution-intro p { margin:0 0 8px; color:inherit !important; }
.distribution-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.72fr); gap:18px; }
.distribution-card { position:relative; padding:clamp(30px,4vw,48px); border-radius:var(--gm-radius); overflow:hidden; }
.distribution-card--info { min-height:390px; background:linear-gradient(135deg,#fff 0%,#f0f0f8 100%); color:var(--gm-text); }
.distribution-card--location { display:flex; flex-direction:column; justify-content:center; background:var(--gm-pink); color:#fff; }
.distribution-card__content { max-width:560px; }
.distribution-card__label { display:block; margin-bottom:10px; font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.distribution-card--info .distribution-card__label { color:var(--gm-pink); }
.distribution-card h3 { margin:0 0 12px; font-size:clamp(26px,3vw,38px); line-height:1.08; letter-spacing:-.025em; }
.distribution-card p { max-width:520px; margin:0 0 24px; font-size:15px; line-height:1.55; }
.distribution-card--info p img { width:min(300px,100%); height:auto; }
.distribution-socials { display:flex; gap:10px; margin-bottom:26px; }
.distribution-socials a { width:42px; height:42px; display:grid; place-items:center; background:#fff; border:1px solid var(--gm-border); border-radius:50%; color:var(--gm-text); text-decoration:none; transition:.2s ease; }
.distribution-socials a:hover { transform:translateY(-3px); background:var(--gm-pink); border-color:var(--gm-pink); color:#fff; }
.distribution-location__icon { width:58px; height:58px; display:grid; place-items:center; margin-bottom:25px; background:#fff; border-radius:50%; color:var(--gm-text); font-size:25px; }
.distribution-location__icon .bi::before { color:inherit; }
.distribution-button { display:inline-flex; align-items:center; gap:9px; padding:13px 18px; background:var(--gm-pink); border-radius:5px; color:#fff; font-size:12px; font-weight:800; letter-spacing:.02em; text-decoration:none; text-transform:uppercase; transition:.2s ease; }
.distribution-button:hover { color:#fff; transform:translateY(-2px); filter:brightness(.95); }
.distribution-button--dark { align-self:flex-start; background:var(--gm-navy-deep); }
.distribution-videos { margin-top:28px; }

/* Balados — même fond, mais séparation claire avec Distribution */
.podcasts-section { padding:var(--gm-section-space) 0; background:var(--gm-navy); color:#fff; border-top:1px solid rgba(255,255,255,.10); }
.podcasts-heading { max-width:800px; margin-bottom:45px; }
.podcasts-heading__title { color:#fff; }
.podcasts-heading__intro { max-width:650px; margin:18px 0 0; color:#fff !important; font-size:16px; line-height:1.65; }
.podcasts-brands { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:54px; }
.podcast-brand { min-width:0; height:250px; display:flex; flex-direction:column; color:#fff; text-decoration:none; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.09); border-radius:var(--gm-radius); overflow:hidden; transition:.25s ease; }
.podcast-brand:hover { color:#fff; transform:translateY(-5px); background:rgba(255,255,255,.085); border-color:rgba(247,37,133,.4); }
.podcast-brand__logo { flex:1; display:flex; align-items:center; justify-content:center; padding:28px 38px; }
.podcast-brand__logo img { display:block; width:100%; height:115px; object-fit:contain; transition:transform .25s ease; }
.podcast-brand:hover .podcast-brand__logo img { transform:scale(1.035); }
.podcast-brand__bottom { min-height:62px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 20px; border-top:1px solid rgba(255,255,255,.09); }
.podcast-brand__bottom span { color:rgba(255,255,255,.58); font-size:11px; }
.podcast-brand__bottom strong { display:flex; align-items:center; gap:7px; color:#fff; font-size:10px; letter-spacing:.04em; text-transform:uppercase; }
.podcast-brand__bottom i { color:var(--gm-pink); }
.podcasts-latest { padding-top:38px; border-top:1px solid rgba(255,255,255,.10); }
/* Ne pas cibler les classes internes de loop-templates/balados-v2. */

/* Équipe */
.gm-team-section { padding-block:var(--gm-section-space); }
.jrn-wrap { max-width:1050px; margin:0 auto; }
.jrn-header { 
  text-align:center; 
  max-width:700px; 
  margin: 0 auto 45px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
.jrn-header .jrn-eyebrow::after { left:50%; transform:translateX(-50%); }
.jrn-title { color:var(--gm-text); }
.jrn-subtitle { margin:14px 0 0; color:var(--gm-muted); font-size:15px; }
.jrn-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.jrn-card { min-width:0; padding:28px 22px 24px; background:var(--gm-navy-deep); border:1px solid rgba(255,255,255,.04); border-radius:var(--gm-radius); text-align:center; box-shadow:0 8px 20px rgba(26,25,61,.08); transition:transform .25s ease,box-shadow .25s ease; }
.jrn-card:hover { transform:translateY(-4px); box-shadow:var(--gm-shadow); }
.jrn-photo { width:142px; height:142px; object-fit:cover; object-position:center top; border-radius:50%; border:5px solid #fff; margin:0 auto 18px; display:block; }
.jrn-name { margin:0 0 6px; color:#fff; font-size:17px; font-weight:750; line-height:1.2; }
.jrn-poste { min-height:36px; margin:0 0 18px; color:rgba(255,255,255,.72); font-size:11px; line-height:1.45; }
.jrn-contact { padding-top:14px; border-top:1px solid rgba(255,255,255,.10); display:flex; flex-direction:column; align-items:center; gap:7px; }
.jrn-contact a { max-width:100%; display:flex; align-items:center; gap:7px; color:rgba(255,255,255,.82); font-size:10px; line-height:1.25; text-decoration:none; overflow-wrap:anywhere; }
.jrn-contact a:hover { color:var(--gm-pink); }
.jrn-contact svg { width:13px; height:13px; flex:0 0 13px; fill:none; stroke:var(--gm-pink); stroke-width:1.7; }
.jrn-contact .jrn-icon-fill { fill:var(--gm-pink); stroke:none; }

@media (max-width: 991px) {
  .network-sites { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .distribution-grid { grid-template-columns:1fr; }
  .podcasts-brands { grid-template-columns:1fr; }
  .podcast-brand { height:220px; }
  .jrn-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .gm-container { width:min(calc(100% - 32px),var(--gm-container)); }
  .gm-hero { padding-bottom:64px; }
  .gm-hero-photo { max-width:290px; }
  .gm-hero-content { text-align:left; }
  .network-heading { margin-bottom:32px; }
  .network-sites { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .network-site { min-height:104px; padding:20px 16px; }
  .network-site img { height:52px; }
  .distribution-card { padding:28px 24px; }
  .distribution-card--info { min-height:0; }
  .podcasts-heading__title br { display:none; }
  .podcast-brand { height:205px; }
  .podcast-brand__logo img { height:100px; }
  .jrn-grid { grid-template-columns:1fr; }
  .jrn-card { max-width:430px; width:100%; margin-inline:auto; }
}
@media (max-width: 420px) {
  .network-sites { grid-template-columns:1fr; }
}
