/* HHF public discovery UI: homepage/search/region/department pages only */
.hhf-count{font-size:.82em;color:#557165;font-weight:700;white-space:nowrap}
.hhf-count-zero{color:#9ca49f;font-weight:600}
.hhf-destination-count{display:block;margin-top:5px;color:#2f654f;font-size:.85rem;font-weight:700}
.hhf-region-discovery{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.8fr);gap:20px;align-items:stretch;margin-top:22px}
.hhf-region-map-card,.hhf-region-dept-card{background:#fff;border:1px solid #ddd3c3;border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(27,49,38,.05)}
.hhf-region-map-card{display:flex;align-items:center;justify-content:center;min-height:470px}
.hhf-region-map-card svg{width:100%;height:auto;max-height:440px}
.hhf-region-map-card .france-region-shape{cursor:pointer;transition:filter .15s ease,opacity .15s ease,stroke-width .15s ease}
.hhf-region-map-card .france-region-shape:hover,.hhf-region-map-card .france-region-shape:focus{filter:brightness(.93);stroke:#204c3a!important;stroke-width:2.4!important;outline:none}
.hhf-region-map-card .france-region-shape.is-current-public-region{stroke:#204c3a!important;stroke-width:3!important;filter:saturate(1.15) brightness(.94)}
.hhf-region-dept-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.hhf-region-dept-card-header small{display:block;text-transform:uppercase;letter-spacing:.13em;color:#2f654f;font-weight:800;margin-bottom:4px}
.hhf-region-dept-card-header h3{margin:0;font:400 1.75rem/1.08 Georgia,serif}
.hhf-region-total-badge{background:#2f654f;color:#fff;border-radius:14px;padding:10px 13px;text-align:center;min-width:76px}
.hhf-region-total-badge strong{display:block;font-size:1.35rem;line-height:1}
.hhf-region-total-badge span{display:block;font-size:.72rem;margin-top:3px}
.hhf-region-dept-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.hhf-region-dept-link{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:10px 12px;border:1px solid #e2d9cb;border-radius:11px;background:#fbfaf7;text-decoration:none;color:#173b2c;font-weight:700}
.hhf-region-dept-link:hover{border-color:#7fa18f;background:#f1f6f2}
.hhf-region-dept-link.is-empty{color:#8c958f;background:#f7f7f5;font-weight:600}
.hhf-region-dept-link .hhf-count{font-size:.78rem}
.hhf-region-dept-note{margin:14px 0 0;color:#647068;font-size:.83rem}
.search-filters .hhf-department-field{min-width:180px}
.region-properties-section .section-heading h2 .hhf-heading-count,.results-heading .hhf-heading-count{font:700 .8rem/1 Arial,sans-serif;color:#2f654f;margin-left:8px;vertical-align:middle}
@media(max-width:900px){.hhf-region-discovery{grid-template-columns:1fr}.hhf-region-map-card{min-height:0}}
@media(max-width:600px){.hhf-region-dept-list{grid-template-columns:1fr}.hhf-region-map-card,.hhf-region-dept-card{padding:13px;border-radius:14px}}


/* Corsica is drawn inside an inset outline in france-regions-clean.svg.
   The SVG rect has no fill of its own, so explicitly keep the inset transparent
   on public discovery maps (matching the owner department picker). */
.hhf-region-map-card .corsica-inset{
  fill:none;
  stroke:#97a39d;
  stroke-width:1.5;
  stroke-dasharray:5 4;
}
