:root{--red:#ce0029;--ink:#17191b;--muted:#64676c;--line:#dddfe2;--pale:#f3f4f5;--page:7%;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,summary{cursor:pointer}button,a,select,input{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #ce0029;outline-offset:5px}img{max-width:100%;display:block}p,h1,h2,h3,figure{margin:0}button{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:15px;background:#fff;padding:12px;z-index:100}.skip:focus{top:10px}.emergency-bar{display:flex;justify-content:space-between;padding:7px var(--page);background:var(--ink);color:#fff;font-size:11px;letter-spacing:.09em;font-weight:700}.emergency-bar a{letter-spacing:.03em;font-size:13px}header{padding:12px var(--page);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e6e6e6;background:rgba(255,255,255,.98);position:sticky;top:0;z-index:30;gap:24px}.brand-home{display:block;flex-shrink:0}.logo{display:block;position:relative;overflow:hidden;background:#fff;width:218px;aspect-ratio:4.4}.logo img{position:absolute;width:112%;max-width:none;height:auto;left:-6%;top:-59%}nav{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:700}nav>a:not(.button){position:relative;padding:5px 0}nav>a:not(.button):after{content:'';position:absolute;height:2px;background:var(--red);bottom:0;left:0;width:100%;transform:scaleX(0);transform-origin:left;transition:transform .25s}nav>a:hover:after{transform:scaleX(1)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:51px;padding:14px 24px;font-size:13px;font-weight:800;background:var(--red);border:1px solid var(--red);color:#fff;transition:background .25s,box-shadow .25s;line-height:1.5}.button:hover{background:#a80022;box-shadow:0 6px 20px #ce002926}.button.small{min-height:43px;padding:10px 18px}.button.dark{background:var(--ink);border-color:var(--ink)}.button.white{background:white;color:var(--ink);border-color:white}.quiet-link{font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:5px}.menu-toggle{display:none}.section{padding:100px var(--page)}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em;color:var(--red);margin-bottom:22px}.eyebrow.light{color:#fff}h1,h2,.year,.emergency-number{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;line-height:1;letter-spacing:-.02em}h2{font-size:clamp(43px,4.7vw,70px);font-weight:700}h2>span{color:#7b7e83}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:650px;background:#f4f5f6;position:relative;padding-left:var(--page)}.hero-copy{padding:65px 30px 42px 0;position:relative;z-index:2}.hero h1{font-size:clamp(66px,7.1vw,111px);font-weight:800;letter-spacing:-.025em;line-height:.94;max-width:800px;margin-bottom:28px}.hero-line{display:block}.accent{color:var(--red)}.hero-description{font-size:15px;max-width:440px;line-height:1.85;color:#555a5f}.actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:27px}.hero-proof{display:flex;align-items:center;gap:18px;margin-top:35px}.hero-proof strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:38px;line-height:1}.hero-proof>span{font-size:11px;line-height:1.6;border-left:1px solid #bbb;padding-left:18px;color:#5f6368}.hero-visual{position:relative;min-width:0;overflow:hidden;background:#343b40;margin:24px 24px 24px 0}.hero-visual>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:60% center}.hero-visual:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#101820d9);pointer-events:none}.hero-image-label{position:absolute;left:32px;bottom:33px;z-index:1;color:#fff}.hero-image-label span{font-size:10px;letter-spacing:.15em;display:block;margin-bottom:8px}.hero-image-label b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:41px;font-weight:600;line-height:1}.hero-side-label{position:absolute;right:15px;top:25px;writing-mode:vertical-rl;color:white;font-size:10px;letter-spacing:.2em;text-shadow:0 1px 8px #000}.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:30px var(--page);border-bottom:1px solid var(--line);gap:20px}.trust-strip>div{border-left:1px solid var(--line);padding-left:40px}.trust-strip>div:first-child{border:0;padding:0}.trust-strip strong{font-size:16px;display:block}.trust-strip span{font-size:12px;color:var(--muted)}.section-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-intro>p{font-size:14px;line-height:1.8;color:var(--muted);padding-bottom:5px}.service-filters{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap}.service-filters button{border:1px solid var(--line);background:white;border-radius:30px;padding:9px 19px;font-size:12px;font-weight:700;min-height:40px}.service-filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.service-filters button:hover{border-color:var(--ink)}.service-filters span{margin-left:10px;color:#a9abb0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.service-card{border:1px solid var(--line);background:white;min-width:0}.service-card>a{display:block;height:100%}.card-image{position:relative;overflow:hidden;aspect-ratio:1.5;background:#eee}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.service-card:hover .card-image img{transform:scale(1.045)}.card-index{position:absolute;left:15px;top:15px;font-size:11px;background:white;color:var(--ink);font-weight:800;padding:4px 8px}.card-body{padding:23px}.card-category{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.1em;color:var(--red);font-weight:800;margin-bottom:8px}.card-body h3{font-size:23px;line-height:1.25;letter-spacing:-.035em;margin-bottom:13px}.card-body p{font-size:13px;line-height:1.75;color:var(--muted);min-height:68px}.card-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);font-size:12px;font-weight:800;margin-top:20px;padding-top:15px}.card-link>span{font-size:22px;color:var(--red);line-height:1}.emergency-section{padding:65px var(--page);background:var(--red);color:white;display:grid;grid-template-columns:1.1fr 1fr;gap:9%}.emergency-section h2{font-size:clamp(45px,5vw,74px)}.emergency-section h2>span{color:#fff}.emergency-section>div:last-child{padding-top:12px}.emergency-section p:not(.eyebrow){max-width:450px;font-size:14px;line-height:1.85;color:#ffdde4}.emergency-number{font-size:clamp(35px,4.2vw,62px);display:inline-block;border-bottom:1px solid #ffffff65;margin-top:20px;padding-bottom:6px;white-space:nowrap}.emergency-caption{display:block;font-size:10px;letter-spacing:.14em;margin-top:15px}.work-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:35px;align-items:start}.work-grid figure:nth-child(2){margin-top:80px}.photo-button{border:0;padding:0;width:100%;display:block;position:relative;background:#eee;overflow:hidden}.photo-button img{width:100%;aspect-ratio:1.4;object-fit:cover;height:auto;transition:transform .6s var(--ease)}.photo-button:hover img{transform:scale(1.03)}.photo-button>span{position:absolute;right:18px;bottom:18px;background:white;padding:8px 15px;font-size:12px;font-weight:800}.work-grid figcaption{padding-top:19px}.work-grid figcaption>span{color:var(--muted);font-size:10px;letter-spacing:.1em}.work-grid h3{font-size:21px;letter-spacing:-.025em;margin-top:6px}.about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;background:var(--pale)}.heritage{min-height:465px;padding:42px;background:#1c2024;color:white;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.heritage:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:42px 42px}.heritage>*:not(#heritage-depth){position:relative;z-index:1}.year{font-size:clamp(110px,12vw,183px);font-weight:800;color:white}.year span{display:block;font-family:Manrope,Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:.17em;margin-top:16px}.heritage>p:last-child{font-size:19px;line-height:1.6}.heritage .eyebrow{color:#ff718d}#heritage-depth{position:absolute;inset:0;pointer-events:none;opacity:.5}#heritage-depth canvas{display:block;width:100%;height:100%}.about-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);margin-top:25px;line-height:1.9}.values{margin-top:27px}.values>div{display:flex;gap:20px;border-top:1px solid #d4d7da;padding:15px 0;font-size:13px;font-weight:700}.values b{color:var(--red);font-size:11px}.text-link{font-size:13px;font-weight:800;display:inline-block;padding-bottom:5px;border-bottom:2px solid var(--red);margin-top:16px}.text-link:hover{color:var(--red)}.enquiry-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.enquiry-copy>p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--muted);max-width:420px;margin-top:25px}.enquiry-note{border-left:3px solid var(--red);padding-left:20px;margin-top:40px;font-size:14px}.enquiry-note p{font-size:13px;color:var(--muted);margin-top:8px}.enquiry-note a{text-decoration:underline;text-underline-offset:3px}form{background:var(--pale);padding:36px}form h3{font-size:25px;letter-spacing:-.04em;margin-bottom:22px}form>label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}select{display:block;width:100%;height:49px;padding:0 12px;background:white;border:1px solid #bcbfc3;border-radius:0;font-size:14px;color:#25272a}select[aria-invalid=true]{border-color:var(--red)}.field-error{font-size:12px;line-height:1.5;color:#ad0022;min-height:12px;margin:5px 0 12px}fieldset{padding:0;margin:0 0 23px;border:0}legend{font-size:13px;font-weight:700;margin-bottom:12px}.radio-label{display:flex;align-items:center;gap:10px;font-size:13px;padding:5px 0}.radio-label input{accent-color:var(--red);width:16px;height:16px;margin:0}.form-note{font-size:11px;color:var(--muted);line-height:1.7;margin-top:13px;max-width:340px}#contact-result{background:white;border-left:3px solid var(--red);padding:22px;margin-top:25px}#contact-result:focus{outline:2px solid var(--red);outline-offset:5px}#contact-result h4{font-size:18px;margin:0 0 10px;line-height:1.4}#contact-result p{font-size:13px;margin-bottom:13px}#contact-result .result-phone{font-size:22px;font-weight:800;display:block;margin-bottom:10px}#contact-result .text-link{margin-top:0}.locations{background:var(--pale)}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.location-grid article{padding:32px;background:white;border-top:3px solid var(--red)}.location-grid article>span{font-size:10px;letter-spacing:.1em;font-weight:800;color:var(--red)}.location-grid h3{font-size:30px;margin:13px 0;letter-spacing:-.04em}.location-grid p{font-size:14px;color:var(--muted)}.location-grid article>div{border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.location-grid a{font-size:21px;font-weight:800}.location-grid article>div p{font-size:12px;margin-top:6px}.faq-section{display:grid;grid-template-columns:1fr 1.2fr;column-gap:8%}.faq-section>.eyebrow{grid-column:1}.faq-section>h2{grid-column:1;grid-row:2}.faq-section>.service-list{grid-column:2;grid-row:1/4}.service-list{border-top:1px solid var(--line)}.service-list details{border-bottom:1px solid var(--line)}.service-list summary{list-style:none;padding:20px 30px 20px 0;font-size:14px;font-weight:700;position:relative;line-height:1.7}.service-list summary::-webkit-details-marker{display:none}.service-list summary:after{content:'+';position:absolute;right:0;top:14px;font-size:25px;color:var(--red);font-weight:400}.service-list details[open]>summary:after{content:'−'}.service-list details p{font-size:14px;color:var(--muted);line-height:1.9;padding-bottom:23px;padding-right:20px}footer{padding:60px var(--page) 25px;background:var(--ink);color:white}.footer-call{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:40px;border-bottom:1px solid #ffffff26;margin-bottom:45px}.footer-call>p{font-family:'Barlow Condensed',Impact,sans-serif;font-size:44px;line-height:1.08;color:#b3b6bc;letter-spacing:-.02em}.footer-call strong{color:white;font-weight:600}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1.3fr;gap:40px}.footer-top .logo{width:245px;border:7px solid white;box-sizing:content-box}.footer-top p{font-size:13px;color:#b4b6bb;margin-top:20px}.footer-top h2{font:800 13px/1.5 Manrope,Arial,sans-serif;letter-spacing:0;margin-bottom:20px}.footer-top>div>a:not(.brand-home){display:block;font-size:12px;color:#c4c7cb;margin-bottom:12px}.footer-top>div>a:hover{color:white}.footer-bottom{margin-top:45px;padding-top:20px;border-top:1px solid #ffffff26;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#a9adb4}#back-top{position:fixed;right:24px;bottom:24px;z-index:25;width:48px;height:48px;border:1px solid #d4d6d8;border-radius:50%;background:white;color:var(--red);box-shadow:0 4px 20px #0002;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s,transform .2s,visibility .2s;font-size:24px}#back-top.visible{opacity:1;visibility:visible;transform:none}.preloader{display:none;pointer-events:none;position:fixed;inset:0;background:white;z-index:99;align-items:center;justify-content:center}.js .preloader{display:flex}.js .preloader.is-ready{opacity:0;visibility:hidden;transition:opacity .18s,visibility .18s}.loader-inner{width:290px}.loader-inner .logo{width:100%}.load-line{height:2px;background:var(--red);margin-top:25px;transform-origin:left;animation:loader 1s infinite ease-in-out}@keyframes loader{0%,100%{transform:scaleX(.15)}50%{transform:scaleX(1)}}dialog{border:0;padding:20px;max-width:min(960px,92vw);max-height:90vh;background:white;box-shadow:0 30px 100px #0005}dialog::backdrop{background:#0d1116d9}dialog img{max-height:70vh;width:auto;margin:auto;object-fit:contain}dialog p{font-size:14px;margin-top:15px;max-width:750px}.dialog-close{display:block;margin:0 0 16px auto;background:var(--ink);color:#fff;border:0;padding:10px 17px;font-size:13px}.service-hero{background:var(--pale);padding-top:40px;padding-bottom:65px}.service-hero h1{font-size:clamp(45px,5.6vw,80px);line-height:1.06;max-width:1000px}.service-hero h1 em{color:var(--red);font-style:normal}.service-hero>p:not(.eyebrow){color:var(--muted);margin-top:23px;max-width:650px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:33px}.breadcrumbs a{text-decoration:underline}.service-article{display:grid;grid-template-columns:2fr 1fr;gap:9%}.service-article h2{font-size:37px;line-height:1.1;margin-bottom:20px}.service-article h2:not(:first-child){margin-top:38px}.service-article p{color:var(--muted);line-height:1.9;margin-bottom:20px}.service-article .service-list{margin-top:32px}.service-article aside{border-left:1px solid var(--line);padding-left:32px}.service-article aside h3{font-size:22px;margin-bottom:15px}.related-heading{margin-top:37px}.related-links a{display:block;border-bottom:1px solid var(--line);padding:13px 0;font-size:13px;font-weight:700}.related-links a:hover{color:var(--red)}.service-detail-image{width:100%;height:auto;max-height:500px;object-fit:cover;margin-bottom:35px}.noscript-hide{display:none}
@media(min-width:1700px){:root{--page:calc((100vw - 1460px)/2)}.hero{grid-template-columns:1fr 1fr}.hero-visual{margin-right:var(--page)}}
@media(max-width:1050px){:root{--page:5%}nav{gap:19px}.logo{width:195px}.hero h1{font-size:80px}.hero-copy{padding-top:50px}.hero-visual{margin:20px 20px 20px 0}.service-grid{gap:18px}.card-body{padding:19px}.card-body h3{font-size:21px}.card-body p{min-height:90px}.section{padding-top:80px;padding-bottom:80px}.about,.enquiry-section{gap:6%}.heritage{padding:30px;min-height:430px}.footer-top .logo{width:200px}.footer-top{gap:25px}.footer-call>p{font-size:38px}}
@media(max-width:800px){header{padding-top:12px;padding-bottom:12px}.menu-toggle{display:flex;gap:15px;align-items:center;border:1px solid var(--line);background:white;padding:8px 12px;font-size:13px}.menu-toggle span{font-size:16px}nav{display:flex;flex-direction:column;align-items:stretch;gap:14px;position:absolute;top:100%;left:0;right:0;background:white;border-top:1px solid var(--line);padding:22px 5%;box-shadow:0 15px 25px #0001}.js nav:not(.open){display:none}.hero{min-height:570px;grid-template-columns:1.1fr 1fr}.hero h1{font-size:66px}.hero-description{font-size:14px}.hero-copy{padding-right:20px}.hero .eyebrow{font-size:9px}.hero-visual{margin-right:15px;margin-left:0}.hero-image-label{left:20px;bottom:25px}.hero-image-label b{font-size:31px}.hero-image-label span{font-size:8px}.hero-proof{margin-top:27px}.actions{gap:17px}.trust-strip>div{padding-left:20px}.trust-strip strong{font-size:13px}.trust-strip span{font-size:11px}.service-grid{grid-template-columns:1fr 1fr}.card-body p{min-height:52px}.section-intro>p br{display:none}.section-intro>p{max-width:220px}.work-grid{gap:23px}.about{gap:30px}.heritage{min-height:395px;padding:26px}.year{font-size:112px}.about-copy>p:not(.eyebrow){font-size:14px}.values>div{font-size:12px}.enquiry-section{gap:35px}form{padding:26px}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.footer-call{align-items:start;flex-direction:column}.faq-section{grid-template-columns:1fr;gap:0}.faq-section>.service-list{grid-column:1;grid-row:3;margin-top:30px}.faq-section>h2{max-width:500px}}
@media(max-width:600px){:root{--page:6%}html{scroll-padding-top:86px}.emergency-bar{font-size:9px;padding:7px 6%}.emergency-bar a{font-size:11px}.logo{width:194px}.hero{display:flex;flex-direction:column;padding:0;min-height:0}.hero-copy{padding:39px 6% 32px}.hero h1{font-size:clamp(63px,13.7vw,83px);line-height:.96;margin-bottom:23px}.hero .eyebrow{font-size:9px;letter-spacing:.08em;margin-bottom:23px}.hero-description{max-width:480px;font-size:14px}.hero .actions{margin-top:24px;gap:17px}.button{padding:13px 20px;min-height:49px}.hero-proof{margin-top:25px}.hero-proof strong{font-size:33px}.hero-proof>span{font-size:10px}.hero-visual{height:310px;margin:0 6% 25px}.hero-visual>img{object-position:center}.hero-image-label b{font-size:35px}.hero-image-label span{font-size:9px}.trust-strip{grid-template-columns:1fr;gap:13px;padding-top:23px;padding-bottom:23px}.trust-strip>div,.trust-strip>div:first-child{padding:0 0 13px;border:0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.trust-strip>div:last-child{padding-bottom:0;border:0}.trust-strip span{text-align:right}.section{padding-top:58px;padding-bottom:58px}.section-intro{flex-direction:column;align-items:start;gap:22px;margin-bottom:28px}h2{font-size:47px}.eyebrow{font-size:10px;margin-bottom:17px}.section-intro>p{max-width:340px;font-size:13px}.service-filters{gap:7px}.service-filters button{font-size:11px;padding:8px 13px}.service-grid{grid-template-columns:1fr;gap:24px}.card-image{aspect-ratio:1.65}.card-body{padding:22px}.card-body h3{font-size:25px}.card-body p{font-size:14px;min-height:0}.card-link{font-size:13px}.emergency-section{grid-template-columns:1fr;gap:23px;padding:43px 6%}.emergency-section h2{font-size:53px}.emergency-section>div:last-child{padding:0}.emergency-section p:not(.eyebrow){font-size:14px}.emergency-number{font-size:43px}.work-grid{grid-template-columns:1fr;gap:30px}.work-grid figure:nth-child(2){margin-top:0}.work-grid h3{font-size:21px}.about{grid-template-columns:1fr;gap:35px}.heritage{min-height:360px;padding:32px}.year{font-size:148px}.about-copy>p:not(.eyebrow){font-size:15px}.values>div{font-size:13px}.enquiry-section{grid-template-columns:1fr;gap:30px}.enquiry-copy>p:not(.eyebrow){font-size:14px}.enquiry-note{margin-top:25px}form{padding:26px}.location-grid{grid-template-columns:1fr;gap:20px}.location-grid article{padding:27px}.location-grid h3{font-size:29px}.location-grid a{font-size:20px}.faq-section summary{font-size:14px}.faq-section details p{font-size:14px}.footer-call>p{font-size:35px}.footer-call .button{font-size:12px}.footer-top{gap:25px;grid-template-columns:1fr}.footer-top>div:first-child{grid-column:auto}.footer-top>div>a:not(.brand-home){font-size:13px}.footer-top h2{margin-bottom:15px}.footer-bottom{flex-direction:column;gap:10px;margin-top:30px}#back-top{bottom:15px;right:15px;width:43px;height:43px}.service-hero h1{font-size:43px}.service-article{grid-template-columns:1fr;gap:35px}.service-article aside{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.service-article h2{font-size:36px}.breadcrumbs{font-size:11px}.service-hero .actions{gap:10px}.service-hero .button{font-size:12px;padding:12px 16px}.loader-inner{width:250px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .preloader{display:none}#heritage-depth{display:none}}
/* Preserve the original panoramic photograph without an aggressive tall crop. */
@media(min-width:801px){.hero{display:block;padding:0;min-height:0}.hero-copy{display:grid;grid-template-columns:1.25fr 1fr;column-gap:7%;padding:50px var(--page) 38px;align-items:start}.hero-copy>.eyebrow{grid-column:1/-1;margin-bottom:27px}.hero h1{grid-column:1;grid-row:2/5;font-size:clamp(72px,7vw,105px);margin-bottom:0}.hero-description{grid-column:2;grid-row:2;padding-top:5px;font-size:16px;max-width:440px}.hero .actions{grid-column:2;grid-row:3;margin-top:25px}.hero-proof{grid-column:2;grid-row:4;margin-top:25px}.hero-visual{height:auto;aspect-ratio:3.63;margin:0 var(--page) 0}.hero-visual>img{object-position:center}.hero-image-label{bottom:24px}.hero-image-label b{font-size:35px}.hero-side-label{writing-mode:horizontal-tb;right:22px;top:22px}.trust-strip{background:#fff}}
@media(min-width:601px) and (max-width:800px){.hero{display:block;padding:0}.hero-copy{padding:42px 6%;max-width:650px}.hero h1{font-size:78px}.hero-visual{height:auto;aspect-ratio:3.63;margin:0 5%}.hero-visual>img{position:relative;inset:auto;aspect-ratio:3.63}.hero-image-label b{font-size:24px}.hero-image-label{bottom:15px}.hero-side-label{display:none}}
@media(max-width:600px){.hero-visual{height:210px}.hero-visual>img{object-position:54% center}.hero-side-label{display:none}}

@media(max-width:400px){header{gap:12px}.logo{width:166px}.menu-toggle{font-size:12px;gap:8px;padding:8px 10px}.hero .actions{align-items:flex-start;flex-direction:column}.emergency-number{font-size:38px}}
/* Approved full-image hero and the people and history behind Peerless. */
.hero.hero-reference{display:flex;align-items:center;min-height:680px;position:relative;padding:0;overflow:hidden;background:#222b30;color:white}.hero-background,.hero-overlay{position:absolute;inset:0}.hero-background img{width:100%;height:110%;object-fit:cover;object-position:65% 45%;max-width:none}.hero-overlay{background:linear-gradient(90deg,rgba(9,16,20,.92),rgba(9,16,20,.65) 46%,rgba(9,16,20,.13))}.reference-content{position:relative;z-index:1;padding:74px var(--page) 100px;width:100%}.hero.hero-reference h1{font-size:clamp(53px,6.2vw,90px);font-weight:800;line-height:1.04;letter-spacing:-.02em;max-width:1000px;margin:0 0 28px}.hero-period{color:var(--red);padding-left:8px}.hero.hero-reference .eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:30px;color:white}.hero.hero-reference .eyebrow:before{content:'';width:27px;height:3px;background:var(--red);display:inline-block;vertical-align:middle;margin-right:12px}.hero.hero-reference .hero-description{font-size:16px;line-height:1.85;max-width:590px;color:#e4e6e8;padding:0}.hero.hero-reference .actions{margin-top:30px;display:flex;gap:12px}.button.outline{background:transparent;border-color:#ffffff75;color:white}.button.outline:hover{background:white;color:var(--ink)}.reference-footnote{position:absolute;bottom:22px;left:var(--page);font-size:10px;letter-spacing:.12em;color:#e0e2e5}.owner-section{background:var(--pale);grid-template-columns:1.05fr 1fr;gap:7%}.owner-portrait{background:white;padding:20px;align-self:center}.owner-portrait img{width:100%;height:auto;object-fit:contain}.owner-portrait figcaption{padding:17px 8px 0;font-size:19px;font-weight:800;letter-spacing:-.025em}.owner-portrait figcaption span{display:block;font-size:12px;font-weight:500;color:var(--muted);letter-spacing:0;margin-top:3px}.history-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.history-copy>p:not(.eyebrow){color:var(--muted);line-height:1.9;font-size:15px;margin-top:22px;max-width:460px}.history-image{padding:28px 0}.history-image img{width:100%;height:auto;object-fit:contain}.history-image figcaption{border-top:1px solid var(--line);font-size:12px;color:var(--muted);padding-top:15px;margin-top:23px}.testimonials{background:#f3f4f5}.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.testimonial-grid figure{padding:28px;background:#fff;display:flex;flex-direction:column;border-top:3px solid var(--red)}.quote-mark{font-family:Georgia,serif;font-size:65px;line-height:1;color:var(--red);height:49px}.testimonial-grid blockquote{font-size:17px;line-height:1.8;letter-spacing:-.02em;margin:10px 0 28px}.testimonial-grid figcaption{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;gap:5px}.testimonial-grid strong{font-size:14px}.testimonial-grid figcaption span{font-size:12px;color:var(--muted)}.testimonial-grid figcaption a{font-size:11px;color:var(--muted);text-decoration:underline;text-underline-offset:4px;margin-top:5px}
@media(max-width:800px){.hero.hero-reference{min-height:630px}.hero.hero-reference h1{font-size:62px;max-width:650px}.reference-content{padding-top:65px;padding-bottom:90px}.hero.hero-reference .hero-description{font-size:15px;max-width:530px}.owner-section{gap:30px}.owner-portrait{padding:14px}.history-section{gap:30px}.testimonial-grid{gap:15px}.testimonial-grid figure{padding:22px}.testimonial-grid blockquote{font-size:15px}}
@media(max-width:600px){.hero.hero-reference{min-height:640px}.hero.hero-reference h1{font-size:clamp(39px,10.5vw,60px);line-height:1.06}.hero.hero-reference .eyebrow{font-size:9px;letter-spacing:.07em}.hero.hero-reference .hero-description{font-size:14px}.hero-background img{object-position:60% center}.hero-overlay{background:linear-gradient(90deg,#091014e8,#09101499)}.hero.hero-reference .actions{align-items:flex-start;flex-direction:column;gap:12px}.reference-content{padding-top:45px;padding-bottom:80px}.reference-footnote{font-size:8px;letter-spacing:.07em;right:6%}.owner-section,.history-section{grid-template-columns:1fr}.owner-portrait{padding:12px}.history-image{padding:0}.testimonial-grid{grid-template-columns:1fr;gap:20px}.testimonial-grid figure{padding:27px}.testimonial-grid blockquote{font-size:17px}.history-copy>p:not(.eyebrow){font-size:14px}}
/* Final visual polish: high-definition imagery, depth and the approved dark footer lockup */
.card-image:after,.photo-button:after,.owner-portrait:after,.history-image:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.12),transparent 35%,rgba(0,0,0,.18));mix-blend-mode:soft-light}
.card-image img,.photo-button img,.owner-portrait img,.history-image img{filter:saturate(1.08) contrast(1.04);image-rendering:auto}
.service-card,.photo-button,.owner-portrait,.history-image{box-shadow:0 18px 42px rgba(20,24,28,.08)}
.service-card:hover,.photo-button:hover{box-shadow:0 24px 52px rgba(20,24,28,.14);transform:translateY(-3px);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.history-section{position:relative;overflow:hidden}
.history-section:before{content:'1945';position:absolute;right:4%;top:8%;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(150px,21vw,330px);font-weight:800;line-height:1;color:#f0f1f2;pointer-events:none}
.history-copy,.history-image{position:relative;z-index:1}
.history-image{background:transparent;padding:0;color:var(--ink);box-shadow:none}
.history-image:before{content:'ROOTED HERE';position:absolute;left:0;top:-26px;z-index:2;color:var(--red);font-size:10px;font-weight:800;letter-spacing:.16em}
.history-image img{position:relative;z-index:1;margin-top:20px}
.history-image figcaption{border-color:var(--line);color:var(--muted);margin-top:18px}
.footer-logo{background:transparent!important;width:235px!important;aspect-ratio:3.5!important}
.footer-logo img{position:static!important;width:100%!important;height:100%!important;object-fit:contain!important}
footer .footer-top>div:first-child>p{color:#c8cbd0}
footer .footer-logo{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
 .owner-portrait{background:transparent!important;padding:0!important;box-shadow:none!important}
 .owner-portrait figcaption{padding-left:0!important}
@media(min-width:801px){header{position:sticky}header>nav{margin-left:auto}.history-section{grid-template-columns:1.05fr 1fr;align-items:start;column-gap:8%}.heritage-card{grid-column:1;grid-row:1;min-height:465px}.history-copy{grid-column:1;grid-row:2;padding-top:32px}.history-image{grid-column:2;grid-row:1 / span 2;max-width:610px;margin:170px 0 0;align-self:start}}
.heritage-card{background:#1c2024;color:#fff;position:relative;overflow:hidden;padding:40px;display:flex;flex-direction:column;justify-content:space-between;min-height:390px;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:42px 42px;box-shadow:0 18px 42px rgba(20,24,28,.10)}
.heritage-card:after{content:'';position:absolute;width:68%;height:82%;right:-8%;top:8%;border:1px solid #ce002955;transform:rotate(-8deg);box-shadow:-18px 18px 0 #ce002922,-35px 35px 0 #ce002915;pointer-events:none}
.heritage-card>*{position:relative;z-index:1}.heritage-kicker{font-size:10px;letter-spacing:.16em;color:#ff6682;font-weight:800}.heritage-card strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(130px,13vw,190px);line-height:.8;letter-spacing:-.04em}.heritage-label{font-size:10px;letter-spacing:.14em;font-weight:800}.heritage-card p{font-size:19px;line-height:1.5;color:#f1f2f3}
footer .footer-logo{width:310px!important;aspect-ratio:3.5!important}
@media(max-width:800px){header>.brand-home{position:absolute;left:50%;transform:translateX(-50%)}header{min-height:72px}.heritage-card{min-height:360px;padding:30px}.heritage-card strong{font-size:130px}.history-copy{margin-top:35px}.history-image{margin-top:28px}}
/* Estimate form treatment follows the approved reference layout. */
header>.brand-home{position:static!important;transform:none!important}
.enquiry-section{display:block;background:#f5f7fa;padding-top:44px;padding-bottom:44px}
.enquiry-section form{max-width:765px;margin:0 auto;background:#fff;border:1px solid #dce3ec;border-radius:22px;padding:48px 82px 40px;box-shadow:0 2px 5px rgba(20,35,50,.08)}
.enquiry-section form>.eyebrow{text-align:center;margin-bottom:13px;color:#ef001c;font-size:10px}
.enquiry-section form>h2{text-align:center;font-family:Manrope,Arial,sans-serif;font-size:clamp(27px,3vw,38px);font-weight:800;letter-spacing:-.055em;line-height:1.1;color:#07193b}
.estimate-intro{text-align:center;color:#4f607c;font-size:13px;line-height:1.5;margin:10px auto 34px;max-width:600px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 16px}.form-grid label{display:block;font-size:11px;color:#07193b;font-weight:800;margin-bottom:7px}.form-grid input,.form-grid select{height:39px;border-radius:7px;border:1px solid #d6dfeb;background:#f8fafc;color:#17325e;font-size:13px;padding:0 13px;width:100%}.form-grid input::placeholder{color:#9aabc4}.form-grid input:focus,.form-grid select:focus{background:#fff;border-color:#ce0029;outline:2px solid #ce002933;outline-offset:2px}.form-grid .field-error{margin:3px 0 0;font-size:10px}.legacy-routing{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.estimate-submit{width:100%;margin-top:25px;min-height:40px;border-radius:7px;font-size:11px;background:#ed0018;border-color:#ed0018}.estimate-submit:hover{background:#c80016}.estimate-call{text-align:center;margin:24px 0 0;color:#647793;font-size:11px;max-width:none}.estimate-call a{color:#ed0018;font-weight:800}.enquiry-section #contact-result{margin-top:20px}
@media(max-width:600px){.enquiry-section form{padding:34px 22px 30px;border-radius:16px}.form-grid{grid-template-columns:1fr;gap:15px}.enquiry-section form>h2{font-size:27px}.estimate-intro{font-size:12px;margin-bottom:25px}}
/* Final history composition: the complete story lives inside the left 1945 card. */
.heritage-card{min-height:500px;padding:34px 32px}.heritage-card .heritage-kicker{font-size:10px;text-transform:none}.heritage-card strong{font-size:clamp(125px,12vw,178px)}.heritage-card .heritage-label{font-size:11px;text-transform:none;letter-spacing:0}.heritage-card .heritage-story{font-size:15px;line-height:1.55;color:#f4f5f6;max-width:480px;margin:0}.heritage-link{font-size:12px;font-weight:800;color:#fff;border-bottom:2px solid var(--red);padding-bottom:5px;align-self:flex-start}.history-copy{display:none!important}
@media(min-width:801px){.history-section{grid-template-columns:1.05fr 1fr;align-items:start}.heritage-card{grid-column:1;grid-row:1;min-height:500px}.history-image{grid-column:2;grid-row:1;max-width:610px;margin:0;align-self:start}}
@media(max-width:800px){.heritage-card{min-height:440px;padding:30px 25px}.heritage-card strong{font-size:130px}.heritage-card .heritage-story{font-size:14px}.history-image{margin-top:45px}}
/* Hero image: keep the technician's head visible at every breakpoint. */
.hero-background img{object-position:62% 16%;}
@media(max-width:800px){.hero-background img{object-position:58% 10%;}}
/* Keep the supplied hero photograph stable and undistorted. */
.hero-background img{height:100%!important;transform:none!important;object-fit:cover;object-position:60% 0!important}
@media(max-width:800px){.hero-background img{object-position:58% 0!important}}
.history-image img{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;transform:none!important}
/* The header uses the approved black lockup; the footer and preloader keep the white lockup. */
header .footer-logo{background: #fff url(/assets/brand.webp) center 26% / 112% auto no-repeat !important}
header .footer-logo img{display:none!important}
.history-section:before{display:none}
/* The preloader uses the approved black lockup on its white canvas. */
.preloader .loader-inner .logo{background:#fff url(/assets/brand.webp) center 26% / 112% auto no-repeat!important}
.preloader .loader-inner .logo img{display:none!important}
