/* Fiche formation (Gutenberg natif) — sucyconduites.com
   Chargé uniquement sur les fiches contenant la classe « sc-fiche ». */

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 400 800;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url("fonts/bricolage-grotesque-latin.woff2") format("woff2");
}
@font-face {
  font-family: "Instrument Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("fonts/instrument-sans-latin.woff2") format("woff2");
}

.sc-fiche {
  --sc-ink: #142147;      /* bleu marine du logo */
  --sc-blue: #1b6ed4;     /* bleu de la barre haute (#75baff) assombri pour le contraste */
  --sc-blue-d: #14539f;
  --sc-ground: #f5f5fa;   /* fond des tableaux du CSS personnalisé */
  --sc-ink-h: #24397a;    /* survol des boutons marine */
  --sc-paper: #fff;
  --sc-sky-soft: #e5eeff; /* fond d'en-tête OceanWP */
  --sc-slate: #4a4b68;
  --sc-line: #e6e6ee;     /* filets du CSS personnalisé */
  --sc-sky: #75baff;      /* barre haute OceanWP */
  --sc-display: "Bricolage Grotesque", "Instrument Sans", system-ui, sans-serif;
  --sc-body: "Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

  font-family: var(--sc-body);
  font-size: 16px;
  line-height: 1.55;
  color: var(--sc-ink);
  background: var(--sc-ground);
  border-radius: 18px;
  overflow: clip;
  margin: 8px 0 32px;
  -webkit-font-smoothing: antialiased;
}
.sc-fiche * { box-sizing: border-box; }
/* OceanWP (sans theme.json) : WordPress ajoute un conteneur intermédiaire dans chaque groupe
   et des marges de flux ; on les neutralise pour que les grilles ci-dessous s'appliquent. */
.sc-fiche .wp-block-group__inner-container { display: contents; }
.sc-fiche .is-layout-flow > * { margin-block-start: 0; margin-block-end: 0; }
.sc-fiche p, .sc-fiche ul, .sc-fiche h1, .sc-fiche h2, .sc-fiche h3 { margin: 0; }
.sc-fiche h1, .sc-fiche h2, .sc-fiche h3 {
  font-family: var(--sc-display);
  color: var(--sc-ink);
  text-wrap: balance;
  text-transform: none;
  letter-spacing: -0.01em;
}
.sc-fiche a { color: inherit; text-decoration: none; }
.sc-fiche a:focus-visible { outline: 3px solid var(--sc-blue); outline-offset: 3px; }
.sc-fiche .sc-inner { max-width: 1120px; margin: 0 auto; padding-inline: 24px; }
.sc-fiche .sc-h2 {
  font-size: clamp(28px, 3.6vw, 40px);
  font-weight: 800;
  font-variation-settings: "wdth" 80;
  line-height: 1.05;
}
.sc-fiche .sc-lead { color: var(--sc-slate); margin-top: 10px; max-width: 60ch; }

/* Fil d'Ariane */
.sc-fiche .sc-crumb { font-size: 13px; color: var(--sc-slate); padding-top: 22px; }
.sc-fiche .sc-crumb a { text-decoration: underline; text-underline-offset: 3px; }
.sc-fiche .sc-crumb b { color: var(--sc-ink); font-weight: 600; }

/* Boutons (bloc core/buttons) */
.sc-fiche .wp-block-buttons { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 28px; }
.sc-fiche .wp-block-button { margin: 0; }
.sc-fiche .wp-block-button__link {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 15px 22px; border-radius: 12px;
  font-family: var(--sc-body); font-weight: 700; font-size: 16px; line-height: 1;
  border: 2px solid transparent; text-decoration: none; text-transform: none; letter-spacing: 0;
  background: var(--sc-ink); color: #fff;
  transition: background .15s ease, transform .15s ease;
}
.sc-fiche .wp-block-button__link:hover { background: var(--sc-ink-h); color: #fff; }
.sc-fiche .sc-btn-ghost .wp-block-button__link { background: transparent; border-color: var(--sc-blue); color: var(--sc-blue); }
.sc-fiche .sc-btn-ghost .wp-block-button__link:hover { background: var(--sc-blue); color: #fff; }
.sc-fiche .sc-btn-ghost .wp-block-button__link small { font-weight: 500; opacity: .75; font-size: 14px; }
.sc-fiche .sc-btn-white .wp-block-button__link { background: #fff; color: var(--sc-ink); }
.sc-fiche .sc-btn-white .wp-block-button__link:hover { background: var(--sc-sky-soft); color: var(--sc-ink); }

/* Hero */
.sc-fiche .sc-hero {
  display: grid; grid-template-columns: minmax(0, 7fr) minmax(300px, 5fr);
  gap: 48px; padding-block: 24px 56px; align-items: start;
}
.sc-fiche h1.sc-hero-title {
  font-size: clamp(44px, 7vw, 100px);
  font-weight: 800;
  font-variation-settings: "wdth" 75;
  line-height: .92;
  letter-spacing: -0.02em;
  margin-top: 8px;
}
.sc-fiche h1.sc-hero-title .sc-age { font-variation-settings: "wdth" 100; color: var(--sc-blue); display: inline-block; }
.sc-fiche .sc-sub { font-size: 19px; color: var(--sc-slate); max-width: 44ch; margin-top: 22px; line-height: 1.5; }
.sc-fiche .sc-sub strong { color: var(--sc-ink); font-weight: 600; }
.sc-fiche figure.sc-car { margin: 34px 0 0; max-width: 560px; border-radius: 20px; overflow: hidden; box-shadow: 0 20px 50px -30px rgba(20, 33, 71, .45); }
.sc-fiche figure.sc-car img { display: block; width: 100%; height: auto; max-width: 100%; border-radius: 0; }
.sc-fiche .sc-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 20px; margin-top: 20px; max-width: 560px; font-size: 14px; color: var(--sc-slate); }
.sc-fiche .sc-facts span b {
  display: block; font-family: var(--sc-display); font-size: 22px; font-weight: 800;
  color: var(--sc-ink); line-height: 1.1; font-variant-numeric: tabular-nums;
}

/* Carte prix */
.sc-fiche .sc-price {
  position: sticky; top: 90px;
  background: var(--sc-paper); border-radius: 20px; padding: 26px 26px 22px;
  border: 1px solid var(--sc-line); box-shadow: 0 20px 50px -30px rgba(20, 33, 71, .35);
}
.sc-fiche .sc-price-name { font-weight: 600; color: var(--sc-slate); font-size: 14px; }
.sc-fiche .sc-price-amt {
  font-family: var(--sc-display); font-size: 64px; font-weight: 800; line-height: 1;
  letter-spacing: -0.03em; margin-top: 6px; font-variant-numeric: tabular-nums; color: var(--sc-ink);
}
.sc-fiche .sc-price-amt sup { font-size: 26px; vertical-align: top; top: .35em; position: relative; color: var(--sc-blue); }
.sc-fiche .sc-price-tout { display: inline-block; margin-top: 8px; background: var(--sc-sky-soft); padding: 4px 10px; border-radius: 999px; font-size: 13px; font-weight: 600; }
.sc-fiche ul.sc-price-list {
  list-style: none; margin: 20px 0 0; padding: 18px 0 0; border-top: 1px solid var(--sc-line);
  display: grid; gap: 9px; font-size: 15px;
}
.sc-fiche ul.sc-price-list li { display: flex; gap: 10px; align-items: flex-start; margin: 0; padding: 0; }
.sc-fiche ul.sc-price-list li::before {
  content: ""; flex: none; width: 18px; height: 18px; border-radius: 50%; margin-top: 2px;
  background: var(--sc-sky-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.5 9.5l3 3 6-7' fill='none' stroke='%23142147' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat;
}
.sc-fiche .sc-price-opt { margin-top: 16px; padding-top: 14px; border-top: 1px dashed var(--sc-line); font-size: 14px; color: var(--sc-slate); display: flex; justify-content: space-between; gap: 10px; }
.sc-fiche .sc-price-opt strong { color: var(--sc-ink); }
.sc-fiche .sc-price .wp-block-buttons { margin-top: 18px; }
.sc-fiche .sc-price .wp-block-button, .sc-fiche .sc-price .wp-block-button__link { width: 100%; justify-content: center; }
.sc-fiche .sc-price-note { font-size: 12.5px; color: var(--sc-slate); margin-top: 10px; text-align: center; }

/* Bande véhicules (fond bleu nuit) */
.sc-fiche .sc-band { background: var(--sc-ink); color: #fff; padding-block: 52px; }
.sc-fiche .sc-band h2 { color: #fff; max-width: 22ch; }
.sc-fiche .sc-band .sc-lead { color: #c6cbe3; }
.sc-fiche .sc-veh { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 30px; }
.sc-fiche .sc-veh > div { background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .14); border-radius: 14px; padding: 18px 18px 16px; }
.sc-fiche .sc-veh h3 { font-size: 19px; font-weight: 700; color: #fff; margin-top: 4px; }
.sc-fiche .sc-veh p { color: #c6cbe3; font-size: 14.5px; margin-top: 6px; }
.sc-fiche .sc-veh .sc-k { font-family: var(--sc-display); font-size: 34px; font-weight: 800; color: var(--sc-sky); line-height: 1; font-variant-numeric: tabular-nums; display: block; }
.sc-fiche .sc-veh .sc-k small { font-size: 14px; color: #c6cbe3; font-weight: 500; margin-left: 4px; }
.sc-fiche .sc-veh a { color: #fff; text-decoration: underline; text-underline-offset: 3px; font-size: 14.5px; display: inline-block; margin-top: 8px; }

/* Parcours en 4 étapes (vraie séquence) */
.sc-fiche .sc-steps { padding-block: 56px; }
.sc-fiche .sc-timeline { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 34px; position: relative; }
.sc-fiche .sc-timeline::before { content: ""; position: absolute; left: 24px; right: 24px; top: 22px; height: 3px; background: var(--sc-line); border-radius: 2px; }
.sc-fiche .sc-step { padding-right: 20px; position: relative; }
.sc-fiche .sc-step .sc-dot {
  width: 46px; height: 46px; border-radius: 50%; background: var(--sc-paper); border: 3px solid var(--sc-blue);
  display: grid; place-items: center; font-family: var(--sc-display); font-weight: 800; font-size: 18px; position: relative; z-index: 1;
}
.sc-fiche .sc-step:first-child .sc-dot { background: var(--sc-blue); color: #fff; }
.sc-fiche .sc-step h3 { font-size: 18px; font-weight: 700; margin-top: 16px; }
.sc-fiche .sc-step .sc-dur { font-size: 13px; color: var(--sc-blue); font-weight: 700; margin-top: 2px; }
.sc-fiche .sc-step p:not(.sc-dur) { font-size: 14.5px; color: var(--sc-slate); margin-top: 8px; max-width: 28ch; }

/* Pour les parents */
.sc-fiche .sc-parents { background: var(--sc-paper); border-top: 1px solid var(--sc-line); border-bottom: 1px solid var(--sc-line); padding-block: 52px; }
.sc-fiche .sc-parents-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; }
.sc-fiche .sc-parents .sc-lead { max-width: 50ch; }
.sc-fiche .sc-parents dl { margin: 0; display: grid; gap: 14px; }
.sc-fiche .sc-parents dt { font-weight: 700; font-size: 16px; }
.sc-fiche .sc-parents dd { margin: 2px 0 0; color: var(--sc-slate); font-size: 15px; }
.sc-fiche .sc-trust { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 26px; }
.sc-fiche .sc-trust span { background: var(--sc-sky-soft); border-radius: 10px; padding: 10px 14px; font-size: 14px; }
.sc-fiche .sc-trust span b { display: block; font-family: var(--sc-display); font-size: 20px; font-weight: 800; }

/* FAQ (bloc core/details) */
.sc-fiche .sc-faq { padding-block: 52px; }
.sc-fiche .sc-faq .sc-h2 { margin-bottom: 22px; }
.sc-fiche .wp-block-details { background: var(--sc-paper); border: 1px solid var(--sc-line); border-radius: 12px; margin: 0 0 8px; padding: 0; }
.sc-fiche .wp-block-details summary {
  cursor: pointer; padding: 16px 18px; font-weight: 700; font-size: 16px; list-style: none;
  display: flex; justify-content: space-between; gap: 12px; align-items: center;
}
.sc-fiche .wp-block-details summary::-webkit-details-marker { display: none; }
.sc-fiche .wp-block-details summary::after { content: "+"; font-family: var(--sc-display); font-size: 22px; color: var(--sc-blue); line-height: 1; }
.sc-fiche .wp-block-details[open] summary::after { content: "–"; }
.sc-fiche .wp-block-details p { padding: 0 18px 16px; color: var(--sc-slate); font-size: 15px; max-width: 70ch; margin: 0; }

/* Bloc final (fond orange) */
.sc-fiche .sc-final { background: var(--sc-sky); color: var(--sc-ink); padding-block: 52px; }
.sc-fiche .sc-final-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 36px; align-items: center; }
.sc-fiche .sc-final h2 { font-size: clamp(32px, 4.4vw, 52px); font-weight: 800; font-variation-settings: "wdth" 75; line-height: .95; letter-spacing: -0.02em; }
.sc-fiche .sc-final p { margin-top: 12px; font-size: 16px; max-width: 44ch; }
.sc-fiche .sc-final-card { background: var(--sc-ink); color: #fff; border-radius: 16px; padding: 22px 24px; }
.sc-fiche .sc-final-card .sc-tel { font-family: var(--sc-display); font-size: 34px; font-weight: 800; letter-spacing: -0.01em; display: block; color: #fff; margin: 0; }
.sc-fiche .sc-final-card p { font-size: 14px; color: #c6cbe3; max-width: none; margin-top: 8px; }
.sc-fiche .sc-final-card .wp-block-buttons { margin-top: 16px; }

/* Barre mobile collante (masquée sur desktop) */
.sc-fiche .sc-mbar { display: none; }

@media (max-width: 900px) {
  .sc-fiche .sc-hero, .sc-fiche .sc-parents-grid, .sc-fiche .sc-final-grid { grid-template-columns: 1fr; }
  .sc-fiche .sc-veh { grid-template-columns: 1fr; }
  .sc-fiche .sc-timeline { grid-template-columns: 1fr 1fr; gap: 26px 0; }
  .sc-fiche .sc-timeline::before { display: none; }
  .sc-fiche .sc-price { position: static; }
}
@media (max-width: 760px) {
  .sc-fiche { border-radius: 0; margin-inline: -16px; }
  .sc-fiche .sc-inner { padding-inline: 18px; }
  .sc-fiche .sc-timeline { grid-template-columns: 1fr; }
  .sc-fiche .sc-mbar {
    display: flex; position: sticky; bottom: 0; z-index: 5;
    background: var(--sc-paper); border-top: 1px solid var(--sc-line); padding: 10px 16px;
    align-items: center; justify-content: space-between; gap: 12px;
    box-shadow: 0 -10px 30px -20px rgba(20, 33, 71, .4);
  }
  .sc-fiche .sc-mbar b { font-family: var(--sc-display); font-size: 22px; font-weight: 800; }
  .sc-fiche .sc-mbar small { display: block; font-size: 12px; color: var(--sc-slate); font-weight: 500; }
  .sc-fiche .sc-mbar .wp-block-buttons { margin: 0; }
  .sc-fiche .sc-mbar .wp-block-button__link { padding: 12px 16px; }
}

/* Équipement obligatoire (fiche 2 roues) */
.sc-fiche .sc-equip { padding-block: 52px; background: var(--sc-paper); border-top: 1px solid var(--sc-line); border-bottom: 1px solid var(--sc-line); }
.sc-fiche .sc-equip-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-top: 26px; }
.sc-fiche .sc-equip-grid > div { background: var(--sc-ground); border: 1px solid var(--sc-line); border-radius: 14px; padding: 16px 16px 14px; }
.sc-fiche .sc-equip-grid h3 { font-size: 17px; font-weight: 700; margin-top: 6px; }
.sc-fiche .sc-equip-grid p { font-size: 14px; color: var(--sc-slate); margin-top: 4px; }
.sc-fiche .sc-equip-grid .sc-n { font-family: var(--sc-display); font-size: 13px; font-weight: 800; color: var(--sc-blue); letter-spacing: .06em; text-transform: uppercase; }
.sc-fiche .sc-equip .sc-warn { margin-top: 18px; padding: 14px 18px; border-radius: 12px; background: var(--sc-sky-soft); font-size: 15px; color: var(--sc-ink); max-width: 70ch; }
.sc-fiche .sc-equip .sc-warn strong { font-weight: 700; }
@media (max-width: 900px) { .sc-fiche .sc-equip-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 760px) { .sc-fiche .sc-equip-grid { grid-template-columns: 1fr 1fr; } }

/* Titre long (fiche moto) : même esprit, corps réduit pour tenir sur 2 à 3 lignes */
.sc-fiche h1.sc-hero-title.sc-hero-title-long { font-size: clamp(38px, 5.4vw, 76px); line-height: .96; }

/* Liens dans le texte courant : soulignés pour rester repérables */
.sc-fiche .sc-lead a, .sc-fiche .sc-plans-note a, .sc-fiche .wp-block-details p a {
  text-decoration: underline; text-underline-offset: 3px;
}

/* Forfaits : plusieurs offres côte à côte (fiche moto) */
.sc-fiche .sc-plans { padding-block: 56px; background: var(--sc-paper); border-top: 1px solid var(--sc-line); scroll-margin-top: 90px; }
.sc-fiche .sc-plans-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 30px; align-items: stretch; }
/* Deux forfaits seulement (fiche maxi-scooter) : grille resserrée */
.sc-fiche .sc-plans-grid.sc-plans-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 780px; }
.sc-fiche .sc-plan {
  display: flex; flex-direction: column;
  background: var(--sc-ground); border: 1px solid var(--sc-line); border-radius: 20px; padding: 24px 22px 22px;
}
.sc-fiche .sc-plan-featured { background: var(--sc-paper); border: 2px solid var(--sc-blue); box-shadow: 0 20px 50px -30px rgba(20, 33, 71, .45); }
.sc-fiche .sc-plan-tag { align-self: flex-start; background: var(--sc-sky-soft); border-radius: 999px; padding: 4px 10px; font-size: 13px; font-weight: 600; }
.sc-fiche .sc-plan-featured .sc-plan-tag { background: var(--sc-blue); color: #fff; }
.sc-fiche .sc-plan h3 { font-size: 22px; font-weight: 800; margin-top: 12px; }
.sc-fiche .sc-plan .sc-price-amt { font-size: 52px; margin-top: 10px; }
.sc-fiche .sc-plan-split { font-size: 14px; color: var(--sc-slate); margin-top: 4px; }
.sc-fiche .sc-plan ul.sc-price-list { font-size: 14.5px; margin-top: 16px; padding-top: 16px; }
.sc-fiche .sc-plan .wp-block-buttons { margin-top: auto; padding-top: 20px; }
.sc-fiche .sc-plan .wp-block-button, .sc-fiche .sc-plan .wp-block-button__link { width: 100%; justify-content: center; text-align: center; }
.sc-fiche .sc-opts { margin-top: 22px; background: var(--sc-ground); border: 1px solid var(--sc-line); border-radius: 16px; padding: 18px 22px 4px; }
.sc-fiche .sc-opts h3 { font-size: 18px; font-weight: 700; }
.sc-fiche .sc-opts .sc-price-opt { margin-top: 0; padding: 14px 0; font-size: 15px; }
.sc-fiche .sc-opts h3 + .sc-price-opt { border-top: 0; }
.sc-fiche .sc-opts .sc-price-opt strong { white-space: nowrap; font-variant-numeric: tabular-nums; }
.sc-fiche .sc-plans-note { font-size: 14.5px; color: var(--sc-slate); margin-top: 16px; max-width: 80ch; }

/* Les épreuves en détail (fiche moto) */
.sc-fiche .sc-exams { padding-block: 56px; }
.sc-fiche .sc-exams-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 30px; align-items: start; }
.sc-fiche .sc-exams-grid > div { background: var(--sc-paper); border: 1px solid var(--sc-line); border-radius: 16px; padding: 22px 22px 20px; }
.sc-fiche .sc-exams-grid h3 { font-size: 20px; font-weight: 800; }
.sc-fiche .sc-exams-grid p { font-size: 15px; color: var(--sc-slate); margin-top: 8px; }
.sc-fiche .sc-exams-grid ul, .sc-fiche .sc-exams-grid ol { margin: 10px 0 0; padding-left: 20px; font-size: 14.5px; color: var(--sc-slate); display: grid; gap: 5px; }
.sc-fiche .sc-exams-grid li { margin: 0; }
.sc-fiche .sc-exams-grid a { display: inline-block; margin-top: 12px; font-size: 14.5px; font-weight: 600; color: var(--sc-blue-d); text-decoration: underline; text-underline-offset: 3px; }

/* Galerie de 3 photos (remplace le carrousel) */
.sc-fiche .sc-gallery { padding-block: 52px 0; }
.sc-fiche .sc-gallery-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 26px; }
.sc-fiche .sc-gallery-grid figure { margin: 0; border-radius: 14px; overflow: hidden; aspect-ratio: 4 / 3; }
.sc-fiche .sc-gallery-grid img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 0; }

/* Mentions de bas de fiche */
.sc-fiche .sc-notes { padding-block: 18px 22px; font-size: 12.5px; color: var(--sc-slate); }

@media (max-width: 900px) {
  .sc-fiche .sc-plans-grid, .sc-fiche .sc-plans-grid.sc-plans-grid-2, .sc-fiche .sc-exams-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .sc-fiche .sc-gallery-grid { grid-template-columns: 1fr; }
}

/* Insécables : nom de ville dans le titre, montants */
.sc-fiche .sc-nowrap, .sc-fiche .sc-price-opt strong { white-space: nowrap; }

/* Grille de 4 cartes (documents du dossier, fiche régularisation) et mention de source */
.sc-fiche .sc-equip-grid.sc-equip-grid-4 { grid-template-columns: repeat(4, 1fr); }
.sc-fiche .sc-equip-grid a { text-decoration: underline; text-underline-offset: 3px; }
.sc-fiche .sc-source { font-size: 13px; color: var(--sc-slate); margin-top: 18px; max-width: 80ch; }
@media (max-width: 900px) { .sc-fiche .sc-equip-grid.sc-equip-grid-4 { grid-template-columns: repeat(2, 1fr); } }

/* Cartes de forfait avec photo de fond (comme l'ancienne version Elementor) :
   la photo occupe le haut de la carte, un dégradé bleu marine la recouvre et devient
   opaque sous le prix, pour garder un contraste AA sur la liste et les boutons. */
.sc-fiche .sc-plan.sc-plan-photo {
  position: relative; isolation: isolate; overflow: hidden;
  background: var(--sc-ink); color: #fff; border-color: rgba(255, 255, 255, .12);
}
.sc-fiche .sc-plan-photo::before {
  content: ""; position: absolute; z-index: -2; inset: 0 0 auto 0; height: 340px;
  background: var(--sc-plan-img) center 40% / cover no-repeat;
}
.sc-fiche .sc-plan-photo::after {
  content: ""; position: absolute; z-index: -1; inset: 0;
  background: linear-gradient(180deg, rgba(20, 33, 71, .30) 0, rgba(20, 33, 71, .52) 90px, rgba(20, 33, 71, .72) 170px, rgba(20, 33, 71, .92) 250px, var(--sc-ink) 330px);
}
.sc-fiche .sc-plan-photo h3,
.sc-fiche .sc-plan-photo .sc-price-amt { color: #fff; text-shadow: 0 1px 2px rgba(0, 0, 0, .55), 0 2px 18px rgba(0, 0, 0, .6); }
.sc-fiche .sc-plan-photo .sc-price-amt sup { color: var(--sc-sky); }
.sc-fiche .sc-plan-photo .sc-plan-split { color: #dfe3f3; text-shadow: 0 1px 8px rgba(0, 0, 0, .5); }
.sc-fiche .sc-plan-photo .sc-plan-tag { background: rgba(20, 33, 71, .72); color: #fff; backdrop-filter: blur(4px); }
.sc-fiche .sc-plan-photo.sc-plan-featured .sc-plan-tag { background: var(--sc-blue); }
.sc-fiche .sc-plan-photo.sc-plan-featured { border: 2px solid var(--sc-sky); }
.sc-fiche .sc-plan-photo ul.sc-price-list { border-top-color: rgba(255, 255, 255, .2); color: #fff; }
.sc-fiche .sc-plan-photo .sc-btn-ghost .wp-block-button__link { border-color: #fff; color: #fff; }
.sc-fiche .sc-plan-photo .sc-btn-ghost .wp-block-button__link:hover { background: #fff; color: var(--sc-ink); }
.sc-fiche .sc-plan-photo .sc-btn-main .wp-block-button__link { background: var(--sc-sky); color: var(--sc-ink); }
.sc-fiche .sc-plan-photo .sc-btn-main .wp-block-button__link:hover { background: #fff; color: var(--sc-ink); }

/* Photos de fond des cartes de tarif (800 × 600, médiathèque 7112 à 7117) */
.sc-fiche .sc-bg-moto-mt09-tunnel  { --sc-plan-img: url("/wp-content/docs/fond-tarif-moto-mt09-tunnel.jpg"); }
.sc-fiche .sc-bg-moto-tracer-route { --sc-plan-img: url("/wp-content/docs/fond-tarif-moto-tracer-route.jpg"); }
.sc-fiche .sc-bg-moto-mt09-ville   { --sc-plan-img: url("/wp-content/docs/fond-tarif-moto-mt09-ville.jpg"); }
.sc-fiche .sc-bg-moto-mt09-neon    { --sc-plan-img: url("/wp-content/docs/fond-tarif-moto-mt09-neon.jpg"); }
.sc-fiche .sc-bg-moto-mt09-profil  { --sc-plan-img: url("/wp-content/docs/fond-tarif-moto-mt09-profil.jpg"); }
.sc-fiche .sc-bg-voiture-208       { --sc-plan-img: url("/wp-content/docs/fond-tarif-voiture-208.jpg"); }
.sc-fiche .sc-bg-moto-r6-circuit   { --sc-plan-img: url("/wp-content/docs/fond-tarif-moto-r6-circuit.jpg"); }
.sc-fiche .sc-bg-voiture-portiere  { --sc-plan-img: url("/wp-content/docs/fond-tarif-voiture-208-portiere.jpg"); }
.sc-fiche .sc-bg-scooter-tmax-verriere { --sc-plan-img: url("/wp-content/docs/fond-tarif-scooter-tmax-verriere.jpg"); }
.sc-fiche .sc-bg-scooter-tmax-ville    { --sc-plan-img: url("/wp-content/docs/fond-tarif-scooter-tmax-ville.jpg"); }
.sc-fiche .sc-bg-scooter-tmax-pont     { --sc-plan-img: url("/wp-content/docs/fond-tarif-scooter-tmax-pont.jpg"); }
.sc-fiche .sc-bg-125-ktm-duke         { --sc-plan-img: url("/wp-content/docs/fond-tarif-125-ktm-duke.jpg"); }
.sc-fiche .sc-bg-125-pcx-blanc  { --sc-plan-img: url("/wp-content/docs/fond-tarif-125-pcx-blanc.jpg"); }
.sc-fiche .sc-bg-125-pcx-duo    { --sc-plan-img: url("/wp-content/docs/fond-tarif-125-pcx-duo.jpg"); }
.sc-fiche .sc-bg-125-ktm-arret  { --sc-plan-img: url("/wp-content/docs/fond-tarif-125-ktm-arret.jpg"); }
.sc-fiche .sc-bg-aac-conducteur { --sc-plan-img: url("/wp-content/docs/fond-tarif-aac-conducteur.jpg"); }
.sc-fiche .sc-bg-aac-volant     { --sc-plan-img: url("/wp-content/docs/fond-tarif-aac-volant.jpg"); }
.sc-fiche .sc-bg-aac-duo        { --sc-plan-img: url("/wp-content/docs/fond-tarif-aac-duo.jpg"); }
.sc-fiche .sc-bg-aacauto-vitre  { --sc-plan-img: url("/wp-content/docs/fond-tarif-aacauto-vitre.jpg"); }
.sc-fiche .sc-bg-aacauto-logo   { --sc-plan-img: url("/wp-content/docs/fond-tarif-aacauto-logo.jpg"); }
.sc-fiche .sc-bg-aacauto-feu    { --sc-plan-img: url("/wp-content/docs/fond-tarif-aacauto-feu.jpg"); }
.sc-fiche .sc-bg-aac-calandre   { --sc-plan-img: url("/wp-content/docs/fond-tarif-aac-calandre.jpg"); }
.sc-fiche .sc-bg-aac-roue       { --sc-plan-img: url("/wp-content/docs/fond-tarif-aac-roue.jpg"); }
.sc-fiche .sc-opts .sc-price-opt a { text-decoration: underline; text-underline-offset: 3px; }

/* Carte de prix du haut de page avec photo (fiche voiture) : même traitement que .sc-plan-photo */
.sc-fiche .sc-price.sc-price-photo {
  isolation: isolate; overflow: hidden;
  background: var(--sc-ink); color: #fff; border-color: rgba(255, 255, 255, .12);
}
.sc-fiche .sc-price-photo::before {
  content: ""; position: absolute; z-index: -2; inset: 0 0 auto 0; height: 340px;
  background: var(--sc-plan-img) center 45% / cover no-repeat;
}
.sc-fiche .sc-price-photo::after {
  content: ""; position: absolute; z-index: -1; inset: 0;
  background: linear-gradient(180deg, rgba(20, 33, 71, .30) 0, rgba(20, 33, 71, .52) 90px, rgba(20, 33, 71, .72) 170px, rgba(20, 33, 71, .92) 250px, var(--sc-ink) 330px);
}
.sc-fiche .sc-price-photo .sc-price-name { color: #fff; text-shadow: 0 1px 8px rgba(0, 0, 0, .6); }
.sc-fiche .sc-price-photo .sc-price-amt { color: #fff; text-shadow: 0 1px 2px rgba(0, 0, 0, .55), 0 2px 18px rgba(0, 0, 0, .6); }
.sc-fiche .sc-price-photo .sc-price-amt sup { color: var(--sc-sky); }
.sc-fiche .sc-price-photo ul.sc-price-list { border-top-color: rgba(255, 255, 255, .2); color: #fff; }
.sc-fiche .sc-price-photo .sc-price-opt { border-top-color: rgba(255, 255, 255, .25); color: #dfe3f3; }
.sc-fiche .sc-price-photo .sc-price-opt strong { color: #fff; }
.sc-fiche .sc-price-photo .sc-price-note { color: #c6cbe3; }
.sc-fiche .sc-price-photo .sc-btn-main .wp-block-button__link { background: var(--sc-sky); color: var(--sc-ink); }
.sc-fiche .sc-price-photo .sc-btn-main .wp-block-button__link:hover,
.sc-fiche .sc-price-photo .sc-btn-ghost .wp-block-button__link:hover { background: #fff; color: var(--sc-ink); }
.sc-fiche .sc-price-photo .sc-btn-ghost .wp-block-button__link { border-color: #fff; color: #fff; }
.sc-fiche .sc-price-photo .sc-price-tout { color: var(--sc-ink); }

/* Photo en tête des cartes machines (bande bleu nuit, fiche moto) */
.sc-fiche .sc-veh > div { overflow: hidden; }
.sc-fiche .sc-veh .sc-veh-img {
  display: block; width: calc(100% + 36px); max-width: none; height: auto; aspect-ratio: 16 / 9; object-fit: cover;
  margin: -18px -18px 14px; border-radius: 0;
}

/* Correctif : sous 900 px, .sc-price passe en position: static ; la carte photo doit rester
   positionnée, sinon ses calques ::before/::after couvrent toute la page. */
/* « top: auto » : sinon le décalage de 90 px de la carte collante s'applique en relatif (vide au-dessus, débord en dessous). */
@media (max-width: 900px) { .sc-fiche .sc-price.sc-price-photo { position: relative; top: auto; } }

/* Bandeau à deux cartes (fiche 125) */
.sc-fiche .sc-veh.sc-veh-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 820px; }
@media (max-width: 900px) { .sc-fiche .sc-veh.sc-veh-2 { grid-template-columns: 1fr; } }

/* Page « Les formations deux-roues » : cartes de formation cliquables */
.sc-fiche .sc-hub-group { font-size: 20px; font-weight: 800; margin-top: 34px; }
.sc-fiche .sc-hub-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 14px; }
.sc-fiche a.sc-hub-card {
  display: flex; flex-direction: column; overflow: hidden; text-decoration: none; color: var(--sc-ink);
  background: var(--sc-paper); border: 1px solid var(--sc-line); border-radius: 16px;
  box-shadow: 0 16px 40px -32px rgba(20, 33, 71, .5); transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.sc-fiche a.sc-hub-card:hover { transform: translateY(-2px); border-color: var(--sc-blue); box-shadow: 0 22px 46px -30px rgba(20, 33, 71, .55); }
.sc-fiche a.sc-hub-card:focus-visible { outline: 3px solid var(--sc-blue); outline-offset: 3px; }
.sc-fiche .sc-hub-card img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 0; max-width: none; }
.sc-fiche .sc-hub-body { display: flex; flex-direction: column; gap: 6px; padding: 16px 18px 18px; flex: 1; }
.sc-fiche .sc-hub-tag { align-self: flex-start; background: var(--sc-sky-soft); border-radius: 999px; padding: 3px 10px; font-size: 12.5px; font-weight: 600; }
.sc-fiche .sc-hub-title { font-family: var(--sc-display); font-size: 20px; font-weight: 800; line-height: 1.15; margin-top: 4px; }
.sc-fiche .sc-hub-text { font-size: 14.5px; color: var(--sc-slate); }
.sc-fiche .sc-hub-price { margin-top: auto; padding-top: 8px; font-family: var(--sc-display); font-size: 22px; font-weight: 800; color: var(--sc-blue-d); font-variant-numeric: tabular-nums; }
.sc-fiche .sc-hub-price::after { content: " →"; font-size: 18px; }

/* Carte de prix : liste de tarifs (page deux-roues) */
.sc-fiche .sc-price-rates { margin-top: 16px; }
.sc-fiche .sc-price-rates .sc-price-opt { margin-top: 0; padding: 9px 0; }
.sc-fiche .sc-price-rates .sc-price-opt:first-child { border-top: 0; }

/* Grille de liens à 3 colonnes */
.sc-fiche .sc-equip-grid.sc-equip-grid-3 { grid-template-columns: repeat(3, 1fr); }
.sc-fiche .sc-equip-grid h3 a { text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 900px) {
  .sc-fiche .sc-hub-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sc-fiche .sc-equip-grid.sc-equip-grid-3 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 760px) {
  .sc-fiche .sc-hub-grid, .sc-fiche .sc-equip-grid.sc-equip-grid-3 { grid-template-columns: 1fr; }
}

/* Sections « épreuves » : photo de piste (cônes) sous un dégradé bleu nuit */
.sc-fiche .sc-exams { position: relative; isolation: isolate; overflow: hidden; background: var(--sc-ink); }
.sc-fiche .sc-exams::before {
  content: ""; position: absolute; inset: 0; z-index: -2;
  background: url("/wp-content/docs/fond-section-plateau-cones.jpg") center 60% / cover no-repeat;
}
.sc-fiche .sc-exams::after {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(180deg, rgba(20, 33, 71, .90) 0, rgba(20, 33, 71, .68) 35%, rgba(20, 33, 71, .50) 70%, rgba(20, 33, 71, .82) 100%);
}
.sc-fiche .sc-exams .sc-h2 { color: #fff; }
.sc-fiche .sc-exams .sc-lead { color: #dfe3f3; }
.sc-fiche .sc-exams .sc-source { color: #c6cbe3; }
.sc-fiche .sc-exams .sc-source a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }

/* Cartes d'équipement avec photo : le produit occupe le bas de la carte,
   un fondu blanc garde le texte lisible en haut */
.sc-fiche .sc-equip-photo > .sc-eq {
  position: relative; isolation: isolate; overflow: hidden; min-height: 300px;
  background: #fff; border-color: var(--sc-line);
}
.sc-fiche .sc-equip-photo > .sc-eq::before {
  content: ""; position: absolute; inset: 0; z-index: -2;
  background: var(--sc-eq-img) center bottom / cover no-repeat;
}
.sc-fiche .sc-equip-photo > .sc-eq::after {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(180deg, #fff 0, #fff 34%, rgba(255, 255, 255, .82) 46%, rgba(255, 255, 255, 0) 66%);
}
.sc-fiche .sc-eq-casque     { --sc-eq-img: url("/wp-content/docs/equip-casque.jpg"); }
.sc-fiche .sc-eq-gants      { --sc-eq-img: url("/wp-content/docs/equip-gants.jpg"); }
.sc-fiche .sc-eq-blouson    { --sc-eq-img: url("/wp-content/docs/equip-blouson.jpg"); }
.sc-fiche .sc-eq-pantalon   { --sc-eq-img: url("/wp-content/docs/equip-pantalon.jpg"); }
.sc-fiche .sc-eq-chaussures { --sc-eq-img: url("/wp-content/docs/equip-chaussures.jpg"); }
@media (max-width: 760px) { .sc-fiche .sc-equip-photo > .sc-eq { min-height: 285px; } }

/* Cartes du bandeau bleu nuit avec photo de fond (page deux-roues) */
.sc-fiche .sc-veh > .sc-veh-photo { position: relative; isolation: isolate; overflow: hidden; min-height: 240px; }
.sc-fiche .sc-veh > .sc-veh-photo::before {
  content: ""; position: absolute; inset: 0; z-index: -2;
  background: var(--sc-plan-img) center 55% / cover no-repeat;
}
.sc-fiche .sc-veh > .sc-veh-photo::after {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(180deg, rgba(20, 33, 71, .72) 0, rgba(20, 33, 71, .55) 50%, rgba(20, 33, 71, .30) 100%);
}
.sc-fiche .sc-veh > .sc-veh-photo p { color: #e3e7f5; }
.sc-fiche .sc-veh > .sc-veh-photo h3, .sc-fiche .sc-veh > .sc-veh-photo .sc-k { text-shadow: 0 1px 10px rgba(0, 0, 0, .5); }
.sc-fiche .sc-bg-scooter-50  { --sc-plan-img: url("/wp-content/docs/scooter-peugeot-kisbee-50-permis-am.webp"); }
.sc-fiche .sc-bg-a2-ktm-390  { --sc-plan-img: url("/wp-content/docs/moto-ecole-ktm-390-duke.jpg"); }

/* Cartes de forfait teintées (toutes les fiches) : chaque carte reprend une couleur du
   dégradé de la page d'accueil (magenta #a3288e → violet → bleu #234fd3), foncée vers
   le bas pour le contraste du texte. Cycle de 3 ; sur une grille de 2 : magenta puis bleu. */
.sc-fiche .sc-plans-grid .sc-plan-photo:nth-child(3n+1) { --sc-plan-tint: 163, 40, 142; --sc-plan-end: 58, 13, 51; }
.sc-fiche .sc-plans-grid .sc-plan-photo:nth-child(3n+2) { --sc-plan-tint: 99, 60, 176;  --sc-plan-end: 33, 20, 66; }
.sc-fiche .sc-plans-grid .sc-plan-photo:nth-child(3n)   { --sc-plan-tint: 35, 79, 211;  --sc-plan-end: 13, 31, 82; }
.sc-fiche .sc-plans-grid-2 .sc-plan-photo:nth-child(2)  { --sc-plan-tint: 35, 79, 211;  --sc-plan-end: 13, 31, 82; }
.sc-fiche .sc-plans-grid .sc-plan-photo { background: rgb(var(--sc-plan-end)); border-color: rgba(var(--sc-plan-tint), .55); }
.sc-fiche .sc-plans-grid .sc-plan-photo.sc-plan-featured { border-color: rgb(var(--sc-plan-tint)); }
.sc-fiche .sc-plans-grid .sc-plan-photo::after {
  background: linear-gradient(180deg, rgba(var(--sc-plan-tint), .42) 0, rgba(var(--sc-plan-tint), .62) 90px, rgba(var(--sc-plan-end), .86) 190px, rgba(var(--sc-plan-end), .96) 260px, rgb(var(--sc-plan-end)) 330px);
}
.sc-fiche .sc-plans-grid .sc-plan-photo .sc-plan-tag { background: rgba(var(--sc-plan-end), .72); }
.sc-fiche .sc-plans-grid .sc-plan-photo.sc-plan-featured .sc-plan-tag { background: rgb(var(--sc-plan-tint)); }

/* Carte de prix du haut : le dégradé complet de la page d'accueil, en diagonale */
.sc-fiche .sc-price.sc-price-photo { background: #0d1f52; border-color: rgba(163, 40, 142, .45); }
.sc-fiche .sc-price-photo::after {
  background:
    linear-gradient(180deg, rgba(13, 31, 82, 0) 0, rgba(13, 31, 82, 0) 150px, rgba(13, 31, 82, .88) 260px, #0d1f52 340px),
    linear-gradient(120deg, rgba(163, 40, 142, .72) 0, rgba(99, 60, 176, .66) 50%, rgba(35, 79, 211, .72) 100%);
}

/* Bandeau bleu nuit avec photo à droite (disque « conduite accompagnée ») */
.sc-fiche .sc-band.sc-band-photo {
  background: linear-gradient(90deg, #142147 0, #142147 40%, rgba(20, 33, 71, .62) 72%, rgba(20, 33, 71, .38) 100%),
              var(--sc-band-img) right center / auto 100% no-repeat, #142147;
}
.sc-fiche .sc-band-photo .sc-veh > div { background: rgba(20, 33, 71, .82); border-color: rgba(255, 255, 255, .18); backdrop-filter: blur(3px); }
.sc-fiche .sc-bg-band-disque { --sc-band-img: url("/wp-content/docs/fond-bandeau-disque-conduite-accompagnee.jpg"); }
@media (max-width: 900px) {
  .sc-fiche .sc-band.sc-band-photo {
    background: linear-gradient(180deg, rgba(20, 33, 71, .80) 0, rgba(20, 33, 71, .92) 100%), var(--sc-band-img) center top / cover no-repeat, #142147;
  }
}

/* Carte du haut sans prix (page séances de code) : intitulé en texte à la place du montant */
.sc-fiche .sc-price-amt.sc-price-amt-text { font-size: 44px; letter-spacing: -0.02em; }
.sc-fiche .sc-bg-code-conductrice { --sc-plan-img: url("/wp-content/docs/fond-tarif-code-conductrice.jpg"); }

/* Fiche permis voiture : photo de leçon (7157) sur la carte de prix, Peugeot 208 de l'école (7163 à 7167) sur les forfaits */
.sc-fiche .sc-bg-b-moniteur-large { --sc-plan-img: url("/wp-content/docs/fond-prix-permis-voiture-moniteur.jpg"); }
.sc-fiche .sc-bg-b-eleve-volant   { --sc-plan-img: url("/wp-content/docs/fond-forfait-b-208-avant.jpg"); }
.sc-fiche .sc-bg-b-moniteur       { --sc-plan-img: url("/wp-content/docs/fond-forfait-b-208-tableau.jpg"); }
.sc-fiche .sc-bg-b-voiture-ecole  { --sc-plan-img: url("/wp-content/docs/fond-forfait-b-208-panneau.jpg"); }
.sc-fiche .sc-bg-b-retroviseur    { --sc-plan-img: url("/wp-content/docs/fond-forfait-b-208-volant.jpg"); }
.sc-fiche .sc-bg-b-portiere       { --sc-plan-img: url("/wp-content/docs/fond-forfait-b-208-arriere.jpg"); }
.sc-fiche .sc-bg-aacbva-selecteur { --sc-plan-img: url("/wp-content/docs/fond-forfait-aacbva-selecteur.jpg"); }
.sc-fiche .sc-bg-code-tablette { --sc-plan-img: url("/wp-content/docs/fond-carte-code-tablette.jpg"); }
/* Section « épreuves » du permis voiture : la place « Réservé examen » à la place des cônes */
.sc-fiche .sc-exams.sc-exams-reserve::before { background-image: url("/wp-content/docs/fond-section-examen-place-reservee.jpg"); background-position: center 78%; }

/* Rangée de 4 cartes (page formations voiture) */
.sc-fiche .sc-hub-grid.sc-hub-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1100px) { .sc-fiche .sc-hub-grid.sc-hub-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .sc-fiche .sc-hub-grid.sc-hub-grid-4 { grid-template-columns: 1fr; } }

/* Document officiel en exemple (fiche annulation) */
.sc-fiche .sc-doc { margin: 28px auto 0; max-width: 640px; }
.sc-fiche .sc-doc img { display: block; width: 100%; height: auto; background: #fff; border: 1px solid #dfe3ee; border-radius: 12px; padding: 10px; box-shadow: 0 22px 46px -34px rgba(20, 33, 71, .55); }
.sc-fiche .sc-doc figcaption { margin-top: 10px; font-size: 13px; color: var(--sc-slate); text-align: center; }
.sc-fiche .sc-doc figcaption a { color: var(--sc-blue); text-decoration: underline; }

/* Liens dans les étapes et les encadrés d'avertissement */
.sc-fiche .sc-timeline .sc-step p a,
.sc-fiche .sc-equip .sc-warn a { color: var(--sc-blue); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }

/* Questions du permis : sommaire et cartes de question */
.sc-fiche .sc-toc-legend { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 14px; font-size: 14px; color: var(--sc-slate); }
.sc-fiche .sc-toc-legend span::before { content: ""; display: inline-block; width: 12px; height: 12px; border-radius: 4px; margin-right: 6px; vertical-align: -1px; }
.sc-fiche .sc-toc-legend .sc-int::before { background: var(--sc-ink); }
.sc-fiche .sc-toc-legend .sc-ext::before { background: var(--sc-blue); }
.sc-fiche .sc-toc { display: grid; grid-template-columns: repeat(10, 1fr); gap: 8px; margin-top: 18px; }
.sc-fiche .sc-toc a { display: block; padding: 9px 0; border-radius: 10px; text-align: center; font-family: var(--sc-display); font-weight: 800; font-size: 16px; color: #fff; text-decoration: none; background: var(--sc-blue); transition: transform .15s ease; }
.sc-fiche .sc-toc a.sc-int { background: var(--sc-ink); }
.sc-fiche .sc-toc a:hover { transform: translateY(-2px); }
@media (max-width: 760px) { .sc-fiche .sc-toc { grid-template-columns: repeat(5, 1fr); } }

.sc-fiche .sc-qs { padding-block: 44px; }
.sc-fiche .sc-q-list { display: grid; gap: 16px; margin-top: 22px; }
.sc-fiche .sc-q { scroll-margin-top: 90px; display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 8px 26px; background: var(--sc-paper); border: 1px solid var(--sc-line); border-radius: 16px; padding: 22px 24px; }
.sc-fiche .sc-q.sc-q-nophoto { grid-template-columns: minmax(0, 1fr); }
.sc-fiche .sc-q-head { display: flex; align-items: center; gap: 10px; grid-column: 1 / -1; }
.sc-fiche .sc-q-n { display: inline-grid; place-items: center; min-width: 44px; height: 44px; padding-inline: 8px; border-radius: 12px; background: var(--sc-blue); color: #fff; font-family: var(--sc-display); font-weight: 800; font-size: 20px; }
.sc-fiche .sc-q.sc-q-int .sc-q-n { background: var(--sc-ink); }
.sc-fiche .sc-q-tag { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--sc-slate); }
.sc-fiche .sc-q-title { grid-column: 1 / -1; font-family: var(--sc-display); font-size: clamp(19px, 2vw, 23px); font-weight: 800; line-height: 1.15; letter-spacing: -0.01em; margin-top: 4px; }
.sc-fiche .sc-q-main { min-width: 0; }
.sc-fiche .sc-q-note { font-size: 14.5px; color: var(--sc-slate); margin-top: 6px; }
.sc-fiche .sc-q-icons { display: flex; gap: 10px; align-items: center; margin-top: 8px; }
.sc-fiche .sc-q-icons img { width: auto; height: 34px; }
.sc-fiche .sc-q-qa { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 14px; }
.sc-fiche .sc-q-qa > div { background: var(--sc-ground); border-radius: 12px; padding: 14px 16px; }
.sc-fiche .sc-q-k { font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--sc-blue); }
.sc-fiche .sc-q-ps .sc-q-k { color: #b3261e; }
.sc-fiche .sc-q-q { font-weight: 700; font-size: 15px; margin-top: 6px; line-height: 1.35; }
.sc-fiche .sc-q-a { font-size: 14.5px; color: var(--sc-slate); margin-top: 6px; }
.sc-fiche .sc-q-a p + p { margin-top: 4px; }
.sc-fiche .sc-q-a ul { margin: 4px 0 0 18px; padding: 0; list-style: disc; }
.sc-fiche .sc-q-photos { display: grid; gap: 8px; align-content: start; }
.sc-fiche .sc-q-photos img { display: block; width: 100%; height: auto; max-height: 340px; object-fit: contain; border-radius: 12px; background: var(--sc-ground); }
.sc-fiche .sc-q-top { display: inline-block; margin-top: 12px; font-size: 13px; color: var(--sc-slate); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 900px) {
  .sc-fiche .sc-q { grid-template-columns: minmax(0, 1fr); padding: 18px; }
  .sc-fiche .sc-q-photos { order: -1; grid-row: 3; max-width: 420px; }
  .sc-fiche .sc-q-qa { grid-template-columns: 1fr; }
}

/* Extrait de grille d'évaluation (questions du permis) */
.sc-fiche .sc-grille { margin-top: 22px; background: var(--sc-paper); border: 1px solid var(--sc-line); border-radius: 16px; padding: 10px 14px; }
.sc-fiche .sc-grille-h, .sc-fiche .sc-grille-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 10px; }
.sc-fiche .sc-grille-h { border-bottom: 2px solid var(--sc-sky-soft); }
.sc-fiche .sc-grille-h span { font-size: 13px; color: var(--sc-slate); }
.sc-fiche .sc-grille-row { border-radius: 10px; font-size: 15.5px; }
.sc-fiche .sc-grille-row + .sc-grille-row { margin-top: 4px; }
.sc-fiche .sc-grille-row:nth-child(odd) { background: var(--sc-ground); }
.sc-fiche .sc-grille-row.sc-grille-on { background: var(--sc-sky-soft); outline: 2px solid var(--sc-blue); }
.sc-fiche .sc-grille-n { display: flex; gap: 8px; flex-shrink: 0; }
.sc-fiche .sc-grille-n i { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid #9aa3b8; border-radius: 4px; font-style: normal; font-size: 15px; background: #fff; }
.sc-fiche .sc-grille-n i.sc-off { background: #e6e9ee; border-color: #c9ceda; }
.sc-fiche .sc-grille-n i.sc-max { background: var(--sc-blue); border-color: var(--sc-blue); color: #fff; font-weight: 700; }
.sc-fiche .sc-equip .sc-source { margin-top: 10px; font-size: 13px; color: var(--sc-slate); }
@media (max-width: 760px) {
  .sc-fiche .sc-grille-h span { display: none; }
  .sc-fiche .sc-grille-row { flex-direction: column; align-items: flex-start; gap: 8px; }
  .sc-fiche .sc-grille-n i { width: 34px; height: 34px; }
}

/* Questions neutralisées (DSR, avril 2024) */
.sc-fiche .sc-q-alert { margin-top: 10px; padding: 10px 14px; border-radius: 10px; background: #fff4e0; border-left: 4px solid #d98200; font-size: 14.5px; }
.sc-fiche .sc-q-alert a, .sc-fiche .sc-q-off-note a { text-decoration: underline; text-underline-offset: 3px; }
.sc-fiche .sc-q-qa > div.sc-q-off { background: #f1f1f4; }
.sc-fiche .sc-q-off .sc-q-q, .sc-fiche .sc-q-off .sc-q-a { opacity: .6; }
.sc-fiche .sc-q-off-note { margin-top: 6px; font-size: 13.5px; font-weight: 600; color: #8a5a00; }
.sc-fiche .sc-toc a.sc-neutre { background: repeating-linear-gradient(135deg, #9aa3b8 0 6px, #b7bfd0 6px 12px); text-decoration: line-through; }
.sc-fiche .sc-toc-legend .sc-neutre::before { background: repeating-linear-gradient(135deg, #9aa3b8 0 3px, #b7bfd0 3px 6px); }

/* Page d'accueil */
.sc-fiche .sc-veh.sc-veh-4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1000px) { .sc-fiche .sc-veh.sc-veh-4 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .sc-fiche .sc-veh.sc-veh-4 { grid-template-columns: 1fr; } }
.sc-fiche .sc-home-h3 { font-family: var(--sc-display); font-size: 22px; font-weight: 800; margin-top: 28px; }
.sc-fiche .sc-home-h3 + .sc-hub-grid { margin-top: 12px; }
.sc-fiche .sc-home-more { margin-top: 20px; font-size: 15px; color: var(--sc-slate); }
.sc-fiche .sc-home-more a { color: var(--sc-ink); text-decoration: underline; text-underline-offset: 3px; }
.sc-fiche .sc-home-hubs { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.sc-fiche a.sc-home-hub { display: inline-block; padding: 10px 16px; border-radius: 12px; background: var(--sc-sky-soft); color: var(--sc-ink); font-weight: 700; text-decoration: none; }
.sc-fiche a.sc-home-hub:hover { background: var(--sc-sky); }
.sc-fiche .sc-stats { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-top: 22px; }
.sc-fiche .sc-stats > div { background: var(--sc-paper); border: 1px solid var(--sc-line); border-radius: 14px; padding: 16px; text-align: center; }
.sc-fiche .sc-stats b { display: block; font-family: var(--sc-display); font-size: clamp(30px, 3.4vw, 42px); font-weight: 800; color: var(--sc-blue); line-height: 1; }
.sc-fiche .sc-stats span { display: block; margin-top: 6px; font-size: 14px; color: var(--sc-slate); }
.sc-fiche .sc-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 18px; }
.sc-fiche .sc-gallery figure { margin: 0; }
.sc-fiche .sc-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; }
.sc-fiche .sc-gallery figcaption { margin-top: 6px; font-size: 13.5px; color: var(--sc-slate); }
.sc-fiche .sc-home-parc { margin-top: 16px; font-size: 15px; color: var(--sc-slate); }
.sc-fiche .sc-contact { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 24px; margin-top: 22px; }
.sc-fiche .sc-contact-info { background: var(--sc-ink); color: #fff; border-radius: 16px; padding: 24px; }
.sc-fiche .sc-contact-info p + p { margin-top: 12px; }
.sc-fiche .sc-contact-info a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.sc-fiche .sc-contact-info .sc-tel a { font-family: var(--sc-display); font-size: 34px; font-weight: 800; text-decoration: none; }
.sc-fiche .sc-contact-info a.sc-home-hub { background: var(--sc-sky); color: var(--sc-ink); text-decoration: none; }
.sc-fiche .sc-contact-form { background: var(--sc-paper); border: 1px solid var(--sc-line); border-radius: 16px; padding: 24px; }
.sc-fiche .sc-contact-form h3 { font-family: var(--sc-display); font-size: 22px; font-weight: 800; }
.sc-fiche .sc-contact-form .gform_wrapper input[type="text"], .sc-fiche .sc-contact-form .gform_wrapper input[type="email"], .sc-fiche .sc-contact-form .gform_wrapper input[type="tel"], .sc-fiche .sc-contact-form .gform_wrapper textarea { width: 100%; border: 1px solid var(--sc-line); border-radius: 10px; padding: 10px 12px; font: inherit; background: var(--sc-ground); }
/* Le libellé « CAPTCHA » du champ reCAPTCHA reste lisible par les lecteurs d'écran. */
.sc-fiche .sc-contact-form .gform_wrapper .gfield--type-captcha > .gfield_label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sc-fiche .sc-contact-form .gform_wrapper .gform_button { background: var(--sc-ink); color: #fff; border: 0; border-radius: 12px; padding: 12px 22px; font-weight: 700; cursor: pointer; }
@media (max-width: 900px) {
  .sc-fiche .sc-stats { grid-template-columns: repeat(3, 1fr); }
  .sc-fiche .sc-gallery { grid-template-columns: 1fr 1fr; }
  .sc-fiche .sc-contact { grid-template-columns: 1fr; }
}
@media (max-width: 560px) { .sc-fiche .sc-stats { grid-template-columns: 1fr 1fr; } .sc-fiche .sc-gallery { grid-template-columns: 1fr; } }

/* =====================================================================
   Accueil v2 (1.32.0) : page en plein écran OceanWP (ocean_post_layout =
   full-screen), hero bleu nuit à deux portes (voiture / deux-roues) sous un
   titre géant, formations en liste typographique, résultats en grand.
   Tout est scopé sur .sc-fiche.sc-home pour ne pas toucher aux fiches.
   ===================================================================== */
.sc-fiche.sc-home { background: var(--sc-paper); border-radius: 0; margin: 0; overflow: visible; font-size: 17px; }
.sc-fiche.sc-home .sc-inner { max-width: 1180px; }
.sc-fiche.sc-home .sc-hm-h2 {
  font-family: var(--sc-display); font-size: clamp(36px, 5vw, 64px); font-weight: 800;
  font-variation-settings: "wdth" 75; line-height: .95; letter-spacing: -0.02em; max-width: 16ch;
}
.sc-fiche.sc-home .sc-hm-lead { font-size: 18px; color: var(--sc-slate); margin-top: 14px; max-width: 58ch; }
.sc-fiche.sc-home .sc-hm-sec { padding-block: 64px; }
.sc-fiche.sc-home .sc-hm-sec + .sc-hm-sec { border-top: 1px solid var(--sc-line); }

/* Hero : halo magenta → violet → bleu du dégradé maison, sur fond bleu nuit */
.sc-fiche.sc-home .sc-hm-hero {
  color: #fff; background-color: #0d1f52;
  background-image:
    radial-gradient(110% 95% at 0% 0%, rgba(163, 40, 142, .92) 0, rgba(99, 60, 176, .7) 32%, rgba(35, 79, 211, .45) 58%, rgba(13, 31, 82, 0) 82%),
    radial-gradient(60% 60% at 100% 100%, rgba(35, 79, 211, .45) 0, rgba(13, 31, 82, 0) 70%);
  padding-block: 44px 0;
}
.sc-fiche.sc-home h1.sc-hm-title {
  font-family: var(--sc-display); color: #fff;
  font-size: clamp(54px, 10.2vw, 148px); font-weight: 800; font-variation-settings: "wdth" 75;
  line-height: .88; letter-spacing: -0.025em; max-width: 12ch; margin: 0;
}
.sc-fiche.sc-home .sc-hm-sub { font-size: clamp(17px, 1.6vw, 21px); color: #dfe3f5; max-width: 50ch; margin-top: 28px; line-height: 1.45; }
.sc-fiche.sc-home .sc-hm-sub strong { color: #fff; font-weight: 600; }

.sc-fiche.sc-home .sc-hm-doors { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }
.sc-fiche.sc-home a.sc-hm-door {
  position: relative; display: block; min-height: 460px; border-radius: 22px; overflow: hidden; isolation: isolate;
  color: #fff; background: #142147; border: 1px solid rgba(255, 255, 255, .16);
}
.sc-fiche.sc-home .sc-hm-door img {
  position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; z-index: -2; border-radius: 0; margin: 0;
}
.sc-fiche.sc-home .sc-hm-door::after {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(180deg, rgba(13, 31, 82, 0) 28%, rgba(13, 31, 82, .55) 60%, rgba(13, 31, 82, .96) 100%);
}
.sc-fiche.sc-home a.sc-hm-door:hover { border-color: var(--sc-sky); }
.sc-fiche.sc-home a.sc-hm-door:focus-visible { outline: 3px solid var(--sc-sky); outline-offset: 3px; }
.sc-fiche.sc-home .sc-hm-door-body { position: absolute; left: 0; right: 0; bottom: 0; padding: 26px 30px 28px; display: grid; gap: 8px; }
.sc-fiche.sc-home .sc-hm-door-body em { font-style: normal; font-family: var(--sc-display); font-size: 19px; font-weight: 800; color: var(--sc-sky); }
.sc-fiche.sc-home .sc-hm-door-body strong {
  font-family: var(--sc-display); font-size: clamp(38px, 4.6vw, 64px); font-weight: 800;
  font-variation-settings: "wdth" 75; line-height: .95; letter-spacing: -0.02em;
}
.sc-fiche.sc-home .sc-hm-door-body span { font-size: 16px; color: #dfe3f5; max-width: 36ch; }
.sc-fiche.sc-home .sc-hm-door-body span b { color: #fff; font-weight: 600; }

.sc-fiche.sc-home .sc-hm-strip {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 36px; padding: 28px 0 40px;
  border-top: 1px solid rgba(255, 255, 255, .2); font-size: 15px; color: #c6cbe3;
}
.sc-fiche.sc-home .sc-hm-strip b { display: block; font-family: var(--sc-display); font-size: 23px; font-weight: 800; color: #fff; line-height: 1.1; font-variant-numeric: tabular-nums; margin-bottom: 4px; }
.sc-fiche.sc-home .sc-hm-strip a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.sc-fiche.sc-home .sc-hm-strip b a { text-decoration: none; }

/* Formations : deux colonnes (voiture, deux-roues), une ligne serrée par formation */
.sc-fiche.sc-home .sc-hm-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 48px; margin-top: 36px; align-items: start; }
.sc-fiche.sc-home .sc-hm-group h3 {
  font-family: var(--sc-display); font-size: 30px; font-weight: 800; font-variation-settings: "wdth" 80;
  line-height: 1; padding-bottom: 14px;
}
.sc-fiche.sc-home .sc-hm-group h3 small { display: inline-block; margin-left: 12px; font-family: var(--sc-body); font-size: 14px; font-weight: 500; color: var(--sc-slate); line-height: 1.3; vertical-align: 2px; }
.sc-fiche.sc-home .sc-hm-rows { border-top: 1px solid var(--sc-line); }
.sc-fiche.sc-home a.sc-hm-row {
  display: grid; grid-template-columns: 88px minmax(0, 1fr) auto; gap: 16px; align-items: center;
  padding: 10px 12px; margin-inline: -12px; border-radius: 12px; color: var(--sc-ink);
}
.sc-fiche.sc-home .sc-hm-rows > a + a { position: relative; }
.sc-fiche.sc-home .sc-hm-rows > a + a::before { content: ""; position: absolute; left: 12px; right: 12px; top: 0; border-top: 1px solid var(--sc-line); }
.sc-fiche.sc-home a.sc-hm-row:hover { background: var(--sc-ground); }
.sc-fiche.sc-home a.sc-hm-row:hover .sc-hm-row-name { color: var(--sc-blue-d); }
.sc-fiche.sc-home .sc-hm-row img { width: 88px; height: 60px; object-fit: cover; border-radius: 8px; display: block; margin: 0; }
.sc-fiche.sc-home .sc-hm-row-name { display: block; font-family: var(--sc-display); font-size: 20px; font-weight: 800; line-height: 1.1; letter-spacing: -0.01em; }
.sc-fiche.sc-home .sc-hm-row-tag { font-weight: 600; color: var(--sc-blue-d); }
.sc-fiche.sc-home .sc-hm-row-text { display: block; font-size: 14px; color: var(--sc-slate); margin-top: 3px; }
.sc-fiche.sc-home .sc-hm-row-price { font-family: var(--sc-display); font-size: 22px; font-weight: 800; font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right; line-height: 1; }
.sc-fiche.sc-home .sc-hm-row-price small { font-family: var(--sc-body); font-size: 13px; font-weight: 600; color: var(--sc-slate); margin-right: 4px; }
.sc-fiche.sc-home a.sc-hm-row.sc-hm-row-min { grid-template-columns: minmax(0, 1fr) auto; padding-block: 9px; }
.sc-fiche.sc-home .sc-hm-row-min .sc-hm-row-name { font-size: 17px; font-weight: 700; }
.sc-fiche.sc-home .sc-hm-row-min .sc-hm-row-text { display: none; }
.sc-fiche.sc-home .sc-hm-row-min .sc-hm-row-price { font-size: 18px; }
.sc-fiche.sc-home .sc-hm-more { margin-top: 18px; }
.sc-fiche.sc-home a.sc-hm-more-link { display: inline-block; font-weight: 700; color: var(--sc-blue-d); text-decoration: underline; text-underline-offset: 4px; }

/* Résultats : le taux du permis B en très grand, face à la moyenne du département */
.sc-fiche.sc-home .sc-hm-res { background: var(--sc-ink); color: #fff; padding-block: 64px; }
.sc-fiche.sc-home .sc-hm-res .sc-hm-h2 { color: #fff; }
.sc-fiche.sc-home .sc-hm-res-main { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 24px 48px; align-items: end; margin-top: 28px; }
.sc-fiche.sc-home .sc-hm-big {
  font-family: var(--sc-display); font-size: clamp(110px, 17vw, 240px); font-weight: 800;
  font-variation-settings: "wdth" 75; line-height: .82; letter-spacing: -0.035em; color: var(--sc-sky); font-variant-numeric: tabular-nums;
}
.sc-fiche.sc-home .sc-hm-big small { font-size: .32em; color: #fff; letter-spacing: 0; margin-left: .06em; }
.sc-fiche.sc-home .sc-hm-res-vs { padding-bottom: 14px; font-size: 18px; color: #c6cbe3; max-width: 38ch; line-height: 1.45; }
.sc-fiche.sc-home .sc-hm-res-vs b { display: block; font-family: var(--sc-display); font-size: 32px; font-weight: 800; color: #fff; line-height: 1.1; margin-bottom: 8px; }
.sc-fiche.sc-home .sc-hm-res-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px 40px; margin-top: 44px; padding-top: 30px; border-top: 1px solid rgba(255, 255, 255, .2); }
.sc-fiche.sc-home .sc-hm-res-row b { display: block; font-family: var(--sc-display); font-size: 52px; font-weight: 800; font-variation-settings: "wdth" 80; line-height: 1; color: #fff; font-variant-numeric: tabular-nums; }
.sc-fiche.sc-home .sc-hm-res-row b small { font-size: 20px; color: #c6cbe3; margin-left: 3px; }
.sc-fiche.sc-home .sc-hm-res-row span { display: block; margin-top: 10px; font-size: 15px; color: #c6cbe3; max-width: 30ch; }
.sc-fiche.sc-home .sc-hm-res-row a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }

/* Arguments, ressources : trois colonnes de texte, sans boîtes */
.sc-fiche.sc-home .sc-hm-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px 44px; margin-top: 40px; }
.sc-fiche.sc-home .sc-hm-cols h3 { font-family: var(--sc-display); font-size: 22px; font-weight: 800; line-height: 1.15; letter-spacing: -0.01em; }
.sc-fiche.sc-home .sc-hm-cols h3 a { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; text-decoration-color: var(--sc-sky); }
.sc-fiche.sc-home .sc-hm-cols h3 a:hover { color: var(--sc-blue-d); }
.sc-fiche.sc-home .sc-hm-cols p { margin-top: 8px; font-size: 16px; color: var(--sc-slate); }
.sc-fiche.sc-home .sc-hm-cols p a { color: var(--sc-blue-d); text-decoration: underline; text-underline-offset: 3px; }

/* L'école : chiffres en ligne, puis les photos */
.sc-fiche.sc-home .sc-hm-stats { display: flex; flex-wrap: wrap; gap: 24px 52px; margin-top: 34px; }
.sc-fiche.sc-home .sc-hm-stats b { display: block; font-family: var(--sc-display); font-size: clamp(44px, 5.4vw, 72px); font-weight: 800; font-variation-settings: "wdth" 75; line-height: 1; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.sc-fiche.sc-home .sc-hm-stats span { display: block; margin-top: 6px; font-size: 15px; color: var(--sc-slate); }
.sc-fiche.sc-home .sc-gallery { margin-top: 36px; }
.sc-fiche.sc-home .sc-home-parc { margin-top: 22px; max-width: 70ch; }

/* Sections reprises du gabarit (FAQ, contact) : mêmes marges que le reste de l'accueil */
.sc-fiche.sc-home .sc-faq { padding-block: 64px; border-top: 1px solid var(--sc-line); }
.sc-fiche.sc-home .sc-faq .sc-hm-h2 { margin-bottom: 26px; }
.sc-fiche.sc-home .sc-equip.sc-home-contact { padding-block: 64px; border-bottom: 0; background: var(--sc-ground); }
.sc-fiche.sc-home .sc-contact { margin-top: 30px; }

@media (max-width: 1000px) {
  .sc-fiche.sc-home .sc-hm-groups { grid-template-columns: 1fr; gap: 36px; }
  .sc-fiche.sc-home .sc-hm-cols { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 900px) {
  .sc-fiche.sc-home .sc-hm-doors { grid-template-columns: 1fr; }
  .sc-fiche.sc-home a.sc-hm-door { min-height: 340px; }
  .sc-fiche.sc-home .sc-hm-strip { grid-template-columns: 1fr; gap: 16px; }
  .sc-fiche.sc-home .sc-hm-res-main { grid-template-columns: 1fr; align-items: start; }
  .sc-fiche.sc-home .sc-hm-res-row { grid-template-columns: 1fr; gap: 22px; }
}
@media (max-width: 760px) {
  .sc-fiche.sc-home { font-size: 16px; }
  .sc-fiche.sc-home .sc-hm-sec, .sc-fiche.sc-home .sc-hm-res, .sc-fiche.sc-home .sc-faq, .sc-fiche.sc-home .sc-equip.sc-home-contact { padding-block: 48px; }
  .sc-fiche.sc-home .sc-hm-hero { padding-top: 32px; }
  .sc-fiche.sc-home .sc-hm-doors { margin-top: 32px; }
  .sc-fiche.sc-home a.sc-hm-door { min-height: 300px; }
  .sc-fiche.sc-home .sc-hm-door-body { padding: 20px 20px 22px; }
  .sc-fiche.sc-home .sc-hm-group h3 small { display: block; margin: 6px 0 0; }
  .sc-fiche.sc-home a.sc-hm-row { grid-template-columns: 72px minmax(0, 1fr) auto; gap: 12px; padding: 10px 8px; margin-inline: -8px; }
  .sc-fiche.sc-home .sc-hm-row img { width: 72px; height: 50px; }
  .sc-fiche.sc-home .sc-hm-row-name { font-size: 17px; }
  .sc-fiche.sc-home .sc-hm-row-text { display: none; }
  .sc-fiche.sc-home .sc-hm-row-price { font-size: 18px; }
  .sc-fiche.sc-home .sc-hm-row-min .sc-hm-row-price { font-size: 16px; }
  .sc-fiche.sc-home .sc-hm-cols { grid-template-columns: 1fr; gap: 26px; }
  .sc-fiche.sc-home .sc-hm-stats { gap: 18px 32px; }
}
.sc-fiche.sc-home .sc-hm-res a.sc-hm-more-link { color: var(--sc-sky); }
