:root {     color-scheme: light;      --color-bg: #fcfdfb;     --color-surface: #f7f2eb;     --color-card: #ffffff;     --color-border: #96887b;     --color-text: #1b1b1a;     --color-muted: #5d554d;     --color-accent: #b43d21;     --color-accent-strong: #8f2f1b;     --color-brand-orange: #d76c33;     --color-road: #eadfd5;     --color-success: #18794e;     --color-error: #a62b1f;     --color-warning: #8a4b00;     --color-on-accent: #ffffff;     --color-logo-bg: #fcfdfb;      --space-1: 0.25rem;     --space-2: 0.5rem;     --space-3: 0.75rem;     --space-4: 1rem;     --space-6: 1.5rem;     --space-8: 2rem;     --space-12: 3rem;     --space-16: 4rem;      --radius-sm: 0.5rem;     --radius-md: 0.875rem;     --radius-lg: 1.5rem;     --radius-round: 999rem;      --shadow-sm: 0 0.5rem 1.5rem color-mix(in srgb, var(--color-text) 9%, transparent);     --shadow-lg: 0 1.5rem 4rem color-mix(in srgb, var(--color-text) 16%, transparent);      --font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;     --font-display: "Arial Narrow", "Aptos Narrow", "Helvetica Neue", Arial, sans-serif;     --text-xs: 0.75rem;     --text-sm: 0.875rem;     --text-base: 1rem;     --text-lg: 1.125rem;     --text-xl: 1.25rem;     --text-2xl: 1.5rem;     --text-3xl: clamp(2rem, 5vw, 3.75rem);     --text-hero: clamp(2.75rem, 8vw, 6.75rem);      --line-tight: 1.08;     --line-body: 1.65;     --container: 78rem;     --reading: 46rem;     --header-height: 5.75rem;     --transition: 180ms ease; } 
*, *::before, *::after {     box-sizing: border-box; }  html {     scroll-behavior: smooth;     scroll-padding-top: calc(var(--header-height) + var(--space-4));     background: var(--color-bg); }  body {     min-width: 20rem;     margin: 0;     overflow-x: hidden;     background: var(--color-bg);     color: var(--color-text);     font-family: var(--font-body);     font-size: var(--text-base);     line-height: var(--line-body);     text-rendering: optimizeLegibility; }  main:focus {     outline: none; }  /* Le conteneur n'est pas un composant interactif : au clavier seulement, on signale    malgré tout où le lien d'évitement a déposé le focus. */ main:focus-visible {     outline: 0.2rem dashed var(--color-warning);     outline-offset: calc(var(--space-1) * -1); }  h1, h2, h3, p, ul, ol, dl, blockquote {     margin-block-start: 0; }  h1, h2, h3 {     color: var(--color-text);     font-family: var(--font-display);     line-height: var(--line-tight);     text-wrap: balance; }  h1 {     font-size: var(--text-hero);     letter-spacing: -0.055em; }  h2 {     font-size: var(--text-3xl);     letter-spacing: -0.035em; }  h3 {     font-size: var(--text-xl);     letter-spacing: -0.015em; }  p, li, dd {     color: var(--color-muted); }  a {     color: var(--color-accent);     text-decoration-thickness: 0.1em;     text-underline-offset: 0.2em; }  a:hover {     text-decoration-thickness: 0.15em; }  button, input, select, textarea {     color: inherit;     font: inherit; }  button, a {     -webkit-tap-highlight-color: transparent; }  :focus-visible {     outline: 0.2rem solid var(--color-warning);     outline-offset: 0.2rem; }  ::selection {     background: var(--color-accent);     color: var(--color-on-accent); }  address {     color: var(--color-muted);     font-style: normal; }  table {     width: 100%;     border-collapse: collapse; }  th, td {     padding: var(--space-3) var(--space-4);     border-bottom: 0.0625rem solid var(--color-border);     text-align: start;     vertical-align: top; }  th {     color: var(--color-text); }  /* Un lien seul dans une cellule est une cible à part entière : au moins 24 x 24 px    (WCAG 2.2, critère 2.5.8), relevés à 44 px de haut sur mobile (responsive.css). */ th a, td a {     display: inline-flex;     min-width: 1.5rem;     min-height: 1.5rem;     align-items: center; }  caption {     padding-block-end: var(--space-4);     color: var(--color-muted);     text-align: start; }  [id] {     scroll-margin-top: calc(var(--header-height) + var(--space-4)); }  .sr-only {     position: absolute;     width: 0.0625rem;     height: 0.0625rem;     padding: 0;     margin: -0.0625rem;     overflow: hidden;     clip: rect(0, 0, 0, 0);     white-space: nowrap;     border: 0; }  .skip-link {     position: fixed;     z-index: 100;     inset-block-start: var(--space-3);     inset-inline-start: var(--space-3);     padding: var(--space-3) var(--space-4);     border-radius: var(--radius-sm);     background: var(--color-warning);     color: var(--color-bg);     font-weight: 800;     transform: translateY(-160%); }  .skip-link:focus {     transform: translateY(0); }  @media (prefers-reduced-motion: reduce) {     html {         scroll-behavior: auto;     }      *,     *::before,     *::after {         scroll-behavior: auto !important;         animation-duration: 0.01ms !important;         animation-iteration-count: 1 !important;         transition-duration: 0.01ms !important;     } } 
.container {     width: min(100% - calc(var(--space-4) * 2), var(--container));     margin-inline: auto; }  .reading-width {     max-width: var(--reading); }  .site-header {     position: sticky;     z-index: 50;     inset-block-start: 0;     min-height: var(--header-height);     border-bottom: 0.0625rem solid color-mix(in srgb, var(--color-border) 75%, transparent);     background: color-mix(in srgb, var(--color-bg) 96%, transparent);     backdrop-filter: blur(1rem); }  .header-inner {     display: flex;     min-height: var(--header-height);     align-items: center;     justify-content: space-between;     gap: var(--space-4); }  .brand {     display: inline-flex;     min-height: 2.75rem;     align-items: center;     gap: var(--space-3);     color: var(--color-text);     text-decoration: none; }  .brand-logo {     display: block;     width: 9.75rem;     height: auto;     flex: 0 0 auto; }  .site-nav {     display: flex;     align-items: center;     gap: var(--space-2); }  .site-nav > a:not(.button) {     min-height: 2.75rem;     padding: var(--space-2) var(--space-3);     color: var(--color-text);     font-size: var(--text-sm);     font-weight: 650;     line-height: 1.75rem;     text-decoration: none; }  .site-nav > a:not(.button):hover {     color: var(--color-accent); }  .menu-toggle {     display: none;     width: 2.75rem;     height: 2.75rem;     place-items: center;     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-sm);     background: var(--color-card); }  .menu-toggle-lines, .menu-toggle-lines::before, .menu-toggle-lines::after {     display: block;     width: 1.25rem;     height: 0.125rem;     background: var(--color-text);     content: "";     transition: transform var(--transition); }  .menu-toggle-lines::before {     transform: translateY(-0.4rem); }  .menu-toggle-lines::after {     transform: translateY(0.275rem); }  .menu-open .menu-toggle-lines {     background: transparent; }  .menu-open .menu-toggle-lines::before {     transform: translateY(0.125rem) rotate(45deg); }  .menu-open .menu-toggle-lines::after {     transform: rotate(-45deg); }  .section {     position: relative;     padding-block: var(--space-16); }  .section-muted {     border-block: 0.0625rem solid var(--color-border);     background: var(--color-surface); }  .section-heading {     max-width: 45rem;     margin-block-end: var(--space-12); }  .section-heading > p:last-child {     margin-block-end: 0;     font-size: var(--text-lg); }  .heading-split {     display: grid;     max-width: none;     grid-template-columns: minmax(0, 1.4fr) minmax(18rem, 0.6fr);     gap: var(--space-8);     align-items: end; }  .hero {     position: relative;     min-height: calc(100svh - var(--header-height));     overflow: hidden;     padding-block: var(--space-16) var(--space-8);     background:         radial-gradient(circle at 80% 20%, color-mix(in srgb, var(--color-brand-orange) 18%, transparent), transparent 35%),         var(--color-bg); }  .hero-grid {     position: relative;     z-index: 2;     display: grid;     min-height: 34rem;     grid-template-columns: minmax(0, 1.35fr) minmax(19rem, 0.65fr);     gap: var(--space-12);     align-items: center; }  /* Deux colonnes de largeur comparable quand la carte du stage occupe la    droite : la maquette du 15 octobre 2026 ne montre pas une colonne étroite,    et le panneau a besoin de place pour que la photo respire derrière le    texte. */ .hero-grid-stage {     grid-template-columns: minmax(0, 1fr) minmax(26rem, 1fr); }  .hero-copy {     max-width: 55rem; }  /* Titre d'accueil réduit de 40 % sur demande du chef de projet, le 7 octobre 2026.    Chaque terme du clamp est ramené à 60 % de sa valeur : 2.75 → 1.65rem,    8 → 4.8vw, 6.75 → 4.05rem.     La réduction est posée ICI et non sur le jeton --text-hero : ce jeton sert au    h1 de toutes les pages qui n'en redéfinissent pas un — tarifs, contact, FAQ,    informations, forfaits accélérés. Les toucher n'a pas été demandé. */ .hero-copy h1 {     font-size: clamp(1.65rem, 4.8vw, 4.05rem); }  .hero-lead {     max-width: 44rem;     margin-block-end: var(--space-8);     font-size: var(--text-xl); }  .hero-card {     overflow: hidden;     padding: var(--space-8);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-lg);     background: color-mix(in srgb, var(--color-card) 88%, transparent);     box-shadow: var(--shadow-lg); }  .hero-card-visual {     margin: calc(var(--space-8) * -1) calc(var(--space-8) * -1) var(--space-6);     background: var(--color-text); }  .hero-card-visual img {     display: block;     width: 100%;     height: auto;     aspect-ratio: 40 / 21; }  .hero-card-visual figcaption {     padding: var(--space-2) var(--space-8);     background: var(--color-text);     color: var(--color-bg);     font-size: var(--text-xs); }  .hero-card dl {     margin-block: var(--space-6) 0; }  .hero-card dl > div {     display: grid;     padding-block: var(--space-3);     border-top: 0.0625rem solid var(--color-border);     grid-template-columns: 6rem 1fr;     gap: var(--space-3); }  .hero-card dt {     color: var(--color-muted); }  .hero-card dd {     margin: 0;     color: var(--color-text); }  .schedule-line {     display: block; }  .hero-card a, .fact-strip a {     display: inline-flex;     min-height: 1.5rem;     align-items: center; }  .fact-strip a {     color: var(--color-text);     font-weight: 750; }  /* Le soulignement est permanent : l'information ne doit jamais reposer sur la couleur    seule (WCAG 1.4.1). La teinte reprend le jeton de lien du site. */ .fact-strip .review-proof-link {     color: var(--color-accent);     text-decoration: underline; }  .fact-strip .review-proof-link:hover, .fact-strip .review-proof-link:focus-visible {     text-decoration-thickness: 0.15em; }  .fact-strip {     position: relative;     z-index: 2;     display: flex;     flex-wrap: wrap;     align-items: center;     gap: var(--space-3) var(--space-6);     padding-block-start: var(--space-8);     border-top: 0.0625rem solid var(--color-border);     font-size: var(--text-sm); }  .fact-strip span {     color: var(--color-text);     font-weight: 650; }  .hero-road {     position: absolute;     inset: 0;     opacity: 0.3;     pointer-events: none; }  .road-line, .road-center {     position: absolute;     inset-block-end: -15%;     width: 0.125rem;     height: 80%;     background: var(--color-road);     transform-origin: bottom; }  .road-line-one {     inset-inline-start: 12%;     transform: rotate(26deg); }  .road-line-two {     inset-inline-end: 12%;     transform: rotate(-26deg); }  .road-center {     inset-inline-start: 50%;     background: repeating-linear-gradient(         to bottom,         var(--color-road) 0,         var(--color-road) var(--space-6),         transparent var(--space-6),         transparent var(--space-12)     );  }  @keyframes road-move {     to {         background-position-y: var(--space-12);     } }  .card-grid, .price-grid {     display: grid;     grid-template-columns: repeat(3, minmax(0, 1fr));     gap: var(--space-6); }  .credentials-grid {     grid-template-columns: repeat(2, minmax(0, 1fr)); }  .credentials-grid .source-note {     padding-block-start: var(--space-4);     margin-block-start: auto; }  .reviews-section {     overflow: hidden;     background:         radial-gradient(circle at 90% 10%, color-mix(in srgb, var(--color-brand-orange) 12%, transparent), transparent 32%),         var(--color-bg); }  .reviews-panel {     position: relative;     display: grid;     overflow: hidden;     padding: clamp(var(--space-8), 5vw, var(--space-16));     border: 0.0625rem solid color-mix(in srgb, var(--color-accent) 42%, var(--color-border));     border-radius: calc(var(--radius-lg) + var(--space-2));     background:         linear-gradient(135deg, color-mix(in srgb, var(--color-card) 96%, transparent), var(--color-surface));     box-shadow: var(--shadow-lg);     grid-template-columns: minmax(0, 1.45fr) minmax(17rem, 0.55fr);     gap: var(--space-12); }  .reviews-panel::before {     position: absolute;     width: 24rem;     height: 24rem;     border: 5rem solid color-mix(in srgb, var(--color-accent) 8%, transparent);     border-radius: 50%;     content: "";     inset-block-start: -15rem;     inset-inline-end: -10rem;     pointer-events: none; }  .reviews-intro, .rating-card, .review-themes, .controlled-reviews {     position: relative;     z-index: 1; }  .reviews-intro h2 {     max-width: 48rem; }  .reviews-panel .eyebrow, .reviews-panel .theme-number {     color: color-mix(in srgb, var(--color-accent) 70%, var(--color-text)); }  .reviews-lead {     max-width: 44rem;     margin-block-end: var(--space-8);     font-size: var(--text-lg); }  .rating-card {     align-self: start;     padding: var(--space-8);     border: 0.0625rem solid color-mix(in srgb, var(--color-warning) 40%, var(--color-border));     border-radius: var(--radius-lg);     background: color-mix(in srgb, var(--color-bg) 70%, transparent); }  .rating-source {     margin-block-end: var(--space-2);     color: var(--color-text);     font-weight: 800; }  .rating-stars {     margin-block-end: var(--space-2);     color: var(--color-warning);     font-size: var(--text-xl);     letter-spacing: 0.12em;     line-height: 1; }  .rating-score {     display: flex;     align-items: baseline;     margin-block-end: 0;     color: var(--color-text);     line-height: 1; }  .rating-score strong {     font-family: var(--font-display);     font-size: clamp(3.75rem, 8vw, 6rem);     letter-spacing: -0.07em; }  .rating-score span {     margin-inline-start: var(--space-2);     color: var(--color-muted);     font-size: var(--text-xl);     font-weight: 700; }  .rating-count {     margin-block: var(--space-3) 0;     color: var(--color-text);     font-weight: 800; }  .review-themes {     display: grid;     padding: var(--space-8) 0 0;     border-top: 0.0625rem solid var(--color-border);     margin: 0;     grid-column: 1 / -1;     grid-template-columns: repeat(3, minmax(0, 1fr));     gap: var(--space-8);     list-style: none; }  .review-themes li {     display: grid;     grid-template-columns: 2.25rem 1fr;     gap: var(--space-3); }  .theme-number {     color: var(--color-accent);     font-family: var(--font-display);     font-size: var(--text-xs);     font-weight: 900;     letter-spacing: 0.08em; }  .review-themes h3 {     margin-block-end: var(--space-2); }  .review-themes p {     margin: 0; }  .controlled-reviews {     padding-block-start: var(--space-6);     border-top: 0.0625rem solid var(--color-border);     margin: 0;     grid-column: 1 / -1;     font-size: var(--text-sm); }  .controlled-reviews strong {     color: var(--color-text); }  .method-grid, .contact-grid {     display: grid;     grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);     gap: var(--space-12);     align-items: start; } 
.eyebrow, .card-kicker, .status-label {     margin-block-end: var(--space-3);     color: var(--color-accent);     font-size: var(--text-xs);     font-weight: 850;     letter-spacing: 0.14em;     text-transform: uppercase; }  .button-row {     display: flex;     flex-wrap: wrap;     align-items: center;     gap: var(--space-4); }  .button {     display: inline-flex;     min-height: 2.75rem;     align-items: center;     justify-content: center;     padding: var(--space-3) var(--space-6);     border: 0.0625rem solid var(--color-accent);     border-radius: var(--radius-round);     background: var(--color-accent);     color: var(--color-on-accent);     font-weight: 800;     line-height: 1.25;     text-align: center;     text-decoration: none;     transition:         background var(--transition),         border-color var(--transition),         transform var(--transition); }  .button:hover {     border-color: var(--color-accent-strong);     background: var(--color-accent-strong);     transform: translateY(-0.125rem);     text-decoration: none; }  .button-small {     min-height: 2.5rem;     padding: var(--space-2) var(--space-4);     font-size: var(--text-sm); }  .button-secondary {     border-color: var(--color-border);     background: transparent;     color: var(--color-text); }  .button-secondary:hover {     border-color: var(--color-accent);     color: var(--color-accent); }  .text-link {     display: inline-flex;     min-height: 2.75rem;     align-items: center;     color: var(--color-text);     font-weight: 750; }  .text-link::after {     margin-inline-start: var(--space-2);     color: var(--color-accent);     content: "→"; }  .source-note {     margin-block: var(--space-4) 0;     color: var(--color-muted);     font-size: var(--text-xs); }  .official-logo-grid {     display: grid;     padding: 0;     margin: 0 0 var(--space-8);     grid-template-columns: repeat(3, minmax(0, 1fr));     gap: var(--space-4);     list-style: none; }  .official-logo-grid li {     display: grid;     min-width: 0;     align-items: center;     padding: var(--space-4);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-lg);     background: var(--color-card);     box-shadow: var(--shadow-sm);     grid-template-columns: 8.5rem minmax(0, 1fr);     gap: var(--space-4); }  .official-logo-visual {     display: grid;     width: 8.5rem;     height: 6.5rem;     place-items: center;     padding: var(--space-2);     border-radius: var(--radius-md);     background: var(--color-logo-bg); }  .official-logo-visual img {     display: block;     width: auto;     height: auto;     max-width: 100%;     max-height: 100%;     object-fit: contain; }  .official-logo-school img {     max-width: 5.75rem; }  .official-logo-qualiopi img {     max-width: 7.5rem; }  .official-logo-copy small, .official-logo-copy strong {     display: block; }  .official-logo-copy small {     margin-block-end: var(--space-1);     color: color-mix(in srgb, var(--color-accent) 70%, var(--color-text));     font-size: var(--text-xs);     font-weight: 850;     letter-spacing: 0.08em;     text-transform: uppercase; }  .official-logo-copy strong {     color: var(--color-text);     font-family: var(--font-display);     line-height: var(--line-tight); }  .cpf-eligibility-mark {     display: grid;     align-items: center;     padding: var(--space-4);     margin: auto 0 var(--space-4);     border: 0.0625rem solid color-mix(in srgb, var(--color-accent) 32%, var(--color-border));     border-radius: var(--radius-md);     background: color-mix(in srgb, var(--color-accent) 8%, var(--color-card));     grid-template-columns: 8.5rem minmax(0, 1fr);     gap: var(--space-4); }  .cpf-eligibility-visual {     display: grid;     padding: var(--space-2);     border-radius: var(--radius-sm);     background: var(--color-logo-bg);     place-items: center; }  .cpf-eligibility-visual img {     display: block;     width: 100%;     height: auto; }  .cpf-eligibility-mark figcaption {     color: var(--color-muted);     font-size: var(--text-sm);     line-height: var(--line-normal); }  .service-card, .price-card {     display: flex;     min-height: 100%;     flex-direction: column;     padding: var(--space-6);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-lg);     background: var(--color-card);     box-shadow: var(--shadow-sm); }  .service-card h3, .price-card h3 {     margin-block-end: var(--space-4); }  .service-card ul, .price-card ul {     padding-inline-start: var(--space-6);     margin-block-end: var(--space-6); }  .service-card li, .price-card li {     margin-block-end: var(--space-2); }  .service-card > a, .price-card > a {     margin-block-start: auto; }  .price-card h3 {     font-size: var(--text-2xl); }  .price-card h3 small {     color: var(--color-muted);     font-size: var(--text-sm);     font-weight: 500; }  .price-card-featured {     border-color: var(--color-accent);     box-shadow: 0 0 0 0.0625rem var(--color-accent), var(--shadow-lg); }  .notice {     padding: var(--space-4);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-md);     background: var(--color-card); }  .notice strong {     display: block;     color: var(--color-text); }  .notice p, .notice ul {     margin-block: var(--space-2) 0; }  .notice-warning {     border-color: var(--color-warning); }  .notice-success {     border-color: var(--color-success); }  .notice-error {     border-color: var(--color-error); }  .other-prices {     margin-block-start: var(--space-8);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-md);     background: var(--color-card); }  .other-prices summary {     min-height: 2.75rem;     padding: var(--space-4) var(--space-6);     color: var(--color-text);     cursor: pointer;     font-weight: 750; }  .compact-table {     overflow-x: auto;     padding: 0 var(--space-6) var(--space-6); }  .steps {     padding: 0;     margin: 0;     list-style: none; }  .steps li {     display: grid;     padding-block: var(--space-6);     border-top: 0.0625rem solid var(--color-border);     grid-template-columns: 3rem 1fr;     gap: var(--space-4); }  .steps li > span {     display: grid;     width: 2.75rem;     height: 2.75rem;     place-items: center;     border-radius: var(--radius-round);     background: var(--color-accent);     color: var(--color-on-accent);     font-weight: 900; }  .steps h3 {     margin-block-end: var(--space-2); }  .steps p {     margin: 0; }  .contact-options {     display: grid;     gap: var(--space-4);     margin-block-start: var(--space-8); }  .contact-options > div {     padding-block-start: var(--space-4);     border-top: 0.0625rem solid var(--color-border); }  .contact-options h3 {     margin-block-end: var(--space-2);     font-size: var(--text-base); }  .contact-options p {     margin-block: var(--space-1) 0;     font-size: var(--text-sm); }  .contact-options a {     display: inline-flex;     min-height: 1.5rem;     align-items: center; }  /* Plan d'accès de la page Contact. L'image est auto-hébergée : aucune carte    tierce n'est chargée, donc aucun cookie ni requête sortante au chargement. */ .map-card {     display: grid;     overflow: hidden;     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-lg);     background: var(--color-card);     box-shadow: var(--shadow-sm);     grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr); }  .map-figure {     margin: 0; }  .map-image {     display: block;     width: 100%;     height: auto; }  .map-figure figcaption {     padding: var(--space-3) var(--space-6);     border-top: 0.0625rem solid var(--color-border);     color: var(--color-muted);     font-size: var(--text-xs); }  .map-details {     padding: var(--space-8);     border-inline-start: 0.0625rem solid var(--color-border); }  .map-details address {     margin-block-end: var(--space-4);     font-style: normal; }  .map-links {     display: flex;     flex-wrap: wrap;     gap: var(--space-3) var(--space-6); }  .map-links a {     display: inline-flex;     min-height: 2.75rem;     align-items: center; }  .map-note {     margin-block-end: 0;     color: var(--color-muted);     font-size: var(--text-xs); }  /* === Hero du 15 octobre 2026 : carte « Stage intensif », bande de bénéfices    et section « Objectif code ».     AUCUNE COULEUR EN DUR N'A ÉTÉ AJOUTÉE. L'anthracite de la direction    artistique (#171717) est rendu par --color-text (#1b1b1a) et l'ivoire par    --color-bg ; l'orange terre cuite correspond à --color-accent pour les    actions et à --color-brand-orange pour les sur-titres sur fond sombre. Les    deux teintes claires de la carte sombre sont dérivées des jetons par    color-mix, et non saisies : un changement de jeton les suit. */  /* COMPOSITION DE LA CARTE, CORRIGÉE LE 15 OCTOBRE 2026.     La première version empilait deux blocs : le texte, puis la photo en dessous.    La maquette montre tout autre chose — un seul panneau dont la photo est le    fond, et dont le texte se pose sur la zone sombre de gauche. Le défaut est    parti en production avant d'être vu : les contrôles portaient sur le    débordement, la position du titre et la structure, jamais sur la ressemblance    à la maquette. */ .stage-card {     position: relative;     display: grid;     padding: 0;     border-color: var(--color-text);     background: var(--color-text);     color: var(--color-bg);     grid-template-rows: minmax(0, 1fr) auto;     isolation: isolate;     min-height: 22rem;     overflow: hidden; }  /* La photo remplit le panneau, derrière tout le reste. */ .stage-card-visual {     position: absolute;     z-index: 0;     margin: 0;     inset: 0; }  .stage-card-visual picture {     display: block;     height: 100%; }  /* La source est un portrait de 1024 x 1536 ; le panneau n'en montre qu'une    bande. Le cadrage est descendu à 28 % de la hauteur pour garder à la fois    l'écran de panneaux et le visage de l'élève, que centrer ferait sortir. */ .stage-card-visual img {     display: block;     width: 100%;     height: 100%;     object-fit: cover;     object-position: 50% 34%; }  /* Voile sombre, opaque à gauche et transparent à droite : le texte garde son    contraste sans effacer la photo. */ .stage-card::before {     position: absolute;     z-index: 1;     background: linear-gradient(         100deg,         var(--color-text) 0%,         var(--color-text) 22%,         color-mix(in srgb, var(--color-text) 55%, transparent) 40%,         color-mix(in srgb, var(--color-text) 15%, transparent) 56%,         transparent 70%     );     content: "";     inset: 0; }  .stage-card-copy {     position: relative;     z-index: 2;     max-width: 50%;     padding: var(--space-6); }  /* PASTILLE PLEINE PLUTÔT QUE SIMPLE SUR-TITRE, le 21 octobre 2026 : en texte    orange sur fond sombre, « Stage intensif » passait inaperçu sur l'écran qui    doit justement le mettre en avant. Le couple fond/texte est celui des boutons    du site, déjà éprouvé pour le contraste. */ .stage-card-eyebrow {     display: inline-flex;     align-items: center;     padding: var(--space-1) var(--space-3);     border-radius: var(--radius-round);     background: var(--color-accent);     color: var(--color-on-accent);     font-size: var(--text-sm); }  .stage-card-title {     margin-block: 0 var(--space-4);     color: var(--color-bg);     font-size: var(--text-3xl);     line-height: var(--line-tight);     text-transform: uppercase; }  .stage-card-facts {     margin-block: 0 var(--space-4); }  .stage-card-facts > div {     display: grid;     padding-block: var(--space-2);     border-top: 0.0625rem solid color-mix(in srgb, var(--color-bg) 30%, transparent);     grid-template-columns: 4.5rem minmax(0, 1fr);     gap: var(--space-3); }  .stage-card-facts dt {     color: color-mix(in srgb, var(--color-bg) 75%, var(--color-text)); }  .stage-card-facts dd {     margin: 0;     color: var(--color-bg); }  .stage-card-price {     display: flex;     align-items: baseline;     margin-block: 0 var(--space-4);     gap: var(--space-2); }  .stage-card-price strong {     color: var(--color-bg);     font-family: var(--font-display);     font-size: var(--text-3xl);     line-height: var(--line-tight); }  .stage-card-price span {     color: color-mix(in srgb, var(--color-bg) 75%, var(--color-text));     font-size: var(--text-lg); }  .stage-card-cta {     width: 100%; }  /* La bande d'informations occupe tout le pied du panneau, sur un fond assombri    qui la detache de la photo. */ .stage-card-tags {     position: relative;     z-index: 2;     display: flex;     flex-wrap: wrap;     margin: 0;     padding: var(--space-4) var(--space-8);     border-top: 0.0625rem solid color-mix(in srgb, var(--color-bg) 22%, transparent);     background: color-mix(in srgb, var(--color-text) 88%, transparent);     gap: var(--space-2) var(--space-4);     color: color-mix(in srgb, var(--color-bg) 85%, var(--color-text));     font-size: var(--text-sm);     list-style: none; }  .stage-card-tags li + li {     padding-inline-start: var(--space-4);     border-inline-start: 0.0625rem solid color-mix(in srgb, var(--color-bg) 30%, transparent); }   .benefits-section {     padding-block: var(--space-12);     background: var(--color-surface); }  .benefits-strip {     display: grid;     margin: 0;     padding: 0;     grid-template-columns: repeat(3, minmax(0, 1fr));     gap: var(--space-8);     list-style: none; }  .benefits-strip li + li {     padding-inline-start: var(--space-8);     border-inline-start: 0.0625rem solid var(--color-border); }  .benefits-strip h3 {     margin-block: 0 var(--space-2);     font-size: var(--text-xl); }  .benefits-strip p {     margin: 0;     color: var(--color-muted); }  .objectif-code-grid {     display: grid;     grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);     gap: var(--space-12);     /* `stretch` et non `center` : l'image doit monter à la hauteur de la        colonne de texte, du titre jusqu'au bouton. Centrée, elle laissait du        vide au-dessus et au-dessous d'une bande trop basse. */     align-items: stretch; }  .objectif-code-lead {     max-width: var(--reading);     font-size: var(--text-lg); }  .objectif-code-steps {     display: grid;     margin-block: var(--space-8);     padding: 0;     gap: var(--space-6);     counter-reset: etape-code;     list-style: none; }  .objectif-code-steps li {     display: grid;     grid-template-columns: 2.75rem minmax(0, 1fr);     gap: var(--space-4);     align-items: start; }  /* Le numéro est écrit par le compteur de la liste : l'ordre des étapes est    porté par le texte et par le balisage `ol`, jamais par la seule couleur. */ .objectif-code-steps li::before {     display: grid;     width: 2.75rem;     height: 2.75rem;     border-radius: var(--radius-round);     background: color-mix(in srgb, var(--color-accent) 14%, var(--color-card));     color: var(--color-accent-strong);     content: counter(etape-code);     counter-increment: etape-code;     font-weight: 850;     place-items: center; }  .objectif-code-steps h3 {     margin-block: 0 var(--space-2);     font-size: var(--text-lg); }  .objectif-code-steps p {     margin: 0;     color: var(--color-muted); }  /* L'IMAGE NE DICTE PLUS LA HAUTEUR DE LA LIGNE.     Tant qu'elle restait dans le flux, sa hauteur naturelle — une source portrait    de 1024 x 1536 — imposait à la ligne 810 px là où la colonne de texte n'en    demandait que 655. Résultat : 155 px de vide sous le bouton, qui s'ajoutaient    aux marges des deux sections et creusaient un trou avant « La confiance se    construit ».     Sortie du flux, l'image ne compte plus dans le calcul : la ligne prend la    hauteur du texte, et l'image occupe les 85 % hauts de cette hauteur. Le    rapport demandé est donc tenu, sans l'espace perdu. */ .objectif-code-visual {     position: relative;     display: block;     min-height: 0;     margin: 0; }  .objectif-code-visual picture {     position: absolute;     display: block;     /* 15 % retirés par le bas : l'image reste calée sur le titre. */     inset: 0 0 15% 0; }    .objectif-code-visual img {     display: block;     width: 100%;     height: 100%;     border-radius: var(--radius-lg);     object-fit: cover;     /* La hauteur suit la colonne de texte, demandée par le chef de projet le        15 octobre 2026. Une proportion fixe la bornerait : la bande de 16/7        laissait du vide de part et d'autre.         Le cadrage reste haut. La source est un portrait de 1024 x 1536 dont le        sujet — l'écran de panneaux et le geste de l'enseignant — occupe le tiers        supérieur ; centrer ne montrait que des nuques et coupait l'écran.         Un plancher évite que l'image se réduise à un bandeau si la colonne de        texte venait à raccourcir. */     object-position: 50% 20%; }   /* JONCTION « OBJECTIF CODE » → « LA CONFIANCE SE CONSTRUIT ».     Les deux sections portent la marge verticale commune de `.section`, soit    64 px de chaque côté. Additionnées, elles creusaient un trou que le chef de    projet a demandé de réduire le 15 octobre 2026. Les marges sont rabaissées    ICI seulement, sur cette jonction précise : la valeur commune reste celle de    toutes les autres sections du site.     La section des avis ouvre sur un panneau qui porte déjà sa propre marge    intérieure ; c'est pourquoi elle peut descendre plus bas sans se coller au    contenu précédent. */ #objectif-code {     padding-block-end: var(--space-8); }  #objectif-code + .reviews-section {     padding-block-start: var(--space-8); }  /* Bloc du code QR du questionnaire de satisfaction.    Le code garde une taille fixe : réduit, il cesse d'être lisible par un    téléphone tenu à bout de bras, et c'est le seul usage de cette image. */ .qr-bloc {     display: flex;     flex-wrap: wrap;     align-items: center;     gap: var(--space-6);     padding: var(--space-6);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-lg); }  .qr-bloc-code {     flex: 0 0 auto;     width: 11.25rem;     height: 11.25rem;     background: #ffffff;     border-radius: var(--radius-md); }  .qr-bloc > div {     flex: 1 1 16rem; }  .qr-bloc h2 {     margin-block-start: 0; }  .qr-bloc p:last-child {     margin-block-end: 0; } 
.form-card {     padding: var(--space-8);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-lg);     background: var(--color-card);     box-shadow: var(--shadow-lg); }  .contact-form {     display: grid;     gap: var(--space-4); }  .form-two-columns {     display: grid;     grid-template-columns: repeat(2, minmax(0, 1fr));     gap: var(--space-4); }  .form-field {     display: grid;     gap: var(--space-2); }  .form-field label, .form-consent label {     color: var(--color-text);     font-size: var(--text-sm);     font-weight: 700; }  .form-field input, .form-field select, .form-field textarea {     width: 100%;     min-height: 2.75rem;     padding: var(--space-3) var(--space-4);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-sm);     background: var(--color-bg);     color: var(--color-text); }  .form-field textarea {     min-height: 8rem;     resize: vertical; }  /* EXCEPTION À LA RÈGLE CI-DESSUS, et il faut dire pourquoi elle existe.    `.form-field input` vise les champs de saisie : pleine largeur, 2,75 rem de    haut, du rembourrage. Appliquée à un bouton radio ou à une case à cocher,    elle produit une pastille géante centrée AU-DESSUS de son libellé. C'est    exactement ce qu'a donné le choix « Votre demande porte sur » sur le    formulaire de contact le 8 novembre 2026, en production. La règle vaut donc    pour tout champ à cocher, et pas seulement pour celui du jour : la prochaine    liste de choix dépliée n'aura pas à redécouvrir le défaut. */ .form-field input[type="radio"], .form-field input[type="checkbox"] {     width: 1.5rem;     min-height: 1.5rem;     height: 1.5rem;     padding: 0;     accent-color: var(--color-accent); }  /* Une liste de choix dépliée : le bouton à gauche, son libellé en face.    La grille à deux colonnes est celle de `.form-consent`, et c'est voulu — le    projet n'a qu'une façon de poser une case et son texte. Le sélecteur écarte    le bloc d'aide, qui est un frère du groupe et non une option. */ .form-choice > div:not(.help-text) {     display: grid;     /* `start` et non `center` : sur un téléphone, « Un devis écrit, gratuit et        sans engagement » tient sur deux lignes, et une pastille centrée se pose        alors entre les deux. Elle doit répondre à la PREMIÈRE ligne. */     align-items: start;     gap: var(--space-2) var(--space-3);     grid-template-columns: 1.5rem 1fr; }  /* Le libellé d'une option n'est pas celui du groupe : il ne porte ni la graisse    d'un intitulé de champ, ni la mention « (obligatoire) ». C'est le groupe qui    est obligatoire, pas chacun de ses choix — l'écrire sur les deux options    donnait à lire « Un renseignement (obligatoire) », qui ne veut rien dire. */ .form-choice > div:not(.help-text) label {     font-weight: 500; }  .form-choice > div:not(.help-text) label.required::after {     content: none; }  /* Le texte d'aide de Symfony n'avait aucun rendu : il s'affichait à la taille    du corps de texte, aussi gros que la question elle-même. Il vaut pour tous    les formulaires du site, celui de l'agence compris. */ .help-text {     margin: 0;     color: var(--color-muted);     font-size: var(--text-xs); }  .form-field input:focus, .form-field select:focus, .form-field textarea:focus {     border-color: var(--color-accent); }  /* La classe `required` posée par Symfony n'avait aucun rendu : le caractère    obligatoire n'apparaissait que par contraste avec les libellés « (facultatif) ». */ .form-field label.required::after, .form-consent label.required::after {     color: var(--color-muted);     content: " (obligatoire)";     font-weight: 500; }  .form-field ul, .form-consent ul {     padding: 0;     margin: 0;     color: var(--color-error);     font-size: var(--text-sm);     list-style: none; }  .form-consent {     display: grid;     grid-template-columns: 1.5rem 1fr;     gap: var(--space-2);     align-items: start; }  .form-consent input {     width: 1.5rem;     height: 1.5rem;     margin: 0; }  .form-consent p, .form-consent ul {     grid-column: 2; }  .form-consent p {     margin: 0;     font-size: var(--text-xs); }  .form-consent a {     display: inline-flex;     min-height: 1.5rem;     align-items: center; }  .form-submit {     width: 100%;     cursor: pointer; } 
.site-footer {     padding-block: var(--space-12) var(--space-6);     border-top: 0.0625rem solid var(--color-border);     background: var(--color-surface); }  .footer-brand {     width: fit-content; }  .footer-brand .brand-logo {     width: 10.75rem; }  .footer-address {     margin-block: var(--space-4) var(--space-2);     color: var(--color-text);     font-size: var(--text-sm);     font-weight: 750; }  .footer-grid {     display: grid;     grid-template-columns: 1.25fr 1fr 0.8fr;     gap: var(--space-12); }  .site-footer h2 {     font-size: var(--text-base); }  .footer-list {     padding: 0;     margin: 0;     list-style: none; }  .footer-list li {     margin-block-end: var(--space-2); }  .footer-list a {     display: inline-flex;     min-height: 1.5rem;     align-items: center; }  .footer-bottom {     display: flex;     justify-content: space-between;     gap: var(--space-4);     margin-block-start: var(--space-12);     padding-block-start: var(--space-6);     border-top: 0.0625rem solid var(--color-border);     font-size: var(--text-xs); }  .footer-bottom p {     margin: 0; } 
.legal-page, .error-page {     min-height: 65svh;     padding-block: var(--space-16); }  .legal-page h1, .error-page h1 {     font-size: var(--text-3xl); }  .legal-page h2 {     margin-block-start: var(--space-12);     font-size: var(--text-2xl); }  .legal-page li {     margin-block-end: var(--space-2); }  .page-intro {     margin-block-end: var(--space-8);     font-size: var(--text-xl); }  .legal-data {     border-top: 0.0625rem solid var(--color-border); }  .legal-data > div {     display: grid;     padding-block: var(--space-3);     border-bottom: 0.0625rem solid var(--color-border);     grid-template-columns: minmax(8rem, 0.45fr) minmax(0, 1fr);     gap: var(--space-4); }  .legal-data dt {     color: var(--color-text);     font-weight: 750; }  .legal-data dd {     margin: 0; }  .error-page {     display: grid;     align-items: center; }  .formation-page, .faq-page {     min-height: 70svh; }  .formation-hero {     position: relative;     overflow: hidden;     padding-block: var(--space-8) var(--space-16);     border-bottom: 0.0625rem solid var(--color-border);     background:         radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--color-brand-orange) 18%, transparent), transparent 30%),         linear-gradient(145deg, var(--color-bg), var(--color-surface)); }  .formation-hero::after {     position: absolute;     width: 32rem;     height: 32rem;     border: 0.0625rem solid color-mix(in srgb, var(--color-accent) 22%, transparent);     border-radius: 50%;     content: "";     inset-block-end: -24rem;     inset-inline-end: -8rem;     pointer-events: none; }  .formation-hero h1 {     max-width: 55rem;     margin-block-end: var(--space-6);     font-size: clamp(2.65rem, 7vw, 5.4rem); }  .direct-answer {     max-width: 49rem;     margin-block-end: var(--space-8);     color: var(--color-text);     font-size: clamp(var(--text-lg), 2.2vw, var(--text-xl));     line-height: 1.55; }  .breadcrumbs {     margin-block-end: var(--space-12); }  .breadcrumbs ol {     display: flex;     flex-wrap: wrap;     padding: 0;     margin: 0;     gap: var(--space-2);     list-style: none; }  .breadcrumbs li {     color: var(--color-muted);     font-size: var(--text-sm); }  /* Le fil d'Ariane est une liste de liens, pas une phrase : ses cibles ne bénéficient    pas de l'exception « lien dans un bloc de texte » et gardent au moins 24 px. */ .breadcrumbs a {     display: inline-flex;     min-height: 1.5rem;     align-items: center; }  /* Le séparateur est un caractère lu comme du texte : il relève du seuil 4,5:1, pas du    seuil des bordures. Le jeton de bordure ne donne que 3,37:1 sur le fond du site, d'où    la reprise du jeton de texte secondaire déjà porté par le reste de la ligne. */ .breadcrumbs li:not(:last-child)::after {     margin-inline-start: var(--space-2);     color: var(--color-muted);     content: "/"; }  .formation-facts {     padding-block: var(--space-8); }  .fact-card-grid {     display: grid;     padding: 0;     margin: 0;     grid-template-columns: repeat(3, minmax(0, 1fr));     gap: var(--space-4); }  .fact-card-grid > div {     min-width: 0;     padding: var(--space-6);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-md);     background: var(--color-card);     box-shadow: var(--shadow-sm); }  .fact-card-grid dt {     margin-block-end: var(--space-2);     color: var(--color-accent);     font-size: var(--text-xs);     font-weight: 850;     letter-spacing: 0.1em;     text-transform: uppercase; }  .fact-card-grid dd {     margin: 0;     color: var(--color-text);     font-family: var(--font-display);     font-size: var(--text-lg);     font-weight: 800;     line-height: var(--line-tight); }  .formation-content, .faq-layout {     display: grid;     padding-block: var(--space-12) var(--space-16);     grid-template-columns: minmax(0, 1fr) minmax(17rem, 21rem);     gap: var(--space-12);     align-items: start; }  .formation-main > section {     padding-block: var(--space-12);     border-top: 0.0625rem solid var(--color-border); }  .formation-main > section:first-child {     padding-block-start: 0;     border-top: 0; }  .formation-main h2, .faq-layout h2 {     font-size: clamp(1.8rem, 4vw, 2.8rem); }  .formation-main li {     margin-block-end: var(--space-2); }  .formation-aside {     position: sticky;     inset-block-start: calc(var(--header-height) + var(--space-6));     display: grid;     gap: var(--space-4); }  .aside-card {     padding: var(--space-6);     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-lg);     background: var(--color-card);     box-shadow: var(--shadow-sm); }  .aside-card p:last-child, .related-links {     margin-block-end: 0; }  .related-links {     padding: 0;     list-style: none; }  .related-links li {     padding-block: var(--space-3);     border-top: 0.0625rem solid var(--color-border); }  .related-links a {     display: inline-flex;     min-height: 2.25rem;     align-items: center; }  .answer-list, .faq-list {     display: grid;     gap: var(--space-4);     margin-block: var(--space-8); }  .answer-list article, .faq-list article {     padding: var(--space-6);     border-inline-start: 0.2rem solid var(--color-accent);     border-radius: 0 var(--radius-md) var(--radius-md) 0;     background: var(--color-surface); }  .answer-list h3, .faq-list h3 {     margin-block-end: var(--space-3);     font-size: var(--text-xl); }  .answer-list p, .faq-list p {     margin: 0; }  .formation-cta {     border-top: 0.0625rem solid var(--color-border);     background:         linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 8%, var(--color-surface)), var(--color-surface)); }  .section-followup {     margin-block: var(--space-8) 0; } 
.section-heading-wide {     max-width: none; }  .section-heading-wide > p:not(.eyebrow) {     max-width: none; }  .agency-section {     border-block: 0.0625rem solid var(--color-border);     background: var(--color-surface); }  .agency-gallery {     display: grid;     grid-template-columns: repeat(2, minmax(0, 1fr));     gap: var(--space-6); }  .agency-visual {     overflow: hidden;     margin: 0;     border: 0.0625rem solid var(--color-border);     border-radius: var(--radius-lg);     background: var(--color-card);     box-shadow: var(--shadow-sm); }  .agency-visual-facade {     grid-column: 1 / -1; }  .agency-visual img {     display: block;     width: 100%;     height: auto;     aspect-ratio: 16 / 9;     object-fit: cover; }  .agency-visual-facade img {     height: auto;     aspect-ratio: 16 / 9; }  .agency-visual-vehicle img {     background: var(--color-text);     object-fit: contain; }  .agency-visual figcaption {     display: grid;     padding: var(--space-4) var(--space-6) var(--space-6);     gap: var(--space-1); }  .agency-visual figcaption strong {     color: var(--color-text);     font-family: var(--font-display);     font-size: var(--text-lg); }  .agency-visual figcaption span {     color: var(--color-muted);     font-size: var(--text-sm); }  .formation-title-row {     display: flex;     align-items: center;     gap: var(--space-4);     margin-block-end: var(--space-4); }  .formation-title-row h3 {     margin: 0; }  .formation-icon {     width: 4.5rem;     height: 4.5rem;     flex: 0 0 auto; }  .formation-card-intensive {     border-color: color-mix(in srgb, var(--color-accent) 65%, var(--color-border)); }  @media (max-width: 47.99rem) {     .agency-gallery {         grid-template-columns: 1fr;     }      .agency-visual-facade {         grid-column: auto;     }      .agency-visual img {         height: auto;         aspect-ratio: 16 / 9;     }      .agency-visual-facade img {         aspect-ratio: 16 / 9;     }      .agency-visual-classroom img {         aspect-ratio: 720 / 1279;     }      .formation-title-row {         align-items: flex-start;     } } 
/* Breakpoints: md 48rem, lg 64rem, xl 80rem. */ @media (max-width: 63.99rem) {     .menu-enabled .menu-toggle {         display: grid;     }      .menu-enabled .site-nav {         position: absolute;         inset-block-start: calc(100% + 0.0625rem);         inset-inline: 0;         display: none;         padding: var(--space-4);         border-bottom: 0.0625rem solid var(--color-border);         background: var(--color-bg);         box-shadow: var(--shadow-lg);     }      .menu-enabled.menu-open .site-nav {         display: grid;     }      .menu-enabled .site-nav > a {         width: 100%;     }      .hero-grid,     .reviews-panel,     .method-grid,     .contact-grid,     .map-card,     .formation-content,     .faq-layout {         grid-template-columns: 1fr;     }      .map-details {         border-block-start: 0.0625rem solid var(--color-border);         border-inline-start: 0;     }      .formation-aside {         position: static;         grid-template-columns: repeat(2, minmax(0, 1fr));     }      .hero-grid {         gap: var(--space-8);     }      .hero-card {         max-width: 35rem;     }      .rating-card {         max-width: 28rem;     }      .card-grid,     .price-grid,     .official-logo-grid {         grid-template-columns: repeat(2, minmax(0, 1fr));     }      .official-logo-grid li:last-child {         grid-column: 1 / -1;     }      .heading-split {         grid-template-columns: 1fr;     }      .footer-grid {         grid-template-columns: 1.2fr 1fr;     } }  @media (max-width: 47.99rem) {     :root {         --header-height: 4.75rem;     }      .container {         width: min(100% - calc(var(--space-4) * 2), var(--container));     }      /* Cibles tactiles d'au moins 44 px sur mobile (standard LF section 7) : boutons,        liens de navigation, liens de contact et liens des listes. Les liens insérés au        fil d'une phrase gardent la hauteur du texte (exception « lien dans un bloc de        texte » de WCAG 2.5.8). */     .button-small,     .footer-list a,     .contact-options a,     .hero-card a,     .fact-strip a,     .text-link,     .other-prices summary {         min-height: 2.75rem;     }      .breadcrumbs a,     .service-card > a,     .price-card > a {         display: inline-flex;         min-height: 2.75rem;         align-items: center;     }      th a,     td a {         min-width: 2.75rem;         min-height: 2.75rem;     }      .brand-logo {         width: 8.25rem;     }      .section,     .legal-page,     .error-page {         padding-block: var(--space-12);     }      .hero {         min-height: auto;         padding-block: var(--space-12) var(--space-8);     }      .hero-grid {         min-height: auto;     }      .hero-lead {         font-size: var(--text-lg);     }      .hero-card,     .form-card {         padding: var(--space-6);     }      .hero-card-visual {         margin: calc(var(--space-6) * -1) calc(var(--space-6) * -1) var(--space-6);     }      .hero-card-visual figcaption {         padding-inline: var(--space-6);     }      .fact-strip {         display: grid;         gap: var(--space-2);     }      .card-grid,     .price-grid,     .official-logo-grid,     .review-themes,     .form-two-columns,     .footer-grid,     .fact-card-grid,     .formation-aside {         grid-template-columns: 1fr;     }      .formation-hero {         padding-block: var(--space-6) var(--space-12);     }      .breadcrumbs {         margin-block-end: var(--space-8);     }      .formation-content,     .faq-layout {         padding-block: var(--space-8) var(--space-12);         gap: var(--space-8);     }      .official-logo-grid li:last-child {         grid-column: auto;     }      .official-logo-grid li {         grid-template-columns: 7.25rem minmax(0, 1fr);     }      .official-logo-visual {         width: 7.25rem;         height: 5.5rem;     }      .cpf-eligibility-mark {         grid-template-columns: 6.5rem minmax(0, 1fr);         gap: var(--space-3);     }      .footer-bottom {         flex-direction: column;     }      .legal-data > div {         grid-template-columns: 1fr;         gap: var(--space-1);     }      .compact-table {         padding-inline: var(--space-3);     }      th,     td {         min-width: 9rem;     } }  @media (min-width: 100rem) {     :root {         --container: 88rem;     } }  @media print {     .site-header,     .site-footer,     .button-row,     .contact-section {         display: none;     }      body {         background: var(--color-card);         color: var(--color-text);     }      h1,     h2,     h3,     p,     li,     dd,     dt,     a {         color: var(--color-text);     } }  /* Hero du 15 octobre 2026 : passages mobile et tablette. */ @media (max-width: 63.99rem) {     /* La carte « Stage intensif » occupe toute la largeur sous le message et        ses actions, sans rien masquer : elle n'hérite donc pas du plafond de        35 rem posé sur .hero-card. */     .hero-card.stage-card {         max-width: none;     }      /* Sous 64 rem la carte n'a plus de place pour une colonne de texte à côté        de la photo : le voile devient vertical, le texte occupe toute la largeur        et se pose sur la partie haute, assombrie. */     .stage-card-copy {         max-width: none;     }      .stage-card::before {         background: linear-gradient(             180deg,             var(--color-text) 0%,             var(--color-text) 62%,             color-mix(in srgb, var(--color-text) 70%, transparent) 82%,             color-mix(in srgb, var(--color-text) 45%, transparent) 100%         );     }      .stage-card-visual img {         object-position: 50% 22%;     }      .stage-card {         min-height: 32rem;     }      .stage-card-visual figcaption {         max-width: none;         text-align: start;     }      .objectif-code-grid {         grid-template-columns: 1fr;         gap: var(--space-8);     }      /* En une seule colonne, l'image n'a plus de hauteur de texte à suivre :        libre, elle occupait les deux tiers d'un écran de téléphone pour une        illustration. Elle redevient une bande, le cadrage haut reste.         Elle revient aussi DANS LE FLUX : sortie de lui, elle n'aurait plus de        hauteur de référence et la figure s'écraserait à zéro. */     .objectif-code-visual picture {         position: static;         inset: auto;     }      .objectif-code-visual img {         aspect-ratio: 4 / 3;     } }  @media (max-width: 47.99rem) {     .hero-card.stage-card {         padding: 0;     }      .stage-card-copy {         padding: var(--space-6);     }      .stage-card-tags {         padding-inline: var(--space-6);     }      .stage-card-facts > div {         grid-template-columns: 1fr;         gap: var(--space-1);     }      .benefits-strip {         grid-template-columns: 1fr;         gap: var(--space-6);     }      .benefits-strip li + li {         padding-block-start: var(--space-6);         padding-inline-start: 0;         border-block-start: 0.0625rem solid var(--color-border);         border-inline-start: 0;     } } 
.tariff-group { margin-block: var(--space-12); } .tariff-group table, .legal-page table { width: 100%; border-collapse: collapse; margin-block: var(--space-6); } .legal-page th, .legal-page td, .tariff-group th, .tariff-group td { padding: var(--space-3); border-bottom: 0.0625rem solid var(--color-border); text-align: start; vertical-align: top; overflow-wrap: anywhere; } .legal-page caption, .tariff-group caption { text-align: start; color: var(--color-muted); padding-block: var(--space-3); } .legal-page thead, .tariff-group thead { background: var(--color-surface); } .legal-page td, .tariff-group td { min-width: 6rem; } .practical-links { display: flex; flex-wrap: wrap; gap: var(--space-4); padding: 0; list-style: none; } .practical-links a { display: inline-flex; align-items: center; min-height: 2.75rem; }  /* Cartes tarifaires de l’accueil, dans la continuité des forfaits classiques. */ .code-stage-highlight { padding: var(--space-4); border-radius: var(--radius-sm); background: var(--color-surface); border-inline-start: 0.25rem solid var(--color-accent); } .code-stage-highlight strong { display: block; color: var(--color-accent); font-size: var(--text-xl); } .code-stage-highlight span { display: block; margin-block-start: var(--space-1); font-size: var(--text-sm); } .accelerated-prices { margin-block-start: var(--space-16); } .accelerated-prices .section-heading h3 { font-size: var(--text-3xl); line-height: var(--line-tight); } .accelerated-price-card { min-width: 0; } .accelerated-price-card h4 { margin-block-end: var(--space-4); font-family: var(--font-body); } .accelerated-price { color: var(--color-text); margin-block: 0 var(--space-3); font-size: clamp(2rem, 3vw, 2.75rem); font-weight: 850; line-height: 1.15; } .accelerated-price small { color: var(--color-muted); font-size: var(--text-sm); font-weight: 500; } .accelerated-transmission { color: var(--color-muted); font-size: var(--text-sm); } .accelerated-repeat { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-6); margin-block-start: var(--space-6); padding: var(--space-6); border: 0.0625rem solid var(--color-accent); border-radius: var(--radius-lg); background: var(--color-card); } .accelerated-repeat h4 { margin: 0; font-size: var(--text-2xl); } .accelerated-repeat .accelerated-price { margin: 0; } .accelerated-price-notes { margin-block: var(--space-6); color: var(--color-muted); } .accelerated-price-notes p { margin-block: var(--space-2); } .price-actions { display: flex; flex-wrap: wrap; gap: var(--space-4); } .all-prices-link { margin-block-start: var(--space-8); padding-block-start: var(--space-6); border-top: 0.0625rem solid var(--color-border); } @media (max-width: 40rem) {     .price-actions { flex-direction: column; align-items: stretch; }     .accelerated-repeat { align-items: flex-start; flex-direction: column; }     .accelerated-repeat .button { width: 100%; } } 
/* Styles du questionnaire de satisfaction en fin de formation.  *  * POURQUOI UN FICHIER À PART, ET POURQUOI TOUT EST PRÉFIXÉ. La refonte validée  * le 8 novembre 2026 porte sur une seule page. Les styles de la proposition  * étaient globaux parce qu'elle était un site autonome ; versés tels quels dans  * la CSS du site, ils auraient déplacé la typographie, les couleurs de texte et  * les boutons de trente autres pages. Toute règle ci-dessous est donc portée  * par `.questionnaire-page`, et rien n'en sort.  *  * LES DEUX POLICES NE S'APPLIQUENT QU'ICI, pour la même raison : le site  * n'embarque aucune police web et se sert des polices système. Décision du chef  * de projet du 8 novembre 2026, prise en connaissance de la contrepartie — cette  * page n'a pas tout à fait la typographie des autres.  */  /* Les deux familles sont servies depuis `public/fonts/`, donc par le site    lui-même : la politique de sécurité du site n'autorise les polices que    depuis `'self'`, et un appel à Google Fonts serait bloqué par le navigateur.    Licences SIL OFL conservées à côté des fichiers. */ @font-face {     font-family: Manrope;     font-style: normal;     font-weight: 200 800;     font-display: swap;     src: url("/fonts/manrope-latin-variable.woff2") format("woff2");     unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }  @font-face {     font-family: Manrope;     font-style: normal;     font-weight: 200 800;     font-display: swap;     src: url("/fonts/manrope-latin-ext-variable.woff2") format("woff2");     unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }  @font-face {     font-family: "DM Serif Display";     font-style: italic;     font-weight: 400;     font-display: swap;     src: url("/fonts/dm-serif-display-latin-italic.woff2") format("woff2");     unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }  @font-face {     font-family: "DM Serif Display";     font-style: italic;     font-weight: 400;     font-display: swap;     src: url("/fonts/dm-serif-display-latin-ext-italic.woff2") format("woff2");     unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }  .questionnaire-page {     /* Le noir exact est une demande expresse du chef de projet, et non la        couleur de texte du site (#1b1b1a). Il est nommé ici une fois pour que        la demande soit visible et révocable d'un seul endroit. */     --q-noir: #000;     --q-creme: #faf5ee;     --q-abricot: #f5d9bd;     --q-abricot-fort: #d9802c;     --q-abricot-texte: #6b3a12;     --q-vert: #dcebdd;     --q-vert-fort: #2f7a46;     --q-vert-texte: #1d4f2d;     --q-trait: #e5dacd;      background: var(--q-creme);     font-family: Manrope, var(--font-body); }  .questionnaire-page h1, .questionnaire-page h2, .questionnaire-page h3 {     font-family: Manrope, var(--font-body);     letter-spacing: -0.015em; }  /* ---------------------------------------------------------------- en-tête */  .q-hero {     display: grid;     align-items: center;     padding-block: var(--space-12) var(--space-8);     gap: var(--space-8);     grid-template-columns: minmax(0, 1fr) auto; }  .q-hero h1 {     margin: 0 0 var(--space-4);     color: var(--q-noir);     font-size: clamp(2.25rem, 4.5vw, 3.25rem);     line-height: 1.1; }  /* Le mot « avancer » est le seul accent typographique de la page. */ .q-accent {     color: var(--color-accent);     font-family: "DM Serif Display", Georgia, serif;     font-size: 1.12em;     font-style: italic;     font-weight: 400;     letter-spacing: -0.035em; }  .q-intro {     max-width: 34rem;     margin: 0;     color: var(--q-noir);     font-size: var(--text-lg);     line-height: 1.6; }  .q-intro strong {     display: block;     font-weight: 800; }  .q-illustration {     width: min(27rem, 38vw);     height: auto; }  /* Variante sans illustration (questionnaires « après l'examen » et    « financeurs ») : une seule colonne de texte, un peu plus large que la    version illustrée, car leur introduction est plus longue. Aucune règle    ci-dessus n'est modifiée : la page de fin de formation reste identique. */ .q-hero-texte {     grid-template-columns: minmax(0, 1fr); }  .q-hero-texte .q-intro {     max-width: 46rem;     font-size: var(--text-base); }  .q-hero-texte .q-intro-suite {     margin-block-start: var(--space-3); }  /* ------------------------------------------------------------- réassurance */  .q-badges {     display: flex;     flex-wrap: wrap;     margin-block-start: var(--space-6);     padding: 0;     gap: var(--space-3);     list-style: none; }  .q-badge {     display: flex;     align-items: center;     padding: var(--space-2) var(--space-4) var(--space-2) var(--space-2);     border-radius: var(--radius-round);     gap: var(--space-3);     font-size: var(--text-sm);     font-weight: 700; }  .q-badge svg {     display: block;     width: 1.125rem;     height: 1.125rem; }  /* Le disque coloré porte le pictogramme : c'est lui qui distingue les deux    badges au premier coup d'œil, avant même la lecture. */ .q-badge span {     display: grid;     width: 2rem;     height: 2rem;     flex: none;     place-items: center;     border-radius: var(--radius-round);     color: #fff; }  .q-badge-minutes {     background: var(--q-abricot);     color: var(--q-abricot-texte); }  .q-badge-minutes span {     background: var(--q-abricot-fort); }  .q-badge-nom {     background: var(--q-vert);     color: var(--q-vert-texte); }  .q-badge-nom span {     background: var(--q-vert-fort); }  /* ------------------------------------------------------------ mise en page */  .q-colonnes {     display: grid;     padding-block-end: var(--space-16);     gap: var(--space-8);     grid-template-columns: minmax(0, 1fr) 20rem;     align-items: start; }  .q-carte {     padding: var(--space-8);     border: 0.0625rem solid var(--q-trait);     border-radius: var(--radius-lg);     background: var(--color-card);     box-shadow: var(--shadow-sm); }  .q-carte-titre {     display: flex;     flex-wrap: wrap;     justify-content: space-between;     margin-block-end: var(--space-6);     gap: var(--space-2);     color: var(--q-noir);     font-size: var(--text-xs);     font-weight: 800;     letter-spacing: 0.14em;     text-transform: uppercase; }  /* ---------------------------------------------------------------- étapes */  .q-etapes {     display: flex;     padding: 0 0 var(--space-6);     border-block-end: 0.0625rem solid var(--q-trait);     margin: 0 0 var(--space-8);     list-style: none; }  .q-etapes li {     display: flex;     flex: 1;     align-items: center;     gap: var(--space-2);     color: var(--q-noir);     font-size: var(--text-sm);     font-weight: 700;     white-space: nowrap; }  .q-etapes li:last-child {     flex: none; }  /* Le filet qui relie une étape à la suivante : sans lui, les trois étapes se    lisent comme trois mots et non comme un parcours. Il est décoratif — l'ordre    est porté par la liste ordonnée et par les numéros. */ .q-etapes li:not(:last-child)::after {     height: 0.0625rem;     flex: 1;     margin-inline: var(--space-3);     background: var(--q-trait);     content: ""; }  /* La pastille porte l'avancement par sa forme et son fond ; le numéro reste    noir, étape courante comprise. L'information n'est donc jamais portée par la    seule couleur. */ .q-etapes b {     display: grid;     width: 2.125rem;     height: 2.125rem;     flex: none;     place-items: center;     border: 0.0625rem solid var(--q-trait);     border-radius: var(--radius-round);     background: #fff;     color: var(--q-noir);     font-size: var(--text-xs);     font-weight: 800; }  .q-etapes li[aria-current="step"] b {     border-color: #ce7546;     background: #f7ccb0;     box-shadow: 0 0 0 0.25rem #fff1e6; }  .q-etapes li[data-faite="oui"] b {     border-color: var(--q-vert-fort);     background: var(--q-vert); }  /* ------------------------------------------------------------- une section */  .q-section > h2 {     margin: 0 0 var(--space-2);     color: var(--q-noir);     font-size: var(--text-2xl); }  .q-section > h2 + p {     margin: 0 0 var(--space-6);     color: var(--q-noir); }  /* Avant que le script ne prenne la main, toutes les sections sont visibles et    le formulaire s'envoie d'un bloc. Le découpage n'existe qu'ensuite : c'est    ce qui rend la page utilisable sans JavaScript. */ .q-section + .q-section {     padding-block-start: var(--space-8);     border-block-start: 0.0625rem solid var(--q-trait);     margin-block-start: var(--space-8); }  .questionnaire-page[data-etapes="actives"] .q-section[hidden] {     display: none; }  .questionnaire-page[data-etapes="actives"] .q-section + .q-section {     padding-block-start: 0;     border-block-start: 0;     margin-block-start: 0; }  /* ------------------------------------------------------- groupes de choix */  .q-question {     padding: 0;     border: 0;     margin: 0 0 var(--space-6); }  .q-question legend {     padding: 0;     margin-block-end: var(--space-3);     color: var(--q-noir);     font-size: var(--text-base);     font-weight: 700; }  /* Les huit groupes de réponses sont tous obligatoires : la mention est portée    par la légende elle-même, donc lue par les lecteurs d'écran, et non par une    couleur ou un astérisque seuls. */ .q-question legend::after {     color: var(--color-muted);     content: " (obligatoire)";     font-weight: 500; }  .q-question ul {     padding: 0;     margin: var(--space-2) 0 0;     color: var(--color-error);     font-size: var(--text-sm);     font-weight: 700;     list-style: none; }  .q-question > div {     display: grid;     gap: var(--space-2); }  .q-question label {     display: flex;     align-items: center;     padding: var(--space-3) var(--space-4);     border: 0.0625rem solid var(--q-trait);     border-radius: var(--radius-md);     background: #fff;     cursor: pointer;     gap: var(--space-3);     font-size: var(--text-sm);     font-weight: 500;     transition: border-color var(--transition), background var(--transition); }  .q-question input[type="radio"] {     width: 1.25rem;     height: 1.25rem;     flex: none;     accent-color: var(--color-accent); }  .q-question label:hover {     border-color: var(--q-abricot-fort); }  /* La réponse retenue se reconnaît au trait épais ET au fond, pas à la seule    couleur : c'est la règle du projet pour toute sélection. */ .q-question label:has(input:checked) {     border-color: var(--color-accent);     background: color-mix(in srgb, var(--color-accent) 7%, #fff);     box-shadow: inset 0 0 0 0.0625rem var(--color-accent);     font-weight: 700; }  .q-question label:focus-within {     outline: 0.1875rem solid var(--color-accent);     outline-offset: 0.125rem; }  /* --------------------------------------------------- en-tête d'une section */  .q-entete {     display: grid;     align-items: start;     margin-block-end: var(--space-6);     gap: var(--space-4);     grid-template-columns: auto minmax(0, 1fr); }  /* Le disque porte le pictogramme au dégradé du logo : ambre, orange, brique. */ .q-entete-icone {     display: grid;     width: 2.6875rem;     height: 2.6875rem;     margin-block-start: 0.125rem;     place-items: center;     border-radius: 0.75rem;     background: #f5f2eb; }  .q-entete-icone svg {     width: 1.375rem;     height: 1.375rem; }  .q-entete h2 {     margin: 0 0 var(--space-1);     color: var(--q-noir);     font-size: var(--text-2xl); }  .q-entete p {     margin: 0;     color: var(--q-noir); }  .q-entete h2:focus-visible, .q-recap h3:focus-visible {     outline: 0.1875rem solid var(--color-accent);     outline-offset: 0.25rem; }  /* ---------------------------------------------------------- récapitulatif */  .q-recap {     padding: var(--space-6);     border: 0.0625rem solid var(--q-trait);     border-radius: var(--radius-md);     margin-block-end: var(--space-6);     background: var(--q-creme); }  .q-recap h3 {     margin: 0 0 var(--space-4);     color: var(--q-noir);     font-size: var(--text-lg); }  .q-recap dl {     display: grid;     margin: 0;     gap: var(--space-2) var(--space-4);     grid-template-columns: minmax(0, 1fr) auto; }  .q-recap dt {     color: var(--color-muted);     font-size: var(--text-sm); }  .q-recap dd {     margin: 0;     font-size: var(--text-sm);     font-weight: 700;     text-align: end; }  .q-recap dd em {     color: var(--color-muted);     font-style: normal;     font-weight: 500; }  .q-recap > div > section + section {     padding-block-start: var(--space-4);     border-block-start: 0.0625rem solid var(--q-trait);     margin-block-start: var(--space-4); }  .q-recap-entete {     display: flex;     flex-wrap: wrap;     align-items: baseline;     justify-content: space-between;     margin-block-end: var(--space-3);     gap: var(--space-2); }  .q-recap-entete h4 {     margin: 0;     color: var(--q-noir);     font-size: var(--text-base); }  .q-recap-modifier {     padding: 0;     border: 0;     background: none;     color: var(--color-accent);     cursor: pointer;     font: inherit;     font-size: var(--text-sm);     font-weight: 700;     text-decoration: underline; }  /* ------------------------------------------------------------- la notice */  .q-volontaire {     padding: var(--space-4);     border-radius: var(--radius-md);     margin-block-end: var(--space-6);     background: var(--q-abricot);     color: var(--q-abricot-texte);     font-size: var(--text-sm);     font-weight: 600; }  .q-notice summary {     padding: var(--space-4);     border: 0.0625rem solid var(--q-trait);     border-radius: var(--radius-md);     background: #fff;     cursor: pointer;     font-weight: 800; }  .q-notice summary span {     display: block;     color: var(--color-muted);     font-size: var(--text-sm);     font-weight: 500; }  .q-notice[open] summary {     border-end-start-radius: 0;     border-end-end-radius: 0; }  .q-hero-section {     padding-block-end: 0; }  /* ------------------------------------------------------------------ actions */  .q-actions {     display: flex;     flex-wrap: wrap;     padding-block-start: var(--space-6);     border-block-start: 0.0625rem solid var(--q-trait);     margin-block-start: var(--space-8);     gap: var(--space-3); }  .q-actions .button {     flex: 1 1 12rem;     justify-content: center; }  .q-note {     margin: var(--space-3) 0 0;     color: var(--color-muted);     font-size: var(--text-xs); }  /* ------------------------------------------------------- colonne de droite */  .q-aside {     display: grid;     /* Piste bornée : sans elle, la grille prend la largeur du plus long mot        (l'adresse du questionnaire du bloc téléphone) et déborde la colonne. */     grid-template-columns: minmax(0, 1fr);     gap: var(--space-6); }  .q-bloc {     overflow-wrap: anywhere;     padding: var(--space-6);     border: 0.0625rem solid var(--q-trait);     border-radius: var(--radius-lg);     background: #fff; }  .q-bloc h2 {     margin: 0 0 var(--space-3);     color: var(--q-noir);     font-size: var(--text-lg); }  .q-bloc p {     margin: 0 0 var(--space-3);     font-size: var(--text-sm); }  .q-bloc p:last-child {     margin-block-end: 0; }  .q-bloc-qr {     display: block;     width: 11rem;     height: auto;     margin-block-end: var(--space-4); }  .q-liste-confiance {     padding: 0;     margin: 0;     list-style: none; }  .q-liste-confiance li {     padding-block: var(--space-2);     font-size: var(--text-sm); }  .q-liste-confiance li + li {     border-block-start: 0.0625rem solid var(--q-trait); }  /* -------------------------------------------------------------- 768 px */  @media (max-width: 64rem) {     .q-hero {         grid-template-columns: minmax(0, 1fr);     }      .q-illustration {         display: none;     }      .q-colonnes {         grid-template-columns: minmax(0, 1fr);     } }  /* -------------------------------------------------------------- téléphone */  @media (max-width: 48rem) {     .q-carte {         padding: var(--space-6) var(--space-4);     }      /* Les deux badges deviennent deux tuiles côte à côte, comme dans la        version validée. */     /* Sur téléphone, le numéro passe au-dessus de son libellé et le filet        reste à hauteur du numéro, comme dans la version validée. */     .q-etapes li {         position: relative;         align-items: flex-start;         flex-direction: column;         font-size: 0.625rem;         gap: var(--space-2);     }      .q-etapes li:not(:last-child)::after {         position: absolute;         width: 55%;         margin: 0;         inset-block-start: 1rem;         inset-inline-start: 45%;     }      .q-badges {         display: grid;         grid-template-columns: repeat(2, minmax(0, 1fr));     }      .q-badge {         align-items: start;         padding: var(--space-3);         border-radius: var(--radius-md);         flex-direction: column;         gap: var(--space-2);     }      /* Le grand code QR n'a aucun sens sur le téléphone qui affiche la page :        personne ne scanne l'écran qu'il tient en main. */     .q-bloc-telephone {         display: none;     }      .q-recap dl {         grid-template-columns: minmax(0, 1fr);         gap: 0;     }      .q-recap dd {         padding-block-end: var(--space-3);         text-align: start;     }      .q-actions .button {         flex-basis: 100%;     } }  /* Mouvement réduit : la page reste utilisable, sans transition ni défilement    animé. */ @media (prefers-reduced-motion: reduce) {     .questionnaire-page * {         transition: none !important;     } }  /* ----------------------------------------------- sous le fond .mc-redesign     Les questionnaires « après l'examen » et « financeurs » portent la classe    `mc-redesign` sur le corps de page, comme les autres pages refondues    (fond commun, en-tête, pied de page). Cette classe fixe aussi des tailles    de titres (28 px pour les h2, jusqu'à 60 px pour le h1) et supprime la    largeur de lecture : sans les règles ci-dessous, ces deux pages auraient des    titres plus gros que le questionnaire de fin de formation, qui sert de    référence. Les règles sont préfixées `.mc-redesign` : elles ne s'appliquent    donc pas à la page de fin de formation, dont le corps n'a pas cette classe. */ .mc-redesign .questionnaire-page h1 {     max-width: none;     font-size: clamp(2.25rem, 4.5vw, 3.25rem);     letter-spacing: -0.015em;     line-height: 1.1; }  .mc-redesign .questionnaire-page .q-entete h2, .mc-redesign .questionnaire-page .q-section > h2 {     margin: 0 0 var(--space-1);     font-size: var(--text-2xl);     letter-spacing: -0.015em;     line-height: 1.25; }  .mc-redesign .questionnaire-page .q-bloc h2 {     margin: 0 0 var(--space-3);     font-size: var(--text-lg);     letter-spacing: -0.015em; }  .mc-redesign .questionnaire-page .q-notice-section .reading-width {     max-width: var(--reading); }  /* Les champs de saisie se suivent avec le même rythme que dans l'étape 1 du    questionnaire de fin de formation : l'aide d'un champ ne doit pas coller à    l'intitulé du suivant. */ .mc-redesign .questionnaire-page .q-section > .form-field + .form-field, .mc-redesign .questionnaire-page .q-section > .form-field + .q-question, .mc-redesign .questionnaire-page .q-section > .q-question + .form-field {     margin-block-start: var(--space-5); }  /* Le lien seul sous un bloc (« Déposer une réclamation ») est une cible à    part entière : une hauteur de 44 px la rend atteignable au doigt. */ .mc-redesign .questionnaire-page .q-bloc p:last-child > a:only-child {     display: inline-flex;     align-items: center;     min-height: 2.75rem; } 
/* Montlhéry Conduite — header/footer uniquement.  * Ajouter .mc-site-chrome aux deux éléments racine, jamais au body ou au main.  * Charger Manrope localement avec le pipeline existant ; aucun reset global.  */ .mc-site-chrome{--mc-ink:#242420;--mc-orange:#b43d21;--mc-orange-dark:#92311b;--mc-line:#e4dfd5;font-family:Manrope,Arial,Helvetica,sans-serif;color:var(--mc-ink);font-size:16px;line-height:1.8} .mc-site-chrome *,.mc-site-chrome *::before,.mc-site-chrome *::after{box-sizing:border-box} .mc-site-chrome [hidden]{display:none!important} .mc-site-chrome .container{width:calc(100% - 88px);max-width:1180px;margin-inline:auto} .mc-site-chrome a{color:var(--mc-orange);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere} .mc-site-chrome a:hover{color:var(--mc-orange-dark)} .mc-site-chrome a:focus-visible,.mc-site-chrome button:focus-visible{outline:3px solid #9e3820;outline-offset:4px} .mc-site-chrome button{font:inherit;cursor:pointer} .mc-site-chrome img{max-width:100%;height:auto;display:block} .mc-site-chrome .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0} .mc-site-chrome.site-header{position:sticky;top:0;z-index:40;min-height:87px;background:#fffefafa;border-bottom:1px solid var(--mc-line);backdrop-filter:blur(14px)} .mc-site-chrome .header-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:26px;position:relative} .mc-site-chrome .brand{display:block;text-decoration:none;color:var(--mc-ink);flex-shrink:0} .mc-site-chrome .brand-logo{width:142px;height:auto} .mc-site-chrome .site-nav{display:flex;align-items:center;gap:25px} .mc-site-chrome .site-nav>a{font-size:14px;font-weight:700;color:var(--mc-ink);text-decoration:none;position:relative;display:flex;align-items:center;min-height:44px;white-space:nowrap} .mc-site-chrome .site-nav>a:not(.button):hover{color:var(--mc-orange)} .mc-site-chrome .site-nav>a[aria-current="page"]::after{content:"";height:3px;background:var(--mc-orange);border-radius:2px;position:absolute;left:0;right:0;bottom:0} .mc-site-chrome .site-nav .button{display:inline-flex;align-items:center;justify-content:center;color:#fff;background:var(--mc-orange);border:1px solid var(--mc-orange);font-size:13px;padding:11px 18px;border-radius:999px;min-height:44px;margin-left:4px;text-align:center;white-space:normal} .mc-site-chrome .site-nav .button:hover{background:var(--mc-orange-dark);border-color:var(--mc-orange-dark)} .mc-site-chrome .site-nav>.button[aria-current="page"]{box-shadow:0 0 0 3px #f0d9c9;background:#963d26} .mc-site-chrome .site-nav>.button[aria-current="page"]::after{display:none} .mc-site-chrome .menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--mc-line);border-radius:9px;background:#fff;position:relative;flex-shrink:0;align-items:center;justify-content:center} .mc-site-chrome .menu-toggle-lines,.mc-site-chrome .menu-toggle-lines::before,.mc-site-chrome .menu-toggle-lines::after{display:block;width:18px;height:2px;background:var(--mc-ink);position:relative} .mc-site-chrome .menu-toggle-lines::before{content:"";position:absolute;top:-6px} .mc-site-chrome .menu-toggle-lines::after{content:"";position:absolute;top:6px} .mc-site-chrome .menu-toggle[aria-expanded="true"] .menu-toggle-lines{background:transparent} .mc-site-chrome .menu-toggle[aria-expanded="true"] .menu-toggle-lines::before{transform:rotate(45deg);top:0} .mc-site-chrome .menu-toggle[aria-expanded="true"] .menu-toggle-lines::after{transform:rotate(-45deg);top:0} .mc-site-chrome.site-footer{background:#efeade;border-top:1px solid #d9cfbd;padding-top:48px} .mc-site-chrome .footer-grid{display:grid;grid-template-columns:1.1fr .9fr 1.2fr;gap:55px;padding-bottom:38px} .mc-site-chrome .footer-brand{margin-top:-12px;margin-bottom:23px} .mc-site-chrome .footer-brand .brand-logo{width:156px} .mc-site-chrome .footer-grid>div{min-width:0} .mc-site-chrome .footer-grid>div>p{font-size:14px;line-height:1.9;margin:12px 0 0;max-width:none} .mc-site-chrome .footer-address{font-weight:750;color:#292820} .mc-site-chrome .footer-grid h2{font-size:14px;line-height:1.5;font-weight:800;letter-spacing:0;margin:0 0 19px} .mc-site-chrome .footer-list{list-style:none;margin:0;padding:0} .mc-site-chrome .footer-list li{font-size:14px;line-height:1.8;margin:0 0 7px;break-inside:avoid} .mc-site-chrome .footer-list a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;line-height:1.7;color:#643f2d} .mc-site-chrome .footer-grid>div:last-child .footer-list{column-count:2;column-gap:24px} .mc-site-chrome .footer-grid>div:nth-child(2) a[href^="tel:"]{font-size:19px;font-weight:800;color:var(--mc-orange)} .mc-site-chrome .footer-bottom{border-top:1px solid #d3c7b4;padding:23px 0 27px;display:flex;justify-content:space-between;gap:25px} .mc-site-chrome .footer-bottom p{font-size:12px;line-height:1.8;color:#665d50;margin:0} @media(max-width:1100px){.mc-site-chrome .site-nav{gap:15px}.mc-site-chrome .site-nav>a{font-size:13px}.mc-site-chrome .footer-grid{gap:32px}} @media(max-width:999px){  .mc-site-chrome .container{width:calc(100% - 64px)}  .mc-site-chrome .header-inner{flex-wrap:wrap;padding-block:13px;min-height:77px;gap:15px}  .mc-site-chrome.site-header{min-height:78px}  .mc-site-chrome .brand-logo{width:137px}  .mc-site-chrome .site-nav{flex-basis:100%;display:flex;flex-wrap:wrap;gap:7px 22px;padding:8px 0 13px}  .mc-site-chrome[data-menu-enhanced="true"] .menu-toggle{display:inline-flex}  .mc-site-chrome[data-menu-enhanced="true"] .site-nav{display:none}  .mc-site-chrome[data-menu-enhanced="true"] .site-nav.is-open{display:flex}  .mc-site-chrome .site-nav>a{min-height:44px;font-size:14px}  .mc-site-chrome .site-nav .button{margin-left:0;font-size:14px}  .mc-site-chrome .footer-grid{grid-template-columns:1fr 1fr;gap:30px}  .mc-site-chrome .footer-grid>div:last-child{grid-column:1/-1;border-top:1px solid #d7cebf;padding-top:25px}  .mc-site-chrome .footer-grid>div:last-child .footer-list{column-count:3}  .mc-site-chrome .footer-bottom{flex-direction:column;gap:9px} } @media(max-width:540px){  .mc-site-chrome .container{width:calc(100% - 40px)}  .mc-site-chrome .site-nav{flex-direction:column;align-items:stretch;gap:3px}  .mc-site-chrome .site-nav>a{padding:6px 10px}  .mc-site-chrome .site-nav .button{margin-top:7px}  .mc-site-chrome.site-footer{padding-top:35px}  .mc-site-chrome .footer-grid{grid-template-columns:1fr;gap:25px;padding-bottom:24px}  .mc-site-chrome .footer-brand{margin-top:-8px;margin-bottom:18px}  .mc-site-chrome .footer-brand .brand-logo{width:144px}  .mc-site-chrome .footer-grid>div>p{font-size:14px;margin-top:10px}  .mc-site-chrome .footer-grid h2{font-size:14px;margin-bottom:15px}  .mc-site-chrome .footer-grid>div:nth-child(2){border-top:1px solid #d7cebf;padding-top:23px}  .mc-site-chrome .footer-grid>div:last-child{grid-column:auto;padding-top:23px}  .mc-site-chrome .footer-grid>div:last-child .footer-list{column-count:2;column-gap:18px}  .mc-site-chrome .footer-list a{font-size:13px;min-height:44px}  .mc-site-chrome .footer-list li{font-size:14px}  .mc-site-chrome .footer-bottom{padding:20px 0 25px;gap:10px} } @media print{.mc-site-chrome.site-header,.mc-site-chrome.site-footer{display:none!important}} 
/* Montlhéry Conduite — refonte éditoriale. Scope unique : .mc-redesign.    Le contenu est celui des pages sources. Les polices sont servies localement. */ .mc-redesign{--mc-paper:#f7f4ee;--mc-white:#fffefa;--mc-ink:#242420;--mc-muted:#615e56;--mc-line:#e4dfd5;--mc-orange:#b43d21;--mc-orange-dark:#92311b;--mc-peach:#f6e7da;--mc-green:#315d47;--mc-sage:#edf2e8;font-family:'Manrope',Arial,Helvetica,sans-serif;background:var(--mc-white);color:var(--mc-ink);font-size:16px;line-height:1.8;min-height:100vh} .mc-redesign *{box-sizing:border-box}.mc-redesign [hidden]{display:none!important}.mc-shell-fragment{display:contents}.mc-redesign p{color:var(--mc-ink)}.mc-redesign h1,.mc-redesign h2,.mc-redesign h3{color:var(--mc-ink);font-weight:750;line-height:1.25;letter-spacing:-.035em}.mc-redesign h1{font-size:clamp(36px,4.5vw,60px);line-height:1.1;letter-spacing:-.05em;max-width:1000px}.mc-redesign h2{font-size:28px;margin:0 0 21px}.mc-redesign h3{font-size:19px;margin:25px 0 12px}.mc-redesign p+p{margin-top:17px}.mc-redesign strong{font-weight:750}.mc-redesign a{color:var(--mc-orange);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.mc-redesign a:hover{text-decoration-thickness:2px;color:var(--mc-orange-dark)}.mc-redesign button,.mc-redesign input,.mc-redesign select,.mc-redesign textarea{font-family:inherit}.mc-redesign button:focus-visible,.mc-redesign a:focus-visible,.mc-redesign input:focus-visible,.mc-redesign select:focus-visible,.mc-redesign textarea:focus-visible,.mc-redesign summary:focus-visible,.mc-redesign [tabindex]:focus-visible{outline:3px solid #9e3820;outline-offset:4px}.mc-redesign [id]{scroll-margin-top:110px}.mc-redesign address{font-style:normal}.mc-redesign img{max-width:100%;height:auto}.mc-redesign .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mc-redesign .mc-main:focus{outline:none}.mc-container,.mc-redesign .container{width:calc(100% - 88px);max-width:1180px;margin-inline:auto}.mc-redesign .reading-width{max-width:none}.mc-redesign .mc-skip-link{position:fixed;z-index:100;left:16px;top:12px;transform:translateY(-160%);padding:12px 20px;background:var(--mc-orange);color:white;border-radius:8px}.mc-redesign .mc-skip-link:focus{transform:translateY(0)} .mc-preview-bar{height:32px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 max(24px,calc((100vw - 1180px)/2));font-size:12px;font-weight:600;background:#ede9e0;color:#655f53}.mc-preview-bar>span{display:flex;align-items:center;gap:7px}.mc-preview-dot{height:5px;width:5px;background:#8a9778;border-radius:50%}.mc-redesign .mc-preview-bar a{font-size:12px;color:#544f46;text-decoration:none;display:flex;gap:9px;align-items:center;min-height:28px}.mc-redesign .mc-preview-bar a:hover{text-decoration:underline}.mc-preview-bar a span{font-size:14px} .mc-redesign .site-header{height:87px;position:sticky;top:0;z-index:40;background:#fffefafa;border-bottom:1px solid var(--mc-line);backdrop-filter:blur(14px)}.mc-redesign .header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:26px}.mc-redesign .brand{display:block;text-decoration:none;color:var(--mc-ink);flex-shrink:0}.mc-redesign .brand-logo{width:142px;height:auto}.mc-redesign .site-nav{display:flex;align-items:center;gap:25px}.mc-redesign .site-nav>a{font-size:14px;font-weight:700;color:var(--mc-ink);text-decoration:none;position:relative;display:flex;align-items:center;min-height:44px;white-space:nowrap}.mc-redesign .site-nav>a:not(.button):hover{color:var(--mc-orange)}.mc-redesign .site-nav>a[aria-current="page"]::after{content:"";height:3px;background:var(--mc-orange);border-radius:2px;position:absolute;left:0;right:0;bottom:0}.mc-redesign .site-nav .button{color:#fff;font-size:13px;padding:11px 18px;border-radius:999px;min-height:44px;margin-left:4px}.mc-redesign .menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--mc-line);border-radius:9px;background:white;position:relative;flex-shrink:0;align-items:center;justify-content:center}.mc-redesign .menu-toggle-lines,.mc-redesign .menu-toggle-lines::before,.mc-redesign .menu-toggle-lines::after{display:block;width:18px;height:2px;background:var(--mc-ink);position:relative}.mc-redesign .menu-toggle-lines::before{content:"";position:absolute;top:-6px}.mc-redesign .menu-toggle-lines::after{content:"";position:absolute;top:6px}.mc-redesign .menu-toggle[aria-expanded="true"] .menu-toggle-lines{background:transparent}.mc-redesign .menu-toggle[aria-expanded="true"] .menu-toggle-lines::before{transform:rotate(45deg);top:0}.mc-redesign .menu-toggle[aria-expanded="true"] .menu-toggle-lines::after{transform:rotate(-45deg);top:0} .mc-redesign .button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:49px;padding:13px 22px;background:var(--mc-orange);border:1px solid var(--mc-orange);border-radius:9px;color:#fff;font-weight:700;font-size:14px;line-height:1.5;text-decoration:none;transition:background .18s,transform .18s,box-shadow .18s}.mc-redesign .button:hover{background:var(--mc-orange-dark);border-color:var(--mc-orange-dark);color:#fff;box-shadow:0 5px 16px #82301916}.mc-redesign .button:active{transform:translateY(1px)}.mc-redesign .eyebrow{color:var(--mc-orange);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.18em;line-height:1.7;display:flex;align-items:center;gap:11px;margin:0 0 17px}.mc-redesign .eyebrow::before{content:"";display:block;width:21px;height:2px;background:#ce7854;flex-shrink:0}.mc-redesign .breadcrumbs{font-size:13px;margin-bottom:36px;color:var(--mc-muted);font-weight:500}.mc-redesign .breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.mc-redesign .breadcrumbs li{display:flex;align-items:center;gap:9px;line-height:1.6}.mc-redesign .breadcrumbs li+li::before{content:"/";color:#8b8477}.mc-redesign .breadcrumbs a{color:#635f55;text-decoration:none;display:inline-flex;align-items:center;min-height:28px}.mc-redesign .breadcrumbs a:hover{color:var(--mc-orange);text-decoration:underline} .mc-page-hero{background:linear-gradient(110deg,#f5f0e8 0%,#faf7f1 65%,#fffdf8 100%);border-bottom:1px solid var(--mc-line);padding:33px 0 46px;position:relative;isolation:isolate;overflow:hidden}.mc-page-hero::after{content:"";position:absolute;width:400px;height:400px;border:1px solid #e9cbb646;border-radius:50%;right:-240px;top:-60px;box-shadow:0 0 0 45px #e9cbb617,0 0 0 90px #e9cbb60c;z-index:-1}.mc-page-hero .mc-hero-inner{position:relative}.mc-page-hero .page-intro,.mc-page-hero .direct-answer{font-size:17px;line-height:1.85;max-width:none;margin-top:25px}.mc-page-hero .page-intro~p:not(.eyebrow){font-size:14px;line-height:1.85;max-width:none;margin-top:18px;color:#5f5b52}.mc-page-hero .mc-hero-inner>.button{margin-top:24px}.mc-page-hero .mc-hero-inner>p>.button{margin-right:14px}.mc-page-hero .mc-hero-inner>p>a:not(.button){display:inline-flex;min-height:35px;align-items:center}.mc-page-hero nav:not(.breadcrumbs) ul,.mc-page-hero .practical-links{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:24px 0 0;padding:0;max-width:960px}.mc-page-hero nav:not(.breadcrumbs) li,.mc-page-hero .practical-links li{margin:0}.mc-page-hero nav:not(.breadcrumbs) a,.mc-page-hero .practical-links a{font-size:13px;display:flex;align-items:center;gap:6px;min-height:40px;padding:9px 13px;background:#fffdfa;border:1px solid #d7cabb;border-radius:8px;color:#76422a;text-decoration:none;font-weight:650}.mc-page-hero nav:not(.breadcrumbs) a:hover,.mc-page-hero .practical-links a:hover{background:var(--mc-peach);border-color:#c98a69}.mc-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:27px}.mc-redesign .mc-quiet-link{font-size:14px;line-height:1.7;color:#5b5a50;min-height:44px;display:inline-flex;align-items:center}.mc-kind-legal .mc-page-hero h1{font-size:clamp(34px,4.2vw,56px);max-width:1000px}.mc-kind-legal .mc-page-hero .page-intro{max-width:none;font-size:16px}.mc-kind-legal .mc-page-hero .eyebrow{margin-top:4px} .mc-reader{display:grid;grid-template-columns:242px minmax(0,1fr);gap:55px;align-items:start;padding-top:51px;padding-bottom:70px}.mc-document{min-width:0;font-size:16px;line-height:1.9}.mc-document>p{margin-bottom:23px}.mc-document>p:last-child{margin-bottom:0}.mc-document .mc-section{margin:0 0 40px;padding-bottom:40px;border-bottom:1px solid var(--mc-line)}.mc-document .mc-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}.mc-document .mc-section>p+p{margin-top:17px}.mc-document .mc-section>ul,.mc-document .mc-section>ol{margin:17px 0 20px}.mc-document h2{scroll-margin-top:114px}.mc-document h3{font-size:19px;margin:28px 0 13px}.mc-document ul{list-style:disc;padding-left:23px}.mc-document ol{list-style:decimal;padding-left:23px}.mc-document li{padding-left:4px;margin:10px 0}.mc-document li::marker{color:var(--mc-orange);font-size:.9em}.mc-document li p{margin-top:8px}.mc-document .source-note{font-size:13px;color:#69665d;margin-top:23px;padding-top:16px;border-top:1px solid var(--mc-line)}.mc-document code{font-size:.9em;background:#f0eee7;border-radius:4px;padding:2px 5px}.mc-document .notice{padding:22px 25px;background:#f9f3e7;border:1px solid #e6ccb1;border-radius:14px;margin:22px 0}.mc-document .notice h3{margin-top:0}.mc-document .notice p{font-size:14px}.mc-document blockquote{margin:22px 0;padding:22px 26px;border-left:3px solid #c27852;background:#f8f4ee}.mc-document .retractation-form{padding:25px;border:1px solid #d8d0c4;border-radius:12px}.mc-document a:not(.button){overflow-wrap:anywhere} .mc-toc{position:sticky;top:111px;align-self:start;min-width:0}.mc-toc>details{border:1px solid #e3ddd1;background:#f4f1e9;border-radius:16px;overflow:hidden}.mc-toc summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:19px 19px 16px;font-size:14px;letter-spacing:-.01em;font-weight:800;list-style:none;cursor:pointer}.mc-toc summary::-webkit-details-marker{display:none}.mc-toc-count{display:grid;place-items:center;min-width:24px;height:24px;font-weight:700;font-size:12px;border:1px solid #dcd2c3;border-radius:50%;color:#796a52}.mc-toc nav{padding:0 10px 14px;max-height:calc(100svh - 260px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d5cbbd transparent}.mc-toc ol{margin:0;padding:0;list-style:none}.mc-toc li{margin:0}.mc-redesign .mc-toc a{display:block;padding:10px 10px;line-height:1.65;font-size:14px;color:#5b584e;text-decoration:none;border-left:2px solid transparent;border-radius:0 6px 6px 0;min-height:39px}.mc-redesign .mc-toc a:hover{color:#9e3b22;background:#eee5d9}.mc-redesign .mc-toc a[aria-current="location"]{background:#efdfcf;border-left-color:var(--mc-orange);color:#82341e;font-weight:700}.mc-reading-tools{padding:13px 7px;display:flex;flex-direction:column;gap:1px}.mc-reading-tools button,.mc-redesign .mc-reading-tools>a{border:0;border-left:0;background:none;text-align:left;padding:8px 9px;min-height:39px;font-size:13px;font-weight:600;color:#676255;line-height:1.6;text-decoration:none;cursor:pointer}.mc-reading-tools button::before{content:"↗";display:inline-block;margin-right:9px;font-size:15px;vertical-align:-1px}.mc-redesign .mc-reading-tools>a::before{content:"↑";display:inline-block;margin-right:10px;font-size:15px}.mc-reading-tools button:hover,.mc-redesign .mc-reading-tools>a:hover{color:var(--mc-orange);text-decoration:underline;text-underline-offset:4px} .mc-redesign .legal-data{margin:24px 0;padding:0;border-top:1px solid #d7cdbc;border-bottom:1px solid #d7cdbc}.mc-redesign .legal-data>div{display:grid;grid-template-columns:minmax(145px,31%) minmax(0,1fr);gap:23px;border-top:1px solid var(--mc-line);padding:15px 4px;align-items:start}.mc-redesign .legal-data>div:first-child{border-top:0}.mc-redesign .legal-data dt{font-size:14px;font-weight:750;line-height:1.75}.mc-redesign .legal-data dd{font-size:14px;line-height:1.8;margin:0;color:#48463e;min-width:0;overflow-wrap:anywhere}.mc-redesign .legal-data a{overflow-wrap:anywhere}.mc-redesign .notice-warning{border:1px solid #e0b47f;background:#fff8e9;padding:20px 23px;border-radius:12px;margin-top:26px;max-width:850px}.mc-redesign .notice-warning strong{font-size:14px}.mc-redesign .notice-warning p{font-size:14px;margin-top:8px}.mc-redesign .notice-warning>p:first-child{margin-top:0}.mc-redesign .notice-warning::before{content:"";width:7px;height:7px;display:inline-block;background:#b96213;border-radius:50%;margin-right:9px;vertical-align:1px} .mc-table-scroll{width:100%;max-width:100%;overflow:auto;overscroll-behavior-x:contain;border:1px solid #dfd8cc;border-radius:13px;background:white;margin:22px 0 0;scrollbar-color:#c4ad98 #f0e9de;scrollbar-width:thin}.mc-redesign .mc-table{width:100%;border-collapse:collapse;table-layout:auto;font-size:14px;line-height:1.7;margin:0;word-break:normal}.mc-table caption{caption-side:top;text-align:left;padding:15px 18px;background:#fffdf8;font-size:14px;line-height:1.7;font-weight:600;color:#6b6256;border-bottom:1px solid #e4dbce}.mc-table th,.mc-table td{padding:14px 18px;text-align:left;vertical-align:top;border-bottom:1px solid #e6e0d6;overflow-wrap:normal;word-break:normal}.mc-table thead{background:#f0eae0}.mc-table thead th{font-size:13px;font-weight:800;padding-top:12px;padding-bottom:12px}.mc-table tbody th{font-weight:600}.mc-table tbody tr:last-child>*{border-bottom:0}.mc-table tbody tr:hover{background:#fff7ed}.mc-table[data-columns="2"] th:last-child,.mc-table[data-columns="2"] td:last-child{text-align:right;white-space:nowrap}.mc-table[data-columns="2"] tbody td:last-child{font-weight:750;font-variant-numeric:tabular-nums;color:#673e29}.mc-table[data-columns="7"]{min-width:1030px;font-size:14px}.mc-table[data-columns="7"] th{min-width:120px}.mc-table[data-columns="7"] th:first-child{min-width:170px}.mc-table[data-columns="7"] th:nth-child(6){min-width:180px}.mc-table[data-columns="7"] tbody td:nth-child(2){font-size:27px;letter-spacing:-.05em;font-weight:800;color:var(--mc-green);white-space:nowrap}.mc-redesign .mc-table-hint{font-size:12px;line-height:1.6;color:#696151;margin:7px 0 21px;display:none}.mc-table-scroll[data-overflow="true"]+.mc-table-hint{display:block}.mc-table-scroll[data-overflow="true"]{box-shadow:inset -12px 0 15px -15px #6d4827}.mc-redesign details.other-prices{padding:0;border:1px solid #dacfc0;border-radius:12px;background:#faf7f1;overflow:hidden;margin:25px 0}.mc-redesign details.other-prices>summary{font-size:14px;font-weight:750;padding:17px 20px;cursor:pointer;list-style:none;display:flex;gap:15px;align-items:center}.mc-redesign details.other-prices>summary::before{content:"+";color:var(--mc-orange);font-size:21px;font-weight:400;line-height:1;flex-shrink:0}.mc-redesign details.other-prices[open]>summary::before{content:"−"}.mc-redesign details.other-prices>summary::-webkit-details-marker{display:none}.mc-redesign details.other-prices>p{padding:0 20px;margin-top:14px;font-size:14px}.mc-redesign details.other-prices .mc-table-scroll{width:calc(100% - 40px);margin:20px}.mc-redesign details.other-prices>.mc-table-hint{padding-inline:20px} .mc-tariffs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.mc-tariffs>.tariff-group{margin:0;padding:25px 21px;border:1px solid #ded6c8;border-radius:16px;background:#fff;box-shadow:0 4px 16px #5f452106;position:relative;overflow:hidden}.mc-tariffs>.tariff-group::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#c66b40}.mc-tariffs>.tariff-group:nth-of-type(2)::before,.mc-tariffs>.tariff-group:nth-of-type(3)::before{background:#728e6c}.mc-tariffs>.tariff-group:nth-of-type(6)::before,.mc-tariffs>.tariff-group:nth-of-type(7)::before{background:#ba9866}.mc-tariffs h2{font-size:21px;line-height:1.35;margin-bottom:18px}.mc-tariffs .mc-table-scroll{border-radius:9px;margin-top:0}.mc-tariffs .mc-table{font-size:14px;line-height:1.65}.mc-tariffs .mc-table caption{font-size:12px;padding:10px 12px;font-weight:500}.mc-tariffs .mc-table th,.mc-tariffs .mc-table td{padding:11px 12px}.mc-tariffs .mc-table thead th{font-size:12px}.mc-tariffs .mc-table tbody td:last-child{font-size:15px}.mc-tariffs .tariff-group>p{font-size:14px;line-height:1.9;margin-top:17px}.mc-tariffs>:not(.tariff-group),.mc-tariffs>.tariff-group:nth-of-type(4),.mc-tariffs>.tariff-group:nth-of-type(5),.mc-tariffs>.tariff-group:nth-of-type(10){grid-column:1/-1}.mc-tariffs>.tariff-group:nth-of-type(4),.mc-tariffs>.tariff-group:nth-of-type(5){display:grid;grid-template-columns:1fr 1.05fr;column-gap:25px;align-items:start}.mc-tariffs>.tariff-group:nth-of-type(4)>h2,.mc-tariffs>.tariff-group:nth-of-type(5)>h2{grid-column:1/-1}.mc-tariffs>.tariff-group:nth-of-type(4)>.mc-table-scroll,.mc-tariffs>.tariff-group:nth-of-type(5)>.mc-table-scroll{grid-column:1;grid-row:2/6}.mc-tariffs>.tariff-group:nth-of-type(4)>p,.mc-tariffs>.tariff-group:nth-of-type(5)>p{grid-column:2;margin-top:0;margin-bottom:15px}.mc-tariffs>.tariff-group:nth-of-type(4)>.mc-table-hint,.mc-tariffs>.tariff-group:nth-of-type(5)>.mc-table-hint{grid-column:1}.mc-tariffs>.mc-section:not(.tariff-group){padding:30px 0 36px;margin:0}.mc-tariffs>p:last-child{margin-top:0} .mc-funding>.mc-section{padding:30px;border:1px solid var(--mc-line);border-radius:16px;background:#fff;margin-bottom:24px}.mc-funding>.mc-section:first-child{border-top:3px solid #b86638;background:#fffcf6}.mc-funding>.mc-section:nth-child(2){border-top:3px solid #7c9671;background:#f9fbf5}.mc-funding>.mc-section#ferme{background:#fbf3e8;border-color:#e8d3b8}.mc-funding h2{font-size:25px}.mc-funding p,.mc-funding li{font-size:15px}.mc-funding h3{font-size:17px}.mc-funding>.mc-section:last-child{padding-bottom:30px;border-bottom:1px solid var(--mc-line)} .mc-reader-wide{display:block}.mc-reader-wide>.mc-toc{position:static;margin-bottom:30px}.mc-reader-wide>.mc-toc>details{background:none;border-radius:0;border:0;border-bottom:1px solid var(--mc-line)}.mc-reader-wide>.mc-toc summary{display:none}.mc-reader-wide>.mc-toc nav{max-height:none;padding:0 0 15px}.mc-reader-wide>.mc-toc ol{display:flex;gap:10px;flex-wrap:wrap}.mc-reader-wide>.mc-toc a{border:1px solid #ded5c7;border-radius:7px;padding:9px 13px;min-height:39px;background:#faf7f0}.mc-reader-wide>.mc-toc .mc-reading-tools{display:none}.mc-reader-wide .mc-document>.mc-section:first-child{padding:31px;border:1px solid #d8ded1;border-radius:18px;background:#f4f7f0}.mc-reader-wide .mc-document>.mc-section:first-child>p{font-size:14px;max-width:none}.mc-reader-wide .mc-document>.mc-section:not(:first-child){max-width:none;margin-inline:0}.mc-reader-wide .mc-table-scroll{background:#fff}.mc-page-nos-resultats .mc-page-hero{background:linear-gradient(105deg,#f0f2e9,#faf8f1)} .mc-page-questions-frequentes .mc-page-hero .mc-hero-inner{padding-right:245px}.mc-page-questions-frequentes .mc-page-hero .mc-hero-inner::after{content:"";position:absolute;right:20px;top:60px;width:160px;height:160px;border:1px solid #d6b698;border-radius:43px;background:#efd7bc;box-shadow:13px 13px 0 -1px #fbf5e9,13px 13px 0 #e3c9ab;transform:rotate(-8deg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23a44e29' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M42 45h76v51H76l-20 17V96H42z'/%3E%3Cpath d='M63 62h34M63 78h24'/%3E%3C/g%3E%3C/svg%3E")}.mc-page-questions-frequentes h1{font-size:clamp(38px,4.4vw,60px);max-width:760px}.mc-page-questions-frequentes .direct-answer{max-width:none;font-size:16px}.mc-redesign .faq-layout{display:grid;grid-template-columns:minmax(0,1fr) 267px;gap:47px;align-items:start;padding-top:48px;padding-bottom:72px}.mc-redesign .faq-layout h2{font-size:29px;margin-bottom:25px}.mc-redesign .faq-layout>.formation-aside{position:sticky;top:112px;display:grid;gap:17px}.mc-redesign .aside-card{background:#f6f2ea;border:1px solid #e2dacc;border-radius:14px;padding:22px}.mc-redesign .aside-card p{font-size:14px;line-height:1.85}.mc-redesign .aside-card .status-label{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:#8e4125;font-weight:800;margin:0 0 12px}.mc-redesign .aside-card .related-links{list-style:none;padding:0;margin:16px 0 0}.mc-redesign .aside-card .related-links li{border-top:1px solid #dfd5c5;padding:9px 0}.mc-redesign .aside-card .related-links li:last-child{padding-bottom:0}.mc-redesign .aside-card a{font-size:13px;line-height:1.8;overflow-wrap:anywhere}.mc-redesign .aside-card:last-child{background:#eef2e8;border-color:#d6dfcc}.mc-redesign .aside-card:last-child .status-label{color:#405e37}.mc-faq-tools{margin-bottom:24px}.mc-faq-tools>label{display:block;font-size:14px;font-weight:700;margin-bottom:9px}.mc-search-wrap{position:relative}.mc-search-wrap::before{content:"";position:absolute;left:20px;top:18px;width:14px;height:14px;border:1.8px solid #796d5d;border-radius:50%;pointer-events:none}.mc-search-wrap::after{content:"";position:absolute;left:33px;top:32px;width:6px;height:2px;background:#796d5d;transform:rotate(45deg);pointer-events:none}.mc-redesign #mc-faq-search{width:100%;min-height:55px;font-size:15px;border-radius:12px;border:1px solid #cfc4b3;background:#fff;padding:14px 20px 14px 49px;color:#242420}.mc-redesign #mc-faq-search::placeholder{color:#807666}.mc-faq-filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.mc-faq-filters button{background:transparent;border:1px solid #dbd3c6;border-radius:999px;padding:9px 12px;min-height:39px;font-size:12px;font-weight:700;line-height:1.5;color:#655b4f}.mc-faq-filters button:hover{background:#f8eee0}.mc-faq-filters button[aria-pressed="true"]{color:#fff;background:#3f4538;border-color:#3f4538}.mc-redesign #mc-faq-count{margin-top:15px;font-size:13px;color:#726757}.mc-redesign #mc-faq-empty{padding:25px;background:#f7f3e9;border:1px dashed #c8b69f;border-radius:10px;margin-top:18px}.mc-redesign #mc-faq-empty p{font-size:14px}.mc-redesign #mc-faq-reset{padding:8px 0;font-size:14px;font-weight:700;text-decoration:underline;color:var(--mc-orange);background:none;border:0;margin-top:7px;min-height:44px}.mc-redesign .faq-list{display:grid;gap:10px}.mc-redesign .mc-faq-item{border:1px solid #dfd8ce;border-radius:12px;background:#fff;overflow:hidden}.mc-redesign .mc-faq-item>summary{padding:19px 21px;display:flex;gap:20px;align-items:center;justify-content:space-between;list-style:none;cursor:pointer}.mc-faq-item>summary::-webkit-details-marker{display:none}.mc-redesign .mc-faq-item>summary h3{font-size:14px;line-height:1.65;letter-spacing:-.01em;margin:0;font-weight:750}.mc-faq-item>summary::after{content:"+";flex-shrink:0;display:grid;place-items:center;border:1px solid #e0d4c4;width:25px;height:25px;border-radius:50%;color:#955133;font-size:19px;line-height:1;font-weight:400}.mc-faq-item[open]>summary{background:#faf5ec}.mc-faq-item[open]>summary::after{content:"−";background:#f0dfc9;border-color:#dec3a0}.mc-faq-answer{padding:0 22px 22px;background:#faf5ec}.mc-faq-answer p{font-size:14px;line-height:1.9;padding-top:1px}.mc-faq-item:has(summary:hover){border-color:#c9ac8b} .mc-contact-hero{display:grid;grid-template-columns:1.04fr 1fr;gap:65px;padding-top:38px;padding-bottom:55px;align-items:start}.mc-contact-intro h1{font-size:clamp(40px,4.4vw,60px);line-height:1.12;margin:0}.mc-contact-intro .page-intro{font-size:16px;line-height:1.9;margin-top:28px}.mc-redesign .mc-contact-intro .breadcrumbs{margin-bottom:37px}.mc-redesign .mc-phone-link{font-size:14px;font-weight:750;text-decoration:none;color:#4c5140;display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}.mc-phone-link::before{content:"";display:block;width:7px;height:7px;border:1.5px solid #829770;border-radius:50%;margin-right:9px}.mc-contact-location{padding-top:16px}.mc-redesign .mc-contact-location h2{font-size:19px;line-height:1.5;margin-bottom:16px;letter-spacing:-.025em}.mc-redesign .map-card{background:#fff;border:1px solid #ddd5c8;border-radius:18px;overflow:hidden;box-shadow:0 12px 32px #392e1610}.mc-redesign .map-figure{margin:0}.mc-redesign .map-image{width:100%;height:235px;object-fit:cover;object-position:50% 50%}.mc-redesign .map-figure figcaption{font-size:8px;line-height:1.7;color:#766e61;padding:8px 14px;background:#f9f8f4;border-bottom:1px solid var(--mc-line)}.mc-redesign .map-details{padding:22px 25px}.mc-redesign .map-details address{font-size:14px;line-height:1.8}.mc-redesign .map-details address strong{font-size:16px;display:inline-block;margin-bottom:2px}.mc-redesign .map-details>p{font-size:14px;line-height:1.8;margin-top:15px;color:#565349}.mc-redesign .map-details .map-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.mc-redesign .map-links a{font-size:12px;font-weight:750;display:flex;align-items:center;min-height:39px;padding:8px 11px;border:1px solid #d9c9b7;border-radius:7px;color:#754327;text-decoration:none;background:#fffaf4}.mc-redesign .map-links a:hover{background:#f3e6d6}.mc-redesign .map-details .map-note{font-size:12px;margin-top:8px;color:#776b5b}.mc-contact-form-section{padding:55px 0 65px;background:#f2efe7;border-block:1px solid var(--mc-line)}.mc-redesign .contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}.mc-redesign .contact-grid>div:first-child>h2{font-size:37px;line-height:1.2;max-width:350px;margin-bottom:22px}.mc-redesign .contact-grid>div:first-child>p{font-size:15px;line-height:1.9;max-width:460px}.mc-redesign .contact-options{display:grid;gap:13px;margin-top:30px}.mc-redesign .contact-options>div{padding:20px 23px;border:1px solid #e2dbcd;border-radius:12px;background:#fffdf8;position:relative}.mc-redesign .contact-options>div:nth-child(2){background:#f5f7ef;border-color:#dce2d2}.mc-redesign .contact-options>div:nth-child(3){background:#f9eedf;border-color:#e7d7bf}.mc-redesign .contact-options h3{font-size:14px;margin:0 0 9px;letter-spacing:-.01em}.mc-redesign .contact-options p,.mc-redesign .contact-options address{font-size:14px;line-height:1.85;margin-top:7px}.mc-redesign .contact-options>div>a{font-size:14px;font-weight:700;overflow-wrap:anywhere}.mc-redesign .contact-options a[href^="tel:"]{font-size:20px;color:#815233;text-decoration:none;letter-spacing:-.02em;font-weight:750;display:inline-flex;min-height:36px;align-items:center}.mc-redesign .contact-options>div:nth-child(2)>a{color:#385a3b}.mc-redesign .contact-options p>a:not([href^="tel:"]){text-decoration:underline} .mc-redesign .form-card{border:1px solid #e2dbce;background:#fff;border-radius:19px;padding:31px;box-shadow:0 12px 28px #382a1010;min-width:0}.mc-redesign .contact-form{display:grid;gap:21px}.mc-redesign .contact-form .form-field{min-width:0}.mc-redesign .form-field>label,.mc-redesign .form-field>legend{display:block;color:var(--mc-ink);font-size:14px;font-weight:750;line-height:1.7;margin-bottom:8px;max-width:100%;padding:0}.mc-redesign label.required::after,.mc-redesign legend.required::after{content:" (obligatoire)";font-size:12px;font-weight:500;color:#777064;white-space:nowrap}.mc-redesign .form-choice>div>label.required::after{content:none}.mc-redesign .form-field input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),.mc-redesign .form-field select,.mc-redesign .form-field textarea{width:100%;border:1px solid #c9c0b1;border-radius:8px;background:#fffdf9;color:#252520;font-size:14px;line-height:1.6;padding:12px 13px;min-height:49px;transition:border-color .15s,box-shadow .15s}.mc-redesign .form-field input:hover,.mc-redesign .form-field select:hover,.mc-redesign .form-field textarea:hover{border-color:#a99a84}.mc-redesign .form-field input:focus,.mc-redesign .form-field select:focus,.mc-redesign .form-field textarea:focus{border-color:#a15f3d;box-shadow:0 0 0 3px #f5e5d6;background:white}.mc-redesign .form-field textarea{resize:vertical;min-height:140px}.mc-redesign .form-field select{appearance:auto;padding-right:10px}.mc-redesign .form-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mc-redesign .form-choice{border:0;padding:0;margin:0;min-width:0}.mc-redesign .form-choice>legend{margin-bottom:12px}.mc-redesign .form-choice>div:not(.help-text){display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px 9px;align-items:start;padding:16px;background:#faf5ec;border:1px solid #e6d8c3;border-radius:10px}.mc-redesign .form-choice input[type="radio"]{appearance:auto;width:18px;height:18px;margin:3px 0 0;accent-color:var(--mc-orange)}.mc-redesign .form-choice>div>label{font-size:14px;line-height:1.8;min-height:24px;font-weight:600;cursor:pointer}.mc-redesign .help-text{font-size:12px;line-height:1.8;margin-top:8px;color:#70685c}.mc-redesign .form-consent{display:grid;grid-template-columns:18px minmax(0,1fr);gap:5px 10px;align-items:start}.mc-redesign .form-consent>input{width:18px;height:18px;accent-color:var(--mc-orange);margin-top:3px;appearance:auto}.mc-redesign .form-consent>label{font-size:13px;font-weight:650;line-height:1.8;cursor:pointer}.mc-redesign .form-consent>p{grid-column:2;font-size:12px;line-height:1.8;margin:0}.mc-redesign .form-submit{width:100%;border-radius:9px;min-height:50px}.mc-redesign .mc-preview-form-note{font-size:12px;line-height:1.8;padding:11px 13px;border-radius:8px;color:#555e4b;background:#eef3e9;border:1px solid #dbe3d2}.mc-form-errors{padding:17px 19px;border:1px solid #c27358;background:#fff3eb;border-radius:10px;font-size:14px}.mc-form-errors p{font-weight:750;margin:0 0 7px}.mc-form-errors ul{list-style:disc;padding-left:18px;margin:0}.mc-form-errors a{font-size:13px}.mc-field-error{font-size:13px;color:#9a331e!important;margin-top:6px!important}.mc-redesign input[aria-invalid="true"],.mc-redesign select[aria-invalid="true"],.mc-redesign textarea[aria-invalid="true"]{border-color:#ad472d!important;background:#fff8f4!important}.mc-form-success{padding:18px;border:1px solid #87a17a;border-radius:10px;background:#eff6e9;color:#315b36;line-height:1.8;font-size:14px;font-weight:650} .mc-page-qualite--reclamation .mc-page-hero h1{font-size:clamp(35px,4.1vw,56px);max-width:1000px}.mc-page-qualite--reclamation .mc-page-hero .page-intro{max-width:950px;font-size:16px}.mc-process-section{padding:48px 0}.mc-process-section h2{font-size:29px}.mc-process-section ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;padding:0;counter-reset:steps;margin:28px 0}.mc-process-section ol li{counter-increment:steps;padding:24px 20px 23px;border:1px solid #e3dacb;border-radius:13px;background:#f8f4ed;position:relative;font-size:14px;line-height:1.9}.mc-process-section ol li::before{content:"0" counter(steps);display:grid;place-items:center;height:29px;width:29px;border:1px solid #d8bda3;border-radius:50%;font-size:12px;font-weight:750;color:#965033;background:#f5e4cf;margin-bottom:14px}.mc-process-section ol li strong{display:block;font-size:17px;letter-spacing:-.025em;margin-bottom:4px}.mc-process-section .legal-data{display:grid;grid-template-columns:1fr 1fr;gap:16px;border:0;margin:0 0 25px}.mc-process-section .legal-data>div{display:block;border:1px solid #d6dfcc;background:#f0f4ea;padding:18px 21px;border-radius:10px}.mc-process-section .legal-data dd{font-size:14px;margin-top:6px}.mc-process-section section>p{font-size:14px;line-height:1.9;max-width:960px}.mc-complaint-section{background:#f3efe7;padding:48px 0 65px;border-block:1px solid var(--mc-line)}.mc-complaint-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:45px;align-items:start}.mc-complaint-grid>section>h2{font-size:28px;max-width:420px}.mc-complaint-grid>section>p{font-size:14px;line-height:1.9;margin-bottom:20px}.mc-redesign .mc-complaint-grid>.notice{border:1px solid #e2d9cb;background:#fffdf8;border-radius:17px;padding:28px}.mc-complaint-grid .legal-data{margin-bottom:0;margin-top:24px;border-bottom:0}.mc-complaint-grid .legal-data>div{display:block;padding:15px 0}.mc-complaint-grid .legal-data dt{font-size:14px}.mc-complaint-grid .legal-data dd{font-size:14px;line-height:1.9;margin-top:6px}.mc-complaint-grid .form-card{padding:27px} .mc-redesign .site-footer{background:#eeebe3;border-top:1px solid #ddd6c8;padding:47px 0 0}.mc-redesign .footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1.8fr;gap:43px;align-items:start;padding-bottom:37px}.mc-redesign .footer-brand{margin:-11px 0 22px}.mc-redesign .footer-brand .brand-logo{width:153px;margin:0}.mc-redesign .footer-grid>div>p{font-size:13px;line-height:1.9;color:#5c594d;max-width:265px;margin-top:11px}.mc-redesign .footer-grid .footer-address{font-weight:750;color:#34352d;font-size:13px}.mc-redesign .footer-grid h2{font-size:14px;line-height:1.6;letter-spacing:0;margin:3px 0 18px;font-weight:800}.mc-redesign .footer-list{list-style:none;padding:0;margin:0;font-size:13px;line-height:1.8}.mc-redesign .footer-list li{margin:0 0 7px;color:#5e5b50}.mc-redesign .footer-list a{color:#65604f;text-decoration:none;display:inline-flex;align-items:center;min-height:27px;font-size:13px;line-height:1.7}.mc-redesign .footer-list a:hover{color:var(--mc-orange);text-decoration:underline}.mc-redesign .footer-grid>div:nth-child(2) a[href^="tel:"]{font-size:15px;color:#2f3529;font-weight:750;letter-spacing:-.015em}.mc-redesign .footer-grid>div:nth-child(2) a[href^="mailto:"]{text-decoration:underline;text-underline-offset:4px}.mc-redesign .footer-grid>div:last-child .footer-list{column-count:2;column-gap:27px}.mc-redesign .footer-grid>div:last-child .footer-list li{break-inside:avoid}.mc-redesign .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:21px 0;min-height:65px;border-top:1px solid #d3ccbe}.mc-redesign .footer-bottom p{font-size:12px;line-height:1.8;color:#6c6657;margin:0} .mc-gallery-hero{display:grid;grid-template-columns:1.35fr 1fr;gap:35px;align-items:center;padding-top:65px;padding-bottom:63px}.mc-gallery-hero .eyebrow{font-size:12px;letter-spacing:.15em}.mc-redesign .mc-gallery-hero h1{font-size:clamp(40px,5.3vw,72px);line-height:1.05;letter-spacing:-.05em}.mc-gallery-hero h1 em{font-family:'DM Serif Display',Georgia,serif;font-size:1.12em;letter-spacing:-.025em;color:#b4502e;font-weight:400}.mc-gallery-hero>div>p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:565px;margin-top:28px}.mc-gallery-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.mc-gallery-badges span{padding:7px 11px;font-size:12px;font-weight:650;border-radius:999px;background:#f3e9da;color:#885131;border:1px solid #e7d3b6}.mc-gallery-badges span:nth-child(2){background:#edf2e5;color:#526444;border-color:#d7e0c9}.mc-gallery-badges span:nth-child(3){background:#f5ede5;color:#886b53}.mc-gallery-art{position:relative;isolation:isolate}.mc-gallery-art img{width:100%;height:auto;position:relative;z-index:1;filter:drop-shadow(0 14px 20px #75512c0c)}.mc-orbit{position:absolute;inset:8% 5%;border:1px solid #e4d6c2;border-radius:50%;transform:rotate(-15deg);background:#fbf3e6}.mc-art-caption{position:absolute;bottom:7%;left:16%;font-size:13px;letter-spacing:.015em;color:#8b7053;z-index:2;background:#fffcf4;padding:6px 11px;border-radius:6px;transform:rotate(-4deg);box-shadow:0 3px 10px #7d583111}.mc-gallery-section{padding-bottom:52px}.mc-gallery-section-title{display:grid;grid-template-columns:33px 1fr;gap:0 12px;align-items:center;border-bottom:1px solid var(--mc-line);padding-bottom:19px;margin-bottom:24px}.mc-gallery-section-title>span{display:grid;place-items:center;width:30px;height:30px;background:#f2e3cf;color:#965739;font-size:12px;font-weight:750;border-radius:50%;grid-row:1/3}.mc-gallery-section-title h2{font-size:25px;margin:0;line-height:1.4}.mc-gallery-section-title p{font-size:13px;color:#746b5b;margin-top:4px;grid-column:2}.mc-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.mc-redesign .mc-page-tile{display:flex;flex-direction:column;position:relative;gap:25px;min-height:208px;padding:25px 23px;background:#fff;border:1px solid #e0d8ca;border-radius:15px;text-decoration:none;box-shadow:0 5px 16px #56412004;transition:border-color .18s,box-shadow .18s,transform .18s}.mc-redesign .mc-page-tile:hover{border-color:#c78b62;box-shadow:0 8px 24px #66502b10;transform:translateY(-3px)}.mc-tile-icon{width:45px;height:45px;display:grid;place-items:center;background:#f6e8d8;color:#9a5932;border-radius:12px}.mc-page-tile:nth-child(4n+2) .mc-tile-icon{background:#eaf0e3;color:#546b45}.mc-page-tile:nth-child(4n+3) .mc-tile-icon{background:#f3eadc;color:#8f7447}.mc-page-tile .mc-tile-arrow{position:absolute;top:27px;right:22px;color:#88775f}.mc-redesign .mc-page-tile h3{font-size:15px;font-weight:750;line-height:1.45;letter-spacing:-.02em;margin:0;max-width:230px}.mc-page-tile p{font-size:12px;line-height:1.7;margin-top:8px;color:#797161}.mc-gallery .mc-legal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mc-gallery .mc-legal-grid .mc-page-tile{min-height:139px;flex-direction:row;align-items:center;gap:17px;padding:22px;padding-right:43px;background:#faf7f0}.mc-gallery .mc-legal-grid .mc-tile-icon{width:39px;height:39px;background:#ede7dc;flex-shrink:0;color:#76664f}.mc-legal-grid .mc-tile-arrow{top:24px;right:16px}.mc-survey-callout{border-top:1px solid var(--mc-line);padding:38px 0 50px;display:flex;align-items:center;justify-content:space-between;gap:30px}.mc-survey-callout .eyebrow{font-size:12px;margin-bottom:11px}.mc-survey-callout h2{font-size:25px;margin:0}.mc-survey-callout p{font-size:14px;margin-top:10px;color:#736b5b}.mc-survey-callout .button{flex-shrink:0} @media(min-width:1500px){.mc-container,.mc-redesign .container{max-width:1240px}.mc-reader{grid-template-columns:254px minmax(0,1fr);gap:65px}.mc-document{font-size:17px}.mc-preview-bar{padding-inline:max(44px,calc((100vw - 1240px)/2))}.mc-redesign .mc-table[data-columns="7"]{min-width:1060px}.mc-contact-hero{gap:75px}.mc-redesign .contact-grid{gap:75px}} @media(max-width:1150px){.mc-redesign .site-nav{gap:18px}.mc-redesign .site-nav>a{font-size:13px}.mc-redesign .site-nav .button{font-size:12px;padding-inline:13px}.mc-redesign .brand-logo{width:127px}.mc-reader{grid-template-columns:205px minmax(0,1fr);gap:33px}.mc-redesign .mc-toc a{font-size:13px}.mc-tariffs{grid-template-columns:1fr}.mc-tariffs>.tariff-group:nth-of-type(4),.mc-tariffs>.tariff-group:nth-of-type(5){display:block}.mc-tariffs .tariff-group>p{margin-top:17px!important}.mc-redesign .faq-layout{gap:30px;grid-template-columns:minmax(0,1fr) 238px}.mc-page-questions-frequentes .mc-page-hero .mc-hero-inner{padding-right:205px}.mc-page-questions-frequentes .mc-page-hero .mc-hero-inner::after{width:145px;height:145px;background-size:145px}.mc-contact-hero{gap:32px;grid-template-columns:1fr 1fr}.mc-redesign .contact-grid{gap:35px}.mc-redesign .form-card{padding:24px}.mc-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mc-gallery .mc-legal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-redesign .footer-grid{gap:28px}.mc-process-section ol{gap:11px}.mc-process-section ol li{padding:19px 16px}.mc-complaint-grid{gap:28px}} @media(max-width:999px){.mc-container,.mc-redesign .container{width:calc(100% - 48px)}.mc-redesign .site-header{height:76px}.mc-redesign .brand-logo{width:132px}.mc-redesign .menu-toggle{display:flex;margin-left:auto}.mc-redesign .site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffef9;border-bottom:1px solid var(--mc-line);padding:12px 24px 25px;box-shadow:0 14px 24px #3c2c1412;max-height:calc(100svh - 90px);overflow:auto}.mc-redesign .site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.mc-redesign .site-nav>a{font-size:14px;padding:13px 5px;border-bottom:1px solid var(--mc-line);min-height:48px;white-space:normal}.mc-redesign .site-nav .button{font-size:14px;padding:13px;margin:15px 0 0}.mc-redesign .site-nav>a[aria-current="page"]::after{left:0;right:auto;width:25px;bottom:7px;height:2px}.mc-reader{display:block;padding-top:30px;padding-bottom:49px}.mc-toc{position:static;margin-bottom:31px}.mc-toc>details{border-radius:12px}.mc-toc summary{padding:16px 18px;min-height:56px;cursor:pointer}.mc-toc-count{position:relative;min-width:40px;border-radius:5px;background:#ebe3d7;padding-right:10px}.mc-toc-count::after{content:"⌄";position:absolute;right:4px;top:0;font-size:14px;line-height:20px}.mc-toc[open] .mc-toc-count::after{transform:rotate(180deg)}.mc-toc nav{max-height:370px;padding:0 10px 13px}.mc-redesign .mc-toc a{font-size:14px;min-height:44px;padding:11px 10px}.mc-toc .mc-reading-tools{display:none}.mc-document{font-size:16px;max-width:820px;margin-inline:auto}.mc-document h2{font-size:27px}.mc-tariffs{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.mc-tariffs h2{font-size:21px}.mc-tariffs>.tariff-group:nth-of-type(4),.mc-tariffs>.tariff-group:nth-of-type(5){display:grid}.mc-reader-wide>.mc-toc summary{display:flex}.mc-reader-wide>.mc-toc>details{border:1px solid var(--mc-line);border-radius:12px;background:#f4f1e9}.mc-reader-wide>.mc-toc ol{display:block}.mc-reader-wide>.mc-toc a{border:0;background:none}.mc-reader-wide>.mc-toc nav{padding:0 9px 12px}.mc-redesign .faq-layout{grid-template-columns:minmax(0,1fr) 230px;gap:25px;padding-top:35px}.mc-redesign .faq-layout>.formation-aside{top:100px}.mc-page-hero{padding-top:26px;padding-bottom:36px}.mc-redesign .breadcrumbs{margin-bottom:25px}.mc-page-hero .page-intro,.mc-page-hero .direct-answer{font-size:16px;line-height:1.9;margin-top:23px}.mc-redesign h1{font-size:47px}.mc-kind-legal .mc-page-hero h1{font-size:45px}.mc-page-questions-frequentes .mc-page-hero .mc-hero-inner{padding-right:190px}.mc-page-questions-frequentes h1{font-size:46px}.mc-contact-hero{gap:26px;padding-top:29px;padding-bottom:38px}.mc-contact-intro h1{font-size:44px}.mc-contact-intro .page-intro{font-size:14px;line-height:1.95}.mc-redesign .mc-contact-intro .breadcrumbs{margin-bottom:25px}.mc-hero-actions{gap:12px}.mc-contact-hero .mc-hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.mc-redesign .mc-contact-location h2{font-size:17px}.mc-redesign .map-image{height:210px}.mc-redesign .map-details{padding:19px}.mc-redesign .map-links a{font-size:12px}.mc-redesign .contact-grid{gap:25px;grid-template-columns:.85fr 1.15fr}.mc-redesign .contact-grid>div:first-child>h2{font-size:32px}.mc-redesign .contact-grid>div:first-child>p{font-size:14px}.mc-redesign .contact-options>div{padding:19px}.mc-redesign .form-card{padding:23px}.mc-redesign .form-two-columns{display:block}.mc-redesign .form-two-columns>.form-field+.form-field{margin-top:21px}.mc-redesign .form-choice>div:not(.help-text){padding:13px;gap:10px 7px}.mc-redesign .footer-grid{grid-template-columns:1fr 1fr;gap:28px 40px}.mc-redesign .footer-grid>div:last-child{grid-column:1/-1;border-top:1px solid #d8d0c2;padding-top:24px}.mc-redesign .footer-grid>div:last-child .footer-list{column-count:3;column-gap:30px}.mc-redesign .footer-list a{font-size:13px;min-height:30px}.mc-redesign .footer-bottom{align-items:flex-start;flex-direction:column;gap:7px;padding:20px 0}.mc-process-section ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mc-process-section ol li{font-size:14px;padding:22px}.mc-complaint-grid{gap:23px}.mc-redesign .mc-complaint-grid>.notice{padding:22px}.mc-complaint-grid .form-card{padding:22px}.mc-gallery-hero{padding-top:45px;padding-bottom:48px;gap:15px}.mc-gallery-hero .eyebrow{font-size:8px}.mc-gallery-hero>div>p:not(.eyebrow){font-size:14px}.mc-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-gallery-art .mc-art-caption{font-size:12px;left:8%}.mc-survey-callout{padding-top:25px}.mc-survey-callout .button{font-size:13px;padding-inline:15px}} @media(max-width:760px){.mc-redesign .faq-layout{display:flex;flex-direction:column;gap:30px}.mc-redesign .faq-layout>div{width:100%}.mc-redesign .faq-layout>.formation-aside{position:static;grid-template-columns:1fr 1fr;width:100%;align-items:start}.mc-redesign .faq-layout h2{font-size:25px}.mc-page-questions-frequentes .mc-page-hero .mc-hero-inner{padding-right:140px}.mc-page-questions-frequentes .mc-page-hero .mc-hero-inner::after{width:98px;height:98px;background-size:98px;border-radius:26px;right:4px;top:55px;box-shadow:8px 8px 0 -1px #fbf5e9,8px 8px 0 #e3c9ab}.mc-page-questions-frequentes .direct-answer{width:calc(100% + 140px)}.mc-page-questions-frequentes h1{font-size:40px}.mc-redesign .mc-contact-hero{grid-template-columns:1fr;padding-top:25px;gap:31px}.mc-contact-intro h1{font-size:50px;max-width:650px}.mc-contact-intro .page-intro{font-size:16px}.mc-contact-hero .mc-hero-actions{flex-direction:row;align-items:center;gap:20px}.mc-contact-location{padding-top:0}.mc-redesign .mc-contact-location h2{font-size:22px}.mc-redesign .map-card{display:grid;grid-template-columns:1.05fr 1fr}.mc-redesign .map-image{height:260px;object-fit:cover}.mc-redesign .map-figure{display:flex;flex-direction:column;justify-content:stretch;height:100%}.mc-redesign .map-figure picture{flex:1}.mc-redesign .map-figure img{height:100%;min-height:260px}.mc-redesign .map-figure figcaption{border-bottom:0;border-top:1px solid var(--mc-line);font-size:8px;flex-shrink:0}.mc-redesign .map-details{padding:22px;border-left:1px solid var(--mc-line)}.mc-redesign .map-details .map-links{gap:7px;margin-top:13px}.mc-redesign .map-links a{min-height:34px;padding:7px 10px}.mc-contact-form-section{padding:38px 0}.mc-redesign .contact-grid{grid-template-columns:1fr;gap:30px}.mc-redesign .contact-grid>div:first-child>h2{font-size:33px;max-width:none}.mc-redesign .contact-grid>div:first-child>p{max-width:none;font-size:15px}.mc-redesign .contact-options{grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.mc-redesign .contact-options>div:last-child{grid-column:1/-1}.mc-redesign .form-card{padding:27px}.mc-redesign .form-two-columns{display:grid;gap:17px}.mc-redesign .form-two-columns>.form-field+.form-field{margin-top:0}.mc-redesign .form-field input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),.mc-redesign .form-field select,.mc-redesign .form-field textarea{font-size:16px;min-height:51px}.mc-redesign .form-field>label,.mc-redesign .form-field>legend{font-size:14px}.mc-redesign .form-choice>div>label{font-size:14px}.mc-redesign .form-consent>label{font-size:14px}.mc-redesign .help-text{font-size:13px}.mc-complaint-grid{grid-template-columns:1fr}.mc-redesign .mc-complaint-grid>.notice{padding:26px}.mc-complaint-grid .legal-data>div{display:grid;grid-template-columns:30% 1fr;gap:20px}.mc-complaint-grid .legal-data dd{margin-top:0}.mc-complaint-grid>.notice{margin-bottom:10px}.mc-complaint-grid .form-card{padding:26px}.mc-page-qualite--reclamation .mc-page-hero h1{font-size:42px}.mc-redesign .mc-reader-wide .mc-document>.mc-section:first-child{padding:23px}.mc-reader-wide .mc-document h2{font-size:26px}.mc-gallery-hero{grid-template-columns:1.6fr 1fr}.mc-gallery-hero .eyebrow{font-size:8px;letter-spacing:.1em}.mc-redesign .mc-gallery-hero h1{font-size:45px}.mc-gallery-hero>div>p:not(.eyebrow){font-size:14px;margin-top:21px}.mc-gallery-badges span{font-size:12px;padding:6px 9px}.mc-art-caption{display:none}.mc-survey-callout{align-items:flex-start;flex-direction:column;gap:21px}.mc-gallery-section-title h2{font-size:23px}} @media(max-width:540px){.mc-container,.mc-redesign .container{width:calc(100% - 36px)}.mc-redesign{font-size:15px}.mc-preview-bar{padding-inline:18px;height:30px;font-size:12px;gap:8px}.mc-preview-extra{display:none}.mc-redesign .mc-preview-bar a{font-size:12px}.mc-redesign .site-header{height:71px}.mc-redesign .brand-logo{width:127px}.mc-redesign .header-inner{gap:12px}.mc-redesign .site-nav{padding-inline:18px}.mc-page-hero{padding-top:20px;padding-bottom:30px}.mc-redesign .breadcrumbs{font-size:12px;margin-bottom:24px}.mc-redesign .breadcrumbs ol{gap:7px}.mc-redesign .breadcrumbs li{gap:7px}.mc-redesign .eyebrow{font-size:8px;letter-spacing:.14em;gap:8px;margin-bottom:14px}.mc-redesign .eyebrow::before{width:16px}.mc-redesign h1,.mc-kind-legal .mc-page-hero h1{font-size:35px;line-height:1.15;letter-spacing:-.045em;overflow-wrap:break-word}.mc-page-hero .page-intro,.mc-page-hero .direct-answer,.mc-kind-legal .mc-page-hero .page-intro{font-size:14px;line-height:1.9;margin-top:21px}.mc-page-hero .page-intro~p:not(.eyebrow){font-size:13px;line-height:1.9;margin-top:17px}.mc-page-hero nav:not(.breadcrumbs) ul,.mc-page-hero .practical-links{gap:7px;margin-top:20px}.mc-page-hero nav:not(.breadcrumbs) a,.mc-page-hero .practical-links a{font-size:12px;padding:9px 11px;min-height:42px}.mc-page-hero .mc-hero-inner>.button{margin-top:21px}.mc-redesign .button{font-size:14px;padding:13px 18px;min-height:48px}.mc-reader{padding-top:24px;padding-bottom:40px}.mc-toc{margin-bottom:27px}.mc-toc summary{font-size:14px;min-height:54px;padding:14px 16px}.mc-redesign .mc-toc a{font-size:14px}.mc-document{font-size:14px;line-height:1.95}.mc-document h2{font-size:24px;line-height:1.35;margin-bottom:17px}.mc-document h3{font-size:17px;line-height:1.4;margin-top:24px}.mc-document .mc-section{padding-bottom:29px;margin-bottom:29px}.mc-document .source-note{font-size:12px;line-height:1.8}.mc-document ul,.mc-document ol{padding-left:20px}.mc-document li{margin:10px 0}.mc-document li a{overflow-wrap:anywhere}.mc-redesign .legal-data{margin:20px 0}.mc-redesign .legal-data>div{display:block;padding:14px 0}.mc-redesign .legal-data dt{font-size:14px;margin-bottom:5px}.mc-redesign .legal-data dd{font-size:14px;line-height:1.85}.mc-redesign .notice-warning{padding:17px 18px;margin-top:21px}.mc-redesign .notice-warning strong{font-size:14px}.mc-redesign .notice-warning p{font-size:14px}.mc-table-scroll{border-radius:10px;margin-top:18px}.mc-redesign .mc-table{font-size:14px;line-height:1.75}.mc-table th,.mc-table td{padding:12px 11px}.mc-table thead th{font-size:12px;padding:10px 11px}.mc-table caption{font-size:12px;padding:12px 11px}.mc-table[data-columns="2"] th:first-child{min-width:148px}.mc-table[data-columns="2"] td:last-child{min-width:77px}.mc-redesign .mc-table-hint{font-size:12px;line-height:1.75}.mc-redesign details.other-prices{margin:22px 0}.mc-redesign details.other-prices>summary{padding:15px;font-size:14px;line-height:1.8;gap:10px}.mc-redesign details.other-prices>p{padding:0 15px;font-size:14px}.mc-redesign details.other-prices .mc-table-scroll{width:calc(100% - 30px);margin:15px}.mc-redesign details.other-prices>.mc-table-hint{padding-inline:15px}.mc-tariffs{grid-template-columns:1fr;gap:16px}.mc-tariffs>.tariff-group{padding:23px 18px;border-radius:13px}.mc-tariffs h2{font-size:21px}.mc-tariffs>.tariff-group:nth-of-type(4),.mc-tariffs>.tariff-group:nth-of-type(5){display:block}.mc-tariffs .mc-table{font-size:14px}.mc-tariffs .mc-table th,.mc-tariffs .mc-table td{padding:11px}.mc-tariffs .mc-table tbody td:last-child{font-size:16px}.mc-tariffs .tariff-group>p{font-size:14px;line-height:1.95}.mc-tariffs>.mc-section:not(.tariff-group){padding:22px 0}.mc-funding>.mc-section{padding:23px 19px;margin-bottom:19px;border-radius:13px}.mc-funding h2{font-size:22px}.mc-funding h3{font-size:16px}.mc-funding p,.mc-funding li{font-size:14px}.mc-funding>.mc-section:last-child{padding-bottom:23px}.mc-redesign .mc-reader-wide .mc-document>.mc-section:first-child{padding:22px 17px}.mc-reader-wide .mc-document h2{font-size:23px}.mc-reader-wide .mc-document>.mc-section:first-child>p{font-size:14px}.mc-reader-wide .mc-table[data-columns="7"]{font-size:14px}.mc-reader-wide .mc-table[data-columns="7"] th{padding:12px 15px}.mc-page-questions-frequentes .mc-page-hero .mc-hero-inner{padding-right:0}.mc-page-questions-frequentes .mc-page-hero .mc-hero-inner::after{display:none}.mc-page-questions-frequentes .direct-answer{width:auto}.mc-page-questions-frequentes h1{font-size:37px;max-width:370px}.mc-redesign .faq-layout{padding-top:29px;padding-bottom:39px;gap:26px}.mc-redesign .faq-layout h2{font-size:24px}.mc-faq-tools>label{font-size:13px}.mc-redesign #mc-faq-search{font-size:16px;min-height:53px;padding:13px 14px 13px 43px}.mc-redesign #mc-faq-search::placeholder{font-size:14px}.mc-search-wrap::before{left:17px;top:17px}.mc-search-wrap::after{left:30px;top:31px}.mc-faq-filters{gap:7px;margin-top:12px}.mc-faq-filters button{font-size:12px;min-height:40px;padding:9px 11px}.mc-redesign #mc-faq-count{font-size:12px;margin-top:14px}.mc-redesign .mc-faq-item>summary{padding:17px 16px;gap:12px}.mc-redesign .mc-faq-item>summary h3{font-size:14px;line-height:1.8}.mc-faq-item>summary::after{width:23px;height:23px;font-size:18px}.mc-faq-answer{padding:0 17px 19px}.mc-faq-answer p{font-size:14px;line-height:1.95}.mc-redesign .faq-layout>.formation-aside{grid-template-columns:1fr;gap:14px}.mc-redesign .aside-card{padding:21px}.mc-redesign .aside-card p{font-size:14px}.mc-redesign .aside-card a{font-size:14px;min-height:30px;display:inline-flex;align-items:center}.mc-contact-hero{padding-top:21px;padding-bottom:30px;gap:29px}.mc-contact-intro h1{font-size:42px;max-width:420px}.mc-contact-intro .page-intro{font-size:14px;line-height:1.95;margin-top:22px}.mc-redesign .mc-contact-intro .breadcrumbs{margin-bottom:25px}.mc-contact-hero .mc-hero-actions{gap:14px;margin-top:22px}.mc-redesign .mc-phone-link{font-size:14px;min-height:44px}.mc-redesign .mc-contact-location h2{font-size:21px;margin-bottom:14px}.mc-redesign .map-card{display:block;border-radius:14px}.mc-redesign .map-figure img{height:215px;min-height:0;object-fit:cover}.mc-redesign .map-figure figcaption{font-size:8px;padding:8px 11px}.mc-redesign .map-details{padding:21px 20px;border-left:0;border-top:1px solid var(--mc-line)}.mc-redesign .map-details address{font-size:14px}.mc-redesign .map-details address strong{font-size:16px}.mc-redesign .map-details>p{font-size:14px}.mc-redesign .map-details .map-links{gap:9px}.mc-redesign .map-links a{min-height:42px;font-size:12px;padding:9px 10px}.mc-redesign .map-details .map-note{font-size:12px}.mc-contact-form-section{padding:30px 0 38px}.mc-redesign .contact-grid{gap:25px}.mc-redesign .contact-grid>div:first-child>h2{font-size:30px;margin-bottom:17px}.mc-redesign .contact-grid>div:first-child>p{font-size:14px;line-height:1.95}.mc-redesign .contact-options{grid-template-columns:1fr;gap:10px;margin-top:21px}.mc-redesign .contact-options>div:last-child{grid-column:auto}.mc-redesign .contact-options>div{padding:18px 19px}.mc-redesign .contact-options h3{font-size:14px}.mc-redesign .contact-options p,.mc-redesign .contact-options address{font-size:14px}.mc-redesign .contact-options>div>a{font-size:14px}.mc-redesign .form-card{padding:22px 18px;border-radius:14px}.mc-redesign .contact-form{gap:21px}.mc-redesign .form-two-columns{display:block}.mc-redesign .form-two-columns>.form-field+.form-field{margin-top:21px}.mc-redesign .form-field>label,.mc-redesign .form-field>legend{font-size:14px;line-height:1.85}.mc-redesign label.required::after,.mc-redesign legend.required::after{font-size:12px}.mc-redesign .form-field input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),.mc-redesign .form-field select,.mc-redesign .form-field textarea{font-size:16px;min-height:52px;padding:13px 11px}.mc-redesign .form-field select{font-size:14px}.mc-redesign .form-choice>div>label{font-size:14px;line-height:1.85}.mc-redesign .form-choice>div:not(.help-text){padding:13px;gap:11px 8px}.mc-redesign .form-choice input[type="radio"]{width:18px;height:18px;margin-top:4px}.mc-redesign .help-text{font-size:12px;line-height:1.9}.mc-redesign .form-consent>label{font-size:13px;line-height:1.9}.mc-redesign .form-consent>p{font-size:12px;margin-top:5px}.mc-redesign .mc-preview-form-note{font-size:12px;padding:12px;line-height:1.8}.mc-redesign .form-submit{font-size:14px;min-height:49px}.mc-page-qualite--reclamation .mc-page-hero h1{font-size:35px;line-height:1.18}.mc-page-qualite--reclamation .mc-page-hero .page-intro{font-size:14px}.mc-page-qualite--reclamation .mc-hero-actions{gap:10px;margin-top:22px}.mc-redesign .mc-quiet-link{font-size:13px}.mc-process-section{padding:30px 0}.mc-process-section h2{font-size:25px;line-height:1.3}.mc-process-section ol{grid-template-columns:1fr;gap:10px;margin:23px 0}.mc-process-section ol li{padding:18px 19px 18px 62px;font-size:14px;min-height:100px}.mc-process-section ol li::before{position:absolute;left:19px;top:21px;width:27px;height:27px;margin:0}.mc-process-section ol li strong{font-size:17px;margin-bottom:5px}.mc-process-section .legal-data{grid-template-columns:1fr;gap:10px;margin-bottom:23px}.mc-process-section .legal-data>div{padding:17px 19px}.mc-process-section .legal-data dd{font-size:14px}.mc-process-section section>p{font-size:14px;line-height:1.95}.mc-complaint-section{padding:30px 0 39px}.mc-redesign .mc-complaint-grid>.notice{padding:23px 19px;border-radius:13px}.mc-complaint-grid>section>h2{font-size:25px}.mc-complaint-grid .legal-data>div{display:block;padding:14px 0}.mc-complaint-grid .legal-data dt{font-size:14px}.mc-complaint-grid .legal-data dd{font-size:14px;line-height:1.9;margin-top:6px}.mc-complaint-grid>section>p{font-size:14px}.mc-complaint-grid .form-card{padding:22px 18px}.mc-redesign .site-footer{padding-top:35px}.mc-redesign .footer-grid{grid-template-columns:1fr;gap:25px;padding-bottom:24px}.mc-redesign .footer-brand{margin-top:-8px;margin-bottom:18px}.mc-redesign .footer-brand .brand-logo{width:144px}.mc-redesign .footer-grid>div>p{font-size:13px;max-width:340px;margin-top:10px}.mc-redesign .footer-grid h2{font-size:14px;margin-bottom:15px}.mc-redesign .footer-grid>div:nth-child(2){border-top:1px solid #d7cebf;padding-top:23px}.mc-redesign .footer-grid>div:last-child{grid-column:auto;padding-top:23px}.mc-redesign .footer-grid>div:last-child .footer-list{column-count:2;column-gap:18px}.mc-redesign .footer-list a{font-size:12px;line-height:1.75;min-height:40px}.mc-redesign .footer-list li{margin-bottom:3px;font-size:13px}.mc-redesign .footer-grid>div:nth-child(2) a[href^="tel:"]{font-size:17px;min-height:39px}.mc-redesign .footer-grid>div:nth-child(2) a[href^="mailto:"]{font-size:14px;min-height:36px}.mc-redesign .footer-bottom{padding:20px 0 25px;gap:10px}.mc-redesign .footer-bottom p{font-size:12px;line-height:1.9}.mc-gallery-hero{display:block;padding-top:35px;padding-bottom:35px}.mc-redesign .mc-gallery-hero h1{font-size:48px;line-height:1.06;max-width:390px}.mc-gallery-hero .eyebrow{font-size:8px;letter-spacing:.12em}.mc-gallery-hero>div>p:not(.eyebrow){font-size:14px;line-height:1.9;margin-top:22px;max-width:none}.mc-gallery-badges{gap:7px;margin-top:21px}.mc-gallery-badges span{font-size:12px;padding:6px 10px}.mc-gallery-art{display:none}.mc-gallery-section{padding-bottom:33px}.mc-gallery-section-title{grid-template-columns:29px 1fr;gap:0 10px;padding-bottom:17px;margin-bottom:18px}.mc-gallery-section-title>span{width:28px;height:28px;font-size:12px}.mc-gallery-section-title h2{font-size:21px;line-height:1.35}.mc-gallery-section-title p{font-size:12px;line-height:1.8;margin-top:5px}.mc-gallery-grid{gap:11px}.mc-redesign .mc-page-tile{padding:18px 15px;min-height:185px;gap:20px;border-radius:12px}.mc-tile-icon{width:37px;height:37px;border-radius:10px}.mc-tile-icon svg{width:20px;height:20px}.mc-page-tile .mc-tile-arrow{top:20px;right:13px;width:15px}.mc-redesign .mc-page-tile h3{font-size:14px;line-height:1.5}.mc-page-tile p{font-size:12px;line-height:1.75;margin-top:7px}.mc-gallery .mc-legal-grid{grid-template-columns:1fr;gap:10px}.mc-gallery .mc-legal-grid .mc-page-tile{min-height:100px;padding:20px;gap:15px;padding-right:42px}.mc-gallery .mc-legal-grid .mc-page-tile h3{font-size:14px;max-width:none}.mc-gallery .mc-legal-grid .mc-page-tile p{font-size:12px}.mc-survey-callout{padding-top:25px;padding-bottom:35px;gap:20px}.mc-survey-callout h2{font-size:24px;line-height:1.3}.mc-survey-callout p{font-size:14px;line-height:1.9}.mc-survey-callout .button{width:100%;justify-content:space-between;font-size:14px}} @media(max-width:359px){.mc-container,.mc-redesign .container{width:calc(100% - 28px)}.mc-redesign h1,.mc-kind-legal .mc-page-hero h1{font-size:32px}.mc-redesign .mc-gallery-hero h1{font-size:41px}.mc-contact-intro h1{font-size:36px}.mc-page-questions-frequentes h1{font-size:34px}.mc-page-qualite--reclamation .mc-page-hero h1{font-size:32px}.mc-redesign .form-card,.mc-complaint-grid .form-card{padding:20px 15px}.mc-redesign .form-field>label,.mc-redesign .form-field>legend{font-size:13px}.mc-faq-filters button{font-size:12px;padding-inline:9px}.mc-redesign .mc-page-tile{padding:17px 13px}.mc-redesign .mc-page-tile h3{font-size:14px}.mc-redesign .mc-page-tile p{font-size:12px}.mc-gallery-badges{gap:5px}.mc-gallery-badges span{font-size:8px}.mc-tariffs>.tariff-group{padding:21px 15px}.mc-funding>.mc-section{padding:21px 16px}.mc-redesign .footer-grid>div:last-child .footer-list{column-gap:12px}.mc-redesign .footer-list a{font-size:12px}} @media(prefers-reduced-motion:reduce){.mc-redesign *,.mc-redesign *::before,.mc-redesign *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.mc-redesign .mc-page-tile:hover{transform:none}} /* Confort de lecture et cibles tactiles sur les petits écrans. */ @media(max-width:540px){.mc-document{font-size:16px;line-height:1.85}.mc-funding p,.mc-funding li{font-size:15px}.mc-redesign .legal-data dd{font-size:14px}.mc-faq-answer p{font-size:14px}.mc-redesign .mc-faq-item>summary h3{font-size:14px}.mc-redesign .breadcrumbs a{min-height:44px}.mc-faq-filters button{min-height:44px}.mc-redesign .footer-list a{min-height:44px;font-size:13px}.mc-redesign .map-links a{min-height:44px}.mc-table a{min-height:44px;display:inline-flex;align-items:center}.mc-redesign .mc-toc a{min-height:44px}} html:has(.mc-redesign){scroll-padding-top:0} .mc-tariffs>*{min-width:0;max-width:100%} .mc-kind-legal .mc-document{max-width:none;margin-inline:0} .mc-redesign .other-prices>.compact-table{padding:0 20px 22px} .mc-redesign .other-prices>.compact-table>.mc-table-scroll{width:100%;margin:18px 0 0} @media(max-width:540px){.mc-redesign .other-prices>.compact-table{padding:0 15px 18px}.mc-redesign .other-prices>.compact-table>p,.mc-redesign .other-prices>.compact-table>ul{font-size:14px}.mc-redesign .other-prices>.compact-table>.mc-table-scroll{width:100%;margin:16px 0 0}} @media print{.mc-redesign{background:white!important;color:black!important;font-size:10pt;line-height:1.6}.mc-preview-bar,.mc-redesign .site-header,.mc-redesign .site-footer,.mc-redesign .mc-skip-link,.mc-toc,.mc-faq-tools,.mc-hero-actions,.mc-preview-form-note,.mc-form-errors,.mc-form-success,.mc-table-hint,.mc-gallery-art{display:none!important}.mc-redesign .mc-container,.mc-redesign .container{width:100%!important;max-width:none!important}.mc-page-hero{padding:0 0 8mm!important;background:none!important;border-bottom:1px solid #aaa}.mc-page-hero::after,.mc-page-hero .mc-hero-inner::after{display:none!important}.mc-redesign .mc-hero-inner{padding:0!important}.mc-redesign h1,.mc-kind-legal .mc-page-hero h1{font-size:24pt!important}.mc-redesign h2{font-size:15pt!important;break-after:avoid}.mc-redesign h3{font-size:12pt!important;break-after:avoid}.mc-redesign p,.mc-document p,.mc-redesign li,.mc-redesign .legal-data dd{font-size:10pt!important;color:black!important}.mc-document,.mc-reader,.mc-tariffs,.mc-contact-hero,.mc-contact-grid,.mc-complaint-grid,.mc-process-section ol,.mc-redesign .faq-layout{display:block!important;max-width:none!important;padding:6mm 0!important}.mc-document .mc-section,.mc-funding>.mc-section,.mc-tariffs>.tariff-group{border:0!important;border-bottom:1px solid #bbb!important;border-radius:0!important;padding:5mm 0!important;margin:0 0 5mm!important;background:none!important;box-shadow:none!important;display:block!important}.mc-tariffs>.tariff-group::before{display:none}.mc-table-scroll{overflow:visible!important;border:1px solid #aaa!important;box-shadow:none!important;break-inside:auto}.mc-redesign .mc-table{min-width:0!important;font-size:8pt!important}.mc-table th,.mc-table td{padding:3mm!important;min-width:0!important}.mc-table thead{display:table-header-group}.mc-table tr{break-inside:avoid}.mc-table[data-columns="7"] tbody td:nth-child(2){font-size:13pt!important}.mc-redesign .mc-faq-item{break-inside:avoid;border-radius:0;background:none!important;border-bottom:1px solid #aaa}.mc-redesign .mc-faq-item>summary{padding:4mm 0!important;background:none!important}.mc-redesign .mc-faq-answer{display:block!important;padding:0 0 4mm!important;background:none!important}.mc-redesign details::details-content{display:block!important;content-visibility:visible!important}.mc-redesign details:not([open])>*:not(summary){display:block!important}.mc-redesign .mc-faq-item>summary::after{display:none}.mc-redesign .mc-table-hint{display:none!important}.mc-redesign .form-card{box-shadow:none!important;border:1px solid #aaa!important}.mc-redesign .button{background:none!important;color:black!important;border:1px solid #777!important}.mc-gallery-grid{grid-template-columns:repeat(2,1fr)!important}.mc-gallery .mc-page-tile{break-inside:avoid;transform:none!important;box-shadow:none!important}.mc-redesign .breadcrumbs{margin-bottom:5mm}.mc-redesign .legal-data>div{display:grid!important;grid-template-columns:30% 1fr!important;break-inside:avoid}.mc-redesign .aside-card{background:none!important;border:1px solid #aaa!important}.mc-process-section ol li{break-inside:avoid}.mc-redesign a{color:inherit!important}body{background:white!important}@page{size:A4;margin:15mm}} 
/* MC — pricing cards, illustrated headings and fluid editorial tables.    All wording and numerical data remain owned by the source documents. */  .mc-redesign .mc-heading-with-icon {   display:flex;   align-items:center;   gap:17px; } .mc-redesign .mc-heading-label { min-width:0; flex:1; } .mc-redesign .mc-heading-icon {   --mc-icon-accent:#f4bd87;   display:inline-grid;   place-items:center;   width:55px;   height:55px;   flex:0 0 55px;   border:1px solid #efcfb9;   border-radius:17px;   background:linear-gradient(145deg,#fff5e9,#f9e3d0);   color:#b14d21;   box-shadow:inset 0 1px 0 #ffffffd9,0 3px 8px #93502008; } .mc-redesign .mc-heading-icon svg { width:38px; height:38px; display:block; } .mc-redesign .mc-icon-amber {   --mc-icon-accent:#f4ca72;   color:#a25a13;   border-color:#ecd6a9;   background:linear-gradient(145deg,#fff9e9,#fbecc9); } .mc-redesign .mc-icon-terracotta {   --mc-icon-accent:#efa58b;   color:#a74027;   border-color:#ebc8b8;   background:linear-gradient(145deg,#fff2e9,#f6ddd1); } .mc-redesign h3.mc-heading-with-icon { gap:13px; } .mc-redesign h3 .mc-heading-icon { width:43px; height:43px; flex-basis:43px; border-radius:13px; } .mc-redesign h3 .mc-heading-icon svg { width:30px; height:30px; } .mc-redesign .mc-tariffs h2.mc-heading-with-icon { gap:13px; } .mc-redesign .mc-tariffs h2 .mc-heading-icon { width:49px; height:49px; flex-basis:49px; border-radius:15px; } .mc-redesign .mc-tariffs h2 .mc-heading-icon svg { width:35px; height:35px; } .mc-redesign .mc-reading-tools button { display:flex; align-items:center; gap:9px; } .mc-redesign .mc-reading-tools button::before { display:none; } .mc-redesign .mc-reading-tools .mc-tool-icon { width:26px; height:26px; flex-basis:26px; border:0; border-radius:0; background:none; box-shadow:none; } .mc-redesign .mc-reading-tools .mc-tool-icon svg { width:24px; height:24px; }  /* Paragraphs occupy their actual column; no additional artificial measure. */ .mc-redesign .mc-main .page-intro, .mc-redesign .mc-main .direct-answer, .mc-redesign .mc-hero-inner>p, .mc-redesign .mc-reader-wide .mc-document>.mc-section, .mc-redesign .mc-reader-wide .mc-document>.mc-section>p, .mc-redesign.mc-kind-legal .mc-document {   max-width:none; }  /* Long descriptions are not prices: they wrap and read from the left. */ .mc-redesign .mc-table[data-mc-table-kind="content"] {   table-layout:fixed;   width:100%;   min-width:0; } .mc-redesign .mc-table[data-mc-table-kind="content"] th, .mc-redesign .mc-table[data-mc-table-kind="content"] td {   min-width:0;   white-space:normal;   overflow-wrap:anywhere;   text-align:left; } .mc-redesign .mc-table[data-mc-table-kind="content"][data-columns="2"] th:first-child { width:29%; } .mc-redesign .mc-table[data-mc-table-kind="content"][data-columns="2"] tbody td:last-child {   color:var(--mc-ink);   font-weight:500;   line-height:1.85; } .mc-redesign .mc-table[data-columns="7"] th, .mc-redesign .mc-table[data-columns="7"] td { padding:15px 12px; } .mc-redesign .mc-table[data-columns="7"] th:first-child { width:17%; } .mc-redesign .mc-table[data-columns="7"] th:nth-child(6) { width:19%; }  /* The exact seven original rows become a balanced six-card + one-row board. */ .mc-redesign .mc-package-board {   border:0;   border-radius:0;   overflow:visible;   background:none;   margin:0 0 44px;   box-shadow:none; } .mc-redesign .mc-package-table {   display:block;   position:relative;   width:100%;   border:0;   border-collapse:separate; } .mc-redesign .mc-package-table caption {   display:block;   border:0;   background:none;   padding:0 0 20px;   font-size:15px;   line-height:1.65;   color:#544a3d;   font-weight:650; } .mc-redesign .mc-package-table thead {   position:absolute;   width:1px;   height:1px;   margin:-1px;   padding:0;   overflow:hidden;   clip-path:inset(50%);   white-space:nowrap; } .mc-redesign .mc-package-table tbody {   display:grid;   grid-template-columns:repeat(3,minmax(0,1fr));   gap:17px; } .mc-redesign .mc-package-table .mc-package-card {   --mc-package-tint:#fff7ed;   display:block;   position:relative;   min-width:0;   border:1px solid #e6d8c8;   border-radius:20px;   background:linear-gradient(145deg,#fffefa 25%,var(--mc-package-tint));   padding:23px 21px 19px;   box-shadow:0 3px 0 #a5703605,0 8px 22px #5b3b1d04;   transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; } .mc-redesign .mc-package-table .mc-package-card[data-package-tone="amber"] { --mc-package-tint:#fff8e5; } .mc-redesign .mc-package-table .mc-package-card[data-package-tone="terracotta"] { --mc-package-tint:#fff0e9; } .mc-redesign .mc-package-table .mc-package-card:hover, .mc-redesign .mc-package-table .mc-package-card:focus-within {   transform:translateY(-3px);   border-color:#cf8a5e;   box-shadow:0 10px 25px #81411d0c; } .mc-redesign .mc-package-table .mc-package-card:has(a:focus-visible) { outline:3px solid #a43b22; outline-offset:3px; } .mc-redesign .mc-package-table .mc-package-card>th {   display:flex;   align-items:center;   gap:12px;   padding:0;   border:0;   text-align:left;   white-space:normal;   font-weight:700; } .mc-redesign .mc-package-icon { width:45px; height:45px; flex-basis:45px; border-radius:14px; } .mc-redesign .mc-package-icon svg { width:31px; height:31px; } .mc-redesign .mc-package-name { display:block; min-width:0; flex:1; } .mc-redesign .mc-package-eyebrow { display:block; font-size:12px; letter-spacing:.09em; text-transform:uppercase; color:#77624e; font-weight:650; line-height:1.4; margin-bottom:2px; } .mc-redesign .mc-package-name a {   display:inline;   min-height:0;   color:#2a2924;   font-size:29px;   line-height:1.3;   letter-spacing:-.055em;   font-weight:800;   text-decoration:none; } .mc-redesign .mc-package-name a::after { content:""; position:absolute; inset:0; border-radius:20px; } .mc-redesign .mc-package-name a:focus-visible { outline:none; } .mc-redesign .mc-package-arrow { display:block; width:18px; height:18px; color:#ae7854; flex:0 0 18px; align-self:flex-start; margin-top:2px; } .mc-redesign .mc-package-arrow svg { width:100%; height:100%; } .mc-redesign .mc-package-table .mc-package-card>td {   display:flex;   align-items:baseline;   justify-content:space-between;   gap:7px;   padding:17px 0 0;   margin-top:21px;   border:0;   border-top:1px solid #eadcc9;   text-align:left;   white-space:normal; } .mc-redesign .mc-package-price-label { font-size:12px; font-weight:600; color:#776957; line-height:1.4; } .mc-redesign .mc-package-price { color:#a43f23; font-size:27px; line-height:1.2; font-weight:800; letter-spacing:-.04em; white-space:nowrap; } .mc-redesign .mc-package-table .mc-package-retry {   grid-column:1/-1;   display:grid;   grid-template-columns:minmax(0,1fr) auto;   gap:24px;   align-items:center;   background:#f5ebdf;   border-color:#e6d5c2;   padding:22px; } .mc-redesign .mc-package-retry .mc-package-name a { font-size:16px; line-height:1.6; font-weight:700; letter-spacing:-.015em; } .mc-redesign .mc-package-retry .mc-package-eyebrow { display:none; } .mc-redesign .mc-package-retry .mc-package-arrow { align-self:center; } .mc-redesign .mc-package-table .mc-package-retry>td { flex-direction:column; align-items:flex-end; gap:5px; border:0; border-left:1px solid #dfc7b1; padding:0 0 0 24px; margin:0; } .mc-redesign .mc-package-retry .mc-package-price { font-size:29px; }  @media(min-width:761px) and (max-width:1100px) {   .mc-redesign .mc-package-table tbody { grid-template-columns:repeat(2,minmax(0,1fr)); } } @media(max-width:760px) {   .mc-redesign .mc-package-table tbody { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }   .mc-redesign .mc-package-table .mc-package-card { padding:20px 17px 18px; }   .mc-redesign .mc-package-table .mc-package-retry { grid-template-columns:minmax(0,1fr) auto; gap:15px; }   .mc-redesign .mc-package-table .mc-package-retry>td { padding-left:16px; }   .mc-redesign .mc-heading-with-icon { gap:13px; align-items:flex-start; }   .mc-redesign .mc-heading-icon { width:46px; height:46px; flex-basis:46px; border-radius:14px; }   .mc-redesign .mc-heading-icon svg { width:33px; height:33px; }   .mc-redesign .mc-heading-label { align-self:center; }    /* Content tables turn into complete records instead of sideways viewports. */   .mc-redesign .mc-table[data-mc-table-kind="content"],   .mc-redesign .mc-table[data-mc-table-kind="content"] caption,   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody { display:block; width:100%; }   .mc-redesign .mc-table[data-mc-table-kind="content"] thead { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); }   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody tr { display:block; border-bottom:1px solid #e5dccc; padding:18px; background:#fffefa; }   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody tr:last-child { border-bottom:0; }   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody tr:nth-child(even) { background:#faf5ec; }   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody th,   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody td { display:block; width:100%; padding:0; border:0; text-align:left; white-space:normal; }   .mc-redesign .mc-table[data-mc-table-kind="content"][data-columns="2"] tbody th:first-child { width:100%; font-size:14px; font-weight:800; margin-bottom:9px; }   .mc-redesign .mc-table[data-mc-table-kind="content"][data-columns="2"] tbody td:last-child { font-size:14px; line-height:1.85; }   .mc-redesign .mc-table[data-columns="7"] tbody tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }   .mc-redesign .mc-table[data-columns="7"] tbody th { grid-column:1/-1; font-size:18px; }   .mc-redesign .mc-table[data-columns="7"] tbody td { font-size:14px; line-height:1.75; }   .mc-redesign .mc-table[data-columns="7"] tbody td::before { content:attr(data-mc-column-label); display:block; font-size:12px; line-height:1.6; letter-spacing:.02em; font-weight:700; color:#746554; margin-bottom:6px; }   .mc-redesign .mc-table[data-columns="7"] tbody td:nth-child(2) { font-size:27px; } } @media(max-width:480px) {   .mc-redesign .mc-table[data-mc-table-kind="prices"]:not(.mc-package-table) { table-layout:fixed; min-width:0; width:100%; }   .mc-redesign .mc-table[data-mc-table-kind="prices"]:not(.mc-package-table) th:first-child { width:65%; }   .mc-redesign .mc-table[data-mc-table-kind="prices"]:not(.mc-package-table) th:last-child,   .mc-redesign .mc-table[data-mc-table-kind="prices"]:not(.mc-package-table) td:last-child { white-space:normal; overflow-wrap:anywhere; }   .mc-redesign .mc-package-table tbody { grid-template-columns:1fr; gap:12px; }   .mc-redesign .mc-package-table .mc-package-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; padding:19px 17px; border-radius:17px; }   .mc-redesign .mc-package-table .mc-package-card>td { flex-direction:column; align-items:flex-end; gap:6px; border:0; margin:0; padding:0; justify-content:center; }   .mc-redesign .mc-package-table .mc-package-card>th { gap:11px; }   .mc-redesign .mc-package-icon { width:39px; height:39px; flex-basis:39px; border-radius:12px; }   .mc-redesign .mc-package-icon svg { width:29px; height:29px; }   .mc-redesign .mc-package-name a { font-size:27px; }   .mc-redesign .mc-package-price { font-size:24px; }   .mc-redesign .mc-package-arrow { display:none; }   .mc-redesign .mc-package-table .mc-package-retry { grid-template-columns:1fr; padding:20px 18px; gap:17px; }   .mc-redesign .mc-package-retry .mc-package-name a { font-size:15px; }   .mc-redesign .mc-package-table .mc-package-retry>td { flex-direction:row; align-items:baseline; justify-content:space-between; padding-top:15px; border-top:1px solid #e0c9b0; }   .mc-redesign .mc-package-retry .mc-package-price { font-size:27px; }   .mc-redesign .mc-package-board { margin-bottom:32px; }   .mc-redesign .mc-tariffs h2 .mc-heading-icon { width:45px; height:45px; flex-basis:45px; }   .mc-redesign .mc-tariffs h2.mc-heading-with-icon { gap:12px; } } @media(prefers-reduced-motion:reduce) {   .mc-redesign .mc-package-table .mc-package-card { transition:none; }   .mc-redesign .mc-package-table .mc-package-card:hover { transform:none; } } @media print {   .mc-redesign .mc-heading-icon { width:30px!important; height:30px!important; flex-basis:30px!important; border-radius:8px!important; box-shadow:none; }   .mc-redesign .mc-heading-icon svg { width:25px!important; height:25px!important; }   .mc-redesign .mc-package-table { display:table!important; }   .mc-redesign .mc-package-table caption { display:table-caption!important; }   .mc-redesign .mc-package-table thead { display:table-header-group!important; position:static; clip-path:none; width:auto; height:auto; }   .mc-redesign .mc-package-table tbody { display:table-row-group!important; }   .mc-redesign .mc-package-table .mc-package-card { display:table-row!important; transform:none!important; box-shadow:none!important; }   .mc-redesign .mc-package-table .mc-package-card>th,   .mc-redesign .mc-package-table .mc-package-card>td { display:table-cell!important; padding:3mm!important; border-bottom:1px solid #aaa; }   .mc-redesign .mc-package-icon,.mc-redesign .mc-package-arrow,.mc-redesign .mc-package-eyebrow,.mc-redesign .mc-package-price-label { display:none!important; }   .mc-redesign .mc-package-name a,.mc-redesign .mc-package-price { font-size:11pt!important; }   .mc-redesign .mc-package-name a::after { display:none; }   .mc-redesign .mc-table[data-mc-table-kind="content"] { display:table!important; }   .mc-redesign .mc-table[data-mc-table-kind="content"] caption { display:table-caption!important; }   .mc-redesign .mc-table[data-mc-table-kind="content"] thead { display:table-header-group!important; position:static; clip-path:none; width:auto; height:auto; }   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody { display:table-row-group!important; }   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody tr { display:table-row!important; }   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody th,   .mc-redesign .mc-table[data-mc-table-kind="content"] tbody td { display:table-cell!important; width:auto; }   .mc-redesign .mc-table[data-columns="7"] tbody td::before { display:none!important; } } /* Contact and enquiry: two destinations, one shared visual language. */ .mc-redesign .site-nav>.button[aria-current="page"]{box-shadow:0 0 0 3px #f0d9c9;background:#963d26} .mc-redesign .site-nav>.button[aria-current="page"]::after{display:none} .mc-redesign .mc-contact-channel-section{padding:45px 0 60px;border-top:1px solid var(--mc-line);background:#f7f2e9} .mc-redesign .mc-contact-channel-section h2{font-size:29px;margin:0 0 25px;line-height:1.3} .mc-redesign .mc-contact-channel-section .contact-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0} .mc-redesign .mc-contact-channel-section .contact-options>div{padding:25px;border-radius:16px;min-width:0;grid-column:auto;box-shadow:0 5px 16px #3c271008} .mc-redesign .mc-contact-channel-section .contact-options h3{font-size:18px;gap:12px;margin-bottom:16px} .mc-redesign .mc-contact-channel-section .contact-options h3 .mc-heading-icon{width:40px;height:40px;flex-basis:40px;border-radius:12px} .mc-redesign .mc-contact-channel-section .contact-options h3 .mc-heading-icon svg{width:27px;height:27px} .mc-redesign .mc-contact-channel-section .contact-options p,.mc-redesign .mc-contact-channel-section .contact-options address{font-size:14px;line-height:1.85} .mc-redesign .contact-options a[href^="tel:"],.mc-redesign .contact-options>div>a[href^="mailto:"]{min-height:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere;max-width:100%} .mc-redesign .mc-enquiry-hero{padding-bottom:39px} .mc-redesign .mc-enquiry-hero h1{max-width:none;font-size:clamp(36px,4.3vw,57px);line-height:1.15} .mc-redesign .mc-enquiry-body{padding:48px 0 70px;background:linear-gradient(135deg,#fcfaf5,#f5f0e6)} .mc-redesign .mc-enquiry-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start} .mc-redesign .mc-enquiry-intro{position:sticky;top:145px;min-width:0;padding-top:8px} .mc-redesign .mc-enquiry-intro h2{font-size:32px;line-height:1.25;margin:0 0 23px;gap:16px} .mc-redesign .mc-enquiry-intro>p{font-size:16px;line-height:1.95;color:#272821;max-width:none} .mc-redesign .mc-enquiry-contact-link{margin-top:30px;padding:23px 25px;background:#fff9ef;border:1px solid #e9d5b8;border-radius:15px} .mc-redesign .mc-enquiry-contact-link .eyebrow{display:block;font-size:12px;margin:0 0 10px;color:#9a4f27} .mc-redesign .mc-enquiry-contact-link a{font-size:14px;line-height:1.8;font-weight:700;display:flex;gap:16px;align-items:center;justify-content:space-between;min-height:44px;color:#653b27;text-underline-offset:4px} .mc-redesign .mc-enquiry-contact-link a>span{flex:none;font-size:23px;text-decoration:none} .mc-redesign .mc-enquiry-layout>.form-card{padding:32px;border-radius:20px;box-shadow:0 15px 40px #3d2b0c0c} @media(max-width:900px){.mc-redesign .mc-enquiry-layout{grid-template-columns:minmax(0,1fr);gap:27px}.mc-redesign .mc-enquiry-intro{position:static;padding:0}.mc-redesign .mc-enquiry-contact-link{margin-top:20px}.mc-redesign .mc-contact-channel-section .contact-options{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-redesign .mc-contact-channel-section .contact-options>div:last-child{grid-column:1/-1}} @media(max-width:600px){.mc-redesign .mc-contact-channel-section{padding:30px 0 38px}.mc-redesign .mc-contact-channel-section h2{font-size:24px;margin-bottom:20px}.mc-redesign .mc-contact-channel-section .contact-options{grid-template-columns:minmax(0,1fr);gap:14px}.mc-redesign .mc-contact-channel-section .contact-options>div{padding:22px}.mc-redesign .mc-contact-channel-section .contact-options h3{font-size:17px}.mc-redesign .mc-enquiry-hero{padding-bottom:29px}.mc-redesign .mc-enquiry-hero h1{font-size:36px}.mc-redesign .mc-enquiry-body{padding:29px 0 40px}.mc-redesign .mc-enquiry-intro h2{font-size:27px;margin-bottom:17px}.mc-redesign .mc-enquiry-intro>p{font-size:14px;line-height:1.95}.mc-redesign .mc-enquiry-contact-link{padding:18px 20px}.mc-redesign .mc-enquiry-contact-link a{font-size:14px}.mc-redesign .mc-enquiry-layout>.form-card{padding:22px 18px;border-radius:15px}} @media(max-width:359px){.mc-redesign .mc-enquiry-hero h1{font-size:31px}.mc-redesign .mc-enquiry-layout>.form-card{padding:20px 15px}.mc-redesign .mc-contact-channel-section .contact-options>div{padding:20px}.mc-redesign .mc-enquiry-intro h2{font-size:24px}} @media print{.mc-redesign .mc-enquiry-layout{display:block}.mc-redesign .mc-enquiry-intro{position:static}.mc-redesign .mc-enquiry-body{background:none;padding:6mm 0}.mc-redesign .mc-enquiry-contact-link{display:none}.mc-redesign .mc-contact-channel-section .contact-options{grid-template-columns:repeat(3,minmax(0,1fr))}.mc-redesign .mc-enquiry-layout>.form-card{box-shadow:none}} 
/* Montlhéry Conduite — accueil.  * Feuille volontairement limitée à .mc-home. Le HTML éditorial conserve son  * ordre, ses textes, ses légendes et les conditions de chaque offre.  */  .mc-redesign.mc-home {   --mc-home-paper: #f8f4ed;   --mc-home-soft: #f1ece2;   --mc-home-peach: #f5e7d9;   --mc-home-line: #e2d9cb;   --mc-home-shadow: 0 15px 45px rgb(64 45 23 / 6%);   background: #fffefa;   color: #242420;   font-size: 16px;   line-height: 1.75; }  .mc-home main { min-width: 0; } .mc-home main *, .mc-home main *::before, .mc-home main *::after { box-sizing: border-box; } .mc-home .container { width: calc(100% - 88px); max-width: 1180px; margin-inline: auto; } .mc-home main p, .mc-home main li, .mc-home main dd, .mc-home main address { color: var(--mc-ink); } .mc-home main p { max-width: none; margin: 0; } .mc-home main p + p { margin-top: 16px; } .mc-home main figure, .mc-home main dl, .mc-home main dd { margin: 0; } .mc-home main ul, .mc-home main ol { margin: 20px 0; padding-left: 22px; } .mc-home main li { margin: 9px 0; padding-left: 3px; } .mc-home main li::marker { color: var(--mc-orange); } .mc-home main a { overflow-wrap: anywhere; } .mc-home main h1, .mc-home main h2, .mc-home main h3, .mc-home main h4 { text-wrap: balance; } .mc-home main h1 { font-size: clamp(38px, 4.65vw, 64px); line-height: 1.08; letter-spacing: -.058em; font-weight: 780; margin: 0; max-width: none; } .mc-home .mc-home-title-accent { font-family: 'DM Serif Display', Georgia, serif; font-style: italic; font-weight: 400; color: var(--mc-orange, #b43d21); letter-spacing: -.035em; font-size: 1.12em; } .mc-home main h2 { font-size: clamp(31px, 3.2vw, 44px); line-height: 1.18; letter-spacing: -.045em; margin: 0 0 23px; font-weight: 760; } .mc-home main h3 { font-size: 23px; line-height: 1.3; letter-spacing: -.035em; margin: 0 0 15px; font-weight: 750; } .mc-home main h4 { font-weight: 750; line-height: 1.4; letter-spacing: -.02em; } .mc-home .section { padding: 88px 0; position: relative; } .mc-home .section-heading { display: block; min-width: 0; margin-bottom: 36px; } .mc-home .section-heading > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; } .mc-home .eyebrow { margin: 0 0 19px; color: var(--mc-orange); font-size: 13px; font-weight: 800; line-height: 1.6; letter-spacing: .16em; } .mc-home .card-kicker { margin: 0 0 16px; color: #9b4327; font-size: 13px; font-weight: 800; letter-spacing: .12em; line-height: 1.6; text-transform: uppercase; } .mc-home .source-note { font-size: 14px; line-height: 1.75; color: #61594e; } .mc-home .button-row, .mc-home .price-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin-top: 27px; } .mc-home .button { min-height: 50px; padding: 13px 21px; border-radius: 12px; font-size: 14px; line-height: 1.6; text-align: center; white-space: normal; } .mc-home .button-secondary { background: transparent; color: #713e2a; border-color: #c8ae98; } .mc-home .button-secondary:hover { background: #efe3d6; border-color: #b78360; color: #713e2a; box-shadow: none; } .mc-home .text-link { display: inline-flex; align-items: center; min-height: 44px; gap: 10px; font-size: 14px; font-weight: 750; line-height: 1.6; } .mc-home .text-link::after { content: "\2197"; text-decoration: none; font-size: 17px; flex-shrink: 0; }  /* The existing decorative SVG system is sized for home page compositions. */ .mc-home h2.mc-heading-with-icon { align-items: flex-start; gap: 17px; } .mc-home h2 .mc-heading-icon { width: 57px; height: 57px; flex: 0 0 57px; border-radius: 17px; margin-top: 1px; } .mc-home h2 .mc-heading-icon svg { width: 39px; height: 39px; } .mc-home h3.mc-heading-with-icon { align-items: flex-start; gap: 13px; } .mc-home h3 .mc-heading-icon { width: 43px; height: 43px; flex: 0 0 43px; border-radius: 13px; margin-top: 0; } .mc-home h3 .mc-heading-icon svg { width: 30px; height: 30px; } .mc-home .mc-heading-label { min-width: 0; max-width: 100%; overflow-wrap: break-word; }  /* Hero: an editorial left column and a generous, self-contained visual. */ .mc-home .hero { position: relative; isolation: isolate; padding: 84px 0 0; background: linear-gradient(116deg, #f5eee3 0%, #fcf9f2 54%, #f5e9da 100%); border-bottom: 1px solid #e7ddce; } .mc-home .hero-road { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; } .mc-home .hero-road .road-line { position: absolute; display: block; border: 1px solid #c17c4330; width: 700px; height: 700px; border-radius: 48%; right: -260px; top: 50px; transform: rotate(-24deg); } .mc-home .hero-road .road-line-two { right: -320px; top: 100px; border-color: #c17c4323; } .mc-home .hero-road .road-center { position: absolute; height: 13px; width: 13px; border: 3px solid #d7a78070; border-radius: 50%; left: 43%; top: 23px; } .mc-home .hero-grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr); align-items: start; gap: 58px; } .mc-home .hero-copy { min-width: 0; padding: 0 0 28px; } .mc-home .hero-copy h1 { text-box-trim: trim-start; text-box-edge: cap alphabetic; } .mc-home .mc-hero-eyebrow { margin: 0 auto 24px; } .mc-home .hero-lead { margin-top: 27px; font-size: 17px; line-height: 1.85; } .mc-home .hero-copy .button-row { margin-top: 30px; gap: 12px; } .mc-home .hero-card { min-width: 0; border: 1px solid #dac9b4; border-radius: 28px; background: #fffdf8; padding: 13px 27px 23px; box-shadow: 0 22px 60px #60422214, 0 3px 9px #60422206; } .mc-home .hero-card-visual { margin: 0 -14px 22px; overflow: hidden; border-radius: 17px; background: #f2ebdf; } .mc-home .hero-card-visual img { width: 100%; height: auto; aspect-ratio: 40 / 21; object-fit: contain; display: block; background: #071627; } .mc-home .hero-card-visual figcaption { padding: 10px 14px; font-size: 12px; line-height: 1.6; color: #fff; background: #1d1d1b; } .mc-home .status-label { display: flex; align-items: center; gap: 8px; color: #9c482d; font-size: 12px; text-transform: uppercase; letter-spacing: .16em; font-weight: 800; margin-bottom: 8px; } .mc-home .status-label::before { content: ""; width: 7px; height: 7px; background: #c78543; border-radius: 50%; flex-shrink: 0; } .mc-home .hero-card address { font-size: 18px; line-height: 1.55; font-weight: 700; letter-spacing: -.02em; } .mc-home .hero-card dl { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; padding-top: 18px; margin-top: 17px; border-top: 1px solid #e9dfd0; } .mc-home .hero-card dl > div { min-width: 0; } .mc-home .hero-card dt { font-size: 12px; color: #6f6253; text-transform: uppercase; letter-spacing: .1em; font-weight: 750; margin-bottom: 4px; } .mc-home .hero-card dd { font-size: 14px; line-height: 1.8; } .mc-home .hero-card dd a { display: inline-flex; align-items: center; min-height: 44px; margin: -8px 0; font-size: 15px; font-weight: 750; letter-spacing: -.02em; } .mc-home .schedule-line { display: block; } .mc-home .hero-card > .source-note { margin-top: 14px; font-size: 12px; } .mc-home .fact-strip { display: grid; grid-template-columns: 1.2fr 1.25fr 1.15fr 1fr .8fr; align-items: center; gap: 0; padding: 24px 0; margin-top: 43px; border-top: 1px solid #deceba; } .mc-home .fact-strip > * { min-width: 0; padding: 0 20px; font-size: 13px; line-height: 1.75; color: #554d42; } .mc-home .fact-strip > *:first-child { padding-left: 0; } .mc-home .fact-strip > * + * { border-left: 1px solid #deceba; } .mc-home .fact-strip > *:last-child { padding-right: 0; } .mc-home .fact-strip a { display: block; min-height: 44px; align-content: center; } .mc-home .fact-strip .review-proof-link { color: #4d453b; text-decoration-color: #af7959; } .mc-home .fact-strip strong { font-size: 23px; line-height: 1.25; letter-spacing: -.05em; color: #a2472a; margin-right: 4px; }  /* Open benefit row creates a pause between the hero and the first feature. */ .mc-home .benefits-section { padding: 42px 0 44px; background: #fffefa; border-bottom: 1px solid #ebe4d9; } .mc-home .benefits-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; gap: 32px; } .mc-home .benefits-strip > li { margin: 0; padding: 0; min-width: 0; } .mc-home .benefits-strip > li + li { border-left: 1px solid #e7e0d4; padding-left: 30px; } .mc-home .benefits-strip h3 { font-size: 18px; line-height: 1.4; margin-bottom: 12px; } .mc-home .benefits-strip p { font-size: 16px; line-height: 1.8; } .mc-home .benefits-strip h3 .mc-heading-icon { width: 37px; height: 37px; flex-basis: 37px; border-radius: 11px; } .mc-home .benefits-strip h3 .mc-heading-icon svg { width: 26px; height: 26px; }  /* Code course: a proper photographic feature, with a readable three-step list. */ .mc-home .objectif-code-section { background: #f8f4ed; padding: 83px 0; } .mc-home .objectif-code-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); align-items: center; gap: 68px; } .mc-home .objectif-code-copy { min-width: 0; } .mc-home .objectif-code-lead { font-size: 17px; line-height: 1.8; } .mc-home .objectif-code-steps { list-style: none; counter-reset: mc-code-step; margin: 27px 0 0; padding: 0; } .mc-home .objectif-code-steps li { counter-increment: mc-code-step; position: relative; padding: 16px 0 16px 56px; margin: 0; border-top: 1px solid #e2d7c7; min-height: 76px; } .mc-home .objectif-code-steps li::before { content: counter(mc-code-step, decimal-leading-zero); position: absolute; left: 0; top: 17px; width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid #dcc6ad; border-radius: 50%; background: #fffaf1; color: #9b4b2b; font-size: 13px; font-weight: 750; font-variant-numeric: tabular-nums; } .mc-home .objectif-code-steps h3 { font-size: 17px; margin-bottom: 3px; letter-spacing: -.02em; } .mc-home .objectif-code-steps p { font-size: 16px; line-height: 1.7; } .mc-home .objectif-code-visual { align-self: stretch; min-width: 0; border-radius: 30px 30px 94px 30px; border: 8px solid #fffaf3; overflow: hidden; box-shadow: var(--mc-home-shadow); background: #e9e1d2; } .mc-home .objectif-code-visual picture { display: block; height: 100%; } .mc-home .objectif-code-visual img { display: block; width: 100%; height: 100%; max-height: 690px; min-height: 540px; object-fit: cover; object-position: 48% 42%; } .mc-home .objectif-code-visual figcaption { padding: 14px 17px; font-size: 14px; line-height: 1.65; }  /* Reviews: the score is always presented with its source and its limitations. */ .mc-home .reviews-section { background: #fffefa; padding: 86px 0; } .mc-home .reviews-panel { display: grid; grid-template-columns: minmax(0, 1fr) 266px; align-items: start; gap: 34px 54px; padding: 48px 48px 29px; background: linear-gradient(120deg, #fcf9f2, #f7eee1); border: 1px solid #d9b899; border-radius: 27px; box-shadow: var(--mc-home-shadow); } .mc-home .reviews-intro { min-width: 0; } .mc-home .reviews-intro h2 { font-size: clamp(29px, 2.9vw, 39px); } .mc-home .reviews-lead { font-size: 16px; line-height: 1.85; } .mc-home .reviews-intro .button-row { gap: 13px 20px; margin-top: 25px; } .mc-home .rating-card { border: 1px solid #d7c1a8; background: #fffdf7; border-radius: 19px; padding: 25px 23px 23px; box-shadow: 0 8px 24px #5f42270a; min-width: 0; } .mc-home .rating-source { font-size: 13px; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; } .mc-home .rating-card .rating-stars { margin: 14px 0 5px; color: #b87927; font-size: 20px; letter-spacing: .14em; line-height: 1.4; } .mc-home .rating-card .rating-score { display: flex; align-items: baseline; gap: 6px; margin: 0; line-height: 1; } .mc-home .rating-score strong { font-size: 71px; letter-spacing: -.065em; font-weight: 780; } .mc-home .rating-score > span { font-size: 24px; letter-spacing: -.04em; color: #756654; } .mc-home .rating-card .rating-count { margin-top: 12px; font-size: 14px; font-weight: 650; } .mc-home .rating-card .source-note { margin-top: 16px; padding-top: 14px; border-top: 1px solid #e4d9c9; font-size: 13px; line-height: 1.75; } .mc-home .review-themes { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; list-style: none; padding: 25px 0 0; margin: 0; border-top: 1px solid #dccbb6; } .mc-home .review-themes li { display: flex; align-items: flex-start; gap: 15px; margin: 0; padding: 0; min-width: 0; } .mc-home .theme-number { color: #ae7957; font-size: 13px; font-weight: 750; border: 1px solid #ddc5ab; border-radius: 50%; width: 30px; height: 30px; flex: 0 0 30px; display: grid; place-items: center; background: #fff9ef; } .mc-home .review-themes h3 { font-size: 17px; margin: 2px 0 9px; } .mc-home .review-themes p { font-size: 15px; line-height: 1.8; } .mc-home .reviews-panel .controlled-reviews { grid-column: 1 / -1; margin: 0; padding-top: 18px; border-top: 1px solid #dccbb6; font-size: 14px; line-height: 1.8; }  /* Agency photos: a large façade, two details and an open second photo row. */ .mc-home .agency-section { padding: 82px 0 94px; background: #f4f0e8; border-top: 1px solid #e6ded1; border-bottom: 1px solid #e6ded1; } .mc-home .agency-gallery { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: 250px 250px 355px; gap: 20px; } .mc-home .agency-visual { display: flex; flex-direction: column; min-width: 0; min-height: 0; background: #fffefa; border: 1px solid #dcd5c8; border-radius: 21px; overflow: hidden; box-shadow: 0 9px 22px #42351e07; } .mc-home .agency-visual:nth-child(1) { grid-column: 1 / 9; grid-row: 1 / 3; } .mc-home .agency-visual:nth-child(2) { grid-column: 9 / 13; grid-row: 1; } .mc-home .agency-visual:nth-child(3) { grid-column: 9 / 13; grid-row: 2; } .mc-home .agency-visual:nth-child(4) { grid-column: 1 / 7; grid-row: 3; } .mc-home .agency-visual:nth-child(5) { grid-column: 7 / 13; grid-row: 3; } .mc-home .agency-visual > img, .mc-home .agency-visual > picture { display: block; width: 100%; min-height: 0; flex: 1 1 0; object-fit: cover; background: #eee8dc; } .mc-home .agency-visual > picture { overflow: hidden; } .mc-home .agency-visual picture img { width: 100%; height: 100%; display: block; object-fit: cover; } .mc-home .agency-visual-vehicle > img { object-fit: contain; background: #071627; } .mc-home .agency-visual figcaption { flex: 0 0 auto; padding: 16px 20px 18px; font-size: 14px; line-height: 1.65; } .mc-home .agency-visual figcaption strong { display: block; font-size: 14px; margin-bottom: 2px; } .mc-home .agency-visual figcaption span { display: block; color: #625a4f; } .mc-home .agency-visual-facade figcaption { padding: 20px 25px; } .mc-home .agency-visual-facade figcaption strong { font-size: 17px; }  /* Credentials remain complete. Financing receives room for all conditions. */ .mc-home #qualite { background: #fffefa; padding: 87px 0 93px; } .mc-home .official-logo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; margin: 0 0 27px; padding: 0; border: 1px solid #ded7ca; border-radius: 21px; background: #fff; } .mc-home .official-logo-grid > li { min-width: 0; display: flex; align-items: center; gap: 18px; margin: 0; padding: 24px; } .mc-home .official-logo-grid > li + li { border-left: 1px solid #e4ded3; } .mc-home .official-logo-visual { display: flex; justify-content: center; align-items: center; width: 95px; height: 85px; flex: 0 0 95px; } .mc-home .official-logo-visual img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; } .mc-home .official-logo-school { flex-basis: 78px; width: 78px; } .mc-home .official-logo-copy { min-width: 0; font-size: 14px; line-height: 1.6; } .mc-home .official-logo-copy small { display: block; font-size: 12px; line-height: 1.7; color: #71695d; margin-bottom: 4px; } .mc-home .official-logo-copy strong { display: block; font-weight: 700; } .mc-home .credentials-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; } .mc-home .credentials-grid > .service-card { min-width: 0; padding: 27px 25px 24px; border: 1px solid #e0d8ca; border-radius: 19px; background: #faf7f0; } .mc-home .credentials-grid h3 { font-size: 20px; margin-bottom: 19px; } .mc-home .credentials-grid h3 .mc-heading-icon { width: 40px; height: 40px; flex-basis: 40px; border-radius: 12px; } .mc-home .credentials-grid h3 .mc-heading-icon svg { width: 28px; height: 28px; } .mc-home .credentials-grid > .service-card > p:not(.card-kicker):not(.source-note), .mc-home .credentials-grid li { font-size: 16px; line-height: 1.85; } .mc-home .credentials-grid ul { padding-left: 18px; margin: 16px 0; } .mc-home .credentials-grid li { padding-left: 1px; margin: 8px 0; } .mc-home .credentials-grid .source-note { border-top: 1px solid #e1d8c9; padding-top: 15px; margin-top: 19px; font-size: 13px; } .mc-home .credentials-grid > .service-card:last-child { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); column-gap: 53px; padding: 32px 35px 27px; background: #f0f2e9; border-color: #d8decb; } .mc-home .credentials-grid > .service-card:last-child > .card-kicker { grid-column: 1; grid-row: 1; } .mc-home .credentials-grid > .service-card:last-child > h3 { grid-column: 1; grid-row: 2; font-size: 25px; } .mc-home .credentials-grid > .service-card:last-child > p:not(.card-kicker):not(.source-note) { grid-column: 1; grid-row: 3; font-size: 16px; } .mc-home .credentials-grid > .service-card:last-child > ul { grid-column: 2; grid-row: 1 / 4; margin: 0; } .mc-home .credentials-grid > .service-card:last-child > .source-note { grid-column: 1 / -1; margin-top: 20px; border-color: #d7ddcb; } .mc-home .cpf-eligibility-mark { grid-column: 1 / -1; display: flex; align-items: center; gap: 24px; margin-top: 23px; padding: 21px 23px; border: 1px solid #d5dcc8; border-radius: 14px; background: #fffefa; } .mc-home .cpf-eligibility-visual { flex: 0 0 85px; width: 85px; display: block; } .mc-home .cpf-eligibility-visual img { display: block; width: 85px; height: auto; } .mc-home .cpf-eligibility-mark figcaption { font-size: 14px; line-height: 1.8; }  /* Nine routes: clear categories and generous, consistent card affordances. */ .mc-home #formations { padding: 87px 0 89px; background: #f8f3eb; border-top: 1px solid #e9e0d3; border-bottom: 1px solid #e9e0d3; } .mc-home #formations .card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; } .mc-home .formation-card { display: flex; flex-direction: column; min-width: 0; padding: 29px 27px 23px; border: 1px solid #dbd1c1; border-radius: 23px; background: #fffdf7; box-shadow: 0 6px 16px #70533104; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; } .mc-home .formation-card:hover, .mc-home .formation-card:focus-within { border-color: #be8f65; box-shadow: 0 12px 25px #7053310c; transform: translateY(-3px); } .mc-home .formation-card-intensive { background: #fcf0e4; border-color: #dec2a8; } .mc-home .formation-title-row { margin: 0 0 17px; min-width: 0; } .mc-home .formation-title-row h3 { margin: 0; font-size: 23px; line-height: 1.3; } .mc-home .formation-title-row h3.mc-heading-with-icon { flex-direction: row; align-items: center; gap: 15px; } .mc-home .formation-title-row .mc-heading-icon { width: 54px; height: 54px; flex: 0 0 54px; border-radius: 16px; } .mc-home .formation-title-row .mc-heading-icon svg { width: 37px; height: 37px; } .mc-home .formation-card > p:not(.card-kicker) { font-size: 16px; line-height: 1.85; } .mc-home .formation-card ul { list-style: none; padding: 0; margin: 21px 0 26px; } .mc-home .formation-card li { padding: 0 0 0 18px; margin: 9px 0; position: relative; font-size: 14px; line-height: 1.75; } .mc-home .formation-card li::before { content: ""; position: absolute; width: 5px; height: 5px; border-radius: 50%; top: .65em; left: 0; background: #b18358; } .mc-home .formation-card > a { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 15px; border-top: 1px solid #e6d8c6; min-height: 54px; font-size: 14px; font-weight: 750; line-height: 1.7; text-decoration-thickness: 1px; } .mc-home .formation-card > a::after { content: "\2197"; flex: 0 0 24px; width: 24px; height: 24px; display: grid; place-items: center; font-size: 18px; color: #9e5634; } .mc-home .section-followup { margin-top: 27px; text-align: center; }  /* Prices: readable comparisons and a separate acceleration board. */ .mc-home #tarifs { padding: 89px 0 82px; background: #fffefa; } .mc-home .price-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; } .mc-home .price-card { display: flex; flex-direction: column; min-width: 0; padding: 29px 27px 25px; border: 1px solid #d9ccba; border-radius: 22px; background: #fffdf7; box-shadow: var(--mc-home-shadow); } .mc-home .price-card h3 { font-size: clamp(29px, 3vw, 39px); line-height: 1.2; letter-spacing: -.055em; margin: 1px 0 20px; font-weight: 780; font-variant-numeric: lining-nums tabular-nums; } .mc-home .price-card h3 small { display: inline-block; font-size: 14px; letter-spacing: -.015em; color: #655b4c; } .mc-home .price-card:not(.accelerated-price-card) > p:not(.card-kicker) { font-size: 16px; line-height: 1.85; } .mc-home .price-card ul { margin: 20px 0 25px; padding-left: 19px; } .mc-home .price-card li { font-size: 14px; line-height: 1.85; padding-left: 2px; margin: 9px 0; } .mc-home .price-card > .button { margin-top: auto; width: 100%; } .mc-home .price-card-featured { background: #f8ece0; border-color: #c58a61; } .mc-home .code-stage-highlight { padding: 13px 15px; margin: 0 0 18px; border: 1px solid #dce0cd; border-radius: 11px; background: #eef2e6; } .mc-home .code-stage-highlight strong, .mc-home .code-stage-highlight span { display: block; } .mc-home .code-stage-highlight strong { font-size: 14px; } .mc-home .code-stage-highlight span { font-size: 14px; } .mc-home #tarifs > .container > .source-note { margin-top: 22px; } .mc-home .accelerated-prices { margin-top: 54px; padding: 39px 38px 35px; border-radius: 27px; border: 1px solid #e0d1bc; background: #f5efe4; } .mc-home .accelerated-prices .section-heading { margin-bottom: 28px; } .mc-home .accelerated-prices .section-heading h3 { font-size: clamp(28px, 3vw, 37px); line-height: 1.2; margin-bottom: 20px; letter-spacing: -.045em; } .mc-home #accelerated-prices-title .mc-heading-label { text-wrap: wrap; } .mc-home .mc-title-space { display: inline-block; width: .24em; } .mc-home .accelerated-prices .section-heading > p:not(.eyebrow) { font-size: 15px; } .mc-home .accelerated-price-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; } .mc-home .accelerated-price-card { padding: 22px 24px 16px; background: #fffdf7; border-color: #d9c8b1; border-radius: 17px; box-shadow: none; } .mc-home .accelerated-price-card .card-kicker { font-size: 14px; letter-spacing: .015em; margin: 0 0 12px; text-transform: none; color: #614b36; } .mc-home .accelerated-price-card .accelerated-price { margin: 0; font-size: 33px; font-weight: 780; line-height: 1.25; letter-spacing: -.045em; color: #9d4428; } .mc-home .accelerated-price small { font-size: 13px; font-weight: 650; color: #766753; letter-spacing: 0; } .mc-home .accelerated-price-card .accelerated-transmission { font-size: 13px; line-height: 1.7; margin-top: 10px; } .mc-home .accelerated-price-card .text-link { padding-top: 11px; border-top: 1px solid #eadfce; margin-top: 13px; justify-content: space-between; font-size: 13px; } .mc-home .accelerated-repeat { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 20px; margin-top: 17px; padding: 21px 24px; border: 1px solid #d8bea1; border-radius: 17px; background: #fff9ee; } .mc-home .accelerated-repeat > div { min-width: 0; } .mc-home .accelerated-repeat .card-kicker { font-size: 12px; margin: 0 0 5px; } .mc-home .accelerated-repeat h4 { font-size: 16px; line-height: 1.6; margin: 0; } .mc-home .accelerated-repeat .accelerated-price { margin: 0; font-size: 32px; font-weight: 780; color: #9d4428; letter-spacing: -.045em; white-space: nowrap; } .mc-home .accelerated-repeat .button { font-size: 13px; min-height: 44px; padding: 10px 15px; } .mc-home .accelerated-price-notes { margin-top: 21px; } .mc-home .accelerated-price-notes p { font-size: 14px; line-height: 1.8; } .mc-home .accelerated-price-notes p + p { margin-top: 5px; } .mc-home .price-actions { gap: 12px; margin-top: 24px; } .mc-home .all-prices-link { padding-top: 22px; text-align: center; }  /* Process and final contact: simple reading order, no hidden explanations. */ .mc-home #methode { background: #f6f3ec; border-top: 1px solid #e6dfd3; border-bottom: 1px solid #e6dfd3; } .mc-home .method-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: 72px; } .mc-home .method-grid .section-heading { margin: 0; } .mc-home .method-grid .section-heading > .text-link { margin-top: 18px; } .mc-home .steps { position: relative; min-width: 0; list-style: none; padding: 0; margin: 1px 0 0; } .mc-home .steps::before { content: ""; position: absolute; width: 1px; background: #d9bda0; left: 21px; top: 22px; bottom: 41px; } .mc-home .steps li { position: relative; display: flex; align-items: flex-start; gap: 22px; min-width: 0; padding: 0 0 30px; margin: 0; } .mc-home .steps li:last-child { padding-bottom: 0; } .mc-home .steps li > span { width: 43px; height: 43px; flex: 0 0 43px; border-radius: 50%; background: #fcf8ef; color: #a34e2b; border: 1px solid #d8bb99; display: grid; place-items: center; font-size: 14px; font-weight: 750; z-index: 1; } .mc-home .steps li > div { min-width: 0; padding-top: 1px; } .mc-home .steps h3 { font-size: 19px; margin-bottom: 10px; } .mc-home .steps h3 .mc-heading-icon { width: 36px; height: 36px; flex-basis: 36px; border-radius: 11px; } .mc-home .steps h3 .mc-heading-icon svg { width: 25px; height: 25px; } .mc-home .steps p { font-size: 16px; line-height: 1.85; } .mc-home .contact-section { padding: 84px 0 89px; background: #fffefa; } .mc-home .contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 60px; padding: 45px 46px; border-radius: 27px; border: 1px solid #dfc8ad; background: linear-gradient(115deg, #f3e4d0, #f8f1e6); } .mc-home .contact-grid > div { min-width: 0; } .mc-home .contact-grid > div:first-child > h2 { font-size: clamp(29px, 3vw, 40px); max-width: none; } .mc-home .contact-grid > div:first-child > p:not(.eyebrow) { max-width: none; font-size: 16px; line-height: 1.85; } .mc-home .contact-grid .button-row { gap: 10px 17px; } .mc-home .contact-options { display: block; margin: 0; gap: 0; padding: 25px 28px; border: 1px solid #e0ccb3; border-radius: 19px; background: #fffdf6; } .mc-home .contact-options > div:nth-child(n) { padding: 0; border: 0; border-radius: 0; background: transparent; grid-column: auto; } .mc-home .contact-options > div:nth-child(n + 2) { border-top: 1px solid #e4d6c3; margin-top: 19px; padding-top: 19px; } .mc-home .contact-options h3 { font-size: 15px; margin: 0 0 9px; } .mc-home .contact-options h3 .mc-heading-icon { width: 32px; height: 32px; flex-basis: 32px; border-radius: 10px; } .mc-home .contact-options h3 .mc-heading-icon svg { width: 23px; height: 23px; } .mc-home .contact-options p, .mc-home .contact-options address, .mc-home .contact-options > div > a { font-size: 14px; line-height: 1.9; } .mc-home .contact-options p + p { margin-top: 5px; } .mc-home .contact-options a { min-height: 44px; display: inline-flex; align-items: center; } .mc-home .contact-options p > a { margin-block: -9px; } .mc-home .contact-options > div > a { margin-block: -7px; }  @media (max-width: 1140px) {   .mc-home .container { width: calc(100% - 64px); }   .mc-home .hero-grid { gap: 34px; }   .mc-home main h1 { font-size: 53px; }   .mc-home .hero-card { padding-inline: 23px; }   .mc-home .hero-card-visual { margin-inline: -10px; }   .mc-home .hero-card dl { gap: 12px; }   .mc-home .fact-strip > * { padding-inline: 14px; }   .mc-home .objectif-code-grid { gap: 44px; }   .mc-home .reviews-panel { padding: 36px 35px 26px; gap: 30px; grid-template-columns: minmax(0, 1fr) 245px; }   .mc-home .official-logo-grid > li { padding: 22px 17px; gap: 12px; }   .mc-home .official-logo-visual { width: 78px; flex-basis: 78px; }   .mc-home .official-logo-school { width: 63px; flex-basis: 63px; }   .mc-home .credentials-grid > .service-card { padding-inline: 21px; }   .mc-home .credentials-grid h3 { font-size: 18px; }   .mc-home .formation-card { padding: 26px 22px 21px; }   .mc-home .formation-title-row h3 { font-size: 21px; }   .mc-home .price-card { padding: 27px 22px 22px; }   .mc-home .accelerated-prices { padding: 33px 28px; }   .mc-home .accelerated-price-card { padding: 21px 21px 15px; }   .mc-home .accelerated-repeat { grid-template-columns: minmax(0, 1fr) auto; }   .mc-home .accelerated-repeat > .button { grid-column: 1 / -1; justify-self: start; }   .mc-home .contact-grid { padding: 36px; gap: 35px; }   .mc-home .contact-options { padding: 23px; } }  @media (max-width: 940px) {   .mc-home .section { padding-block: 68px; }   .mc-home .hero { padding-top: 50px; }   .mc-home .hero-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 27px; align-items: start; }   .mc-home main h1 { font-size: 45px; }   .mc-home .hero-copy { padding-top: 0; }   .mc-home .hero-lead { font-size: 16px; margin-top: 24px; }   .mc-home .hero-card { padding: 11px 19px 20px; border-radius: 23px; }   .mc-home .hero-card-visual { margin: 0 -8px 20px; border-radius: 15px; }   .mc-home .hero-card dl { grid-template-columns: 1fr; gap: 16px; }   .mc-home .hero-card address { font-size: 17px; }   .mc-home .hero-card dd { font-size: 14px; }   .mc-home .fact-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px 23px; padding-block: 22px; margin-top: 29px; }   .mc-home .fact-strip > * { padding: 0; font-size: 13px; }   .mc-home .fact-strip > * + * { border: 0; }   .mc-home .fact-strip > *:last-child { grid-column: 1 / -1; padding-top: 12px; border-top: 1px solid #deceba; min-height: 44px; }   .mc-home .benefits-section { padding-block: 34px; }   .mc-home .benefits-strip { gap: 22px; }   .mc-home .benefits-strip > li + li { padding-left: 21px; }   .mc-home .benefits-strip h3.mc-heading-with-icon { flex-direction: column; gap: 13px; }   .mc-home .benefits-strip h3 { font-size: 17px; }   .mc-home .benefits-strip p { font-size: 15px; }   .mc-home .objectif-code-grid { gap: 34px; }   .mc-home .objectif-code-visual { border-width: 6px; border-bottom-right-radius: 67px; }   .mc-home .objectif-code-visual img { min-height: 580px; }   .mc-home main h2 { font-size: 33px; }   .mc-home h2 .mc-heading-icon { width: 49px; height: 49px; flex-basis: 49px; border-radius: 15px; }   .mc-home h2 .mc-heading-icon svg { width: 35px; height: 35px; }   .mc-home .reviews-panel { grid-template-columns: minmax(0, 1fr) 225px; padding: 32px; gap: 27px; }   .mc-home .reviews-intro h2 { font-size: 30px; }   .mc-home .rating-card { padding: 23px 19px; }   .mc-home .review-themes { gap: 20px; }   .mc-home .review-themes li { gap: 11px; }   .mc-home .theme-number { width: 26px; height: 26px; flex-basis: 26px; font-size: 12px; }   .mc-home .agency-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto; gap: 18px; }   .mc-home .agency-visual:nth-child(n) { grid-column: auto; grid-row: auto; }   .mc-home .agency-visual:first-child { grid-column: 1 / -1; }   .mc-home .agency-visual > img, .mc-home .agency-visual > picture { flex: 0 0 auto; height: auto; aspect-ratio: 16 / 10; }   .mc-home .agency-visual:first-child > img { aspect-ratio: 16 / 9; }   .mc-home .agency-visual-vehicle > img { aspect-ratio: 40 / 21; }   .mc-home .agency-visual figcaption { padding: 16px 18px; }   .mc-home .official-logo-grid { grid-template-columns: 1fr; }   .mc-home .official-logo-grid > li { padding: 20px 25px; gap: 24px; }   .mc-home .official-logo-grid > li + li { border-left: 0; border-top: 1px solid #e4ded3; }   .mc-home .official-logo-visual, .mc-home .official-logo-school { width: 100px; height: 70px; flex-basis: 100px; }   .mc-home .official-logo-copy { font-size: 15px; }   .mc-home .official-logo-copy small { font-size: 13px; }   .mc-home .credentials-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }   .mc-home .credentials-grid > .service-card { padding: 26px; }   .mc-home .credentials-grid > .service-card:last-child { display: block; grid-column: auto; padding: 26px; }   .mc-home .credentials-grid > .service-card:last-child > h3 { font-size: 20px; }   .mc-home .credentials-grid > .service-card:last-child > p:not(.card-kicker):not(.source-note) { font-size: 14px; }   .mc-home .credentials-grid > .service-card:last-child > ul { margin-top: 16px; }   .mc-home .cpf-eligibility-mark { padding: 16px; flex-direction: column; align-items: flex-start; gap: 15px; }   .mc-home #formations .card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 19px; }   .mc-home .formation-card { padding: 28px 26px 23px; }   .mc-home .formation-title-row h3 { font-size: 23px; }   .mc-home .price-grid { gap: 16px; }   .mc-home .price-card { padding-inline: 19px; }   .mc-home .price-card h3 { font-size: 31px; }   .mc-home .price-card .button { font-size: 14px; padding-inline: 12px; }   .mc-home .accelerated-price-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }   .mc-home .accelerated-price-card { padding-inline: 18px; }   .mc-home .accelerated-price-card .accelerated-price { font-size: 29px; }   .mc-home .method-grid { gap: 38px; }   .mc-home .steps li { gap: 16px; }   .mc-home .steps h3.mc-heading-with-icon { flex-direction: column; gap: 10px; }   .mc-home .contact-grid { grid-template-columns: 1fr; padding: 34px; gap: 28px; }   .mc-home .contact-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }   .mc-home .contact-options > div { min-width: 0; }   .mc-home .contact-options > div:nth-child(n + 2) { margin: 0; padding: 0; border: 0; }   .mc-home .contact-options h3.mc-heading-with-icon { flex-direction: column; gap: 10px; } }  @media (max-width: 720px) {   .mc-home .container { width: calc(100% - 40px); }   .mc-home .section { padding-block: 54px; }   .mc-home .section-heading { margin-bottom: 27px; }   .mc-home .section-heading > p:not(.eyebrow) { font-size: 16px; }   .mc-home main h1 { font-size: clamp(36px, 7vw, 49px); line-height: 1.1; letter-spacing: -.05em; }   .mc-home main h2 { font-size: 31px; }   .mc-home h2.mc-heading-with-icon { gap: 14px; }   .mc-home h2 .mc-heading-icon { width: 44px; height: 44px; flex-basis: 44px; border-radius: 13px; }   .mc-home h2 .mc-heading-icon svg { width: 31px; height: 31px; }   .mc-home .hero { padding-top: 37px; }   .mc-home .hero-grid { grid-template-columns: 1fr; gap: 29px; }   .mc-home .hero-copy { padding: 0; }   .mc-home .mc-hero-eyebrow { margin-bottom: 18px; }   .mc-home .hero-lead { font-size: 16px; line-height: 1.85; margin-top: 23px; }   .mc-home .hero-copy .button-row { margin-top: 23px; }   .mc-home .hero-card { padding: 12px 24px 22px; max-width: 570px; width: 100%; margin-inline: auto; }   .mc-home .hero-card-visual { margin-inline: -12px; }   .mc-home .hero-card dl { grid-template-columns: 1fr 1fr; gap: 18px; }   .mc-home .fact-strip { margin-top: 29px; gap: 18px 25px; }   .mc-home .fact-strip > * { font-size: 14px; }   .mc-home .fact-strip strong { font-size: 24px; }   .mc-home .benefits-section { padding-block: 31px; }   .mc-home .benefits-strip { grid-template-columns: 1fr; gap: 0; }   .mc-home .benefits-strip > li + li { border-left: 0; border-top: 1px solid #e7e0d4; padding: 23px 0 0; margin-top: 23px; }   .mc-home .benefits-strip h3.mc-heading-with-icon { flex-direction: row; align-items: center; gap: 13px; }   .mc-home .benefits-strip h3 { font-size: 19px; margin-bottom: 12px; }   .mc-home .benefits-strip p { font-size: 15px; }   .mc-home .objectif-code-grid { grid-template-columns: 1fr; gap: 30px; }   .mc-home .objectif-code-visual { border-radius: 24px 24px 66px 24px; }   .mc-home .objectif-code-visual picture { height: auto; }   .mc-home .objectif-code-visual img { min-height: 0; height: auto; max-height: 600px; aspect-ratio: 5 / 6; object-fit: cover; object-position: center 38%; }   .mc-home .objectif-code-steps p { font-size: 15px; }   .mc-home .reviews-panel { grid-template-columns: 1fr; padding: 29px 26px 23px; border-radius: 23px; gap: 27px; }   .mc-home .reviews-intro h2 { font-size: 30px; }   .mc-home .rating-card { padding: 24px; max-width: none; }   .mc-home .rating-score strong { font-size: 68px; }   .mc-home .rating-card .source-note { font-size: 14px; }   .mc-home .review-themes { grid-template-columns: 1fr; gap: 22px; padding-top: 23px; }   .mc-home .review-themes li { gap: 17px; }   .mc-home .review-themes h3 { font-size: 19px; }   .mc-home .review-themes p { font-size: 14px; }   .mc-home .controlled-reviews { font-size: 14px; }   .mc-home .agency-gallery { gap: 16px; }   .mc-home .agency-visual { border-radius: 17px; }   .mc-home .agency-visual figcaption { padding: 14px 16px; font-size: 13px; }   .mc-home .agency-visual figcaption strong { font-size: 14px; }   .mc-home .credentials-grid { grid-template-columns: 1fr; }   .mc-home .credentials-grid > .service-card, .mc-home .credentials-grid > .service-card:last-child { padding: 27px; }   .mc-home .credentials-grid h3, .mc-home .credentials-grid > .service-card:last-child > h3 { font-size: 22px; }   .mc-home .credentials-grid > .service-card > p:not(.card-kicker):not(.source-note), .mc-home .credentials-grid > .service-card:last-child > p:not(.card-kicker):not(.source-note), .mc-home .credentials-grid li { font-size: 15px; }   .mc-home .credentials-grid .source-note { font-size: 14px; }   .mc-home .cpf-eligibility-mark { flex-direction: row; gap: 19px; }   .mc-home .cpf-eligibility-visual { width: 70px; flex-basis: 70px; }   .mc-home .cpf-eligibility-visual img { width: 70px; }   .mc-home .formation-card { padding: 24px 21px 20px; }   .mc-home .formation-title-row h3 { font-size: 21px; }   .mc-home .formation-card li { font-size: 14px; }   .mc-home #tarifs > .container > .price-grid { grid-template-columns: 1fr; gap: 19px; }   .mc-home .price-card { padding: 28px; }   .mc-home .price-card h3 { font-size: 40px; }   .mc-home .price-card li { font-size: 14px; }   .mc-home .price-card > .button { margin-top: 6px; }   .mc-home .accelerated-prices { margin-top: 36px; padding: 27px 23px; border-radius: 23px; }   .mc-home .accelerated-prices .section-heading h3 { font-size: 31px; }   .mc-home .accelerated-price-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }   .mc-home .accelerated-price-card { padding: 21px 18px 15px; }   .mc-home .accelerated-price-card .accelerated-price { font-size: 30px; }   .mc-home .accelerated-repeat { padding: 21px; gap: 16px; }   .mc-home .accelerated-repeat .accelerated-price { font-size: 29px; }   .mc-home .price-actions { gap: 11px; }   .mc-home .method-grid { grid-template-columns: 1fr; gap: 33px; }   .mc-home .steps li { gap: 18px; padding-bottom: 28px; }   .mc-home .steps h3.mc-heading-with-icon { flex-direction: row; gap: 12px; }   .mc-home .steps h3 { font-size: 19px; }   .mc-home .steps p { font-size: 15px; }   .mc-home .contact-grid { padding: 29px 26px; border-radius: 23px; }   .mc-home .contact-grid > div:first-child > h2 { font-size: 31px; }   .mc-home .contact-options { grid-template-columns: 1fr; padding: 24px; gap: 0; }   .mc-home .contact-options > div:nth-child(n + 2) { margin-top: 21px; padding-top: 21px; border-top: 1px solid #e4d6c3; }   .mc-home .contact-options h3.mc-heading-with-icon { flex-direction: row; align-items: center; }   .mc-home .contact-options h3 { font-size: 17px; }   .mc-home .contact-options p, .mc-home .contact-options address, .mc-home .contact-options > div > a { font-size: 14px; } }  @media (max-width: 520px) {   .mc-home .container { width: calc(100% - 36px); }   .mc-home .hero-grid { gap: 26px; }   .mc-home main h1 { font-size: clamp(34px, 8.8vw, 43px); }   .mc-home main h2, .mc-home .reviews-intro h2, .mc-home .contact-grid > div:first-child > h2 { font-size: 29px; }   .mc-home h2.mc-heading-with-icon { flex-direction: column; align-items: flex-start; gap: 16px; }   .mc-home h2 .mc-heading-icon { width: 48px; height: 48px; flex-basis: 48px; border-radius: 15px; }   .mc-home h2 .mc-heading-icon svg { width: 34px; height: 34px; }   .mc-home .eyebrow { font-size: 12px; letter-spacing: .14em; }   .mc-home .button-row { align-items: stretch; }   .mc-home .hero-copy .button-row > .button { flex: 1 1 100%; width: 100%; }   .mc-home .hero-card { padding: 10px 20px 20px; border-radius: 21px; }   .mc-home .hero-card-visual { margin: 0 -10px 19px; }   .mc-home .hero-card-visual figcaption { font-size: 12px; padding-inline: 10px; }   .mc-home .hero-card dl { gap: 11px; }   .mc-home .hero-card dd { font-size: 14px; }   .mc-home .hero-card dd a { font-size: 14px; }   .mc-home .hero-card > .source-note { font-size: 12px; }   .mc-home .fact-strip { grid-template-columns: 1fr; gap: 0; padding-block: 15px; }   .mc-home .fact-strip > * { padding: 12px 0; font-size: 14px; }   .mc-home .fact-strip > * + * { border-top: 1px solid #e4d5c2; }   .mc-home .fact-strip > *:last-child { grid-column: auto; }   .mc-home .reviews-panel { padding: 26px 22px 22px; }   .mc-home .reviews-intro .button-row > .button { width: 100%; }   .mc-home .rating-card { padding: 23px; }   .mc-home .agency-gallery { grid-template-columns: 1fr; gap: 18px; }   .mc-home .agency-visual:nth-child(n) { grid-column: auto; }   .mc-home .agency-visual > img, .mc-home .agency-visual > picture { aspect-ratio: 4 / 3; }   .mc-home .agency-visual:first-child > img { aspect-ratio: 16 / 9; }   .mc-home .agency-visual-vehicle > img { aspect-ratio: 16 / 11; }   .mc-home .agency-visual-classroom > picture { aspect-ratio: 4 / 5; }   .mc-home .agency-visual figcaption { padding: 17px 19px; font-size: 14px; }   .mc-home .agency-visual figcaption strong { font-size: 15px; }   .mc-home .official-logo-grid > li { padding: 20px; gap: 18px; }   .mc-home .official-logo-visual, .mc-home .official-logo-school { width: 80px; flex-basis: 80px; height: 75px; }   .mc-home .official-logo-copy { font-size: 14px; }   .mc-home .official-logo-copy small { font-size: 12px; }   .mc-home .credentials-grid > .service-card, .mc-home .credentials-grid > .service-card:last-child { padding: 24px 22px; }   .mc-home .credentials-grid h3, .mc-home .credentials-grid > .service-card:last-child > h3 { font-size: 21px; }   .mc-home .cpf-eligibility-mark { padding: 17px; flex-direction: column; }   .mc-home #formations .card-grid { grid-template-columns: 1fr; gap: 18px; }   .mc-home .formation-card { padding: 27px 25px 23px; }   .mc-home .formation-title-row h3 { font-size: 24px; }   .mc-home .formation-title-row h3.mc-heading-with-icon { flex-direction: row; align-items: center; gap: 14px; }   .mc-home .formation-title-row .mc-heading-icon { width: 54px; height: 54px; flex-basis: 54px; border-radius: 16px; }   .mc-home .formation-title-row .mc-heading-icon svg { width: 37px; height: 37px; }   .mc-home .formation-card > p:not(.card-kicker) { font-size: 16px; }   .mc-home .formation-card li { font-size: 14px; }   .mc-home .formation-card > a { font-size: 14px; }   .mc-home .section-followup { text-align: left; }   .mc-home .price-card { padding: 27px 24px; }   .mc-home .price-card h3 { font-size: 38px; }   .mc-home .price-card:not(.accelerated-price-card) > p:not(.card-kicker) { font-size: 16px; }   .mc-home .accelerated-prices { margin-inline: -6px; padding: 25px 18px; }   .mc-home .accelerated-prices .section-heading h3 { font-size: 29px; }   .mc-home .accelerated-price-grid { gap: 12px; }   .mc-home .accelerated-price-card { padding: 19px 15px 13px; border-radius: 15px; }   .mc-home .accelerated-price-card .card-kicker { font-size: 14px; }   .mc-home .accelerated-price-card .accelerated-price { font-size: 27px; }   .mc-home .accelerated-price-card .accelerated-transmission { font-size: 13px; }   .mc-home .accelerated-price-card .text-link { font-size: 13px; gap: 5px; }   .mc-home .accelerated-price-card .text-link::after { font-size: 15px; }   .mc-home .accelerated-repeat { grid-template-columns: 1fr; padding: 20px; }   .mc-home .accelerated-repeat .accelerated-price { font-size: 33px; }   .mc-home .accelerated-repeat > .button { width: 100%; }   .mc-home .price-actions > .button { width: 100%; }   .mc-home .all-prices-link { text-align: left; }   .mc-home .steps li { gap: 14px; }   .mc-home .steps li > span { width: 36px; height: 36px; flex-basis: 36px; }   .mc-home .steps::before { left: 17px; }   .mc-home .steps h3.mc-heading-with-icon { flex-direction: column; gap: 12px; }   .mc-home .contact-grid { padding: 27px 22px; }   .mc-home .contact-grid .button-row > .button { width: 100%; }   .mc-home .contact-options { padding: 23px 21px; } }  @media (max-width: 365px) {   .mc-home .container { width: calc(100% - 32px); }   .mc-home main h1 { font-size: clamp(29px, 9vw, 34px); overflow-wrap: normal; }   .mc-home .hero-card dl { grid-template-columns: 1fr; gap: 14px; }   .mc-home .formation-title-row h3.mc-heading-with-icon { flex-direction: row; gap: 12px; }   .mc-home .formation-title-row h3 { font-size: 20px; }   .mc-home .formation-title-row .mc-heading-icon { width: 44px; height: 44px; flex-basis: 44px; border-radius: 13px; }   .mc-home .formation-title-row .mc-heading-icon svg { width: 31px; height: 31px; }   .mc-home .accelerated-price-grid { grid-template-columns: 1fr; }   .mc-home .accelerated-price-card { padding: 22px; }   .mc-home .accelerated-price-card .accelerated-price { font-size: 33px; }   .mc-home .accelerated-price-card .accelerated-transmission { font-size: 14px; }   .mc-home .accelerated-price-card .text-link { font-size: 14px; }   .mc-home .reviews-panel, .mc-home .contact-grid { padding-inline: 20px; }   .mc-home .official-logo-grid > li { gap: 14px; padding-inline: 18px; }   .mc-home .official-logo-visual, .mc-home .official-logo-school { flex-basis: 69px; width: 69px; }   .mc-home .contact-options { padding-inline: 18px; } }  @media (prefers-reduced-motion: reduce) {   .mc-home .formation-card { transition: none; }   .mc-home .formation-card:hover, .mc-home .formation-card:focus-within { transform: none; } }  @media print {   .mc-redesign.mc-home { color: black !important; background: white !important; }   .mc-home .hero, .mc-home .section, .mc-home .hero-card, .mc-home .reviews-panel, .mc-home .contact-grid, .mc-home .accelerated-prices, .mc-home .price-card, .mc-home .service-card { background: white !important; box-shadow: none !important; }   .mc-home .container { width: 100% !important; max-width: none !important; }   .mc-home .hero, .mc-home .section { padding: 7mm 0 !important; }   .mc-home .hero-road, .mc-home .steps::before { display: none !important; }   .mc-home .hero-grid, .mc-home .objectif-code-grid, .mc-home .reviews-panel, .mc-home .agency-gallery, .mc-home .official-logo-grid, .mc-home .credentials-grid, .mc-home #formations .card-grid, .mc-home .price-grid, .mc-home .method-grid, .mc-home .contact-grid, .mc-home .contact-options { display: block !important; }   .mc-home .hero-card, .mc-home .rating-card, .mc-home .formation-card, .mc-home .price-card, .mc-home .credentials-grid > .service-card, .mc-home .agency-visual, .mc-home .contact-options > div { margin-block: 5mm !important; padding: 4mm !important; border: 1px solid #aaa !important; break-inside: avoid; transform: none !important; }   .mc-home .credentials-grid > .service-card:last-child { display: block !important; break-inside: auto; }   .mc-home .hero-card-visual { margin: 0 !important; }   .mc-home .hero-card-visual img, .mc-home .agency-visual > img, .mc-home .agency-visual picture img, .mc-home .objectif-code-visual img { height: auto !important; max-height: 85mm !important; min-height: 0 !important; width: auto !important; max-width: 100% !important; object-fit: contain !important; }   .mc-home .agency-visual > picture, .mc-home .objectif-code-visual picture { height: auto !important; aspect-ratio: auto !important; }   .mc-home .official-logo-grid > li { border-left: 0 !important; break-inside: avoid; padding: 3mm !important; }   .mc-home .review-themes, .mc-home .benefits-strip, .mc-home .fact-strip { display: block !important; }   .mc-home .review-themes > li, .mc-home .benefits-strip > li, .mc-home .fact-strip > * { display: block !important; border: 0 !important; padding: 2mm 0 !important; margin: 0 !important; }   .mc-home .fact-strip { margin-top: 5mm !important; }   .mc-home .accelerated-repeat { display: block !important; break-inside: avoid; margin: 4mm 0 !important; padding: 4mm !important; }   .mc-home .accelerated-repeat .accelerated-price { margin: 3mm 0 !important; }   .mc-home .mc-heading-icon { break-inside: avoid; }   .mc-home main h1 { font-size: 25pt !important; }   .mc-home main h2 { font-size: 17pt !important; }   .mc-home main h3 { font-size: 13pt !important; }   .mc-home .hero-card-visual figcaption, .mc-home .agency-visual figcaption, .mc-home .cpf-eligibility-mark figcaption, .mc-home .source-note { font-size: 9pt !important; } } 
/* Montlhéry Conduite — sessions de code intensif.  * Présentation uniquement : la visibilité et les statuts viennent du serveur.  * Aucun style global, aucune police distante, aucune dépendance JavaScript.  */ .mc-code-sessions {   --mcs-ink: #252520;   --mcs-muted: #62594e;   --mcs-orange: #ad3c23;   --mcs-border: #ded2c2;   --mcs-paper: #fffdf8;   color: var(--mcs-ink);   font-family: Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;   font-size: 16px;   line-height: 1.65;   width: 100%;   min-width: 0;   margin-block: 42px 0;   padding: clamp(20px, 3vw, 36px);   border: 1px solid var(--mcs-border);   border-radius: 26px;   background: linear-gradient(125deg, #fffdf8, #faf4e9);   box-shadow: 0 14px 42px rgb(72 46 20 / 5%); } .mc-code-sessions *, .mc-code-sessions *::before, .mc-code-sessions *::after { box-sizing: border-box; } .mc-code-sessions [hidden] { display: none !important; } .mc-code-sessions :where(h3, h4, p, ul, dl, dd) { margin: 0; } .mc-code-sessions :where(p, li, dd, h3, h4, a, button, summary) { overflow-wrap: anywhere; } .mc-code-sessions :where(a, button, summary):focus-visible { outline: 3px solid #153c5b; outline-offset: 4px; } .mc-code-sessions a { color: var(--mcs-orange); text-underline-offset: .2em; } .mc-code-sessions .mc-code-sessions__header { display: flex; gap: 18px; align-items: flex-start; margin-bottom: 26px; } .mc-code-sessions .mc-code-sessions__mark { flex: 0 0 54px; width: 54px; height: 54px; display: grid; place-items: center; color: #974423; background: #f9e7ca; border: 1px solid #e3c49e; border-radius: 17px; } .mc-code-sessions .mc-code-sessions__mark svg { width: 34px; height: 34px; } .mc-code-sessions .mc-code-sessions__heading-group { flex: 1; min-width: 0; } .mc-code-sessions .mc-code-sessions__eyebrow { margin: 0 0 5px; color: #87523a; font-size: 12px; font-weight: 800; line-height: 1.7; letter-spacing: .14em; text-transform: uppercase; } .mc-code-sessions .mc-code-sessions__heading { margin: 0; font-size: clamp(23px, 2.35vw, 31px); font-weight: 780; letter-spacing: -.045em; line-height: 1.18; text-wrap: balance; } .mc-code-sessions .mc-code-sessions__intro { color: var(--mcs-muted); margin-top: 10px; font-size: 15px; line-height: 1.7; } .mc-code-sessions .mc-code-sessions__toolbar { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: center; justify-content: space-between; margin-bottom: 18px; } .mc-code-sessions .mc-code-sessions__count { font-size: 14px; color: var(--mcs-muted); } .mc-code-sessions .mc-code-sessions__toggle { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 44px; padding: 8px 12px; border: 1px solid #d3bfaa; border-radius: 9px; background: #fffaf1; color: #713e28; font: inherit; font-size: 14px; font-weight: 750; line-height: 1.5; cursor: pointer; } .mc-code-sessions .mc-code-sessions__toggle:hover { background: #f2e4d1; border-color: #b38561; } .mc-code-sessions .mc-code-sessions__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 290px), 1fr)); gap: 18px; list-style: none; padding: 0; margin: 0; } .mc-code-sessions .mc-code-sessions__list > li { min-width: 0; margin: 0; padding: 0; list-style: none; } .mc-code-sessions .mc-code-sessions__card { min-width: 0; height: 100%; display: flex; flex-direction: column; padding: 23px; border: 1px solid var(--mcs-border); border-radius: 18px; background: #fffefa; box-shadow: 0 4px 12px rgb(66 43 15 / 3%); } .mc-code-sessions .mc-code-sessions__card-top { display: flex; align-items: flex-start; gap: 17px; margin-bottom: 19px; } .mc-code-sessions .mc-code-sessions__calendar { display: flex; flex: 0 0 66px; width: 66px; flex-direction: column; align-items: center; overflow: hidden; border: 1px solid #d3bca2; border-radius: 12px; background: #fffaf0; text-align: center; font-variant-numeric: tabular-nums; } .mc-code-sessions .mc-code-sessions__calendar-month { width: 100%; padding: 4px 3px; background: #ac4329; color: white; font-size: 13px; font-weight: 800; line-height: 1.5; text-transform: uppercase; letter-spacing: .06em; } .mc-code-sessions .mc-code-sessions__calendar-day { padding: 4px 2px 0; font-size: 29px; font-weight: 800; line-height: 1.2; letter-spacing: -.05em; } .mc-code-sessions .mc-code-sessions__calendar-year { padding: 0 2px 6px; color: #79604b; font-size: 12px; line-height: 1.6; } .mc-code-sessions .mc-code-sessions__card-heading { min-width: 0; flex: 1; } .mc-code-sessions .mc-code-sessions__title { margin: 1px 0 9px; font-size: 18px; font-weight: 780; line-height: 1.35; letter-spacing: -.025em; text-wrap: balance; } .mc-code-sessions .mc-code-sessions__badges { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; } .mc-code-sessions .mc-code-sessions__badge { display: inline-flex; gap: 6px; align-items: center; padding: 4px 8px; border: 1px solid #d8d4ca; border-radius: 7px; font-size: 12px; font-weight: 750; line-height: 1.5; color: #55594c; background: #f4f3ed; } .mc-code-sessions .mc-code-sessions__badge[data-state="scheduled"] { background: #eef4e8; border-color: #c8d8ba; color: #385433; } .mc-code-sessions .mc-code-sessions__badge[data-state="available"] { background: #fff9ed; border-color: #ead4ac; color: #775122; } .mc-code-sessions .mc-code-sessions__badge[data-state="full"] { background: #fff0d5; border-color: #dab979; color: #76501c; } .mc-code-sessions .mc-code-sessions__badge[data-state="cancelled"] { background: #f9e9e4; border-color: #e0bcb0; color: #8a3a2b; } .mc-code-sessions .mc-code-sessions__card[data-planning="cancelled"] { background: #fbf8f4; border-style: dashed; } .mc-code-sessions .mc-code-sessions__card[data-planning="cancelled"] .mc-code-sessions__calendar-month { background: #806c60; } .mc-code-sessions .mc-code-sessions__dates { margin: 0 0 16px; font-size: 15px; line-height: 1.75; font-weight: 750; } .mc-code-sessions .mc-code-sessions__facts { display: grid; gap: 13px; margin: 0 0 15px; } .mc-code-sessions .mc-code-sessions__facts > div { min-width: 0; } .mc-code-sessions .mc-code-sessions__facts dt { color: #75654f; font-size: 12px; line-height: 1.7; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; } .mc-code-sessions .mc-code-sessions__facts dd { margin: 3px 0 0; font-size: 14px; line-height: 1.7; } .mc-code-sessions .mc-code-sessions__address { display: block; color: var(--mcs-muted); font-size: 14px; } .mc-code-sessions .mc-code-sessions__notice { margin: 0 0 17px; padding-left: 12px; border-left: 2px solid #cfaa7e; color: #685440; font-size: 14px; line-height: 1.75; } .mc-code-sessions .mc-code-sessions__schedule { margin: 0 0 20px; border-block: 1px solid #e6ddcf; } .mc-code-sessions .mc-code-sessions__schedule summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; padding: 11px 0; cursor: pointer; list-style: none; font-size: 14px; font-weight: 750; line-height: 1.7; } .mc-code-sessions .mc-code-sessions__schedule summary::-webkit-details-marker { display: none; } .mc-code-sessions .mc-code-sessions__schedule summary::after { content: "+"; flex: 0 0 24px; width: 24px; height: 24px; display: grid; place-items: center; color: #88532c; border: 1px solid #dbc7ad; border-radius: 50%; font-size: 17px; font-weight: 500; line-height: 1; } .mc-code-sessions .mc-code-sessions__schedule[open] summary::after { content: "−"; } .mc-code-sessions .mc-code-sessions__schedule-list { padding: 0 0 12px; margin: 0; list-style: none; } .mc-code-sessions .mc-code-sessions__schedule-list > li { padding: 8px 0; margin: 0; display: grid; gap: 3px; border-top: 1px solid #eee8de; font-size: 14px; line-height: 1.8; } .mc-code-sessions .mc-code-sessions__schedule-day { font-weight: 750; } .mc-code-sessions .mc-code-sessions__schedule-ranges { color: var(--mcs-muted); } .mc-code-sessions .mc-code-sessions__schedule-range { display: inline-block; white-space: nowrap; } .mc-code-sessions .mc-code-sessions__actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: auto; padding-top: 2px; } .mc-code-sessions .mc-code-sessions__action { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 46px; padding: 11px 16px; border: 1px solid var(--mcs-orange); border-radius: 10px; background: var(--mcs-orange); color: white; font-size: 14px; font-weight: 800; line-height: 1.6; text-decoration: none; } .mc-code-sessions .mc-code-sessions__action:hover { background: #8c2f1b; border-color: #8c2f1b; } .mc-code-sessions .mc-code-sessions__action--secondary { color: #813f24; background: #fffaf1; border-color: #cfb292; } .mc-code-sessions .mc-code-sessions__action--secondary:hover { color: #6b351e; background: #f0e1cc; border-color: #aa8057; } .mc-code-sessions .mc-code-sessions__action svg { flex: 0 0 16px; width: 16px; height: 16px; } .mc-code-sessions .mc-code-sessions__timezone { margin: 19px 0 0; color: var(--mcs-muted); font-size: 13px; line-height: 1.7; } .mc-code-sessions .mc-code-sessions__state { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 20px; align-items: start; padding: 26px; border: 1px solid var(--mcs-border); border-radius: 18px; background: #fffefa; } .mc-code-sessions .mc-code-sessions__state-icon { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 20px; background: #f5ecdc; color: #96552e; } .mc-code-sessions .mc-code-sessions__state-icon svg { width: 35px; height: 35px; } .mc-code-sessions .mc-code-sessions__state-title { margin: 0 0 8px; font-size: 18px; letter-spacing: -.025em; line-height: 1.4; } .mc-code-sessions .mc-code-sessions__state-text { color: var(--mcs-muted); font-size: 14px; line-height: 1.8; } .mc-code-sessions .mc-code-sessions__state .mc-code-sessions__actions { margin-top: 19px; } .mc-code-sessions .mc-code-sessions__state--error { border-color: #d5b3a4; } .mc-code-sessions .mc-code-sessions__state--error .mc-code-sessions__state-icon { background: #f6e7df; color: #8c4731; } .mc-code-sessions .mc-code-sessions__live { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; border: 0; clip-path: inset(50%); overflow: hidden; white-space: nowrap; } @media (max-width: 680px) {   .mc-code-sessions { border-radius: 21px; padding: 22px 18px; margin-top: 30px; }   .mc-code-sessions .mc-code-sessions__header { gap: 13px; margin-bottom: 21px; }   .mc-code-sessions .mc-code-sessions__mark { flex-basis: 43px; width: 43px; height: 43px; border-radius: 13px; }   .mc-code-sessions .mc-code-sessions__mark svg { width: 28px; height: 28px; }   .mc-code-sessions .mc-code-sessions__list { grid-template-columns: minmax(0, 1fr); }   .mc-code-sessions .mc-code-sessions__card { padding: 20px; }   .mc-code-sessions .mc-code-sessions__state { padding: 21px; gap: 15px; grid-template-columns: minmax(0, 1fr); }   .mc-code-sessions .mc-code-sessions__state-icon { width: 49px; height: 49px; border-radius: 15px; } } @media (max-width: 380px) {   .mc-code-sessions { padding: 18px 13px; }   .mc-code-sessions .mc-code-sessions__header { gap: 10px; }   .mc-code-sessions .mc-code-sessions__heading { font-size: 22px; }   .mc-code-sessions .mc-code-sessions__mark { flex-basis: 36px; width: 36px; height: 36px; border-radius: 11px; }   .mc-code-sessions .mc-code-sessions__mark svg { width: 24px; height: 24px; }   .mc-code-sessions .mc-code-sessions__card { padding: 17px 14px; }   .mc-code-sessions .mc-code-sessions__card-top { gap: 12px; }   .mc-code-sessions .mc-code-sessions__calendar { flex-basis: 58px; width: 58px; }   .mc-code-sessions .mc-code-sessions__title { font-size: 17px; }   .mc-code-sessions .mc-code-sessions__action { width: 100%; } } @media (prefers-reduced-motion: reduce) {   .mc-code-sessions *, .mc-code-sessions *::before, .mc-code-sessions *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } } @media print {   .mc-code-sessions { background: white; color: black; box-shadow: none; border: 1px solid #999; padding: 5mm; }   .mc-code-sessions .mc-code-sessions__list { display: block; }   .mc-code-sessions .mc-code-sessions__card { margin-block: 4mm; break-inside: avoid; box-shadow: none; }   .mc-code-sessions .mc-code-sessions__toggle { display: none !important; } } 
/* Complements de la refonte : accueil.  *  * POURQUOI CE FICHIER. Les feuilles du kit (mc-redesign, mc-polish, mc-home)  * ont ete ecrites pour une page qui ne charge QU'ELLES. Ici, site.css garde  * aussi les anciennes regles de l'accueil (components.css, pages.css,  * visuals.css, responsive.css), non scopees, et plusieurs l'emportent par  * specificite. Chaque regle ci-dessous ramene une propriete a la valeur que  * le navigateur calcule sur la maquette du kit (apercu/accueil.html), mesuree  * element par element a 375, 768 et 1440 px le 8 novembre 2026. Aucune ne  * cree un style nouveau : elles retirent une fuite.  *  * Tout est limite a .mc-home : les pages hors refonte gardent leur rendu.  */  /* --- Typographie : les anciens titres imposent leur police etroite. --- */ .mc-home main :is(h1, h2, h3, h4, strong, small) { font-family: inherit; } .mc-home main strong { color: inherit; }  /* --- Hero --- */ .mc-home .hero { min-height: 0; overflow: visible; } .mc-home .hero-road { opacity: 1; } .mc-home .hero-road .road-line { background: none; } .mc-home .hero-road .road-center { background-image: none; } .mc-home .hero-grid { position: static; min-height: 0; } .mc-home .hero-copy { max-width: none; } .mc-home .hero-card { overflow: visible; } :where(.mc-home) .hero-card { max-width: none; } .mc-home .hero-card dl > div { display: block; grid-template-columns: none; gap: normal; padding-block: 0; border-top: 0; } .mc-home .fact-strip { position: static; font-size: inherit; line-height: inherit; } .mc-home .fact-strip > * { font-weight: 400; align-items: normal; }  /* --- Objectif code --- */ .mc-home .objectif-code-section { border-block: 0; } .mc-home .objectif-code-grid { margin-inline: auto; } .mc-home .objectif-code-steps { display: block; gap: normal; grid-template-columns: none; } .mc-home .objectif-code-steps li { display: list-item; grid-template-columns: none; gap: normal; align-items: normal; } .mc-home .objectif-code-visual { position: static; min-height: auto; } .mc-home .objectif-code-visual picture { position: static; } .mc-home .objectif-code-visual img { border-radius: 0; }  /* --- Avis --- */ .mc-home .reviews-section { overflow: visible; } .mc-home .reviews-panel { position: static; overflow: visible; } .mc-home .reviews-panel::before { content: none; } .mc-home :is(.reviews-intro, .rating-card, .review-themes, .controlled-reviews) { position: static; } :where(.mc-home) .rating-card { max-width: none; } .mc-home .rating-score span { font-weight: 400; margin-left: 0; } .mc-home .review-themes li { grid-template-columns: none; } .mc-home .review-themes .theme-number { letter-spacing: normal; } .mc-home .reviews-intro h2 { max-width: none; }  /* --- Titres de section --- */ .mc-home .section-muted { border-block: 0; } .mc-home .section-heading { max-width: none; }  /* --- Agence --- */ .mc-home .agency-visual figcaption { display: block; grid-template-columns: none; gap: normal; } .mc-home .agency-visual figcaption span { font-size: inherit; line-height: inherit; }  /* --- Garanties --- */ .mc-home .official-logo-visual, .mc-home .cpf-eligibility-visual { padding: 0; border-radius: 0; background: transparent; } .mc-home .cpf-eligibility-visual { align-items: normal; } .mc-home .official-logo-copy strong { line-height: inherit; } .mc-home .official-logo-copy small { font-weight: 400; letter-spacing: normal; text-transform: none; } .mc-home .credentials-grid .service-card { display: block; flex-direction: row; box-shadow: none; min-height: auto; } .mc-home .cpf-eligibility-mark { grid-template-columns: none; } .mc-home .cpf-eligibility-mark figcaption { color: inherit; } .mc-home :is(.credentials-grid, .price-card) :is(ul, li) { list-style-type: none; }  /* --- Formations --- */ .mc-home .formation-title-row { display: block; gap: normal; align-items: normal; } .mc-home :is(.formation-card, .price-card) { min-height: auto; }  /* --- Tarifs --- */ .mc-home .price-card h3 small { font-weight: inherit; } .mc-home .code-stage-highlight span { margin-top: 0; } .mc-home .accelerated-repeat { justify-content: normal; flex-direction: row; } .mc-home .price-actions { flex-direction: row; } :where(.mc-home) .accelerated-repeat .button { width: auto; } .mc-home .price-actions { align-items: center; } .mc-home .accelerated-repeat .accelerated-price { line-height: 1.75; } .mc-home .accelerated-repeat .accelerated-price small { line-height: 1.75; } .mc-home .accelerated-price-notes { color: inherit; margin-bottom: 0; } .mc-home .all-prices-link { margin-top: 0; border-top: 0; }  /* --- Methode --- */ .mc-home .steps li { grid-template-columns: none; border-top: 0; }  /* --- Marges des sections « Objectif code » et « Avis ».  * components.css les rabat par un selecteur d'identifiant (#objectif-code),  * qui l'emporte sur toute classe : seul un identifiant peut les rendre aux  * valeurs de mc-home.css, repetees ici avec ses paliers. --- */ .mc-home #objectif-code { padding-block-end: 83px; } .mc-home #objectif-code + .reviews-section { padding-block-start: 86px; } @media (max-width: 940px) {   .mc-home #objectif-code { padding-block-end: 68px; }   .mc-home #objectif-code + .reviews-section { padding-block-start: 68px; } } @media (max-width: 720px) {   .mc-home #objectif-code { padding-block-end: 54px; }   .mc-home #objectif-code + .reviews-section { padding-block-start: 54px; } }  /* --- Proportions des images. visuals.css et responsive.css imposent 16/9 ou  * 4/3 ; la maquette garde, au-dessus de 720 px, la proportion des attributs  * width/height. `:where()` laisse a mc-home.css ses propres proportions des  * petits ecrans, plus specifiques. --- */ @media (min-width: 721px) {   :where(.mc-home) .agency-visual img { aspect-ratio: auto 1200 / 675; }   :where(.mc-home) .agency-visual-facade img { aspect-ratio: auto 1360 / 765; }   :where(.mc-home) .agency-visual-vehicle img { aspect-ratio: auto 1200 / 630; }   :where(.mc-home) .objectif-code-visual img { aspect-ratio: auto 1024 / 1536; } }  /* --- Carte « Stage intensif » du hero, quand une session est publiee.  * La maquette du kit ne la montre pas (aucune session n'existait a la  * capture). Elle reprend la charte : rayon et ombre de .hero-card, bleu nuit  * du visuel nocturne de l'agence, pastille orange, prix en DM Serif Display.  * Contenu et ordre inchanges ; seule la presentation change. --- */ .mc-home .hero-card.stage-card {   position: relative;   display: grid;   grid-template-rows: minmax(0, 1fr) auto;   min-height: 520px;   padding: 0;   overflow: hidden;   isolation: isolate;   border: 1px solid #0d1d2e;   background: #0b1828;   color: #fffdf8; } .mc-home .stage-card::before {   content: "";   position: absolute;   inset: 0;   z-index: 1;   background: linear-gradient(100deg, #0b1828 0%, #0b1828 30%, rgb(11 24 40 / 72%) 50%, rgb(11 24 40 / 18%) 70%, transparent 82%); } .mc-home .stage-card .stage-card-visual { position: absolute; inset: 0; z-index: 0; margin: 0; } .mc-home .stage-card .stage-card-visual picture { display: block; height: 100%; } .mc-home .stage-card .stage-card-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 62% 34%; border-radius: 0; } .mc-home .stage-card .stage-card-copy { position: relative; z-index: 2; max-width: 58%; padding: 30px 30px 26px; } .mc-home .stage-card .stage-card-eyebrow {   display: inline-flex;   align-items: center;   margin: 0 0 18px;   padding: 5px 12px;   border-radius: 999px;   background: var(--mc-orange, #b43d21);   color: #fffdf8;   font-size: 12px;   font-weight: 800;   line-height: 1.5;   letter-spacing: .14em;   text-transform: uppercase; } .mc-home .stage-card .stage-card-eyebrow::before { content: none; } .mc-home .stage-card .stage-card-title {   margin: 0 0 20px;   color: #fffdf8;   font-size: clamp(30px, 2.6vw, 38px);   font-weight: 780;   line-height: 1.08;   letter-spacing: -.045em;   text-transform: none; } .mc-home .stage-card .stage-card-facts { display: block; margin: 0 0 20px; padding: 0; border: 0; } .mc-home .stage-card .stage-card-facts > div {   display: grid;   grid-template-columns: 74px minmax(0, 1fr);   gap: 10px;   padding: 9px 0;   border-top: 1px solid rgb(255 253 248 / 20%); } .mc-home .stage-card .stage-card-facts dt { margin: 0; color: #d9cfc2; font-size: 12px; font-weight: 750; line-height: 2; letter-spacing: .1em; text-transform: uppercase; } .mc-home .stage-card .stage-card-facts dd { margin: 0; color: #fffdf8; font-size: 14px; line-height: 1.6; } .mc-home .stage-card .stage-card-price { display: flex; align-items: baseline; gap: 8px; margin: 0 0 20px; } .mc-home .stage-card .stage-card-price strong { color: #f5b35e; font-family: 'DM Serif Display', Georgia, serif; font-size: 46px; font-weight: 400; line-height: 1; letter-spacing: -.02em; } .mc-home .stage-card .stage-card-price span { color: #d9cfc2; font-size: 14px; font-weight: 700; } .mc-home .stage-card .stage-card-cta { width: auto; } .mc-home .stage-card .stage-card-tags {   position: relative;   z-index: 2;   display: flex;   flex-wrap: wrap;   gap: 6px 16px;   margin: 0;   padding: 14px 30px;   border-top: 1px solid rgb(255 253 248 / 18%);   background: rgb(7 22 39 / 88%);   color: #f1e9de;   font-size: 14px;   font-weight: 650;   list-style: none; } .mc-home .stage-card .stage-card-tags li { margin: 0; padding: 0; color: inherit; } .mc-home .stage-card .stage-card-tags li + li { padding-inline-start: 16px; border-inline-start: 1px solid rgb(255 253 248 / 30%); } .mc-home .stage-card .stage-card-tags li::marker { content: none; } @media (max-width: 940px) {   .mc-home .stage-card .stage-card-copy { max-width: 72%; padding: 26px 24px 22px; }   .mc-home .stage-card .stage-card-tags { padding-inline: 24px; } } @media (max-width: 720px) {   /* Une seule colonne : sous le texte, l'illustration devient une bande      dans le flux, cadree sur les visages, puis la bande d'informations. En      fond de carte, elle ne laissait voir qu'un coin de table. */   .mc-home .hero-card.stage-card { display: flex; flex-direction: column; min-height: 0; }   .mc-home .stage-card::before { content: none; }   .mc-home .stage-card .stage-card-copy { max-width: none; padding: 24px 20px 22px; }   .mc-home .stage-card .stage-card-visual { position: relative; inset: auto; order: 1; aspect-ratio: 16 / 10; }   .mc-home .stage-card .stage-card-visual picture { position: absolute; inset: 0; }   .mc-home .stage-card .stage-card-visual img { object-position: 50% 30%; }   .mc-home .stage-card .stage-card-tags { order: 2; padding-inline: 20px; } }  /* --- Module des sessions : la liste des conditions de la session (duree,  * places) n'existe pas dans le module du kit ; elle reprend la taille des  * faits de la carte. --- */ .mc-home .mc-code-sessions .mc-code-sessions__details { margin: 0 0 18px; padding-left: 20px; } .mc-home .mc-code-sessions .mc-code-sessions__details li { margin: 6px 0; font-size: 14px; line-height: 1.7; } .mc-home .mc-code-sessions .mc-code-sessions__dates { margin: 0; }  /* components.css ecarte la fleche des liens textuels de 8 px ; mc-home.css la colle par son propre gap. */ .mc-home .text-link::after { margin-inline-start: 0; }  /* Bandeau des labels : components.css en fait trois cartes separees (bordure,  * ombre, ecart) ; la maquette en fait un seul cadre partage. */ :where(.mc-home) .official-logo-grid { gap: 0; } :where(.mc-home) .official-logo-grid li { border: 0; border-radius: 0; background: none; box-shadow: none; }  /* Impression : responsive.css masque encore `.contact-section` (ancienne mise en page). Le bloc  * contact de l'accueil porte le téléphone et l'e-mail de l'agence : il doit figurer sur la feuille. */ @media print {   .mc-home .contact-section { display: block !important; break-inside: avoid; } } 
/* Complements de la refonte : contact. */  /* Tour 3 — cibles tactiles : sur mobile, les liens de la FAQ (colonne « Sources ») et le choix  * « selon ma situation » des aides mesuraient 30 et 42 px ; la cible minimale visée est 44 px. */ @media (max-width: 720px) {   .mc-redesign .aside-card .related-links li { padding: 0; }   .mc-redesign .aside-card .related-links a,   .mc-redesign .aside-card p > a:only-child {     display: inline-flex;     align-items: center;     min-height: 44px;   }   .mc-redesign .mc-page-hero nav[aria-label="Choisir selon ma situation"] a { min-height: 44px; }   .mc-redesign .aside-card p a:not(:only-child) { display: inline-flex; align-items: center; min-height: 44px; padding-block: 0; }   .mc-redesign .form-choice label { display: flex; align-items: center; min-height: 44px; } }  /* Impression : le bouton d'appel à l'action final renvoie vers une page web ; imprimé, il  * restait seul sur une dernière feuille quasi blanche (aides au permis). */ @media print {   .mc-page-aides-financement-permis .mc-section > p:has(> a.button:only-child) { display: none; }   /* Les marges basses empilées (article, lecteur, section) suffisaient à pousser une feuille vide. */   .mc-page-aides-financement-permis .mc-article,   .mc-page-aides-financement-permis .mc-reader,   .mc-page-aides-financement-permis .mc-document,   .mc-page-aides-financement-permis .mc-document > .mc-section:last-child { padding-bottom: 0 !important; margin-bottom: 0 !important; border-bottom: 0 !important; } } 
/* Complements de la refonte : contenu. */ 
/* Complements de la refonte : tarifs, aides au financement, questions fréquentes, forfaits accélérés.    POURQUOI ce fichier : mc-redesign.css / mc-polish.css sont partagés et portés tels quels du kit ;    les écarts propres au dépôt se corrigent ici, sous .mc-redesign, sans les toucher. */  /* Le <main> du gabarit de base n'a pas la classe .mc-main du kit : les chapeaux de page prennent    néanmoins toute la largeur de leur colonne. */ .mc-redesign main .page-intro, .mc-redesign main .direct-answer {   max-width: none; }  /* Les ancres de rubrique (sections portant l'id historique) ne se glissent pas sous l'en-tête. */ .mc-redesign .mc-document .mc-section, .mc-redesign .mc-document details.other-prices {   scroll-margin-top: 114px; }  /* Questions fréquentes : la liste garde un rythme régulier entre les cartes dépliables. */ .mc-redesign .faq-list {   display: grid;   gap: 11px; }  /* Titres de question dans <summary> : l'élément h3 ne doit pas casser la mise en ligne. */ .mc-redesign .mc-faq-item > summary > h3 {   flex: 1;   min-width: 0; }  /* Tableaux de prix : les libellés longs reviennent à la ligne et se lisent jusqu'au bout. */ .mc-redesign .mc-table[data-mc-table-kind="prices"] tbody th {   white-space: normal;   overflow-wrap: anywhere; }  /* Le pictogramme d'imprimante accompagne le bouton existant ; il reste décoratif. */ .mc-redesign .mc-reading-tools button .mc-tool-icon {   pointer-events: none; }  /* Bouton « Imprimer cette page » : sans JavaScript il n'aurait aucune action, il reste masqué. */ .mc-redesign .mc-reading-tools button[hidden] {   display: none !important; }  /* Impression : le bouton final n'est qu'un lien vers le formulaire ; imprimé, il  * restait seul sur une dixième feuille quasi blanche. */ @media print {   .mc-page-tarifs .mc-tariffs > p:has(> a.button:only-child) { display: none; }   .mc-page-tarifs .mc-article,   .mc-page-tarifs .mc-reader,   .mc-page-tarifs .mc-tariffs { padding-bottom: 0 !important; margin-bottom: 0 !important; } } 
/* Complements de la refonte : informations pratiques, nos résultats, réclamation.    Tout est scopé sous .mc-redesign (classe posée par le bloc body_class des gabarits). */  /* ---- Nos résultats : un tableau de sept colonnes lisible en entier ----    Demande de la responsable de l'agence : plus de défilement horizontal pour    lire une ligne. Sur grand écran la page prend plus de largeur et le tableau    se répartit sur toute celle-ci ; sur petit écran chaque ligne devient une    fiche (étiquette de colonne puis valeur), sans retirer aucune information. */ .mc-redesign.mc-page-nos-resultats .mc-container { max-width: 1320px; } .mc-redesign.mc-page-nos-resultats .mc-reader-wide .mc-document > .mc-section:first-child {   padding: 28px 24px; } .mc-redesign.mc-page-nos-resultats .mc-table-scroll { overflow: visible; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] {   min-width: 0;   width: 100%;   table-layout: fixed;   font-size: 14px;   line-height: 1.65; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] th, .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] td {   min-width: 0;   padding: 15px 14px;   overflow-wrap: break-word;   word-break: normal;   hyphens: auto; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] th:nth-child(1) { width: 16%; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] th:nth-child(2) { width: 13%; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] th:nth-child(3) { width: 12%; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] th:nth-child(4) { width: 10%; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] th:nth-child(5) { width: 14%; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] th:nth-child(6) { width: 22%; } .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] th:nth-child(7) { width: 13%; } /* Le résultat reste le chiffre qu'on cherche, sans jamais être coupé : un motif    en toutes lettres (« pas assez de réponses ») passe à la ligne. */ .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody td:nth-child(2) {   font-size: 20px;   line-height: 1.35;   letter-spacing: -.02em;   white-space: normal; }  /* `screen` seulement : la feuille imprimée garde le vrai tableau, avec ses en-têtes visibles. */ @media screen and (max-width: 980px) {   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"],   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody {     display: block;   }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] caption { display: block; }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] thead {     position: absolute;     width: 1px;     height: 1px;     margin: -1px;     padding: 0;     overflow: hidden;     clip-path: inset(50%);     white-space: nowrap;   }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody tr {     display: block;     padding: 6px 0;     border-bottom: 1px solid #e6e0d6;   }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody tr:last-child { border-bottom: 0; }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody tr:hover { background: none; }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody th,   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody td {     display: grid;     grid-template-columns: minmax(110px, 38%) minmax(0, 1fr);     gap: 14px;     width: auto;     padding: 9px 16px;     border: 0;     font-size: 14px;   }   /* Les largeurs en pourcentage du tableau large s'appliquent aussi à l'en-tête de ligne :      sans cette remise à zéro, le libellé d'un indicateur n'occupe que 16 % de la fiche. */   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody th:nth-child(n) { width: auto; }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody th { font-size: 16px; padding-top: 14px; }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody td:nth-child(2) { font-size: 18px; }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody th::before,   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody td::before {     content: attr(data-mc-column-label);     font-size: 13px;     font-weight: 800;     line-height: 1.7;     color: #6b6256;   } }  /* Sous 560 px, l'étiquette passe au-dessus de la valeur : à 320 px, deux colonnes ne laissaient    qu'une soixantaine de pixels au texte (source, méthode), coupé mot à mot. */ @media screen and (max-width: 560px) {   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody th,   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody td {     grid-template-columns: minmax(0, 1fr);     gap: 2px;     padding: 8px 6px;   }   .mc-redesign.mc-page-nos-resultats .mc-reader-wide .mc-document > .mc-section:first-child { padding: 22px 14px; } }  /* Impression : le libellé de ligne suit la taille du tableau, au lieu des 16 px de l'écran. */ @media print {   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody th { font-size: 9pt; }   .mc-redesign.mc-page-nos-resultats .mc-table[data-columns="7"] tbody td:nth-child(2) { font-size: 11pt; } }  /* ---- Informations pratiques ---- */ /* Liens d'ancres du sommaire de page : 42 px rendus (2,75 rem sur une racine de 15 px), 44 px attendus. */ .mc-redesign .practical-links a { min-height: 44px; } .mc-redesign.mc-page-informations-pratiques .mc-document .mc-table-scroll { margin: 18px 0 24px; } .mc-redesign.mc-page-informations-pratiques .mc-document h3.mc-heading-with-icon { margin-top: 34px; }  /* ---- Réclamation : le titre RGPD vient d'un gabarit partagé (sans pictogramme) ---- */ .mc-redesign.mc-page-qualite--reclamation .mc-complaint-grid > .notice > h2 { font-size: 28px; margin-bottom: 4px; } .mc-redesign.mc-page-qualite--reclamation .mc-process-section .mc-heading-with-icon { margin-bottom: 20px; } /* Case de consentement : 24 px (seuil WCAG 2.5.8) au lieu des 18 px du kit ; le libellé voisin reste cliquable. */ .mc-redesign.mc-page-qualite--reclamation .form-consent { grid-template-columns: 24px minmax(0, 1fr); } .mc-redesign.mc-page-qualite--reclamation .form-consent > input { width: 24px; height: 24px; margin-top: 0; } @media (max-width: 760px) {   .mc-redesign.mc-page-qualite--reclamation .mc-process-section ol,   .mc-redesign.mc-page-qualite--reclamation .mc-process-section .legal-data { grid-template-columns: 1fr; }   .mc-redesign.mc-page-qualite--reclamation .mc-complaint-grid { grid-template-columns: 1fr; gap: 32px; } } 
/* Complements de la refonte : legal. */  /* Le bouton d'impression n'a d'action que par JavaScript : sans lui, l'attribut hidden doit rester respecte    (mc-polish.css donne display:flex au bouton, ce qui l'emporterait sur hidden). */ .mc-redesign .mc-reading-tools button[hidden] { display: none; }  /* Les pages longues s'impriment en entier : le sommaire replie n'a pas a masquer le contenu. */ @media print {   .mc-redesign .mc-reading-tools { display: none !important; } }  /* Fil d'Ariane : le lien « Accueil » ne faisait que 28 px de haut sur tablette ; cible tactile portee a 44 px. */ @media(max-width:999px){   .mc-redesign.mc-kind-legal .breadcrumbs a{display:inline-flex;align-items:center;min-height:44px} }  /* Impression : les tableaux d'informations (dl.legal-data) gardent leurs marges d'ecran de 15 px par ligne,    ce qui etale une page de mentions sur six feuilles dont la derniere est presque vide. Lignes resserrees. */ @media print {   .mc-redesign.mc-kind-legal .legal-data { margin: 3mm 0 !important; }   .mc-redesign.mc-kind-legal .legal-data > div { padding: 1.3mm 1mm !important; gap: 5mm !important; break-inside: avoid; }   .mc-redesign.mc-kind-legal .mc-page-hero { padding-bottom: 4mm !important; }   .mc-redesign.mc-kind-legal .mc-document p,   .mc-redesign.mc-kind-legal .mc-document li { line-height: 1.45 !important; margin-block: 0 2mm !important; }   .mc-redesign.mc-kind-legal .mc-reader { padding: 1mm 0 !important; }   .mc-redesign.mc-kind-legal .mc-document > :last-child { margin-bottom: 0 !important; padding-bottom: 0 !important; border-bottom: 0 !important; }   .mc-redesign.mc-kind-legal .mc-reader,   .mc-redesign.mc-kind-legal .mc-document { padding-block: 1mm 0 !important; }   /* La marge basse de l'article (ancien .legal-page) suffisait a creer une derniere feuille entierement blanche. */   .mc-redesign.mc-kind-legal article.mc-article { padding-bottom: 0 !important; margin-bottom: 0 !important; }   .mc-redesign.mc-kind-legal .mc-heading-with-icon { break-after: avoid; }   .mc-redesign.mc-kind-legal .mc-document .mc-section { padding: 2.5mm 0 !important; margin-bottom: 1.5mm !important; } } 
/* Complements de la refonte : chrome.  * Neutralise les fuites des anciennes regles .site-header/.site-nav/.menu-toggle  * (layout.css, responsive.css) sur le header/footer portant .mc-site-chrome. */ .mc-site-chrome.site-header{inset-block-start:0} .mc-site-chrome .site-nav>a:not(.button){padding:0} .mc-site-chrome .site-nav>a.button{padding:11px 18px} .mc-site-chrome .brand{min-height:0;display:block} .mc-site-chrome .menu-toggle{padding:0;transition:none} .mc-site-chrome .menu-toggle-lines,.mc-site-chrome .menu-toggle-lines::before,.mc-site-chrome .menu-toggle-lines::after{transition:none} .mc-site-chrome .menu-toggle-lines::before,.mc-site-chrome .menu-toggle-lines::after{transform:none} .mc-site-chrome .menu-toggle[aria-expanded="true"] .menu-toggle-lines::before{transform:rotate(45deg)} .mc-site-chrome .menu-toggle[aria-expanded="true"] .menu-toggle-lines::after{transform:rotate(-45deg)} @media(max-width:999px){  .mc-site-chrome .site-nav>a:not(.button){padding:0} } @media(max-width:540px){  .mc-site-chrome .site-nav>a:not(.button){padding:6px 10px}  .mc-site-chrome .site-nav>a.button{padding:11px 18px} } /* Les anciens .menu-enabled .site-nav (responsive.css) ne s'appliquent plus : la classe n'est plus posée. */ @media(prefers-reduced-motion:reduce){.mc-site-chrome *{transition:none!important;animation:none!important;scroll-behavior:auto!important}} /* Cibles tactiles du pied de page : les regles .mc-redesign du kit ramenaient les liens (28 a 30 px en tablette), le telephone (39 px) et    l'adresse e-mail (36 px) sous les 44 px exiges sur mobile ; meme specificite, charge apres. */ @media(max-width:999px){  .mc-redesign .footer-list a,  .mc-redesign .footer-grid > div:nth-child(2) a[href^="tel:"],  .mc-redesign .footer-grid > div:nth-child(2) a[href^="mailto:"]{min-height:44px} } /* Sans JavaScript (data-menu-enhanced absent) : le kit ne montre que le bouton du menu et masque la navigation    sous 1000 px, mais ce bouton n'agit que par JavaScript. Les liens restent donc affiches en ligne, sous le logo,    et le bouton inutile est masque. L'en-tete perd sa hauteur fixe et sa position collante pour ne pas manger l'ecran. */ @media(max-width:999px){  .mc-redesign .mc-site-chrome.site-header:not([data-menu-enhanced="true"]){height:auto;position:static}  .mc-redesign .mc-site-chrome:not([data-menu-enhanced="true"]) .menu-toggle{display:none}  .mc-redesign .mc-site-chrome:not([data-menu-enhanced="true"]) .site-nav{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;position:static;flex-basis:100%;gap:0 18px;padding:4px 0 12px;background:transparent;border-bottom:0;box-shadow:none;max-height:none;overflow:visible}  .mc-redesign .mc-site-chrome:not([data-menu-enhanced="true"]) .site-nav>a{border-bottom:0;min-height:44px;padding:0}  .mc-redesign .mc-site-chrome:not([data-menu-enhanced="true"]) .site-nav>a.button{padding:11px 18px;margin:0} } 
/* Pages de formation, fiches de forfait accélérées, bandeau des sessions et pages d'erreur,    refondues dans la charte. POURQUOI ce fichier : mc-redesign.css / mc-polish.css sont partagés    et portés tels quels du kit ; les écarts propres à ces pages se règlent ici, sous    `.mc-redesign`, sans les modifier. */  /* --- Repères essentiels : trois cartes dans la colonne de lecture --- */ .mc-redesign .formation-facts {   padding: 0;   margin: 0 0 24px;   border: 0;   background: none; }  .mc-redesign .fact-card-grid {   gap: 16px; }  .mc-redesign .fact-card-grid > div {   padding: 22px 22px 20px;   border: 1px solid #e0d8ca;   border-radius: 15px;   background: #faf7f0;   box-shadow: none; }  .mc-redesign .fact-card-grid > div:nth-child(2) {   background: #f4f7f0;   border-color: #d8ded1; }  .mc-redesign .fact-card-grid > div:nth-child(3) {   background: #fbf3e8;   border-color: #e8d3b8; }  .mc-redesign .fact-card-grid dt {   margin: 0 0 8px;   color: #87523a;   font-size: 13px;   letter-spacing: 0.12em; }  .mc-redesign .fact-card-grid dd {   color: var(--mc-ink);   font-size: 18px;   font-weight: 750;   line-height: 1.4;   letter-spacing: -0.02em; }  /* --- Modalités et questions : cartes en deux colonnes --- */ .mc-redesign .answer-list {   grid-template-columns: repeat(2, minmax(0, 1fr));   align-items: start;   gap: 16px;   margin: 24px 0; }  .mc-redesign .answer-list article {   min-width: 0;   padding: 24px 24px 22px;   border: 1px solid #e0d8ca;   border-radius: 15px;   background: #faf7f0; }  .mc-redesign .answer-list article:nth-child(3n + 2) {   background: #f4f7f0;   border-color: #d8ded1; }  .mc-redesign .answer-list h3 {   margin: 0 0 12px;   font-size: 18px; }  .mc-redesign .answer-list p + p {   margin-top: 14px; }  .mc-redesign .answer-list p {   font-size: 15px;   line-height: 1.8; }  /* --- Pied de page : repères vérifiés, autres parcours, appel à l'action --- */ .mc-redesign .formation-aside {   position: static;   grid-template-columns: repeat(2, minmax(0, 1fr));   gap: 16px;   margin: 0 0 24px; }  .mc-redesign .aside-card {   min-width: 0;   padding: 24px;   border: 1px solid #e0d8ca;   border-radius: 15px;   background: #fff;   box-shadow: none; }  .mc-redesign .aside-card p {   font-size: 14px;   line-height: 1.8; }  .mc-redesign .aside-card .status-label {   margin: 0 0 12px;   color: #87523a;   font-size: 13px;   letter-spacing: 0.12em; }  .mc-redesign .aside-card .source-note {   padding-top: 14px;   margin-top: 16px;   border-top: 1px solid var(--mc-line);   color: #5f5b52;   font-size: 14px;   text-transform: none;   letter-spacing: 0;   font-weight: 500; }  .mc-redesign .related-links li {   border-top-color: var(--mc-line); }  /* Cible tactile : 36 px de haut dans pages.css, 44 px attendus sur mobile (vérifié à 320 px). */ .mc-redesign .related-links a {   min-height: 44px; }  .mc-redesign .formation-cta {   padding: 31px;   border: 1px solid #e8d3b8;   border-radius: 18px;   background: #fbf3e8; }  .mc-redesign .formation-cta:last-child {   padding-bottom: 31px;   border-bottom: 1px solid #e8d3b8; }  .mc-redesign .formation-cta .button-row {   align-items: center;   margin-top: 20px; }  .mc-redesign .mc-hero-actions {   margin-top: 26px; }  .mc-redesign .text-link {   min-height: 44px;   display: inline-flex;   align-items: center; }  .mc-redesign .mc-section > .eyebrow {   margin-bottom: 8px; }  /* Le contenu des formations ne contient que des tableaux courts : ils tiennent dans la carte. */ .mc-redesign .formation-main > .mc-section.tariff-group {   max-width: none; }  /* --- Bandeau des prochaines sessions (code intensif), au-dessus du titre de la page --- */ .mc-redesign .mc-sessions-bandeau {   padding: 28px 0 0; }  .mc-redesign .mc-sessions-bandeau .mc-code-sessions {   margin-block: 0; }  .mc-redesign .mc-sessions-bandeau .mc-code-sessions p {   color: inherit; }  .mc-redesign .mc-sessions-bandeau .mc-code-sessions p + p {   margin-top: 0; }  .mc-redesign .mc-sessions-bandeau .mc-code-sessions__action, .mc-redesign .mc-sessions-bandeau .mc-code-sessions__action:hover {   color: #fff; }  /* Le détail d'une session est une liste sans style dans mc-code-sessions.css : sans cette    remise en forme, elle hérite des puces et du retrait du navigateur (vérifié à 320 px). */ .mc-redesign .mc-sessions-bandeau .mc-code-sessions__details {   display: grid;   gap: 6px;   padding: 0;   margin: 0 0 15px;   list-style: none;   font-size: 14px;   line-height: 1.7; }  .mc-redesign .mc-sessions-bandeau .mc-code-sessions__details li {   margin: 0;   padding: 0; }  /* Sur très petit écran, le texte d'introduction reprend toute la largeur sous le pictogramme. */ @media (max-width: 420px) {   .mc-redesign .mc-sessions-bandeau .mc-code-sessions__header {     flex-direction: column;     gap: 12px;   } }  /* Impression : les dates et horaires des sessions restent, mais les boutons d'inscription    n'ont aucun sens sur papier, et le bandeau ne doit pas coller au fil d'Ariane qui le suit. */ @media print {   .mc-redesign .mc-sessions-bandeau {     padding: 0 0 6mm;   }    .mc-redesign .mc-sessions-bandeau .mc-code-sessions__actions {     display: none;   }    .mc-redesign .mc-sessions-bandeau .mc-code-sessions__card-top {     gap: 4mm;   } }  /* --- Pages d'erreur 404 et 500 --- */ .mc-redesign .mc-error-page {   min-height: 0;   padding-block: 0;   background: linear-gradient(110deg, #f5f0e8 0%, #faf7f1 65%, #fffdf8 100%);   border-bottom: 1px solid var(--mc-line); }  .mc-redesign .mc-error-inner {   max-width: 760px;   padding-block: 80px 96px; }  .mc-redesign .mc-error-icon {   margin-bottom: 20px; }  .mc-redesign .mc-error-inner h1 {   margin-bottom: 20px;   font-size: clamp(32px, 4.2vw, 52px); }  .mc-redesign .mc-error-inner .button-row {   align-items: center;   margin-top: 28px; }  /* --- Petits écrans --- */ @media (max-width: 760px) {   .mc-redesign .answer-list,   .mc-redesign .formation-aside {     grid-template-columns: 1fr;   }    .mc-redesign .answer-list article,   .mc-redesign .aside-card {     padding: 20px;   }    .mc-redesign .formation-cta {     padding: 22px 18px;   }    .mc-redesign .mc-error-inner {     padding-block: 48px 60px;   } } 
/* Règles communes à toute page portant la classe `.mc-redesign` (corps de page refondu).    POURQUOI ce fichier, chargé en dernier : les anciens styles imposent « Arial Narrow »    (--font-display) aux titres, aux balises strong/small et à quelques composants. La charte    refondue n'emploie que Manrope. La surcharge est bornée à `.mc-redesign` : les pages qui ne    portent pas cette classe (questionnaires de satisfaction) gardent leur rendu. */  /* Le jeton est redéfini pour toute la page : chaque composant historique qui lit    var(--font-display) (chiffres clés, notes, repères) passe à la police de la charte. */ .mc-redesign {   --font-display: 'Manrope', Arial, Helvetica, sans-serif; }  .mc-redesign h1, .mc-redesign h2, .mc-redesign h3, .mc-redesign h4, .mc-redesign strong, .mc-redesign small {   font-family: inherit; }  /* Fil d'Ariane : l'ancien separateur (pages.css, ::after) s'ajoutait a celui de la charte (::before),    d'ou « Accueil / / Page ». Un seul separateur : celui de la charte. */ .mc-redesign .breadcrumbs li:not(:last-child)::after { content: none; }  /* Impression : le lien d'evitement garde sa position fixe en bas de page et se repetait sur chaque feuille,    par-dessus le texte. La feuille imprimee n'a ni navigation ni lien d'evitement. */ @media print {   .mc-redesign .skip-link { display: none !important; } } 
