.gpc_dir_intro{border-bottom:1px solid var(--gpc-line);background:linear-gradient(115deg,var(--gpc-magenta-soft),var(--gpc-surface) 72%)}
.gpc_dir_search{margin-top:2rem}.gpc_dir_cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.gpc_dir_card{display:flex;flex-direction:column;min-width:0}.gpc_dir_card .gpc_card-body{flex:1;display:flex;flex-direction:column}.gpc_dir_card .gpc_card-body>div:last-child{margin-top:auto}
.gpc_dir_card-image{aspect-ratio:1.6;display:block;overflow:hidden}.gpc_dir_card-image img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.gpc_dir_placeholder{display:grid;place-items:center;min-height:170px;height:100%;padding:1rem;background:var(--gpc-magenta-soft);color:var(--gpc-magenta-dark);font-family:var(--gpc-display-font);font-weight:700;font-size:1.3rem}
.gpc_dir_map-panel{display:none}.gpc_dir_results-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;align-items:start}.gpc_dir_results-map .gpc_dir_cards{grid-template-columns:1fr}
.gpc_dir_results-map .gpc_dir_card{display:grid;grid-template-columns:36% 64%}.gpc_dir_results-map .gpc_dir_card-image{height:100%;min-height:180px;aspect-ratio:auto}
.gpc_dir_results-map .gpc_dir_map-panel{display:block;position:sticky;top:1rem;padding:1.25rem;background:var(--gpc-surface);border:1px solid var(--gpc-line);border-radius:var(--gpc-radius)}
.gpc_dir_map-panel iframe,.gpc_dir_location-map{width:100%;height:460px;border:0;border-radius:var(--gpc-radius);margin-bottom:1rem}.gpc_dir_map-panel [hidden]{display:none}
.gpc_dir_tabs{display:flex;gap:.5rem;overflow-x:auto;border-bottom:1px solid var(--gpc-line)}.gpc_dir_tabs a{padding:.85rem 1.1rem;white-space:nowrap;text-transform:capitalize;text-decoration:none;color:var(--gpc-ink);border-bottom:3px solid transparent;font-weight:700}.gpc_dir_tabs a[aria-current]{color:var(--gpc-magenta-dark);border-bottom-color:var(--gpc-magenta)}
.gpc_dir_hero{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;object-position:center 25%;border-radius:var(--gpc-radius)}.gpc_dir_prose{white-space:pre-line;overflow-wrap:anywhere;line-height:1.75}
.gpc_dir_gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.gpc_dir_gallery img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;object-position:center 25%;border-radius:var(--gpc-radius)}
.gpc_dir_lightbox{max-width:min(95vw,1100px);max-height:95vh;border:0;padding:1rem;background:#151515;color:#fff;border-radius:.5rem}.gpc_dir_lightbox::backdrop{background:rgba(0,0,0,.8)}.gpc_dir_lightbox img{display:block;max-height:70vh;max-width:100%;margin:1rem auto}.gpc_dir_lightbox p{white-space:pre-line}
.gpc_dir_stars{display:flex;gap:.6rem;flex-wrap:wrap}.gpc_dir_stars label{display:flex;align-items:center;gap:.4rem;border:1px solid var(--gpc-line);padding:.6rem;border-radius:var(--gpc-radius);cursor:pointer}.gpc_dir_stars label:has(input:checked){background:var(--gpc-magenta-soft);border-color:var(--gpc-magenta)}
.gpc_dir [aria-pressed="true"]{background:var(--gpc-magenta);color:white}.gpc_dir_login{max-width:520px}.gpc_dir_saved-list{display:flex;gap:.7rem;flex-wrap:wrap;padding:0;list-style:none}
@media(max-width:991px){.gpc_dir_cards{grid-template-columns:repeat(2,minmax(0,1fr))}.gpc_dir_results-map{display:flex;flex-direction:column}.gpc_dir_results-map .gpc_dir_map-panel{position:static;order:-1;width:100%}.gpc_dir_results-map .gpc_dir_cards{width:100%}.gpc_dir_map-panel iframe{height:330px}}
@media(max-width:575px){.gpc_dir_cards{grid-template-columns:1fr}.gpc_dir_gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gpc_dir_tabs a{padding:.8rem}.gpc_dir_results-map .gpc_dir_card{grid-template-columns:1fr}.gpc_dir_results-map .gpc_dir_card-image{aspect-ratio:1.8;min-height:0}}
@media print{.gpc_dir_search,.gpc_dir_tabs,.gpc_dir button,.gpc_dir_map-panel{display:none!important}.gpc_dir_cards{display:block}.gpc_dir_card{break-inside:avoid}}

/* v1.10: use the site's standard card/module inset without affecting other pages. */
.gpc_dir .gpc_sidebar-module { padding: 1.25rem; }
.gpc_dir .gpc_sidebar-module > :last-child { margin-bottom: 0; }
.gpc_dir .gpc_dir_card .gpc_dir_card-action {
  display: inline-flex; align-items: center; justify-content: center;
  font-family: inherit; font-size: .875rem !important; font-weight: 700 !important;
  line-height: 1.5 !important; padding: .25rem .5rem !important;
  border-width: .125rem; min-height: 2rem; text-decoration: none;
}
