/* #366 : mise en page unique du parcours S'implanter (demande du gérant du 07/10/2026). Une colonne, une largeur, un rythme ;
   chaque partie = une carte (médias puis titre et texte) ; médias à la largeur de la colonne ; rangées pleines, hauteurs égales.
   Fichier généré par tools/da27_mep.py (ne pas éditer à la main) : sélecteurs développés, jamais de :is() à virgules. */
html.da27 .pc .pc-corps { padding-block-start: 32px; }
html.da27 .pc .pc-sections > * + * { margin-block-start: 24px; }
html.da27 .pc .pc-section + .pc-section { margin-block-start: 24px; padding-block-start: 0; border-top: 0; }
html.da27 .pc .pc-sections .sp-page, html.da27 .pc .pc-sections .dcr-cadre, html.da27 .pc .pc-sections .dcr-contenu, html.da27 .pc .pc-sections .pc-section > .ui-wrap { margin: 0; padding: 0; max-width: none; width: auto; background: none; border: 0; box-shadow: none; }
html.da27 .pc .pc-sections .sp-entete { margin: 0 0 24px; padding: 0; }
html.da27 .pc .pc-sections .dcr-contenu > h2.ui-h1 { margin: 8px 0 16px; font-size: var(--t-h2); }
html.da27 .pc .pc-sections .sp-chapo, html.da27 .pc .pc-sections .si-intro { margin: 0; max-width: 68ch; }
html.da27 .pc .sp-essentiel { margin: 0; }
html.da27 .pc .sp-essentiel > h2 { margin: 0 0 16px; }
html.da27 .pc .sp-essentiel .sp-chiffres { margin: 0 0 16px; }
html.da27 .pc .sp-essentiel__l { align-items: stretch; gap: 16px; }
html.da27 .pc .sp-essentiel__l > .da-carte { position: relative; height: 100%; }
html.da27 .pc .sp-essentiel__l .da-carte-corps { display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 24px; }
html.da27 .pc .sp-essentiel__l .da-carte-corps > div { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; color: var(--c-text-2); }
html.da27 .pc .sp-essentiel__l .da-carte-corps > div > * { display: inline; margin: 0; }
html.da27 .pc .sp-essentiel__plus.sp-essentiel__plus { position: static; margin-top: auto; padding: 0; min-height: 0; font-size: 0; }
html.da27 .pc .sp-essentiel__plus::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
html.da27 .pc .sp-essentiel__l > .da-carte:hover { transform: translateY(-3px); box-shadow: var(--sh-2); }
html.da27 .pc .sp-essentiel__l > .da-carte:focus-within { outline: 3px solid var(--c-action, #0B5CAD); outline-offset: 2px; }
@media (min-width: 900px) {
  html.da27.js .pc .sp-essentiel__l.sp-essentiel__l { display: grid; overflow: visible; grid-template-columns: repeat(6, minmax(0, 1fr)); }
  html.da27.js .pc .sp-essentiel__l.sp-essentiel__l > * { grid-column: span 2; flex: none; }
  html.da27.js .pc .sp-essentiel__l > :first-child:nth-last-child(4), html.da27.js .pc .sp-essentiel__l > :first-child:nth-last-child(4) ~ *, html.da27.js .pc .sp-essentiel__l > :first-child:nth-last-child(2), html.da27.js .pc .sp-essentiel__l > :first-child:nth-last-child(2) ~ *, html.da27.js .pc .sp-essentiel__l > :nth-child(4):nth-last-child(2), html.da27.js .pc .sp-essentiel__l > :nth-child(5):last-child { grid-column: span 3; }
}
html.da27 .pc .sp-corps, html.da27 .pc .gp-corps, html.da27 .pc .dcr-contenu { --mep-pad: clamp(20px, 2.6vw, 32px); display: grid; gap: 16px; }
html.da27 .pc .sp-corps > section, html.da27 .pc .sp-corps > .sp-sommaire, html.da27 .pc .gp-corps > section, html.da27 .pc .dcr-contenu > section.si-section { min-width: 0; margin: 0; padding: var(--mep-pad); display: grid; gap: 20px; align-content: start; background: var(--c-surface); border: 1px solid var(--c-border); border-radius: var(--r-xl); box-shadow: none; }
html.da27 .pc .sp-corps > section > *, html.da27 .pc .sp-corps > .sp-sommaire > *, html.da27 .pc .gp-corps > section > *, html.da27 .pc .dcr-contenu > section.si-section > * { margin: 0; min-width: 0; max-width: none; }
html.da27 .pc .sp-corps > section > .da-acc, html.da27 .pc .sp-corps > .sp-sommaire > .da-acc, html.da27 .pc .gp-corps > section > .da-acc, html.da27 .pc .dcr-contenu > section.si-section > .da-acc { margin-inline: calc(-1 * var(--mep-pad)); margin-block-end: calc(-1 * var(--mep-pad)); background: none; border: 0; border-radius: 0; box-shadow: none; }
html.da27 .pc .sp-corps > section > .da-acc:first-child, html.da27 .pc .sp-corps > .sp-sommaire > .da-acc:first-child, html.da27 .pc .gp-corps > section > .da-acc:first-child, html.da27 .pc .dcr-contenu > section.si-section > .da-acc:first-child { margin-block-start: calc(-1 * var(--mep-pad)); }
html.da27 .pc .sp-corps > section > .da-acc > summary, html.da27 .pc .sp-corps > .sp-sommaire > .da-acc > summary, html.da27 .pc .gp-corps > section > .da-acc > summary, html.da27 .pc .dcr-contenu > section.si-section > .da-acc > summary { padding: var(--mep-pad); min-height: 0; }
html.da27 .pc .sp-corps > section > * + .da-acc > summary, html.da27 .pc .sp-corps > .sp-sommaire > * + .da-acc > summary, html.da27 .pc .gp-corps > section > * + .da-acc > summary, html.da27 .pc .dcr-contenu > section.si-section > * + .da-acc > summary { padding-block-start: 4px; }
html.da27 .pc .sp-corps > section > .da-acc > .da-acc__rep, html.da27 .pc .sp-corps > .sp-sommaire > .da-acc > .da-acc__rep, html.da27 .pc .gp-corps > section > .da-acc > .da-acc__rep, html.da27 .pc .dcr-contenu > section.si-section > .da-acc > .da-acc__rep { padding: 0 var(--mep-pad) var(--mep-pad); max-width: none; }
html.da27 .pc .sp-corps > section .ill-picto, html.da27 .pc .sp-corps > .sp-sommaire .ill-picto, html.da27 .pc .gp-corps > section .ill-picto, html.da27 .pc .dcr-contenu > section.si-section .ill-picto { display: none; }
html.da27 .pc .pc-sections .sp-avis, html.da27 .pc .pc-sections .si-note, html.da27 .pc .pc-sections .vf-bloc, html.da27 .pc .pc-sections .sp-repli, html.da27 .pc .pc-sections .sp-corps > *, html.da27 .pc .pc-sections .gp-corps > * { max-width: none; }
html.da27 .pc .pc-sections .da-acc__rep > * + * { margin-block-start: 16px; }
html.da27 .pc .pc-sections .da-acc__rep p, html.da27 .pc .pc-sections .sp-corps > section > p, html.da27 .pc .pc-sections .si-section > p { max-width: 75ch; }
html.da27 .pc .pc-sections .vz-piece, html.da27 .pc .pc-sections .vz-duo, html.da27 .pc .pc-sections .vz-piece > *, html.da27 .pc .pc-sections .vz-groupe, html.da27 .pc .pc-sections .vz-car, html.da27 .pc .pc-sections .vz-vignettes, html.da27 .pc .pc-sections .vz-galerie, html.da27 .pc .pc-sections .vz-video, html.da27 .pc .pc-sections .da-videos-piece, html.da27 .pc .pc-sections .vz-grande, html.da27 .pc .pc-sections .vz-moyenne, html.da27 .pc .pc-sections .vz-regard, html.da27 .pc .pc-sections .ui-photo-libre, html.da27 .pc .pc-sections .g362, html.da27 .pc .pc-sections .ui-chart, html.da27 .pc .pc-sections .si-fig { max-width: none; margin-inline: 0; }
html.da27 .pc .pc-sections .vz-piece, html.da27 .pc .pc-sections .da-videos-piece { margin-block: 0; }
html.da27 .pc .pc-sections .ui-chart, html.da27 .pc .pc-sections .g362 { padding: 20px; background: var(--brand-50, #F2F6F9); border: 0; border-radius: var(--r-lg); box-shadow: none; }
html.da27 .pc .pc-sections .g362__svg { max-height: 340px; }
html.da27 .pc .pc-sections .g362__svg--carte, html.da27 .pc .pc-sections .g362__svg--iso { max-width: none; max-height: 380px; }
html.da27 .pc .pc-sections .g362__svg--jauge { max-height: 220px; }
html.da27 .pc .pc-sections .ui-photo-libre.da-carte { border: 0; box-shadow: none; background: none; }
html.da27 .pc .pc-sections .vz-piece > .ui-photo-libre .ui-figure, html.da27 .pc .pc-sections .vz-piece > .vz-grande .ui-figure, html.da27 .pc .sp-corps > section > .ui-photo-libre .ui-figure, html.da27 .pc .sp-corps > .sp-sommaire > .ui-photo-libre .ui-figure, html.da27 .pc .gp-corps > section > .ui-photo-libre .ui-figure, html.da27 .pc .dcr-contenu > section.si-section > .ui-photo-libre .ui-figure { aspect-ratio: 21 / 9; border-radius: var(--r-lg); overflow: hidden; }
html.da27 .pc .pc-sections .vz-piece > .vz-moyenne .vz-moyenne__cadre, html.da27 .pc .pc-sections .vz-piece > .vz-regard .vz-regard__cadre { aspect-ratio: 16 / 9; }
html.da27 .pc .pc-sections .vz-car > .da-carte .da-photo, html.da27 .pc .pc-sections .vz-car .vz-moyenne__cadre, html.da27 .pc .pc-sections .vz-car .vz-regard__cadre { aspect-ratio: 4 / 3; }
html.da27 .pc .pc-sections .si-figs { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1px; background: var(--c-border); border: 1px solid var(--c-border); border-radius: var(--r-xl); overflow: hidden; }
html.da27 .pc .pc-sections .ui-kpi { list-style: none; margin: 0 0 16px; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1px; background: var(--c-border); border: 1px solid var(--c-border); border-radius: var(--r-xl); overflow: hidden; box-shadow: none; }
html.da27 .pc .pc-sections .ui-kpi > .ui-kpi__item { margin: 0; border: 0; border-radius: 0; box-shadow: none; background: var(--c-surface); padding: clamp(18px, 2.4vw, 28px); min-width: 0; }
html.da27 .pc .pc-sections .si-figs > .si-fig { margin: 0; border: 0; border-radius: 0; box-shadow: none; background: var(--c-surface); padding: clamp(18px, 2.4vw, 28px); }
html.da27.js .pc .pc-sections .vz-car.vz-car { align-items: stretch; }
@media (min-width: 900px) {
  html.da27.js .pc .pc-sections .vz-car.vz-car--graphique { --fx-v: 2; }
  html.da27.js .pc .pc-sections .vz-vignettes.vz-vignettes--3, html.da27.js .pc .pc-sections .vz-vignettes.vz-vignettes--4, html.da27.js .pc .pc-sections .vz-vignettes.vz-vignettes--6, html.da27.js .pc .pc-sections .vz-vignettes.vz-vignettes--8, html.da27.js .pc .pc-sections .vz-vignettes.vz-vignettes--9, html.da27.js .pc .pc-sections .vz-car.vz-car--photo, html.da27.js .pc .pc-sections .vz-car.vz-car--video { --fx-v: 3; }
}
html.da27.js .pc .pc-sections .vz-car.vz-car:has(> :only-child) { --fx-v: 1; }
@media (min-width: 640px) { html.da27.js .pc .pc-sections .vz-car.vz-car:has(> :nth-child(2):last-child), html.da27.js .pc .pc-sections .vz-vignettes.vz-vignettes:has(> :nth-child(2):last-child) { --fx-v: 2; } }
@media (min-width: 900px) {
  html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres:has(> :nth-child(3):last-child), html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres:has(> :nth-child(6):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres:has(> :nth-child(4):last-child), html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres:has(> :nth-child(8):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres:has(> :nth-child(5):last-child) { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres:has(> :nth-child(5):last-child) > * { grid-column: span 2; }
  html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres:has(> :nth-child(5):last-child) > :nth-child(n+4) { grid-column: span 3; }
  html.da27 .pc .pc-sections .sp-chiffres.sp-chiffres > :last-child:nth-child(odd) { grid-column: auto; }
}
@media (min-width: 900px) {
  html.da27 .pc .pc-sections .si-figs.si-figs:has(> :nth-child(3):last-child), html.da27 .pc .pc-sections .si-figs.si-figs:has(> :nth-child(6):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .si-figs.si-figs:has(> :nth-child(4):last-child), html.da27 .pc .pc-sections .si-figs.si-figs:has(> :nth-child(8):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .si-figs.si-figs:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .si-figs.si-figs:has(> :nth-child(5):last-child) { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .si-figs.si-figs:has(> :nth-child(5):last-child) > * { grid-column: span 2; }
  html.da27 .pc .pc-sections .si-figs.si-figs:has(> :nth-child(5):last-child) > :nth-child(n+4) { grid-column: span 3; }
  html.da27 .pc .pc-sections .si-figs.si-figs > :last-child:nth-child(odd) { grid-column: auto; }
}
@media (min-width: 900px) {
  html.da27 .pc .pc-sections .ui-kpi.ui-kpi:has(> :nth-child(3):last-child), html.da27 .pc .pc-sections .ui-kpi.ui-kpi:has(> :nth-child(6):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .ui-kpi.ui-kpi:has(> :nth-child(4):last-child), html.da27 .pc .pc-sections .ui-kpi.ui-kpi:has(> :nth-child(8):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .ui-kpi.ui-kpi:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .ui-kpi.ui-kpi:has(> :nth-child(5):last-child) { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  html.da27 .pc .pc-sections .ui-kpi.ui-kpi:has(> :nth-child(5):last-child) > * { grid-column: span 2; }
  html.da27 .pc .pc-sections .ui-kpi.ui-kpi:has(> :nth-child(5):last-child) > :nth-child(n+4) { grid-column: span 3; }
  html.da27 .pc .pc-sections .ui-kpi.ui-kpi > :last-child:nth-child(odd) { grid-column: auto; }
}
html.da27 .pc .sp-essentiel__liens { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
html.da27 .pc .sp-essentiel__liens .da-pastille { text-decoration: none; }
