:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#1a2a2b;background:#faf8f4}
*{box-sizing:border-box}body{margin:0;--paper:#faf8f4;--panel:#fff;--ink:#1a2a2b;--muted:#516162;--accent:#005d71;--action:#00596c;--action-ink:white;--soft:#dcecf0;--border:#d5dfdb;--title:Georgia,serif;color:var(--ink);background:var(--paper);line-height:1.58}
a{color:var(--accent);text-underline-offset:.23em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bb6e14;outline-offset:4px}
img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--title);line-height:1.06;letter-spacing:-.035em}h1{font-size:clamp(2.45rem,5vw,5rem);margin-bottom:1rem}h2{font-size:clamp(1.65rem,3vw,2.65rem);margin-bottom:1rem}h3{line-height:1.25}p{margin-bottom:1em}.frame{width:min(100% - 2.5rem,1200px);margin-inline:auto}
.skip{position:absolute;left:1rem;top:-5rem;background:white;padding:.5rem;z-index:10}.skip:focus{top:.5rem}.preview{padding:.6rem 1.3rem;text-align:center;background:#fff0ba;color:#463515}.preview a{margin-left:1em}
.header{background:var(--panel);border-bottom:1px solid var(--border)}.header-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.3rem;min-height:84px;padding-block:.9rem}.brand{display:flex;align-items:center;gap:.75rem;font-weight:750;color:var(--ink);text-decoration:none}.brand img{max-width:118px;max-height:52px;object-fit:contain}
nav{display:flex;flex-wrap:wrap;gap:.7rem 1.15rem}nav a{font-weight:630;text-decoration:none}nav a:hover,nav [aria-current]{text-decoration:underline}
.action,.secondary-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;border:1px solid var(--action);font:inherit;font-weight:670;text-decoration:none;cursor:pointer}.action{background:var(--action);color:var(--action-ink)}.secondary-action{color:var(--accent);background:var(--panel);border-color:var(--border)}
.hero{background:var(--soft);padding:clamp(2rem,6vw,6rem) 0}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,5vw,5rem)}.hero-grid:not(:has(.hero-image)){grid-template-columns:minmax(0,42rem)}.hero-image{width:100%;aspect-ratio:1.3;object-fit:cover}.kicker{font-size:.83rem;font-weight:740;letter-spacing:.075em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}.copy{font-size:1.1rem;overflow-wrap:anywhere}.copy table{max-width:100%;display:block;overflow:auto}.copy img{margin-block:1rem}
.actions,.section-title,.pager{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.2rem}.section-title h2{margin:0 auto 0 0}.section-title{margin-bottom:1.6rem}.section{padding-block:clamp(2rem,5vw,4.5rem)}.intro{background:var(--soft);padding:3rem 0}.intro h1{font-size:clamp(2.1rem,4vw,3.9rem)}
.listing-grid,.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.listing-grid article,.service-grid a{border:1px solid var(--border);background:var(--panel)}.listing-grid article a{display:block;color:var(--ink);text-decoration:none;height:100%}.listing-grid article a:hover h3{text-decoration:underline}.listing-grid img{width:100%;aspect-ratio:1.48;object-fit:cover}.listing-info,.service-grid a{padding:1.2rem}.listing-info h3{margin:.45rem 0}.listing-info p{color:var(--muted)}.services{padding:2rem 0;background:var(--soft)}.service-grid a{text-decoration:none}.service-grid strong,.service-grid span{display:block}.service-grid strong{font-size:1.2rem;margin-bottom:.3rem}
.footer{border-top:1px solid var(--border);background:var(--panel);padding:2.4rem 0}.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1.2rem}.footer a{display:block}.footer p{white-space:pre-line}.prose{max-width:73ch}.enquiry{margin-top:2rem;padding:clamp(1rem,3vw,2.25rem);background:var(--panel);border:1px solid var(--border);max-width:58rem}.enquiry label,.quick-search label,.filters label{display:grid;gap:.3rem;font-weight:620}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}
input,select,textarea{width:100%;min-width:0;background:var(--panel);border:1px solid #849596;color:var(--ink);min-height:44px;padding:.6rem .72rem;font:inherit}textarea{resize:vertical}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:.9rem;margin-bottom:2rem}.pager{justify-content:center;margin-top:1.5rem}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:2rem}.gallery a:first-child{grid-column:span 2;grid-row:span 2}.gallery img{width:100%;height:100%;max-height:36rem;object-fit:cover}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.received{background:#dff0e2;border-left:4px solid #307142;padding:.75rem}
.site-neighbourhood .hero-image{border-radius:.55rem}.site-neighbourhood .hero-copy{border-left:4px solid var(--accent);padding-left:1.35rem}
.site-search{--paper:#f7f8ef;--ink:#162b24;--accent:#315638;--action:#e1f64a;--action-ink:#162b24;--soft:#e9eee1;--title:system-ui,sans-serif}.site-search .hero{background:#173126;color:white}.site-search .hero .kicker,.site-search .hero a{color:#e1f64a}.site-search .hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.quick-search{max-width:32rem}.quick-search div{display:flex;gap:.5rem;margin:.35rem 0 .6rem}.quick-search button{flex-shrink:0}
.site-studio{--paper:#fff7f1;--soft:#f7e8dd;--accent:#8e3c27;--action:#923b25;--border:#ead5c9;--title:system-ui,sans-serif}.site-studio .hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.site-studio .hero-image{aspect-ratio:1; border-radius:48% 48% 6px 6px}.site-studio .service-grid a{border-top:4px solid var(--accent)}
.site-heritage{--paper:#f7f3ea;--ink:#312a27;--accent:#71392f;--action:#74392f;--soft:#ede4d4;--border:#e0d1bd}.site-heritage .header-inner{justify-content:center}.site-heritage .brand{width:100%;justify-content:center;font-family:Georgia,serif;font-size:1.45rem}.site-heritage .hero-grid{display:flex;flex-direction:column;text-align:center;gap:2rem}.site-heritage .hero-copy{max-width:47rem}.site-heritage .hero .actions{justify-content:center}.site-heritage .hero-image{aspect-ratio:2.75;max-height:26rem}
.site-showcase{--paper:#f2f4fa;--soft:#e5e9f5;--accent:#314181;--action:#374986;--border:#d2dbef;--title:system-ui,sans-serif}.site-showcase .hero-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr)}.site-showcase .hero-image{order:-1;aspect-ratio:1.33;border-radius:1.3rem}.site-showcase .listing-grid article{border-radius:.8rem;overflow:hidden}.site-showcase .hero-copy h1{font-size:clamp(2.35rem,4.5vw,4.3rem)}
@media(max-width:850px){.header-inner{justify-content:space-between}.header nav{width:100%;order:3}.listing-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.frame{width:calc(100% - 2rem)}.head-action{min-height:40px;padding:.45rem .65rem}.header-inner{gap:.7rem}.header nav{gap:.45rem .8rem}.header nav a{padding:.3rem 0}.hero .hero-grid{grid-template-columns:minmax(0,1fr)}.site-showcase .hero-image{order:0}.form-grid,.service-grid,.listing-grid{grid-template-columns:minmax(0,1fr)}.filters label:first-child{grid-column:1/-1}.filters button{grid-column:1/-1}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery a:first-child{grid-row:auto}.quick-search div{flex-direction:column}.footer-inner{display:grid}}

.preview {display:flex;flex-wrap:wrap;gap:.65rem 1rem;align-items:center;justify-content:center}
.preview-layout {display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;justify-content:center}
.preview-layout select,.preview-layout button {min-height:2.5rem;padding:.35rem .6rem;font:inherit;color:#26314a;background:#fff;border:1px solid #9c8f6d}
.preview-layout button {cursor:pointer}
.preview a {margin:0}

.header-inline .brand,.header-split .brand{width:auto;justify-content:flex-start}
.header-centred .header-inner{justify-content:center}
.header-centred .brand{width:100%;justify-content:center}
.header-split .header-inner{justify-content:space-between;column-gap:1rem;row-gap:.8rem}
.header-split nav{width:100%;order:3;border-top:1px solid var(--border);padding-top:.65rem}
.header nav a{display:inline-flex;align-items:center;min-height:32px}
.brand span,.head-action{overflow-wrap:anywhere}
.hero-figure{width:100%;min-width:0;margin:0}
.hero-figure figcaption{margin-top:.55rem;font-size:.9rem}
.hero-intro{max-width:53ch;font-size:1.23rem;line-height:1.48}
.crop-top .hero-image{object-position:center top}
.crop-bottom .hero-image{object-position:center bottom}
.site-search .hero .action{color:var(--action-ink)}
.site-search .hero .secondary-action{color:var(--accent)}
.site-heritage .hero-figure{max-width:66rem}
.site-showcase .hero-figure{order:-1}
.site-showcase .hero-image{aspect-ratio:1.33}
.showcase-lead{padding-top:clamp(2rem,5vw,4.5rem)}
.showcase-lead>.frame,.neighbourhood-panel,.valuation-panel{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem 2rem}
.showcase-lead h1{margin-bottom:.35em}
.showcase-lead p,.neighbourhood-panel p,.valuation-panel p{margin-bottom:0}
.site-showcase .featured-homes{padding-top:1.8rem}
.neighbourhood-panel h2,.valuation-panel h2{margin-bottom:.5rem}
.heritage-panel{max-width:54rem;text-align:center}
.heritage-panel p:not(.kicker){max-width:55ch;margin-inline:auto}
.footer-directory .footer-inner{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr))}
.footer-centred .footer-inner{display:grid;justify-items:center;text-align:center;gap:.65rem}
.footer strong{display:block;margin-bottom:.3rem}
.footer p:last-child{margin-bottom:0}
.footer a{overflow-wrap:anywhere}
.filters{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}
.filters button{min-width:0}
.listing-list{grid-template-columns:minmax(0,1fr)}
.listing-list article a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:center}
.listing-list article img{height:100%;max-height:17rem}
.listing-list .listing-info{overflow-wrap:anywhere}

@media(prefers-reduced-motion:no-preference){
 .site-motion .hero-copy,.site-motion .showcase-lead{animation:site-reveal .45s ease-out both}
 .site-motion .listing-grid article{transition:box-shadow .22s ease,transform .22s ease}
 .site-motion .listing-grid article:focus-within,.site-motion .listing-grid article:hover{box-shadow:0 .55rem 1.5rem #18252a1c;transform:translateY(-3px)}
 @keyframes site-reveal{from{opacity:0;transform:translateY(.55rem)}to{opacity:1;transform:translateY(0)}}
}
@media(max-width:850px){
 .header-centred nav{justify-content:center}
 .footer-directory .footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
 .header-split .header-inner,.header-inline .header-inner{gap:.5rem .75rem}
 .header-inline .brand,.header-split .brand{flex:1 1 9rem}
 .header .brand img{max-width:92px}
 .header .head-action{min-height:44px}
 .header nav{gap:.2rem .85rem}
 .header nav a{min-height:40px}
 .site-showcase .hero-figure{order:0}
 .footer-directory .footer-inner{grid-template-columns:minmax(0,1fr)}
 .filters{grid-template-columns:repeat(2,minmax(0,1fr))}
 .listing-list article a{grid-template-columns:minmax(0,1fr)}
 .site-heritage .hero-image{aspect-ratio:1.75}
}

.property-listing{padding-block:clamp(1.4rem,3vw,2.75rem);overflow-wrap:anywhere}
.property-listing section[id]{scroll-margin-top:1rem}
.property-heading-row{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:1rem 2rem;margin-top:1rem}
.property-heading h1{font-size:clamp(2rem,4.2vw,3.85rem);margin-bottom:.4rem}
.property-status{display:inline-block;background:var(--soft);color:var(--ink);padding:.2rem .65rem;font-size:.85rem;font-weight:700;margin-bottom:.6rem}
.property-location{color:var(--muted);margin:0}
.property-price{display:grid;gap:.15rem}
.property-price strong{font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.2}
.property-price small{color:var(--muted);font-size:.92rem}
.property-nav{display:flex;align-items:center;gap:.25rem 1.2rem;border-block:1px solid var(--border);margin:1.4rem 0;padding:.55rem 0}
.property-nav>a{min-height:44px;display:inline-flex;align-items:center}
.property-nav .action{margin-inline-start:auto}
.property-photos{margin-bottom:1.5rem}
.property-photos [data-photo-cover]{display:block;position:relative}
.property-cover{width:100%;aspect-ratio:2;max-height:34rem;object-fit:cover}
.property-photo-count{position:absolute;bottom:.85rem;right:.85rem;padding:.45rem .7rem;background:#16262dee;color:#fff;font-size:.86rem;font-weight:650}
.property-photo-strip{display:flex;gap:.55rem;overflow-x:auto;padding:.55rem 4px}
.property-photo-strip a{flex:0 0 clamp(82px,13vw,160px)}
.property-photo-strip img{width:100%;aspect-ratio:1.45;object-fit:cover}
.property-lightbox{width:min(96vw,1400px);max-width:none;max-height:96dvh;padding:.65rem;border:1px solid var(--border);background:var(--panel);color:var(--ink)}
.property-lightbox[open]{display:flex;flex-direction:column}
.property-lightbox::backdrop{background:#101820e0}
.property-lightbox img{width:100%;height:72dvh;min-height:0;object-fit:contain;background:#15191b}
.property-lightbox iframe{width:100%;height:66dvh;min-height:0;border:1px solid var(--border)}
.property-lightbox [hidden]{display:none}
.property-lightbox [data-media-download-row]{margin:.35rem .4rem 0}
.property-lightbox-tools{display:flex;gap:.5rem;justify-content:space-between;align-items:center;padding:.4rem}
.property-lightbox-tools p{margin:0;font-size:.9rem}
.property-lightbox-tools button{gap:.45rem;white-space:nowrap;flex-shrink:0}
.property-lightbox-tools [data-media-close] span{font-size:1.35rem;line-height:1}
[data-view-media]{cursor:zoom-in}
.property-content{display:grid;align-items:start;grid-template-columns:minmax(0,1fr) minmax(17rem,.47fr);gap:1.25rem}
.property-panel,.property-contact-direct{background:var(--panel);border:1px solid var(--border);padding:clamp(1rem,3vw,2rem);margin-bottom:1rem}
.property-panel h2,.property-contact h2{font-size:clamp(1.45rem,2.6vw,2.2rem)}
.property-panel h3{margin:1.4rem 0 .6rem}
.property-overview,.property-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin:0 0 1rem}
.property-overview>div,.property-facts>div{border:1px solid var(--border);padding:.65rem .8rem}
.property-overview dt,.property-facts dt,.enquiry-property dt{font-size:.87rem;color:var(--muted)}
.property-overview dd,.property-facts dd,.enquiry-property dd{margin:0}
.property-overview dd{font-size:1.12rem;font-weight:710}
.property-summary{font-weight:620}
.property-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem 1rem;padding-inline-start:1.2rem}
.property-description,.property-disclaimer{white-space:pre-line}
.property-disclaimer{font-size:.88rem;color:var(--muted);margin-top:1.3rem}
.property-floorplan{margin:0 0 1rem}
.property-floorplan img{width:100%;max-height:38rem;object-fit:contain;border:1px solid var(--border)}
.property-floorplan span{display:block;padding:.5rem 0}
.property-epc{padding:0;margin:0 0 1rem;list-style:none;display:grid;gap:.25rem;max-width:25rem}
.property-epc li{display:flex;gap:.75rem;padding:.15rem .55rem;color:#172320;font-weight:740;width:calc(100% - var(--inset));min-width:max-content}
.property-epc [aria-current]{outline:2px solid #172320;outline-offset:1px}
.epc-a{background:#58bb80;--inset:48%}.epc-b{background:#79c88f;--inset:40%}.epc-c{background:#acda8a;--inset:32%}.epc-d{background:#f3dc66;--inset:24%}.epc-e{background:#ffc979;--inset:16%}.epc-f{background:#ffad7c;--inset:8%}.epc-g{background:#ff9290;--inset:0%}
.property-map{width:100%;aspect-ratio:1.6;min-height:245px;border:1px solid var(--border);margin-bottom:.6rem}
.property-contact .enquiry{margin:0 0 1rem;padding:clamp(1rem,2vw,1.65rem)}
.property-contact .form-grid{grid-template-columns:minmax(0,1fr);gap:.65rem}
.property-contact-direct{display:grid;gap:.25rem}
.enquiry-property{margin:0 0 1rem;border-left:3px solid var(--action);background:var(--soft);padding:.6rem .8rem}
.enquiry-property dd:first-of-type{font-weight:690}
@media(max-width:800px){
    .property-content{grid-template-columns:minmax(0,1fr)}
    .property-nav .action{margin-inline-start:0}
}
@media(max-width:520px){
    .property-cover{aspect-ratio:1.35}
    .property-overview,.property-facts,.property-features{grid-template-columns:repeat(2,minmax(0,1fr))}
    .property-nav{column-gap:.85rem}
    .property-nav .action{width:100%}
    .property-photo-count{bottom:.5rem;right:.5rem}
}

.public-contact-layout{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:1rem;align-items:start}
.public-contact-layout .enquiry{margin:0}
.public-contact-details{display:grid;gap:.65rem;margin:0;overflow-wrap:anywhere}
.public-contact-details dt{font-size:.87rem;font-weight:650;color:var(--muted)}
.public-contact-details dd{margin:0}
.public-contact-address{white-space:pre-line}
.footer-social{gap:.25rem .8rem;margin-top:.55rem}
.footer-social a{display:flex;align-items:center;min-height:44px}
@media(max-width:680px){.public-contact-layout{grid-template-columns:minmax(0,1fr)}}

.header .header-listing-link{display:inline-flex;align-items:center;padding:.45rem .85rem;border:1px solid var(--border);background:var(--soft);color:var(--ink)}
.header .header-listing-link:hover,.header .header-listing-link[aria-current]{border-color:var(--action)}
.section-title .secondary-action{gap:.55rem}
@media(max-width:600px){.header .header-listing-link{padding:.35rem .65rem}.section-title h2{flex-basis:100%}}

.action,.secondary-action{border-radius:.6rem}
.secondary-action:hover{border-color:var(--accent)}
.listing-grid article,.property-panel,.property-contact .enquiry,.property-contact-direct,.public-contact-layout .enquiry{border-radius:.95rem}
.listing-grid article{overflow:hidden}
.listing-info .kicker{display:inline-block;background:var(--soft);padding:.16rem .5rem;border-radius:.35rem;margin:0}
.listing-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:.55rem}
.listing-card-arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--soft);color:var(--accent);font-size:1.2rem;flex-shrink:0}
.listing-grid a:hover .listing-card-arrow,.listing-grid a:focus-visible .listing-card-arrow{background:var(--action);color:var(--action-ink)}
.property-cover{border-radius:.9rem}
.property-photo-strip img,.property-photo-count,.property-lightbox{border-radius:.55rem}
.property-nav>a:not(.action){background:var(--panel);padding-inline:.7rem;border-radius:.45rem;border:1px solid var(--border)}
.property-nav>a:not(.action):hover{border-color:var(--accent)}
.property-contact .enquiry{border-top:3px solid var(--action)}
.property-contact .action{width:100%}
@media(max-width:800px){.property-nav{gap:.5rem}}

/* Each template has its own listing hierarchy and button treatment. */
.property-content{grid-template-areas:"photos photos" "details contact"}
.property-photos{grid-area:photos;margin:0}
.property-main{grid-area:details;min-width:0}
.property-contact{grid-area:contact;min-width:0}
.site-neighbourhood .header{background:#093953;color:#fff;border-bottom:3px solid var(--action)}
.site-neighbourhood .header .brand,.site-neighbourhood .header nav a{color:#fff}
.site-neighbourhood .header nav .header-listing-link{color:var(--ink)}
.site-neighbourhood .header-split nav{border-color:#ffffff50}
.site-neighbourhood .hero-copy{border-left:0;padding-left:0}
.site-neighbourhood .property-heading-row{border-left:4px solid var(--action);padding-left:1rem}
.site-search .action,.site-search .secondary-action,.site-search .header-listing-link{border-radius:.2rem}
.site-search .quick-search{padding:1rem;background:#fff;color:var(--ink)}
.site-search .property-heading-row{background:#173126;color:#fff;padding:clamp(1rem,2vw,1.8rem)}
.site-search .property-heading-row .property-location,.site-search .property-heading-row .property-price small{color:#e3ece5}
.site-search .property-content,.site-showcase .property-content{grid-template-areas:"photos contact" "details contact"}
.site-search .property-content{grid-template-columns:minmax(0,1.7fr) minmax(17rem,1fr)}
.site-search .property-cover,.site-search .property-panel,.site-search .property-contact .enquiry{border-radius:.15rem}
.site-studio .action,.site-studio .secondary-action,.site-studio .header-listing-link{border-radius:99px;padding-inline:1.15rem}
.site-studio .property-heading{max-width:64rem;margin-inline:auto}
.site-studio .property-content{grid-template-columns:minmax(16rem,.48fr) minmax(0,1fr);grid-template-areas:"photos photos" "contact details"}
.site-studio .property-cover{aspect-ratio:2.5}
.site-heritage .action,.site-heritage .secondary-action,.site-heritage .header-listing-link{border-radius:0}
.site-heritage .property-heading-row{text-align:center;justify-content:center}
.site-heritage .property-price{flex-basis:100%}
.site-heritage .property-cover{aspect-ratio:2.65;border-radius:0}
.site-heritage .property-nav{justify-content:center}
.site-heritage .property-nav .action{margin-inline-start:0}
.site-showcase .header-listing-link{border-radius:99px}
.site-showcase .property-cover{aspect-ratio:1.4}
.site-showcase .property-contact .enquiry{background:var(--soft)}
@media(max-width:800px){
    .property-content,.site-search .property-content,.site-studio .property-content,.site-showcase .property-content{
        grid-template-columns:minmax(0,1fr);
        grid-template-areas:"photos" "details" "contact";
    }
    .site-heritage .property-cover,.site-studio .property-cover{aspect-ratio:1.55}
}

.site-menu-item{display:flex;align-items:center;min-width:0;position:relative}
.site-submenu summary{list-style:none;cursor:pointer;display:grid;place-items:center;min-width:44px;min-height:44px}
.site-submenu summary::-webkit-details-marker{display:none}
.site-submenu summary:hover,.site-submenu summary:focus-visible{background:var(--soft);color:var(--ink)}
.site-submenu ul{position:absolute;inset-inline-start:0;top:100%;z-index:5;min-width:min(14rem,70vw);margin:0;padding:.35rem;list-style:none;background:var(--panel);border:1px solid var(--border);border-radius:.45rem;box-shadow:0 .45rem 1.25rem #17232024}
.header nav .site-submenu a{display:flex;padding:.4rem .65rem;color:var(--accent);overflow-wrap:anywhere}
.header nav .site-submenu a:hover,.header nav .site-submenu [aria-current]{background:var(--soft)}
@media(max-width:850px){
    .site-menu-item:has(.site-submenu[open]){display:block;width:100%}
    .site-submenu summary{position:absolute;inset-inline-start:auto;top:0;inset-inline-end:0}
    .site-menu-item:has(.site-submenu):not(:has(.site-submenu[open])) .site-submenu summary{position:static}
    .site-submenu ul{position:static;box-shadow:none;margin-top:.25rem}
}

.header-contact-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem 1rem;flex-wrap:wrap}
.header-phone{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;color:var(--ink);font-weight:700;text-decoration:none}
.header-phone:hover{text-decoration:underline}
.site-neighbourhood .header-phone{color:#fff}
.footer .footer-contact .public-contact-details{gap:.5rem}
.footer .footer-contact .public-contact-details dt{margin:0}
@media(max-width:600px){
    .header-contact-actions{justify-content:flex-start}
    .header-phone{font-size:.95rem}
}
