.r5-directory{padding-top:26px}.r5-agency-model{margin-block:28px}.r5-agency-model .seo-grid{margin-block:20px}.r5-region-grid{list-style:none!important;padding:0!important;margin:20px 0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.r5-region-grid li{margin:0!important;min-width:0}.r5-region-grid a{display:flex;flex-direction:column;justify-content:center;gap:4px;height:100%;padding:16px 18px;border:1px solid #cfdfd7;border-radius:10px;text-decoration:none!important;background:#f6f9f7;color:#173c38}.r5-region-grid a:hover{background:#e9f1ec;border-color:#27705b}.r5-region-grid small{font-size:12px;color:#52665b;font-weight:400}.r5-city-jumps{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}.r5-city-jumps a{padding:9px 15px;border:1px solid #b7cfc2;border-radius:99px;text-decoration:none}.r5-directory-search{background:#eff5f0;border:1px solid #d3e3d8;border-radius:14px;padding:24px;margin:24px 0}.r5-directory-search label,.r5-name-directory label{display:block;font-weight:650;margin-bottom:10px}.r5-search-row{display:flex;gap:12px}.r5-directory-search input,.r5-name-directory input{border:1px solid #88aa97!important;background:#fff!important;color:#173c38!important;border-radius:8px;min-height:48px;padding:12px 14px!important;font:inherit;max-width:100%;width:100%;min-width:0}.r5-search-row .seo-button{flex:none;margin:0}.r5-directory-search .seo-meta{margin-top:12px}.r5-search-status{margin:12px 0 0!important}.r5-search-results{padding:0!important;margin:0!important;list-style:none!important}.r5-search-results:empty{display:none}.r5-search-results li{padding:9px 0;border-top:1px solid #d3e3d8;margin:0!important}.r5-search-results a{display:block}.r5-complex-list{list-style:none!important;padding:0!important;margin:20px 0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.r5-complex-list li{border-top:1px solid #dce7e2;display:flex;gap:12px;align-items:center;justify-content:space-between;padding:15px 0;margin:0!important;scroll-margin-top:110px;min-width:0}.r5-complex-list li:target{background:#fff4d8;outline:2px solid #b1782c;outline-offset:4px}.r5-complex-list li[hidden]{display:none!important}.r5-complex-name{font-weight:600;min-width:0;overflow-wrap:anywhere}.r5-review-link{font-size:13px;line-height:1.4;max-width:135px;flex-shrink:0}.r5-city-directory{border-top:1px solid #dce7e2;margin-top:32px;padding-top:12px}.r5-foot-directory{display:block;margin-top:10px!important;color:inherit}.r5-directory address{font-style:normal;line-height:1.8}.r5-directory details[open] summary{margin-bottom:14px}.seo-article .r5-directory-links{margin-block:24px}.r5-directory section[id]{scroll-margin-top:110px}
@media(max-width:850px){.r5-region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.r5-complex-list{grid-template-columns:1fr}}
@media(max-width:520px){.r5-region-grid{grid-template-columns:1fr}.r5-directory-search{padding:18px}.r5-search-row{flex-direction:column}.r5-search-row button{width:100%}.r5-complex-list li{gap:10px}.r5-review-link{max-width:110px}.r5-directory h1{font-size:31px}.r5-city-jumps{gap:8px}.r5-city-jumps a{font-size:14px;padding:8px 12px}}
/* Keep the home hero full width without including the browser scrollbar. */
.r5-home #page{max-width:none!important;width:100%!important}
.r5-home #content{width:100%;margin:0;padding:0}
.r5-home #content>.elementor-widget-html{width:100%;min-width:0}
.r5-home .st-hero-wrap{box-sizing:border-box;width:100%!important;left:auto!important;right:auto!important;margin-left:0!important;margin-right:0!important}

/* Site-specific owner enquiries: legible long names and compact location details. */
.r6-location-page .st-hero-form-title{font-size:clamp(25px,3.2vw,34px);line-height:1.25;overflow-wrap:anywhere}
.r6-location-page .st-hero-head{padding:22px}
.r6-enquiry-brief{font-size:14px;line-height:1.65;color:#475569;margin:14px 0 0}
.r6-location-content{overflow-wrap:anywhere}
.r6-location-details{margin:20px 0;border-top:1px solid #dbe3ee}
.r6-location-details>div{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,2fr);gap:18px;padding:14px 0;border-bottom:1px solid #dbe3ee}
.r6-location-details dt{font-weight:650}.r6-location-details dd{margin:0}
@media(max-width:500px){.r6-location-page .st-hero-head{padding:16px}.r6-location-details>div{grid-template-columns:1fr;gap:4px}}
