/* Règle de jonc — accueil camera-canalisation.com */
body.page-home {
  --agm-rail: 280px;
  --agm-rail-top: 120px;
  --agm-bg: #f5f6f8;
  --agm-ink: #1a1a1a;
  --agm-accent: #ec6c2b;
}

@media (min-width: 1100px) {
  body.page-home .hero__banner,
  body.page-home .rating-strip { width: calc(100% - var(--agm-rail)); box-sizing: border-box; }
  body.page-home .hero .wrap {
    width: min(1100px, calc(100% - 3rem));
    margin-right: 1.5rem;
    margin-left: max(1.25rem, calc((100% - 1100px) / 2));
  }
  body.page-home .wrap,
  body.page-home .footer__inner,
  body.page-home .footer__bar {
    width: min(1100px, calc(100% - var(--agm-rail) - 2.5rem));
    margin-left: max(1.25rem, calc((100% - 1100px - var(--agm-rail)) / 2));
    margin-right: calc(var(--agm-rail) + .75rem);
  }
}

body.page-home .agm-ruler {
  position: fixed;
  top: var(--agm-rail-top);
  right: 0;
  bottom: 88px;
  width: var(--agm-rail);
  z-index: 40;
  cursor: ns-resize;
  touch-action: none;
  overflow: hidden;
  border-left: 1px solid rgba(0, 0, 0, .08);
  background: transparent;
}

body.page-home .agm-strip { position: absolute; inset: 0; }
body.page-home .agm-tick { position: absolute; right: 0; height: 0; }
body.page-home .agm-tick i {
  position: absolute; right: 0; top: 0; width: 9px; height: 1px;
  background: var(--agm-ink); opacity: .3;
}
body.page-home .agm-tick.major i { width: 20px; opacity: .7; }
body.page-home .agm-tick span {
  position: absolute; right: 26px; top: 0; transform: translateY(-50%);
  font-family: Consolas, ui-monospace, monospace;
  font-size: 10px; letter-spacing: .04em; color: var(--agm-ink); opacity: .5;
}
body.page-home .agm-tick.agm-on-dark i { background: #f2f1ee; }
body.page-home .agm-tick.agm-on-dark span { color: #f2f1ee; background: transparent; }
body.page-home .agm-on-dark {
  --agm-bg: #101216;
  --agm-ink: #f2f1ee;
}

body.page-home .agm-words {
  position: fixed; inset: 0; z-index: 46; pointer-events: none;
}
body.page-home .agm-word {
  position: absolute; inset: 0; margin: 0;
  font-family: "Archivo Narrow", sans-serif;
  font-size: 34px; line-height: 1; font-weight: 500;
  letter-spacing: -.04em; text-transform: uppercase;
  color: var(--agm-ink); text-decoration: none;
}
body.page-home .agm-word .ch {
  position: absolute; top: 0; left: 0; white-space: pre; line-height: 1;
  text-shadow: 0 0 4px var(--agm-bg), 0 0 10px var(--agm-bg);
}
body.page-home .agm-word .hit { position: absolute; pointer-events: auto; cursor: pointer; }

body.page-home .agm-marker {
  position: absolute; left: 0; right: 0; top: 0; z-index: 2; pointer-events: none;
}
body.page-home .agm-hair {
  position: absolute; right: 0; top: 0; width: 74px; height: 2px; background: var(--agm-accent);
}
body.page-home .agm-readout {
  position: absolute; right: 6px; top: -18px;
  font-family: Consolas, ui-monospace, monospace;
  font-size: 12px; letter-spacing: .04em; color: var(--agm-accent);
  font-variant-numeric: tabular-nums; background: var(--agm-bg); padding: 0 .2rem;
}
body.page-home .agm-readout b { font-weight: 500; display: inline-block; min-width: 4.6ch; text-align: right; }
body.page-home .agm-marker.agm-on-dark .agm-readout { background: #101216; }

@media (max-width: 1099px) {
  body.page-home .agm-ruler,
  body.page-home .agm-words { display: none; }
}
