.area-lead{max-width:760px;font-size:1.125rem;line-height:1.7;color:var(--color-text-body)}.area-lead p+p{margin-top:1rem}.area-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:3rem;align-items:start}.area-notes{list-style:none;padding:0;margin:1.25rem 0 0}.area-notes li{position:relative;padding-left:1.5rem;margin-bottom:1rem;line-height:1.65;color:var(--color-text-body)}.area-notes li:before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--color-primary)}.area-map{width:100%;aspect-ratio:4 / 3;border:0;border-radius:var(--radius-lg);background:var(--color-placeholder-bg)}.area-services{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem;margin-top:1.5rem}.area-service{display:block;padding:1.25rem 1.4rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;color:var(--color-text);text-decoration:none;transition:border-color .15s,transform .15s}.area-service:hover{border-color:var(--color-primary);transform:translateY(-2px)}.area-service__division{display:block;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.35rem}.area-service__name{font-family:var(--font-heading);font-weight:600}.area-suburbs{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;padding:0;list-style:none}.area-suburbs li{font-size:.9rem}.area-suburbs a,.area-suburbs span{display:inline-block;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--color-border);background:#fff;color:var(--color-text-body);text-decoration:none}.area-suburbs a{border-color:var(--color-primary);color:var(--color-text);font-weight:600}.area-suburbs a:hover{background:var(--color-primary);color:#fff}.area-suburb{padding-top:2.25rem;margin-top:2.25rem;border-top:1px solid var(--color-border);scroll-margin-top:calc(var(--header-height, 80px) + 1rem)}.area-suburb:first-of-type{border-top:0;margin-top:.5rem}.area-suburb__name{margin:0 0 .4rem;font-size:1.5rem}.area-suburb__name a{color:inherit;text-decoration:none}.area-suburb__name a:hover{color:var(--color-primary)}.area-suburb__more{margin:1rem 0 0;font-size:.95rem}.area-suburb__more a{color:var(--color-primary);font-weight:600;text-decoration:none}.area-suburb__line{margin:0;max-width:760px;line-height:1.65;color:var(--color-text-body)}.area-regions{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-top:2rem}.area-region{padding:1.75rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff}.area-region h3{margin:0 0 .5rem;font-size:1.25rem}.area-region h3 a{color:inherit;text-decoration:none}.area-region h3 a:hover{color:var(--color-primary)}.area-region p{color:var(--color-text-body);line-height:1.6;margin:0 0 1rem}.area-region__meta{font-size:.875rem;color:var(--color-text-muted)}.area-reviews{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem}.area-review{margin:0;padding:1.5rem;border-radius:var(--radius-lg);background:#fff;border:1px solid var(--color-border)}.area-review__stars{color:#e2a73b;letter-spacing:2px;margin-bottom:.6rem}.area-review blockquote{margin:0;line-height:1.65;color:var(--color-text-body);white-space:pre-line}.area-review figcaption{margin-top:.9rem;font-size:.9rem;color:var(--color-text-muted)}.area-review figcaption strong{color:var(--color-text)}.area-review figcaption a{color:var(--color-primary)}.area-faq{max-width:820px;margin-top:1.5rem}.area-faq details{border-bottom:1px solid var(--color-border);padding:1rem 0}.area-faq summary{cursor:pointer;font-family:var(--font-heading);font-weight:600;font-size:1.05rem;list-style:none}.area-faq summary::-webkit-details-marker{display:none}.area-faq summary:after{content:"+";float:right;color:var(--color-primary)}.area-faq details[open] summary:after{content:"−"}.area-faq details p{margin:.75rem 0 0;line-height:1.7;color:var(--color-text-body)}.area-trust{display:flex;flex-wrap:wrap;gap:.75rem 2rem;margin-top:1.25rem;font-size:.95rem;color:var(--color-text-body)}@media(max-width:900px){.area-split{grid-template-columns:1fr;gap:2rem}}
