/* Fibre page only: shared typography, colours and controls stay in styles.css. */
.fibre-page .hero-grid { grid-template-columns: 1.1fr .9fr; gap: 48px; }
.fibre-page .hero-actions img { filter: brightness(0); }
.fibre-zone { margin-top: 22px; font-size: .9rem; font-weight: 600; color: var(--ink); }
.fibre-hero-photo { margin: 0; border-radius: 12px; overflow: hidden; background: var(--soft); }
.fibre-hero-photo img { width: 100%; height: auto; }
.fibre-hero-photo figcaption { padding: 12px 18px; color: var(--muted); font-size: .78rem; text-align: center; }
.fibre-services { grid-template-columns: repeat(2,minmax(0,1fr)); }
.fibre-number { display: block; color: var(--ink); font-weight: 650; font-size: .85rem; border-bottom: 3px solid var(--brand); width: 30px; padding-bottom: 8px; margin-bottom: 20px; }
.fibre-note { margin-top: 24px; max-width: 900px; }
.fibre-commitments { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
.fibre-commitments article { border-top: 2px solid var(--brand); padding-top: 22px; }
.fibre-commitments h3 { font-size: 1.15rem; margin-bottom: 14px; }
.fibre-photos { grid-template-columns: repeat(2,minmax(0,1fr)); }
.fibre-photos figure { margin: 0; min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.fibre-photos img { width: 100%; height: auto; }
.fibre-photos figcaption { flex: 1; padding: 18px 22px; color: var(--ink-2); font-size: .94rem; background: var(--color-surface); }
.fibre-small { font-size: .82rem; margin-top: 16px; }
@media (max-width: 900px) {
  .fibre-page .hero-grid { grid-template-columns: 1fr; gap: 32px; }
  .fibre-commitments { grid-template-columns: 1fr; gap: 26px; }
}
@media (max-width: 600px) {
  .fibre-services, .fibre-photos { grid-template-columns: 1fr; }
}

.fibre-prefibrage-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.fibre-prefibrage h2 { margin-bottom: 24px; }
.fibre-prefibrage p { margin-bottom: 20px; }
@media (max-width: 900px) { .fibre-prefibrage-grid { grid-template-columns: 1fr; gap: 28px; } }
