/* Styles réservés aux nouvelles pages de villes et au répertoire. */
.city-page .local-photo img{max-height:450px;object-fit:contain;background:#f0edf6}
.city-page .local-hero h1{overflow-wrap:anywhere;font-size:clamp(34px,3.8vw,54px)}
.city-page .local-photo figcaption{overflow-wrap:anywhere}
.city-facts{display:grid;grid-template-columns:minmax(105px,.8fr) 1fr;gap:10px 20px;border-top:1px solid #e1dceb;padding-top:20px;font-size:14px}
.city-facts dt{color:#625d74}.city-facts dd{margin:0;font-weight:600}
.city-links{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0}.city-links a{display:block;border:1px solid #d7d0e9;border-radius:8px;padding:10px 14px;background:#fff;font-size:14px}
.directory-hero{padding:48px 0 36px}.directory-hero .local-answer{max-width:800px}
.directory-controls{display:grid;grid-template-columns:1.25fr 1fr auto;gap:18px;align-items:end;background:#f5f3fc;border:1px solid #e1dceb;padding:24px;border-radius:16px}
.directory-controls[hidden],.directory-region[hidden],.directory-region li[hidden]{display:none}
.directory-controls label{font-size:14px;font-weight:600;display:grid;gap:8px}.directory-controls input,.directory-controls select{width:100%;min-width:0;min-height:48px;background:#fff;border:1px solid #cfc6e5;border-radius:8px;padding:12px;font:inherit;color:#222039}
.directory-controls .button{min-height:48px}.directory-region{margin-top:44px}.directory-region h2{font-size:28px}.directory-region ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;list-style:none;padding:0}.directory-region li a{display:flex;flex-direction:column;gap:12px;height:100%;padding:22px;border:1px solid #e1dceb;border-radius:12px;text-decoration:none;background:#fff;transition:border-color .15s,background .15s}.directory-region li a:hover{background:#f5f3fc;border-color:#6242e7}.directory-region strong{font-size:18px;line-height:1.4;overflow-wrap:anywhere}.directory-region li span{font-size:12px;color:#625d74}.city-directory a:focus-visible,.city-directory input:focus-visible,.city-directory select:focus-visible,.city-page a:focus-visible{outline:3px solid #6242e7;outline-offset:4px}#city-count{font-size:14px;color:#625d74;margin-top:20px}
@media(max-width:900px){.directory-region ul{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-controls{grid-template-columns:1fr 1fr}.directory-controls .button{grid-column:1/-1}}
@media(max-width:600px){.directory-region ul,.directory-controls{grid-template-columns:1fr}.directory-controls{padding:18px}.directory-region{margin-top:32px}.city-page .local-hero h1{font-size:36px}.city-page .local-photo img{max-height:340px}.city-facts{gap:10px;font-size:13px}.directory-hero{padding-top:28px}.directory-hero h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){.directory-region li a{transition:none}}
