/* Integrated location pages — existing colour palette, heading fonts, buttons and site grids. */
.nav-location{position:relative;display:inline-flex;align-items:center}
.nav-location>a{color:inherit;text-decoration:none}
.nav-location .location-dropdown{display:none;position:absolute;z-index:100;top:100%;left:0;min-width:176px;max-height:65vh;overflow:auto;background:#17191b;border:1px solid #484a4c;border-radius:8px;padding:8px;box-shadow:0 10px 30px #0005}
.nav-location:hover .location-dropdown,.nav-location:focus-within .location-dropdown{display:block}
.nav-location .location-dropdown a{display:block;padding:8px 12px;white-space:nowrap;color:#fff;text-decoration:none}
.nav-location .location-dropdown a:hover,.nav-location .location-dropdown a:focus{background:#333}
.location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:20px 0}
.location-tile{display:flex;flex-direction:column;border:1px solid #d8e1e3;background:white;border-radius:10px;padding:19px;color:inherit;text-decoration:none}
.location-tile h3{margin-top:0;margin-bottom:8px}
.location-tile p{margin:0 0 14px;line-height:1.55}
.location-tile .text-link{margin-top:auto}
.location-page .page-hero{padding:35px 0 32px}
.location-page .page-hero .breadcrumb{margin-bottom:16px}
.location-page .page-hero h1{max-width:770px}
.location-page .page-hero .lead{max-width:660px}
.location-page .location-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:36px}
.location-page .location-hero-visual,.location-page .location-feature-visual{margin:0;min-width:0}
.location-page .location-hero-visual img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.location-page .location-feature-visual img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px;display:block}
.location-page .section{padding:43px 0}
.location-page .page-hero + .section{padding-top:44px}
.location-page .section-head{margin-bottom:18px}
.location-page .section-head p{max-width:820px}
.location-page .location-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:38px}
.location-page .location-split h2{margin-top:8px}
.location-page .location-split p{max-width:640px}
.location-page .location-feature--tint{background:#f1f5f6}
.location-page .location-feature--tint .location-split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.location-page .location-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:19px}
.location-page .location-gallery img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:10px;display:block}
.location-page .location-faq .faq-wrap{max-width:820px}
.location-page .location-faq h2{margin-bottom:20px}
.location-page .location-final{padding:38px 0 44px}
.location-page .location-final p{max-width:710px}
.location-hub .location-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
@media(max-width:850px){
 .nav-location{display:block}.nav-location .location-dropdown{position:static;display:block;box-shadow:none;max-height:none;border:0;background:transparent;padding:0 0 0 14px}.nav-location .location-dropdown a{padding:5px 8px}
 .location-page .location-hero-grid{gap:20px}
 .location-page .location-split{gap:22px}
}
@media(max-width:700px){
 .location-page .page-hero{padding:27px 0 29px}
 .location-page .location-hero-grid,.location-page .location-split,.location-page .location-feature--tint .location-split{grid-template-columns:1fr;gap:22px}
 .location-page .location-hero-visual img{aspect-ratio:16/10}
 .location-page .section,.location-page .page-hero + .section{padding:32px 0}
 .location-page .location-gallery{gap:10px}
 .location-page .location-gallery img{aspect-ratio:4/3}
 .location-page .location-final{padding:32px 0 38px}
 .location-page .location-grid{grid-template-columns:1fr}
}
