.page-plan-pilote .page-hero__media img { object-position: 70% 18%; }
.page-cout-complet .page-hero__media img { object-position: 70% 75%; }
.cost-projection { margin: 28px 0 0; padding: clamp(20px, 2.5vw, 32px); border: 1px solid #b7cbc6; border-radius: 16px; background: #fff; min-width: 0; }
.cost-projection h3 { margin-top: 0; font-size: clamp(23px, 2.3vw, 31px); line-height: 1.3; }
.cost-projection figcaption > p { max-width: 90ch; }
.cost-projection__scale { min-height: 3.2em; color: #425c57; line-height: 1.6; }
.cost-projection[data-stale] .cost-projection__grid { opacity: .55; }
.cost-projection[data-stale] .cost-projection__scale { color: #8c351b; font-weight: 700; }
.cost-projection__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-block: 24px; }
.cost-projection__card { min-width: 0; padding: 22px; border: 1px solid #c8d7d2; border-radius: 12px; background: #f7f9f6; }
.cost-projection__card h4 { margin: 0 0 20px; font-size: 22px; color: #193f3b; }
.cost-projection__bar { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 14px; margin-block: 18px; }
.cost-projection__bar > span { grid-column: 1 / -1; font-size: 14px; }
.cost-projection__bar strong { min-width: 0; text-align: right; font-size: 14px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.cost-projection__bar meter { display: block; min-width: 0; width: 100%; height: 24px; accent-color: #215e57; }
.cost-projection__bar meter::-webkit-meter-bar { background: #dce6e2; border: 0; border-radius: 4px; }
.cost-projection__bar meter::-webkit-meter-optimum-value { background: #215e57; border-radius: 4px; }
.cost-projection__bar--b meter { accent-color: #a94d23; }
.cost-projection__bar--b meter::-webkit-meter-optimum-value { background: #a94d23; }
.cost-projection__bar meter::-moz-meter-bar { background: #215e57; }
.cost-projection__bar--b meter::-moz-meter-bar { background: #a94d23; }
.cost-projection__difference { min-height: 3.2em; margin: 22px 0 0; padding-top: 18px; border-top: 1px solid #cbd8d3; font-size: 15px; line-height: 1.6; }
.pilot-coverage { background: #f4f2eb; }
.pilot-coverage__summary { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 18px; margin-block: 28px; }
.pilot-coverage__summary > div { padding: 24px; border-radius: 14px; background: #fff; border: 1px solid #c3d2cd; }
.pilot-coverage__summary strong { display: block; margin-bottom: 10px; color: #1c4e44; font-size: clamp(28px, 4vw, 46px); line-height: 1.1; }
.pilot-coverage__summary span { display: block; line-height: 1.5; }
.pilot-coverage__figure { margin: 32px 0; }
.pilot-coverage__figure h3 { font-size: clamp(23px, 2.2vw, 31px); line-height: 1.3; }
.pilot-coverage__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: start; gap: 20px; margin-top: 28px; }
.pilot-coverage__family { min-width: 0; }
.pilot-coverage__family h4 { margin: 0 0 16px; padding-bottom: 14px; border-bottom: 3px solid #315f58; font-size: 23px; }
.pilot-case { min-width: 0; margin-block: 12px; border: 1px solid #a5bfb6; border-radius: 12px; background: #fff; }
.pilot-case summary { padding: 18px; min-height: 112px; line-height: 1.45; cursor: pointer; }
.pilot-case summary strong { display: block; margin-top: 12px; font-size: 17px; overflow-wrap: anywhere; }
.pilot-case summary::marker { color: #254f46; }
.pilot-case__state { display: inline-block; font-size: 13px; font-weight: 700; color: #1e5b42; background: #e7f2e9; padding: 5px 8px; border-radius: 5px; }
.pilot-case--failed { border-color: #bd7d64; }
.pilot-case--failed .pilot-case__state { background: #fff0e8; color: #8a321b; }
.pilot-case--unplayed { border-color: #b1b4bd; border-style: dashed; }
.pilot-case--unplayed .pilot-case__state { background: #eceef3; color: #424c64; }
.pilot-case > p { padding-inline: 18px; font-size: 15px; line-height: 1.65; overflow-wrap: anywhere; }
.pilot-case > p:last-child { margin-bottom: 22px; }
.pilot-case summary:focus-visible { outline: 3px solid #a94d23; outline-offset: 4px; border-radius: 10px; }
.pilot-coverage__decisions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-block: 28px; }
.pilot-coverage__decisions article { padding: 26px; border: 1px solid #c7d4ce; border-radius: 14px; background: #fff; min-width: 0; }
.pilot-coverage__decisions h3 { margin-top: 0; font-size: 23px; line-height: 1.3; }
@media (max-width: 1100px) { .cost-projection__grid { grid-template-columns: minmax(0, 1fr); } .cost-projection__bar { grid-template-columns: minmax(0, 1fr) 140px; } .pilot-coverage__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 650px) { .pilot-coverage__summary, .pilot-coverage__decisions { grid-template-columns: minmax(0, 1fr); } .pilot-coverage__summary > div { display: flex; align-items: center; gap: 20px; } .pilot-coverage__summary strong { margin: 0; min-width: 85px; font-size: 30px; } }
@media (max-width: 450px) { .pilot-coverage__grid { grid-template-columns: minmax(0, 1fr); } .pilot-case summary { min-height: 96px; } .cost-projection { padding: 18px; } .cost-projection__card { padding: 18px; } .cost-projection__bar { grid-template-columns: minmax(0, 1fr) auto; } }
