@import url('./brand-refresh.css');
/* A quieter type hierarchy shared by every page. Gotham is preferred when licensed locally; the bundled geometric fallback remains available. */
body{font-family:var(--body)}
h1,h2,h3{font-family:var(--heading);font-weight:600;line-height:1.18;letter-spacing:-.035em}
h1 em,h2 em{font-style:normal}
.hero h1,.service-page .hero h1,.town-page .hero h1,.regional-page .hero h1,.intersection-page .hero h1{font-size:clamp(42px,4.4vw,64px);font-weight:600;line-height:1.09;letter-spacing:-.045em;text-transform:none;max-width:17ch;overflow-wrap:normal}
.hero h1>span,.service-page .hero h1>span,.town-page .hero h1>span,.regional-page .hero h1>span,.intersection-page .hero h1>span{font-size:clamp(22px,2.1vw,29px);font-weight:500;line-height:1.35;letter-spacing:-.025em;margin-top:22px;max-width:28ch}
.hub-mast h1,.collection-mast h1,.support-mast h1,.contact-layout h1,.journal-title h1,.article-heading h1{font-family:var(--heading);font-size:clamp(40px,4.5vw,64px);font-weight:600;line-height:1.12;letter-spacing:-.045em;text-transform:none;max-width:22ch}
.journal-title h1{font-size:clamp(40px,4.2vw,60px);max-width:23ch}
.article-heading h1{font-size:clamp(38px,4vw,56px);max-width:30ch}
.support-mast h1,.contact-layout h1{font-size:clamp(38px,4.2vw,58px)}
.section h2,.section .section-heading h2,.section-heading-row h2,.project-feature-copy h2,.closing h2,.assessment-band h2,.section .end-enquiry-copy h2,.related-guides>.wrap>h2{font-family:var(--heading);font-size:clamp(30px,3.1vw,44px);font-weight:550;line-height:1.2;letter-spacing:-.04em}
.section .end-enquiry-copy h2{font-size:clamp(38px,4vw,56px);max-width:15ch}
.project-feature-copy h2{font-size:clamp(34px,3.3vw,48px)}
.scope-grid h3,.process-list h3,.service-list h3,.information-grid h3,.local-notes h3,.access-note h3,.process-cards h3,.visual-service-copy h3,.project-card h3,.simple-steps h3{font-size:24px;line-height:1.27;letter-spacing:-.025em;font-weight:600}
.section .guide-card h2,.guide-card h2{font:600 24px/1.3 var(--heading);letter-spacing:-.025em}
.guide-featured h2{font:600 34px/1.2 var(--heading);letter-spacing:-.035em}
.article-section h2,.article-checklist h2,.article-next h2,.section .area-search-panel h2,.section .town-empty h2{font:600 29px/1.25 var(--heading);letter-spacing:-.03em}
.form-heading h2,.service-page .form-heading h2,.town-page .form-heading h2,.end-enquiry .form-heading h2{font:600 27px/1.25 var(--heading);letter-spacing:-.035em}
.home-area-list>a{font-size:25px;letter-spacing:-.025em}
.team-slide figcaption b{font-size:19px}
.local-big{font-size:clamp(36px,4vw,56px);line-height:1.15}
.town-stamp{font-size:45px;letter-spacing:-.04em}.town-stamp>span{letter-spacing:.08em}
.catalogue-links h2,.catalogue-links h3,.town-card h2,.town-card h3,.directory-card h2,.credit-grid h2{font-size:26px;line-height:1.25;letter-spacing:-.025em;text-transform:none}
.section .catalogue-links h2,.section .town-card h2,.section .credit-grid h2{font-size:26px;line-height:1.25}
.page-breadcrumb{font:500 12px/1.7 var(--body);letter-spacing:0;margin-bottom:32px;color:inherit}
.page-breadcrumb ol{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:6px 0;padding:0;margin:0}
.page-breadcrumb li{display:inline-flex;align-items:baseline;max-width:100%;min-width:0}
.page-breadcrumb li+li:before{content:'›';font-size:16px;line-height:1;color:var(--gold);padding:0 12px}
.page-breadcrumb a{text-decoration:none;color:inherit;opacity:.78;transition:opacity .15s}
.page-breadcrumb a:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}
.page-breadcrumb [aria-current]{font-weight:600;opacity:.95}
.breadcrumb-row{padding-top:27px}.breadcrumb-row .page-breadcrumb{margin-bottom:35px}
.hub-mast:has(>.breadcrumb-row),.support-mast:has(>.breadcrumb-row),.contact-mast:has(>.breadcrumb-row){padding-top:0}
.hero .page-breadcrumb{color:#e3e3dc;margin-bottom:32px}.journal-mast .page-breadcrumb{color:#dddcd4}
.journal-title{grid-template-columns:1.5fr .9fr;gap:70px}
.journal-title>p{font-size:17px;line-height:1.8}
.journal-mast{padding-bottom:60px}.article-mast .page-breadcrumb{margin-bottom:34px}

/* Homepage: one full-width photograph, an editorial headline and a short enquiry. */
.home-photo-hero{background:#101718;color:#fff;position:relative;isolation:isolate;overflow:hidden}
.home-photo-background,.home-photo-shade{position:absolute;inset:0;z-index:-1}
.home-photo-background img{display:block;width:100%;height:100%;object-fit:cover;object-position:65% center}
.home-photo-shade{background:linear-gradient(90deg,rgba(9,18,21,.9) 0%,rgba(9,18,21,.78) 27%,rgba(9,18,21,.23) 58%,rgba(9,18,21,.13) 100%),linear-gradient(0deg,rgba(9,18,21,.68),transparent 38%)}
.home-photo-grid{display:grid;grid-template-columns:minmax(0,1fr) 365px;align-items:center;gap:clamp(45px,9vw,130px);padding:64px 0 54px;min-height:660px}
.home-photo-copy{min-width:0;padding-bottom:15px}
.hero-local-label{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:500;letter-spacing:.06em;color:#e8ded0}
.hero-local-label i{width:6px;height:6px;background:#c89a45;border-radius:50%;box-shadow:0 0 0 4px #c89a452b}
.home-photo-copy h1{font:550 clamp(46px,4.7vw,68px)/1.13 var(--heading);letter-spacing:-.05em;margin-top:28px;text-wrap:nowrap;max-width:100%}
.home-photo-copy h1 em{font-style:normal;color:#c89a45;font-weight:500}
.home-photo-copy>p{font-size:17px;line-height:1.85;color:#e2e5e3;max-width:44ch;margin-top:26px}
.home-photo-actions{display:flex;align-items:center;margin-top:26px}
.home-service-link{display:inline-flex;align-items:center;gap:28px;min-height:44px;border-bottom:1px solid #c89a45;text-decoration:none;font-size:13px;font-weight:600;color:#fff;transition:border-color .18s ease,color .18s ease}
.home-service-link:hover{color:#c89a45;border-color:#c89a45}.home-service-link span{font-size:20px;transition:transform .18s ease}.home-service-link:hover span{transform:translateY(3px)}
.site-header .button.nav-cta{background:#c89a45;color:#0b0d0e;gap:10px;border:1px solid #c89a45;border-radius:3px}
.site-header .button.nav-cta:hover{background:#d8ad5e;border-color:#d8ad5e}.site-header .nav-cta svg{width:17px;height:17px;display:block}
.home-photo-proof{display:flex;flex-wrap:wrap;gap:12px 17px;border-top:1px solid #ffffff30;padding-top:22px;margin-top:38px;font-size:10px;color:#d3d9d5;max-width:510px}
.home-photo-proof span+span:before{content:'·';color:#c89a45;margin-right:17px}
.home-photo-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #ffffff25;padding:19px 0 21px;font-size:10px;color:#e0e3df;line-height:1.6}
.home-photo-footer>span:first-child{font-weight:600}.home-photo-footer i{font-style:normal;color:#c89a45;padding:0 9px}
.home-photo-footer>a{color:#cbd3d0;text-decoration:none;font-size:9px}.home-photo-footer>a:hover{text-decoration:underline}
.home-photo-hero .enquiry-compact{width:100%;max-width:none;background:#faf9f5;color:#192124;border:1px solid #ffffff9c;border-radius:7px;box-shadow:0 22px 70px #0004;margin:0;overflow:hidden}
.enquiry-compact .form-heading{background:transparent;padding:26px 26px 20px;border:0}
.enquiry-compact .form-heading .eyebrow{font:650 9px/1.5 var(--body);letter-spacing:.13em;color:#7e5a1d;margin-bottom:11px}
.enquiry-compact .form-heading h2{font:600 27px/1.23 var(--heading);letter-spacing:-.04em;margin:0 0 10px}
.enquiry-compact .form-heading p{font:400 12px/1.7 var(--body);color:#656a68}
.enquiry-compact .form-body{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:0 26px 24px}
.enquiry-compact .field{margin:0;min-width:0}.enquiry-compact .field label{font:600 11px/1.5 var(--body);color:#3e4545;margin-bottom:7px}
.enquiry-compact .field input,.enquiry-compact .field select{height:43px;min-width:0;width:100%;font:400 12px var(--body);color:#303b3b;background:#fff;border:1px solid #d9ddda;border-radius:3px;padding:10px}
.enquiry-compact .field-contact,.enquiry-compact .field-service{grid-column:1/-1}
.enquiry-compact .button{grid-column:1/-1;display:flex;justify-content:space-between;min-height:47px;font-size:12px;background:#c89a45;color:#0b0d0e;border-radius:3px;margin-top:2px}
.enquiry-compact .button:hover{background:#d8ad5e}
.enquiry-compact .form-footnote,.enquiry-compact .demo-note{grid-column:1/-1;text-align:center;font-size:10px;line-height:1.6;margin:0;color:#666d6a}
.enquiry-compact .demo-note{font-size:9px;margin-top:-5px;color:#666d6a}
.enquiry-compact .form-result{grid-column:1/-1;font-size:12px;line-height:1.65;margin:0}

@media(max-width:1280px){
 .home-photo-grid{grid-template-columns:minmax(0,1fr) 335px;gap:35px;padding-block:48px;align-items:center;min-height:620px}
 .home-photo-copy{padding-bottom:0}
 .home-photo-background img{object-position:76% center}
 .home-photo-shade{background:linear-gradient(90deg,#091215e8 0%,#091215b8 33%,#09121545 68%,#09121540 100%),linear-gradient(0deg,#091215a3,transparent 45%)}
 .home-photo-copy h1{font-size:clamp(39px,4.8vw,55px)}
 .home-photo-copy>p{font-size:16px}.home-photo-actions{gap:12px}
 .home-photo-proof{font-size:9px;gap:10px}.home-photo-proof span+span:before{margin-right:10px}
 .home-photo-footer>span:first-child{display:none}.enquiry-compact .form-heading{padding:24px 22px 18px}.enquiry-compact .form-body{padding:0 22px 22px}
 .journal-title{gap:35px}
}
@media(max-width:800px) and (min-width:741px){
 .home-photo-grid{grid-template-columns:minmax(0,1fr) 310px;gap:24px}
 .home-photo-copy h1{font-size:37px}.home-photo-copy>p{font-size:15px}.hero-local-label{font-size:9px}
 .home-photo-actions{gap:12px}.home-photo-proof{gap:10px}.home-photo-proof span+span:before{display:none}
 .home-photo-proof span{width:100%}.enquiry-compact .form-heading h2{font-size:25px}
}
@media(max-width:740px){
 .hero h1,.service-page .hero h1,.town-page .hero h1,.regional-page .hero h1,.intersection-page .hero h1{font-size:clamp(33px,8.9vw,52px);max-width:19ch;line-height:1.13}
 .hero h1>span,.service-page .hero h1>span,.town-page .hero h1>span,.regional-page .hero h1>span,.intersection-page .hero h1>span{font-size:23px;line-height:1.35;margin-top:19px}
 .hub-mast h1,.collection-mast h1,.support-mast h1,.contact-layout h1,.journal-title h1,.article-heading h1{font-size:clamp(33px,8.7vw,45px);line-height:1.16;text-wrap:balance}
 .section h2,.section .section-heading h2,.section-heading-row h2,.project-feature-copy h2,.closing h2,.assessment-band h2,.related-guides>.wrap>h2{font-size:32px;line-height:1.24}
 .section .end-enquiry-copy h2{font-size:39px}.section .end-enquiry .form-heading h2{font-size:26px}
 .scope-grid h3,.process-list h3{font-size:20px}.process-cards h3,.visual-service-copy h3,.information-grid h3{font-size:24px}
 .section .guide-card h2,.guide-card h2,.guide-featured h2{font-size:26px;line-height:1.3}
 .article-section h2,.article-checklist h2,.article-next h2,.section .area-search-panel h2{font-size:26px}
 .page-breadcrumb{font-size:10px;line-height:1.8;margin-bottom:25px}.page-breadcrumb li+li:before{padding-inline:9px}
 .breadcrumb-row{padding-top:22px}.breadcrumb-row .page-breadcrumb{margin-bottom:28px}
 .journal-title{grid-template-columns:1fr;gap:22px}.journal-title>p{font-size:16px}.journal-mast{padding-bottom:37px}
 .home-photo-grid{display:flex;flex-direction:column;gap:28px;padding:34px 0 30px;min-height:0}
 .home-photo-copy{width:100%}
 .home-photo-background img{object-position:69% top}
 .home-photo-shade{background:linear-gradient(90deg,#091215dc 0%,#091215a6 50%,#09121555 100%),linear-gradient(0deg,#091215c2 0%,transparent 64%)}
 .home-page .site-header{position:sticky;top:0;z-index:30}
 .home-page .mobile-action{display:none}.home-page footer{padding-bottom:0}
 .site-header .button.nav-cta{gap:7px;min-height:44px}.site-header .nav-cta svg{width:14px;height:14px}
 .hero-local-label{font-size:9px;letter-spacing:.03em}.home-photo-copy{padding:0}
 .home-photo-copy h1{font-size:clamp(33px,8.9vw,55px);line-height:1.17;margin-top:24px;letter-spacing:-.05em}
 .home-photo-copy>p{font-size:15px;line-height:1.85;margin-top:21px;max-width:42ch}
 .home-photo-copy>p br{display:none}.home-photo-actions{margin-top:15px}.home-service-link{font-size:12px;gap:22px}
 .home-photo-proof{display:none}
 .home-photo-hero .enquiry-compact{max-width:460px;margin-inline:auto}
 .enquiry-compact .form-heading{padding:25px 24px 20px}.enquiry-compact .form-heading h2{font-size:28px}
 .enquiry-compact .form-heading p{font-size:12px}.enquiry-compact .form-heading .eyebrow{font-size:9px}
 .enquiry-compact .form-body{padding:0 24px 24px;gap:16px}.enquiry-compact .field label{font-size:11px}
 .enquiry-compact .field input,.enquiry-compact .field select{font-size:16px;height:46px}
 .enquiry-compact .button{min-height:49px;font-size:13px}.enquiry-compact .form-footnote{font-size:10px}.enquiry-compact .demo-note{font-size:9px}
 .home-photo-footer{flex-direction:column;align-items:flex-start;gap:10px;font-size:9px;padding-block:18px 22px}
 .home-photo-footer i{padding:0 5px}.home-photo-footer>a{font-size:8px}.home-photo-footer>span:first-child{display:none}
}
@media(max-width:380px){
 .site-header .nav-cta svg{display:none}
 .enquiry-compact .form-heading{padding-inline:20px}.enquiry-compact .form-body{padding-inline:20px;grid-template-columns:1fr}
 .enquiry-compact .field{grid-column:1;grid-row:auto}
 .section h2{font-size:29px}.scope-grid h3,.process-list h3{font-size:19px}
}

.enquiry .form-result{grid-column:1/-1;overflow-wrap:anywhere}.enquiry button:disabled{cursor:wait;opacity:.7}

/* Stable, understated hover states and high-contrast project labels. */
.featured-project-location span{display:flex;align-items:center;gap:10px;color:#c89a45}
.featured-project-location span::before{content:'';width:18px;height:2px;background:#c89a45;flex:none}
.home-area-list>a{transition:color .18s ease,background-color .18s ease}
.home-area-list>a:hover{padding-left:5px;background:#c89a450d}
@media(prefers-reduced-motion:reduce){.home-service-link,.home-service-link span,.button,.home-area-list>a{transition:none}.home-service-link:hover span{transform:none}}
#nl-badge-frame {
  display: none !important;
}
