/* POLYALIS Presence #108 — Situation 01 pilot, local review candidate.
   Scope is restricted to main[data-shell-view="situation-01"]. */
main[data-shell-view="situation-01"] {
  --s01-ink:#1c251c;--s01-muted:#59665a;--s01-accent:#65a30d;
  --s01-border:#dce6d9;--s01-mist:#f5f8f2;
  color:var(--s01-ink);font-family:"Commissioner",sans-serif;
  overflow-wrap:anywhere;
}
main[data-shell-view="situation-01"] .container{width:min(100% - 2.5rem,1120px);margin-inline:auto}
main[data-shell-view="situation-01"] .section{padding-block:clamp(3rem,6vw,5rem)}
main[data-shell-view="situation-01"] .section-dense{padding-block:clamp(2.75rem,4vw,4rem)}
main[data-shell-view="situation-01"] .section-tinted{background:var(--s01-mist)}
main[data-shell-view="situation-01"] .section-open{background:#fff}
main[data-shell-view="situation-01"] h1,
main[data-shell-view="situation-01"] h2,
main[data-shell-view="situation-01"] h3{font-family:"Sora",sans-serif;letter-spacing:-.035em;color:var(--s01-ink);line-height:1.19;margin-top:0}
main[data-shell-view="situation-01"] h1{font-size:clamp(2.15rem,5.3vw,4.25rem);max-width:16ch;margin-bottom:1.25rem}
main[data-shell-view="situation-01"] h2{font-size:clamp(1.5rem,2.8vw,2.5rem);max-width:29ch;margin-bottom:1.1rem}
main[data-shell-view="situation-01"] h3{font-size:clamp(1.1rem,1.6vw,1.35rem);margin-bottom:.65rem}
main[data-shell-view="situation-01"] p,
main[data-shell-view="situation-01"] li{line-height:1.67}
main[data-shell-view="situation-01"] p{max-width:74ch;margin-block:0 1rem}
main[data-shell-view="situation-01"] .eyebrow{font-family:"Sora",sans-serif;text-transform:uppercase;font-size:.76rem;font-weight:700;letter-spacing:.15em;color:#476f15;margin-bottom:1rem}
main[data-shell-view="situation-01"] .existing-hero{background:radial-gradient(circle at 85% 16%,#e8f1e0,transparent 39%),linear-gradient(160deg,#fafdf8,#f1f7ed);border-bottom:1px solid var(--s01-border);padding-block:clamp(4.25rem,8vw,7.25rem)}
main[data-shell-view="situation-01"] .existing-hero-inner{max-width:1120px}
main[data-shell-view="situation-01"] .existing-hero p{max-width:64ch;color:var(--s01-muted)}
main[data-shell-view="situation-01"] .existing-lead{font-size:clamp(1.15rem,2vw,1.45rem);font-weight:600;color:var(--s01-ink)!important;line-height:1.5}
main[data-shell-view="situation-01"] .section-heading{max-width:770px;margin-bottom:1.75rem}
main[data-shell-view="situation-01"] .existing-recognition-grid,
main[data-shell-view="situation-01"] .existing-axes,
main[data-shell-view="situation-01"] .existing-outcomes,
main[data-shell-view="situation-01"] .intervention-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:0;list-style:none}
main[data-shell-view="situation-01"] .existing-recognition-grid>li,
main[data-shell-view="situation-01"] .existing-axis,
main[data-shell-view="situation-01"] .existing-outcome,
main[data-shell-view="situation-01"] .intervention-level{background:#fff;border:1px solid var(--s01-border);border-radius:16px;padding:clamp(1.1rem,2.3vw,1.75rem);box-shadow:0 8px 28px rgba(33,60,36,.035);min-width:0}
main[data-shell-view="situation-01"] .existing-recognition-grid>li{position:relative;padding-left:2.9rem}
main[data-shell-view="situation-01"] .existing-recognition-grid>li::before{content:"";position:absolute;top:1.6rem;left:1.55rem;width:.55rem;height:.55rem;border-radius:50%;background:var(--s01-accent)}
main[data-shell-view="situation-01"] .existing-outcomes{grid-template-columns:repeat(3,minmax(0,1fr))}
main[data-shell-view="situation-01"] .intervention-levels{grid-template-columns:repeat(3,minmax(0,1fr))}
main[data-shell-view="situation-01"] .existing-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem)}
main[data-shell-view="situation-01"] .third-party-panel,
main[data-shell-view="situation-01"] .existing-statement,
main[data-shell-view="situation-01"] .proportion-panel,
main[data-shell-view="situation-01"] .technical-panel,
main[data-shell-view="situation-01"] .reassurance-panel,
main[data-shell-view="situation-01"] .blocking-panel,
main[data-shell-view="situation-01"] .start-panel{border:1px solid var(--s01-border);border-radius:22px;padding:clamp(1.35rem,3.5vw,3rem);background:linear-gradient(140deg,#fff,#f8fbf5)}
main[data-shell-view="situation-01"] .existing-safety-list,
main[data-shell-view="situation-01"] .start-list{padding-left:1.45rem}
main[data-shell-view="situation-01"] .technical-details{border-top:1px solid var(--s01-border);padding-top:1rem}
main[data-shell-view="situation-01"] .technical-details summary{cursor:pointer;font-weight:600}
main[data-shell-view="situation-01"] .large-copy{font-size:clamp(1.07rem,1.7vw,1.3rem);font-weight:600}
main[data-shell-view="situation-01"] .final-cta{background:linear-gradient(125deg,#20371e,#304e25);color:#fff}
main[data-shell-view="situation-01"] .final-cta h2,
main[data-shell-view="situation-01"] .final-cta p{color:#fff}
main[data-shell-view="situation-01"] .final-cta .eyebrow{color:#c9e9a0}
main[data-shell-view="situation-01"] .action-row{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem;margin-top:1.7rem}
main[data-shell-view="situation-01"] .button{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:3.1rem;border-radius:10px;padding:.75rem 1.25rem;font-weight:700;text-decoration:none;background:#e6f3d7;color:#1c3615;border:1px solid #e6f3d7}
main[data-shell-view="situation-01"] .button-secondary{background:transparent;color:inherit;border-color:currentColor}
main[data-shell-view="situation-01"] .button:focus-visible{outline:3px solid #a3e635;outline-offset:3px}
@media(max-width:760px){
  main[data-shell-view="situation-01"] .container{width:min(100% - 2rem,1120px)}
  main[data-shell-view="situation-01"] .existing-recognition-grid,
  main[data-shell-view="situation-01"] .existing-axes,
  main[data-shell-view="situation-01"] .existing-outcomes,
  main[data-shell-view="situation-01"] .intervention-levels,
  main[data-shell-view="situation-01"] .existing-two-columns{grid-template-columns:minmax(0,1fr)}
  main[data-shell-view="situation-01"] .section{padding-block:3.25rem}
  main[data-shell-view="situation-01"] .existing-hero{padding-block:4rem}
}

/* #108 V1.1: align Situation 01 with the parent Votre situation editorial grid. */
main[data-shell-view="situation-01"] {--s01-forest:#103e34;--s01-leaf:#65a30d;--s01-paper:#f8faf5}
main[data-shell-view="situation-01"] .container{width:min(calc(100% - 3rem),1240px)}
main[data-shell-view="situation-01"] .existing-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(108deg,#fcfdfb 0%,#f8fbf3 55%,#eef8e7 100%);padding-block:clamp(5rem,8vw,8.75rem)}
main[data-shell-view="situation-01"] .existing-hero::before{content:"";position:absolute;inset:0 0 0 56%;z-index:-1;opacity:.2;pointer-events:none;background-image:linear-gradient(#c8dbc3 1px,transparent 1px),linear-gradient(90deg,#c8dbc3 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,#000)}
main[data-shell-view="situation-01"] .existing-hero-inner{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,1fr);align-items:center;gap:clamp(2.25rem,4vw,5.5rem);max-width:1240px}
main[data-shell-view="situation-01"] .existing-hero-copy{min-width:0}
main[data-shell-view="situation-01"] .existing-hero h1{color:var(--s01-forest);font-size:clamp(2.6rem,5vw,5rem);line-height:1.045;letter-spacing:-.065em;max-width:18ch;margin-bottom:1.5rem}
main[data-shell-view="situation-01"] .existing-hero .eyebrow{color:#4b810c}
main[data-shell-view="situation-01"] .existing-lead{font-size:clamp(1.12rem,1.55vw,1.3rem);line-height:1.6;font-weight:500;color:#1f352d!important}
main[data-shell-view="situation-01"] .existing-hero-copy>p:not(.eyebrow):not(.existing-lead){font-size:1rem;line-height:1.6;max-width:66ch}
main[data-shell-view="situation-01"] .s01-decision-map{background:#fff;border:1px solid #e4eddb;border-radius:14px;padding:clamp(1.5rem,2vw,2rem);box-shadow:0 16px 45px rgba(27,68,46,.06)}
main[data-shell-view="situation-01"] .s01-decision-map__heading{font-family:"Sora",sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.105em;text-transform:uppercase;color:#4a790d;margin-bottom:1rem}
main[data-shell-view="situation-01"] .s01-decision-map ol{list-style:none;padding:0;margin:0}
main[data-shell-view="situation-01"] .s01-decision-map li{display:grid;grid-template-columns:2.4rem minmax(0,1fr);gap:.8rem;align-items:center;border-top:1px solid #e9f0e4;padding:1.05rem 0;line-height:1.4}
main[data-shell-view="situation-01"] .s01-decision-map li:last-child{padding-bottom:0}
main[data-shell-view="situation-01"] .s01-decision-map__number{display:grid;place-items:center;flex:none;inline-size:2.3rem;block-size:2.3rem;background:var(--s01-leaf);border-radius:50%;color:#fff;font-family:"Sora",sans-serif;font-size:.7rem;font-weight:700}
main[data-shell-view="situation-01"] .s01-decision-map strong{display:block;color:#1e2c25;font-size:.95rem;line-height:1.4}
main[data-shell-view="situation-01"] .s01-decision-map small{display:block;color:#5b685c;font-size:.82rem;line-height:1.5;margin-top:.2rem}
main[data-shell-view="situation-01"] .section{padding-block:clamp(4rem,6vw,6.5rem)}
main[data-shell-view="situation-01"] .section:nth-of-type(even):not(.final-cta):not(.existing-hero){background:#f3f8ed}
main[data-shell-view="situation-01"] .section:nth-of-type(odd):not(.existing-hero):not(.final-cta){background:#fff}
main[data-shell-view="situation-01"] .section-heading{max-width:900px}
main[data-shell-view="situation-01"] .section-heading h2{max-width:29ch;color:var(--s01-forest);font-size:clamp(1.85rem,3vw,3.1rem)}
main[data-shell-view="situation-01"] .existing-recognition-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}
main[data-shell-view="situation-01"] .existing-recognition-grid>li{border-radius:12px;box-shadow:none;min-height:125px}
main[data-shell-view="situation-01"] .existing-outcomes{grid-template-columns:repeat(3,minmax(0,1fr))}
main[data-shell-view="situation-01"] .existing-outcome,main[data-shell-view="situation-01"] .existing-axis,main[data-shell-view="situation-01"] .intervention-level{border-radius:12px;box-shadow:none}
main[data-shell-view="situation-01"] .third-party-panel,main[data-shell-view="situation-01"] .existing-statement,main[data-shell-view="situation-01"] .proportion-panel,main[data-shell-view="situation-01"] .technical-panel,main[data-shell-view="situation-01"] .reassurance-panel,main[data-shell-view="situation-01"] .blocking-panel,main[data-shell-view="situation-01"] .start-panel{border-radius:14px;max-width:1120px;margin-inline:auto}
main[data-shell-view="situation-01"] .final-cta{background:linear-gradient(110deg,#123d34,#2d5c30)}
@media(max-width:1050px){main[data-shell-view="situation-01"] .existing-hero-inner{grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:2rem}main[data-shell-view="situation-01"] .existing-recognition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){main[data-shell-view="situation-01"] .container{width:min(calc(100% - 2rem),1240px)}main[data-shell-view="situation-01"] .existing-hero{padding-block:4rem}main[data-shell-view="situation-01"] .existing-hero-inner{grid-template-columns:minmax(0,1fr);gap:2.5rem}main[data-shell-view="situation-01"] .existing-hero h1{font-size:clamp(2.5rem,8.4vw,4rem)}main[data-shell-view="situation-01"] .s01-decision-map{max-width:540px}main[data-shell-view="situation-01"] .existing-recognition-grid,main[data-shell-view="situation-01"] .existing-outcomes{grid-template-columns:minmax(0,1fr)}main[data-shell-view="situation-01"] .section{padding-block:3.5rem}}

/* #108 V1.2: precise visual corrections after desktop review.
   Preserve the HTML and the semantic sections. */
main[data-shell-view="situation-01"] .existing-hero-inner{
  grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);
  gap:clamp(2rem,4.4vw,5.5rem);
}
main[data-shell-view="situation-01"] .existing-hero h1{
  font-size:clamp(2.75rem,5.15vw,5.35rem);
  line-height:1.035;
  max-width:17ch;
}
main[data-shell-view="situation-01"] .section-heading{max-width:940px}
main[data-shell-view="situation-01"] .existing-axes{grid-template-columns:repeat(2,minmax(0,1fr))}
main[data-shell-view="situation-01"] .existing-outcomes{gap:1.25rem}
/* Keep all CTA text readable on a true dark surface, regardless of section parity. */
main[data-shell-view="situation-01"] section.final-cta.section-strong{
  background:linear-gradient(115deg,#103e34 0%,#24552f 100%);
  color:#ffffff;
}
main[data-shell-view="situation-01"] section.final-cta h2,
main[data-shell-view="situation-01"] section.final-cta p:not(.eyebrow){color:#ffffff}
main[data-shell-view="situation-01"] section.final-cta .eyebrow{color:#d4f5a9}
main[data-shell-view="situation-01"] section.final-cta .button-primary{
  background:#ffffff;color:#153d2b;border-color:#ffffff;
}
main[data-shell-view="situation-01"] section.final-cta .button-secondary{
  color:#ffffff;background:transparent;border-color:#d4f5a9;
}
@media(max-width:1050px){
  main[data-shell-view="situation-01"] .existing-hero-inner{grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr)}
}
@media(max-width:760px){
  main[data-shell-view="situation-01"] .existing-hero-inner{grid-template-columns:minmax(0,1fr)}
  main[data-shell-view="situation-01"] .existing-hero h1{font-size:clamp(2.3rem,8vw,3.5rem)}
  main[data-shell-view="situation-01"] .existing-axes,
  main[data-shell-view="situation-01"] .intervention-levels{grid-template-columns:minmax(0,1fr)}
}

/* Presence #108 / Situation 01 V1.3 — densité éditoriale, sans masquer de contenu. */
main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid {
  gap: .85rem;
}
main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid > li {
  min-height: 0;
  padding: 1.15rem 1.3rem;
  line-height: 1.48;
}
/* Les séquences d'explication successives forment une seule respiration visuelle. */
main[data-shell-view="situation-01"] section[data-existing-zone="05-understand"],
main[data-shell-view="situation-01"] section[data-existing-zone="06-preserve"],
main[data-shell-view="situation-01"] section[data-existing-zone="07-prudence"],
main[data-shell-view="situation-01"] section[data-existing-zone="08-proportion"],
main[data-shell-view="situation-01"] section[data-existing-zone="09-technical"] {
  padding-block: clamp(2.8rem, 4vw, 4.5rem);
}
main[data-shell-view="situation-01"] .existing-axes,
main[data-shell-view="situation-01"] .existing-outcomes,
main[data-shell-view="situation-01"] .intervention-levels {
  gap: .9rem;
}
main[data-shell-view="situation-01"] .existing-axis,
main[data-shell-view="situation-01"] .existing-outcome,
main[data-shell-view="situation-01"] .intervention-level {
  min-height: 0;
}
main[data-shell-view="situation-01"] section[data-existing-zone="12-reassurance"],
main[data-shell-view="situation-01"] section[data-existing-zone="13-blocking"],
main[data-shell-view="situation-01"] section[data-existing-zone="14-start"] {
  padding-block: clamp(2.75rem, 4vw, 4rem);
}
@media (max-width: 760px) {
  main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid > li {
    min-height: 0;
    padding: .95rem 1rem;
  }
  main[data-shell-view="situation-01"] .section:not(.existing-hero):not(.final-cta) {
    padding-block: 2.8rem;
  }
  main[data-shell-view="situation-01"] .existing-recognition-grid,
  main[data-shell-view="situation-01"] .existing-axes,
  main[data-shell-view="situation-01"] .existing-outcomes,
  main[data-shell-view="situation-01"] .intervention-levels {
    gap: .75rem;
  }
  main[data-shell-view="situation-01"] .existing-hero-copy > p:not(.eyebrow):not(.existing-lead) {
    line-height: 1.52;
  }
}

/* #108 V1.3.1 — reconnaissance: aligner typographie, marqueurs et grille. */
main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;
}
main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid > li {
  font-family:"Commissioner",sans-serif;font-size:1rem;font-weight:400;
  line-height:1.55;letter-spacing:normal;min-height:0;
  padding:1.1rem 1.15rem 1.1rem 2.15rem;
  list-style:none;position:relative;
}
main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid > li::before {
  content:"";position:absolute;top:1.78rem;left:1.05rem;
  width:.42rem;height:.42rem;border-radius:50%;background:#65a30d;
  transform:none;
}
@media(max-width:1050px){
 main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid{grid-template-columns:minmax(0,1fr)}
 main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid > li{padding:.95rem 1rem .95rem 2.05rem}
 main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid > li::before{top:1.65rem;left:1rem}
}

/* #108 V1.3.2 — neutralise la règle V0 du dernier élément (site.css).
   Six cartes = deux rangées de trois sur desktop ; aucun changement mobile. */
main[data-shell-view="situation-01"] section[data-existing-zone="03-recognition"] .existing-recognition-grid > li:last-child {
  grid-column: auto;
  grid-row: auto;
  width: auto;
  justify-self: stretch;
}

/* Situation 01 — retirer la séparation héritée V0 */
main[data-shell-view="situation-01"] .existing-axes {
    border-top: none;
}

/* S01 - aligned safety list separators */
main[data-shell-view="situation-01"] .existing-safety-list {
    border-top: none;
}

main[data-shell-view="situation-01"] .existing-safety-list li:first-child {
    border-top: 1px solid var(--color-border);
}

/* S01 - remove legacy intervention container borders */
main[data-shell-view="situation-01"] .intervention-levels {
    border-top: none;
    border-bottom: none;
}
