/* Passe 15 — mise en page des pages ville / arrondissement / services (lisibilité, hiérarchie, mobile) */
/* Bandeau : l'image est dans un <picture>, l'ancienne règle .ban>img ne s'appliquait pas */
.ban > picture{position:absolute;inset:0;z-index:-1;display:block}
.ban > picture img{width:100%;height:100%;object-fit:cover;opacity:.5}
.ban-section--compact .ban{height:220px;padding-bottom:0}
.ban-section--compact .ban .title{font-size:46px;text-align:center}

/* Colonne de lecture */
.about-us-section .bloc-text{max-width:860px;margin:0 auto;font-size:16px;line-height:1.65;color:#2b3440}
.about-us-section .sect-title h1{margin-bottom:8px}
.bloc-text > section,.bloc-text > p.commune-near{margin:0 0 36px;padding:0}
.bloc-text section h2{font-family:"Figtree","Poppins",sans-serif;font-weight:700;font-size:26px;line-height:1.25;color:#0b2b3a;margin:0 0 14px;padding-left:14px;border-left:4px solid #169ad4}
.bloc-text section h3{font-family:"Figtree","Poppins",sans-serif;font-weight:600;font-size:19px;color:#0b2b3a;margin:22px 0 8px}
.bloc-text section p{margin:0 0 12px}
.bloc-text section ul{margin:0 0 14px;padding-left:20px}
.bloc-text section li{margin-bottom:6px}
.bloc-text section a:not(.btn-one){color:#0f7fb3;text-decoration:underline;text-underline-offset:2px}
.bloc-text section a:not(.btn-one):hover{color:#0b2b3a}

/* Intro */
.commune-intro{overflow:hidden}
.commune-figure{float:right;width:300px;margin:4px 0 14px 24px}
.commune-figure img{width:100%;height:auto;border-radius:6px;display:block}
.commune-figure figcaption{font-size:13px;color:#5b6773;margin-top:6px}
.commune-intro__local{background:#f1f7fb;border-radius:6px;padding:12px 16px}

/* Vignettes diagnostics */
.trade-figures{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:6px 0 18px}
.trade-figures figure{margin:0}
.trade-figures img{width:100%;height:150px;object-fit:cover;border-radius:6px;display:block}
.trade-figures figcaption{font-size:13px;color:#5b6773;margin-top:6px;line-height:1.35}

/* Liens regroupés */
.commune-links{background:#f7f9fb;border-radius:8px;padding:22px 24px}
.commune-links > section,.commune-links .local-seo-block,.commune-links .commune-hub-links,.commune-links .commune-services-links{margin:0 0 10px;padding:0;border:0;background:none}
.commune-links h3{font-size:17px;margin:16px 0 8px}
.commune-links ul.local-seo-links,.commune-links ul.commune-services-list{list-style:none;padding:0;margin:0 0 8px;display:flex;flex-wrap:wrap;gap:8px}
.commune-links ul.local-seo-links li,.commune-links ul.commune-services-list li{margin:0}
.commune-links ul.local-seo-links a,.commune-links ul.commune-services-list a{display:inline-block;background:#fff;border:1px solid #d5e3ee;border-radius:18px;padding:5px 12px;text-decoration:none;font-size:14px}
.commune-links ul.commune-services-list li::before,.commune-links ul.commune-services-list li::after{content:none}

/* FAQ et CTA */
.commune-faq h3{font-size:18px}
.commune-cta{background:#0b2b3a;color:#fff;border-radius:8px;padding:24px 26px}
.bloc-text .commune-cta h2{color:#fff;border-left-color:#7cc8ec}
.commune-cta .btn-one,.commune-intro__cta .btn-one{display:inline-block}

/* Mobile */
@media (max-width:767px){
  .ban-section--compact .ban{height:150px}
  .ban-section--compact .ban .title{font-size:30px;padding:0 12px}
  .commune-figure{float:none;width:100%;margin:0 0 14px}
  .trade-figures{grid-template-columns:1fr 1fr}
  .trade-figures img{height:120px}
  .bloc-text section h2{font-size:22px}
  .commune-links,.commune-cta{padding:18px 16px}
}
.commune-links ul li::before,.commune-links ul li::after{content:none!important;display:none!important}
.bloc-text section ul li{font-size:16px;line-height:1.6}
/* Pages services : titres du corps hors <section> */
.about-us-section--service .bloc-text > h2,.about-us-section--service .bloc-text .seo-generic-service-content h2{font-family:"Figtree","Poppins",sans-serif;font-weight:700;font-size:26px;color:#0b2b3a;margin:26px 0 12px;padding-left:14px;border-left:4px solid #169ad4}
.bloc-text .commune-hub-links ul.commune-services-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.bloc-text .commune-hub-links ul.commune-services-list li::before,.bloc-text .commune-hub-links ul.commune-services-list li::after{content:none!important}
.bloc-text .commune-hub-links ul.commune-services-list a{display:inline-block;border:1px solid #d5e3ee;border-radius:18px;padding:5px 12px;text-decoration:none;font-size:14px}
.service-steps ol{padding-left:20px}.service-steps li{margin-bottom:8px}
@media (max-width:767px){.about-us-section--service .bloc-text > h2{font-size:22px}}
