/* ══════════════════════════════════════════
   style_solo.css
   Claris — surcharges pour expos "solo" Nicolas Claris
   art.claris.fr/communs/style_solo.css
   Chargé APRÈS style_2026v2.css
══════════════════════════════════════════ */

/* ── Logo footer contenu ── */
.footer-logo { display: flex; align-items: center; }
.footer-logo img { width: 80px; height: auto; display: block; object-fit: contain; }

/* ── Lightbox fond blanc ── */
#lightbox { background: rgba(255,255,255,0.97); }
#lb-close { color: var(--soft); }
#lb-prev, #lb-next { color: var(--mid); }
#lb-img { box-shadow: 0 4px 40px rgba(0,0,0,0.12); }
#lb-counter { color: var(--mid); }

/* ── Présentation : gris très clair à gauche (écrase #presentation .pres-left) ──
   On utilise le même sélecteur spécifique que style_2026v2.css pour gagner ── */
#presentation .pres-left {
  background: #ebebea;
}
#presentation .pres-left,
#presentation .pres-left p,
#presentation .pres-left li {
  color: var(--text);
}
#presentation .pres-left .section-label { color: var(--mid); }
#presentation .pres-left .section-title { color: var(--dark); }
#presentation .pres-left a { color: var(--link); border-color: var(--rule); }
#presentation .pres-left a:hover { color: var(--accent); border-color: var(--accent); }
#presentation .pres-left .btn-sm { color: var(--dark); border-color: var(--dark); }
#presentation .pres-left .btn-sm:hover { color: var(--accent); border-color: var(--accent); }

/* ── Hero-tag foncé ── */
.hero-tag--dark {
  color: #4a4a4a;
  font-weight: 400;
}

/* ── Hero : forcer le split 2 colonnes jusqu'à 680px ──
   Écrase le max-width:1048px de style_2026v2.css ── */
@media (min-width: 681px) {
  #hero,
  #hero.hero-static {
    grid-template-columns: minmax(40vw, 58vw) 1fr !important;
  }
  .hero-img-wrap,
  #hero.hero-static .hero-img-wrap {
    width: 100%; max-width: 58vw !important; min-width: 40vw;
  }
  .hero-slide { width: 100%; max-width: 100%; }
  .hero-single { width: 100%; height: auto; max-height: 75vh; display: block; }
}

/* ── Hero title : wrap autorisé, taille adaptée ── */
.hero-title {
  white-space: normal !important;
  line-height: 1.15 !important;
  font-size: clamp(1.1rem, 3.8vw, 4rem) !important;
}

/* ── Bascule 1 col sous 680px ── */
@media (max-width: 680px) {
  #hero,
  #hero.hero-static { grid-template-columns: 1fr; }
  .hero-img-wrap,
  #hero.hero-static .hero-img-wrap { max-width: 100%; }
  .hero-slide { max-width: 100%; max-height: none; width: 100%; }
  .hero-single { width: 100%; max-height: none; }
  .hero-text-wrap { padding: 2.5rem 2rem; }
}

/* ── Présentation 1 col : paddings réduits sous 860px ── */
@media (max-width: 860px) {
  #presentation { grid-template-columns: 1fr !important; }
  #presentation .pres-left  { padding: 3rem 2.5rem !important; width: auto !important; }
  #presentation .pres-right { padding: 2.5rem 2.5rem 3rem !important; }
}

/* ── Footer solo : logo à gauche + liens centrés sur une ligne ── */
.footer-main-duo {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0.8rem 2.5rem; gap: 2rem;
}
.footer-main-duo .footer-logo {
  flex: 0 0 100px;
}
.footer-main-duo .footer-logo img {
  width: 100px; height: auto; display: block; object-fit: contain;
}
.footer-main-duo .footer-right {
  flex: 1;
  display: flex; align-items: center; justify-content: center;
  gap: 1.6rem; flex-wrap: wrap;
}
.footer-main-duo .footer-right a {
  font-size: 0.62rem; font-weight: 300; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--soft);
  border-bottom: 1px solid var(--rule); padding-bottom: 1px;
  text-decoration: none; transition: color 0.2s, border-color 0.2s;
  white-space: nowrap;
}
.footer-main-duo .footer-right a:hover { color: var(--accent); border-color: var(--accent); }
@media (max-width: 768px) {
  .footer-main-duo { flex-direction: column; align-items: center; padding: 0.8rem 1.2rem; gap: 0.8rem; }
  .footer-main-duo .footer-right { justify-content: center; }
}
