/* Priority approved on 2026-09-04: individuals first, professionals still accessible. */
.page-home { --hero-deck-overlap: 160px; }
/* Reserve the deck overlap plus breathing room below the quote and phone actions. */
.page-home .hero-content { padding-bottom: calc(var(--hero-deck-overlap) + 40px); }
.page-home .audience-deck { margin-top: calc(-1 * var(--hero-deck-overlap)); }

@media (max-width: 1100px) {
  .page-home { --hero-deck-overlap: 88px; }
}

@media (max-width: 620px) {
  .page-home { --hero-deck-overlap: 64px; }
}

.page-home .audience-entries { grid-template-columns: 2fr 1fr; }
.page-home .audience-entry-secondary {
  grid-template-columns: minmax(0, 1fr);
  padding-left: 28px;
}
.page-home .audience-entry-secondary h2 { font-size: 1.2rem; letter-spacing: -0.02em; }
.page-home .audience-entry-secondary p { font-size: 0.95rem; }
.page-home .audience-entry-secondary a { margin-top: 12px; font-size: 0.95rem; }
.page-home .service-rail a { padding-inline: 18px; }
.page-home .service-rail span { min-width: 0; }
.page-home .solution-panel[data-panel="particuliers"] { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.page-home .solution-panel[data-panel="professionnels"] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.page-home .solution-panel article { border-top: 0; border-left: 0; }
.page-home .solution-panel article + article { border-left: 1px solid rgba(255, 255, 255, 0.25); }
.page-home .territory-line { display: flex; flex-wrap: wrap; gap: 18px 28px; }
.page-home .territory-line strong { white-space: normal; font-size: 1rem; }
.page-home .territory-line > :last-child { flex-basis: 100%; color: #c5d6e6; }

@media (max-width: 1200px) {
  .page-home .solution-panel[data-panel="particuliers"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-home #panel-particuliers article:nth-child(2n + 1) { border-left: 0; }
  .page-home #panel-particuliers article:nth-child(n + 3) { border-top: 1px solid rgba(255, 255, 255, 0.25); }
}

@media (max-width: 900px) {
  .page-home .audience-entries { grid-template-columns: 1fr; }
  .page-home .audience-entry-secondary {
    padding: 24px 0;
    border-left: 0;
    border-top: 1px solid var(--line);
  }
  .page-home .audience-entry-secondary p { max-width: 65ch; }
  .page-home .switcher-tabs { max-width: 100%; }
  .page-home .switcher-tabs button { white-space: normal; padding-block: 12px; }
}

@media (max-width: 620px) {
  .page-home .solution-panel[data-panel] { grid-template-columns: 1fr; }
  .page-home .service-rail a { flex-direction: column; align-items: flex-start; padding: 16px 12px; gap: 10px; }
  .page-home .solution-panel h3 { min-height: 0; }
  .page-home .territory-line { align-items: flex-start; flex-direction: column; }
}
