.chf-hero-carte { position: relative; padding: clamp(1.2rem, 2.6vw, 1.8rem); border: 1px solid var(--line-paper); box-shadow: 0 24px 48px -28px rgb(0 0 0 / .7); margin-top: 1.6rem; }
.chf-hero-carte .chf-f-ligne { grid-template-columns: 1fr; gap: .9rem; }
.chf-hero-carte .chf-btn { width: 100%; justify-content: center; }
.chf-hero-carte .chf-f > .chf-consent { margin: .9rem 0 .7rem; }
@media (min-width: 64rem) {
  .chf-hero-in:has(> .chf-hero-carte) { display: grid; grid-template-columns: 7fr 5fr; column-gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
  .chf-hero-carte { margin-top: 0; }
  .chf-grid > .chf-kicker { grid-column: 1 / -1; grid-row: 1; }
  .chf-grid > h2 { grid-column: 1; grid-row: 2 / span 40; align-self: start; position: sticky; top: 5.5rem; padding-right: .5rem; }
  .chf-grid > [data-bloc] { display: contents; }
  .chf-grid > [data-bloc] > * { grid-column: 2; }
  .chf-grid > [data-bloc] > .chf-kicker { grid-column: 1 / -1; grid-row: 1; }
  .chf-grid > [data-bloc] > h2 { grid-column: 1; grid-row: 2 / span 40; align-self: start; position: sticky; top: 5.5rem; padding-right: .5rem; }
  .chf-grid > .chf-endform, .chf-grid > .chf-endform ~ .chf-maj { grid-column: 1 / -1; width: 100%; max-width: 640px; margin-inline: auto; }
  .chf-grid > .chf-sources:only-child { grid-column: 1 / -1; max-width: 72ch; }
}
