/* Styles réservés aux trois prototypes de guide projet. */
.city-project .project-promise{font-family:'Trebuchet MS',Arial,sans-serif;font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.35;font-weight:700}
.city-project .hero h1{font-size:clamp(2.25rem,3.8vw,3.6rem)}
.city-project .project-nav{display:flex;flex-wrap:wrap;gap:12px 28px;padding-block:22px;border-top:1px solid var(--line);margin-bottom:38px;font-size:15px;font-weight:700}
.city-project .project-nav a{padding-block:9px}
.city-project .project-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-block:35px 24px}
.city-project .project-prices article{border-top:2px solid var(--green);padding-top:24px}
.city-project .project-number{font-size:clamp(1.55rem,2.6vw,2rem);font-weight:700;line-height:1.25}
.city-project .project-prices article p:last-child{font-size:15px}
.city-project .project-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 60px;margin-block:32px}
.city-project .project-options article{border-top:1px solid var(--line);padding-top:24px}
.city-project .project-factors{display:grid;grid-template-columns:1fr 1fr;gap:16px 44px;margin-block:28px}
.city-project .project-callout{border-left:4px solid var(--green);background:var(--sand);padding:25px;margin-block:30px}
.city-project .project-professionals{background:var(--sand)}
.city-project .project-directory{background:var(--white);padding:22px;margin-block:26px;border:1px solid var(--line)}
.city-project summary{font-weight:700;min-height:44px;padding-block:10px}
.city-project .project-sources{padding-block:0 48px;font-size:14px;overflow-wrap:anywhere}
.city-project .project-sources details{border-top:1px solid var(--line);padding-top:16px}
.city-project .local-search-section{padding-block:44px}
.city-project .table-scroll{max-width:100%}
.city-project .source{max-width:900px}
@media(max-width:640px){.city-project .project-prices,.city-project .project-options,.city-project .project-factors{grid-template-columns:1fr;gap:20px}.city-project .project-prices{margin-block:24px}.city-project .hero h1{font-size:36px}.city-project .hero img{height:265px}.city-project .project-nav{gap:6px 20px;margin-bottom:18px}.city-project .project-callout{padding:20px}.city-project .button{max-width:100%;text-align:center}.city-project .project-directory{padding:15px}.city-project .table-scroll table{min-width:480px}}
/* Passe UX : uniquement les trois modèles city-project. */
.city-project .project-how{padding-block:12px 42px}
.city-project .project-how h2{font-size:clamp(1.6rem,2.5vw,2.1rem)}
.city-project .project-how .steps{margin-top:24px;font-size:15px}
.city-project .project-local .data-content{border-left:4px solid var(--green);padding:24px;background:var(--white)}
.city-project .project-local .data-content th{width:30%;color:var(--green)}
.city-project .project-local .data-content td{line-height:1.7}
.city-project .project-local .data-content h2,.city-project .project-local .data-content h3{font-size:23px}
.city-project .project-checklist{display:grid;grid-template-columns:1fr 1fr;gap:18px 40px;list-style:none;padding:0;margin-block:30px}
.city-project .project-checklist li{border-bottom:1px solid var(--line);padding:0 0 18px 30px;position:relative}
.city-project .project-checklist li::before{content:'✓';position:absolute;left:0;color:var(--green);font-weight:700}
.city-project .project-errors{border-top:1px solid var(--line);padding-block:38px}
.city-project .project-errors h2{font-size:28px}
.city-project .project-transition{border-top:3px solid var(--green)}
.city-project .project-transition>p{max-width:800px}
.city-project .project-transition .reassurance{margin:18px 0 0}
@media(max-width:760px){.city-project .project-how .steps{grid-template-columns:1fr 1fr}.city-project .project-checklist{grid-template-columns:1fr}.city-project .project-local .data-content{padding:18px}.city-project .project-local .data-content th{width:100%}}
@media(max-width:420px){.city-project .project-how .steps{grid-template-columns:1fr}}
/* Finition strictement limitée aux trois prototypes. */
.city-project .project-ready{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:28px;margin-bottom:28px;border-block:1px solid var(--line)}
.city-project .project-ready h2{font-size:26px;margin-bottom:10px}
.city-project .project-ready p{max-width:760px;margin:0}
.city-project .project-ready .button{flex-shrink:0}
.city-project .project-price-source{margin-block:12px 28px}
.city-project .project-price-source p{margin-block:12px}
.city-project .project-options article{background:var(--white);padding:24px;border-radius:var(--radius)}
.city-project .project-preparation{gap:18px 28px}
.city-project .project-preparation h3{font-size:21px}
.city-project .project-preparation p{font-size:15px;margin-bottom:0}
.city-project .project-transition{scroll-margin-top:24px}
.city-project .project-transition .lead-slot{width:100%;min-width:0;margin-top:28px}
.city-project .project-transition .lead-slot iframe{width:100%;max-width:100%;height:1100px;border:0;display:block}
.city-project .project-checklist li::before{content:'□'}
@media(max-width:760px){.city-project .project-ready{align-items:stretch;flex-direction:column}.city-project .project-ready .button{align-self:flex-start}.city-project .project-transition .lead-slot iframe{height:1250px}.city-project .project-options article{padding:20px}}
@media(prefers-reduced-motion:reduce){html:has(.city-project){scroll-behavior:auto}}
