.mayotte-teaser,.village-directory{background:#f2f6f5}
.mayotte-teaser p:not(.eyebrow),.directory-intro{max-width:850px;font-size:1rem;line-height:1.85;margin:24px 0;color:#415d66}
.mayotte-teaser .button{margin-top:12px}.mayotte-service{border-top:1px solid #d8e3e4}
.mayotte-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0}
.mayotte-services a{padding:20px;border:1px solid #c9dcde;border-radius:12px;display:block;background:#f7faf9;text-decoration:none}
.mayotte-services strong{display:block;color:#123643;font-size:1rem}.mayotte-services span{display:block;color:#415d66;line-height:1.7;font-size:1rem;margin-top:8px}
.commune-jump{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}
.commune-jump a{padding:10px 16px;border:1px solid #bfd3d6;border-radius:24px;background:white;color:#123643;font-size:.875rem}
.commune-jump a:hover,.mayotte-services a:hover{background:#e4eeec;text-decoration:underline}
.commune-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.commune-card{padding:26px;border:1px solid #d7e2e0;background:white;border-radius:14px;scroll-margin-top:120px;min-width:0}
.commune-card h3{font-size:1.25rem;line-height:1.4;margin-bottom:15px;color:#123643}
.commune-card ul{padding-left:20px;font-size:1rem;line-height:1.9;color:#415d66;overflow-wrap:anywhere}
.directory-source{font-size:.875rem;line-height:1.8;margin-top:26px;color:#415d66;max-width:850px}.directory-source a{text-decoration:underline}
#villages{scroll-margin-top:100px}
@media(max-width:900px){.commune-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.commune-grid,.mayotte-services{grid-template-columns:1fr}}

.sector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.sector-card{padding:28px;border:1px solid #d7e2e0;border-radius:14px;background:#f7faf9;min-width:0;scroll-margin-top:120px}
.sector-card h3{font-size:1.4rem;line-height:1.35;color:#123643}
.sector-card p{font-size:1rem;line-height:1.8;color:#415d66;margin-top:18px}
.sector-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.sector-links a,.sector-communes a{text-decoration:underline;color:#123643}
.sector-links a{padding:8px 12px;border:1px solid #bfd3d6;border-radius:8px;background:white;font-size:.95rem}
#secteurs{scroll-margin-top:100px}
@media(max-width:700px){.sector-grid{grid-template-columns:1fr}.sector-card{padding:22px}}
