@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url('/assets/poppins-400.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url('/assets/poppins-600.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url('/assets/poppins-700.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url('/assets/poppins-800.ttf') format('truetype')}
:root{--ink:#080d50;--navy:#002957;--orange:#ff6b00}body{font-family:Poppins,Arial,sans-serif;color:var(--ink);font-size:18px;line-height:1.55}p,li{color:#253971}h1,h2,h3{font-family:Poppins,Arial,sans-serif;font-weight:700;letter-spacing:-.03em;line-height:1.1}h1{font-size:62px}h2,.section h2{font-size:58px}h3{font-size:36px}header{position:relative;border:0}.wrap{width:min(1180px,91%)}.header{padding:10px 0;gap:30px}.header .logo{width:285px}.header nav{font-size:16px;gap:32px}.button{background:linear-gradient(110deg,#ff7300,#ff5b00);font-size:18px;font-weight:600;border-radius:7px;padding:17px 28px}.header-quote{padding:15px 25px;font-size:16px}.hero{min-height:500px;background-color:var(--navy);background-size:100% 100%,83% auto;background-position:center,right 48%}.hero h1{font-size:60px;max-width:740px;line-height:1.06;margin-bottom:22px}.hero p{font-size:24px;line-height:1.42;max-width:540px;margin-bottom:25px}.hero .wrap{padding:55px 0}.audience{font-size:20px;font-weight:400;padding:27px 0;gap:30px}.section{padding:35px 0}.section h2{margin-bottom:28px}.service-grid{gap:20px}.service-grid article{padding:25px 28px;min-height:300px;align-items:flex-start;gap:14px}.service-grid h3{font-size:39px;margin-bottom:14px;white-space:nowrap}.service-grid p{font-size:20px;line-height:1.4;margin-bottom:0}.service-grid img{width:39%;height:250px;align-self:center}.property-grid{gap:22px}.property-grid h3{font-size:27px;margin-bottom:8px;letter-spacing:-.035em}.property-grid p{font-size:20px;line-height:1.4;margin-bottom:0}.property-grid .photo-crop{aspect-ratio:1.66!important;margin-bottom:12px}.homepage #property{padding-top:4px;padding-bottom:35px}#about{padding-top:30px;padding-bottom:25px;background:#f2f7fa}.steps{gap:35px}.steps span{font-size:47px;line-height:1.1;margin-bottom:8px;color:var(--orange)}.steps h3{font-size:27px;margin-bottom:12px}.steps p{font-size:19px;line-height:1.4;margin-bottom:0}.local{padding:25px 0;background:#002957}.local h2{font-size:55px;color:white;margin-bottom:12px}.local p{font-size:22px;line-height:1.35;max-width:740px}.local:after{display:none}.contact{grid-template-columns:1fr 1fr;gap:50px;padding:25px 0}.contact h2{font-size:48px;line-height:1.04;margin-bottom:14px}.contact p{font-size:21px;line-height:1.35}.contact .details{font-size:21px;margin-top:15px}.contact .details p{font-size:21px;margin-bottom:5px}.contact form{padding:17px;border-radius:5px}.contact label{font-size:15px;margin-bottom:8px}.contact input,.contact textarea{padding:7px 10px;font-size:15px;margin-top:4px}.contact form .button{width:100%;justify-content:center;padding:10px 20px}.contact .fine{font-size:10px;margin:5px 0 0}.contact .form-result:empty{display:none}footer{padding:30px 0 10px;background:#002957}footer>.wrap:first-child{gap:30px}footer .logo{width:265px;padding:0;border-radius:0;background:transparent}footer>.wrap>div{display:flex;gap:24px}footer a{font-size:14px}footer .footer-business{font-size:14px;line-height:1.7;border-left:1px solid #b4c4d6;padding-left:30px;margin:0;color:#b4c4d6}footer strong{color:white;font-weight:500}footer .fine{font-size:10px;margin-top:18px;opacity:.7}.pagehead h1{font-size:62px}.pagehead p{font-size:23px}.service-detail{padding:15px 0;gap:45px}.service-detail h2{font-size:49px}.service-detail p,.service-detail li{font-size:20px;line-height:1.55}.service-detail .textlink{font-size:16px}.property-row h2{font-size:45px}.property-row p,.property-row li{font-size:20px}.rural{grid-template-columns:1.5fr 1fr;gap:45px}.rural h2{font-size:45px}.rural p,.support-row p{font-size:20px}.support-row h2{font-size:48px}.about-page .property{background:#f2f7fa}.about-page .steps h3{font-size:25px}.cta h2{font-size:46px}.contact-page .contact{padding:40px 0}.contact-page .contact form{padding:25px;background:#f5f7f9}.contact-page input,.contact-page select,.contact-page textarea{font-size:17px;padding:12px}.contact-page label{margin-bottom:18px}
@media(max-width:1100px) and (min-width:721px){.header .logo{width:220px}.header nav{font-size:13px;gap:20px}.hero h1{font-size:48px}.hero p{font-size:20px;max-width:440px}.hero{min-height:400px}.hero .wrap{padding:40px 0}h2,.section h2{font-size:44px}.service-grid h3{font-size:30px}.service-grid p{font-size:16px}.service-grid article{min-height:240px;padding:22px}.service-grid img{height:200px}.property-grid h3{font-size:21px}.property-grid p{font-size:16px}.steps h3{font-size:21px}.steps p{font-size:16px}.local h2{font-size:44px}.contact h2{font-size:38px}.contact p,.contact .details,.contact .details p{font-size:17px}footer .logo{width:210px}footer>.wrap>div{gap:15px}footer a,footer .footer-business{font-size:11px}}
@media(max-width:720px){body{font-size:16px}.header .logo{width:190px}.header nav{gap:0;font-size:16px}.hero{min-height:510px;background-size:cover;background-position:65% center}.hero h1{font-size:37px;max-width:100%;line-height:1.1}.hero p{font-size:17px;max-width:320px;line-height:1.5}.hero .wrap{padding:40px 0}.button{font-size:15px;padding:14px 20px}.audience{font-size:12px;gap:12px;padding:20px 0}.section{padding:30px 0}h2,.section h2{font-size:33px;line-height:1.12}.service-grid article{padding:22px;min-height:220px}.service-grid h3{font-size:28px;white-space:normal}.service-grid p{font-size:15px}.service-grid img{height:180px;width:35%}.property-grid h3{font-size:24px}.property-grid p{font-size:16px}.steps{gap:20px}.steps span{font-size:35px}.steps h3{font-size:20px}.steps p{font-size:14px}.local h2{font-size:33px}.local p{font-size:17px}.contact{grid-template-columns:1fr;gap:25px}.contact h2{font-size:34px}.contact p,.contact .details,.contact .details p{font-size:17px}.contact .fields{grid-template-columns:1fr 1fr}.contact .fine{font-size:10px}.pagehead h1{font-size:38px}.pagehead p{font-size:17px}.service-detail h2,.property-row h2,.rural h2,.support-row h2,.cta h2{font-size:32px}.service-detail p,.service-detail li,.property-row p,.property-row li,.rural p,.support-row p{font-size:16px}.rural{grid-template-columns:1fr}.about-page .steps h3{font-size:20px}footer .logo{width:200px}footer>.wrap>div{flex-wrap:wrap;gap:15px}footer .footer-business{border:0;padding:0}footer a{font-size:12px}}
.audience>div{display:flex;align-items:center;gap:12px}.audience svg{width:36px;height:36px}.brand-motif{position:absolute!important;right:0;bottom:0;width:295px!important;pointer-events:none;mix-blend-mode:lighten}.local,.cta{position:relative;overflow:hidden}.cta .wrap{position:relative;z-index:1}.local .wrap{z-index:1}.pagehead{position:relative;overflow:hidden;min-height:460px;display:flex;align-items:center;background:#002957;color:white}.pagehead>.wrap{position:relative;z-index:2;padding:30px 0}.pagehead h1{max-width:680px}.pagehead p{max-width:550px;color:white;line-height:1.45}.services-page .pagehead,.about-page .pagehead{background:linear-gradient(90deg,#002957 0%,rgba(0,41,87,.85) 25%,transparent 65%),url('/assets/hero.png') right 45%/85% auto no-repeat;background-color:#002957}.pagehead .head-scene{position:absolute;right:0;top:0;width:60%;height:100%;aspect-ratio:auto!important}.property-page .pagehead:after,.contact-page .pagehead:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#002957 15%,rgba(0,41,87,.85) 40%,transparent 75%)}.property-details{width:min(1440px,100%)}.property-row{gap:0;padding:0}.property-row>div:not(.photo-crop){padding:35px 45px}.property-row .photo-crop{border-radius:0}.property-row .textlink{font-size:15px}.services-page main>.wrap{width:min(1440px,100%)}.service-detail{gap:0}.service-detail>div:not(.photo-crop){padding:0 45px}.service-detail .photo-crop{border-radius:4px}.contact-van{width:100%;height:520px;object-fit:cover;object-position:68% center;margin-top:45px;border-radius:5px}.contact-page .contact h2{font-size:44px}.contact-page .details{font-size:24px;line-height:1.5}.contact-page .details p{font-size:24px;margin:25px 0}.contact-page .fields label:nth-child(n+3){grid-column:1/-1}fieldset{border:0;padding:0;margin:0 0 20px}legend{font-size:16px;font-weight:600;margin-bottom:10px}.radio-options{display:grid;gap:10px}.radio-options.property{grid-template-columns:repeat(3,1fr);background:transparent}.radio-options label{display:flex;align-items:center;gap:12px;border:1px solid #cbd5e1;border-radius:5px;padding:12px!important;font-weight:400;font-size:15px;margin:0!important;background:white}.radio-options input{width:18px;height:18px;margin:0;accent-color:#ff6b00}.contact-page form .fine{font-size:12px}.contact-page form .button{padding:16px}
@media(max-width:720px){.audience svg{width:23px;height:23px}.audience>div{gap:5px}.brand-motif{width:170px!important;opacity:.35}.pagehead{min-height:360px;padding:20px 0}.pagehead p{max-width:310px}.services-page .pagehead,.about-page .pagehead{background-size:cover;background-position:65% center}.pagehead .head-scene{width:90%;opacity:.6}.property-row>div:not(.photo-crop),.service-detail>div:not(.photo-crop){padding:25px 5%}.property-row .photo-crop,.service-detail .photo-crop{border-radius:0}.contact-page .contact h2{font-size:32px}.contact-page .details,.contact-page .details p{font-size:18px}.contact-van{height:300px;margin-top:25px}.radio-options.property{grid-template-columns:1fr}.contact-page .fields{grid-template-columns:1fr}.contact-page .contact form{padding:20px}.homepage .header nav a{font-size:16px}}
@media(min-width:721px){.header{height:108px;padding:0}.header>a:first-child{width:300px;height:100px;overflow:hidden;display:flex;align-items:center;flex-shrink:0}.header .logo{width:300px;max-width:none}.header-quote{display:inline-flex}.hero h1{font-size:60px}.hero{background-size:100% 100%,auto 118%}.hero p{max-width:530px}}
@media(min-width:721px) and (max-width:1100px){.header{height:70px;gap:18px}.header>a:first-child{width:200px;height:70px}.header .logo{width:220px;margin-left:-10px}.header nav{font-size:11px;gap:22px}.header-quote{font-size:11px;padding:11px 18px}.hero{min-height:315px;background-size:100% 100%,auto 118%}.hero .wrap{padding:35px 0}.hero h1{font-size:38px;margin-bottom:15px}.hero p{font-size:16px;max-width:350px;line-height:1.4;margin-bottom:20px}.hero .button{font-size:14px;padding:13px 22px}.audience{font-size:14px;gap:22px;padding:17px 0}.audience svg{width:28px;height:28px}.audience>div{gap:8px}h2,.section h2{font-size:40px}.section{padding:20px 0}.section h2{margin-bottom:20px}.service-grid{gap:14px}.service-grid article{padding:18px 20px;min-height:192px;gap:12px}.service-grid h3{font-size:27px;margin-bottom:10px}.service-grid p{font-size:13px}.service-grid img{height:165px}.property-grid h3{font-size:20px}.property-grid p{font-size:14px}.steps span{font-size:34px}.steps h3{font-size:20px}.steps p{font-size:14px}.local h2{font-size:38px}.local p{font-size:16px;max-width:460px}.local{padding:18px 0}.contact{gap:30px;padding:15px 0}.contact h2{font-size:33px}.contact p,.contact .details,.contact .details p{font-size:16px}.contact form{padding:12px}.contact label{font-size:11px}.contact input,.contact textarea{font-size:11px;padding:5px 8px}.contact .button{font-size:13px;padding:8px}.brand-motif{width:190px!important}.pagehead{min-height:320px}.pagehead h1{font-size:44px}.pagehead p{font-size:18px;max-width:380px}}
@media(max-width:720px){.audience{gap:8px;font-size:11px}.audience>div{white-space:nowrap}.audience svg{width:20px;height:20px}}
.service-grid img{transform:scale(1.14)}
@media(max-width:720px){.service-grid img{transform:scale(1.05)}}
.pagehead .head-scene{mask-image:linear-gradient(to right,transparent,black 30%)}
/* Vector brand assets preserve the approved outline without a rectangular background. */
header .logo,footer .logo{mix-blend-mode:normal;background:none;border:0;padding:0}footer .logo{width:265px;height:auto;max-width:100%}.about-page .steps{text-align:center;gap:35px}.about-page .steps article{padding:0 22px 0 0}.about-page .step-icon{width:94px;height:94px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ff6b00;color:white;margin:0 auto 17px}.step-icon svg{width:51px;height:51px}.about-page .steps h3{font-size:28px;white-space:nowrap}.about-page .steps p{font-size:19px;line-height:1.48}.about-page .property{padding:42px 0 50px}.about-page .rural{padding:45px 0;grid-template-columns:1.5fr 1fr}.about-page .support-row{grid-template-columns:.85fr 1.15fr;gap:40px;padding:45px 0}.about-page .cta-copy{max-width:770px}.about-page .cta h2{font-size:43px;line-height:1.2}.about-page .cta p{color:white;font-size:20px;line-height:1.5;margin:14px 0 0}.about-page .cta .button{position:relative;z-index:2;margin-right:100px;white-space:nowrap}.about-page .cta{border-bottom:1px solid #8c9fb8;padding:35px 0}
@media(min-width:721px) and (max-width:1100px){.about-page .steps{gap:20px}.about-page .steps article{padding-right:15px}.about-page .step-icon{width:65px;height:65px}.step-icon svg{width:36px;height:36px}.about-page .steps h3{font-size:20px}.about-page .steps p{font-size:14px}.about-page .cta h2{font-size:30px}.about-page .cta p{font-size:15px}.about-page .cta .button{margin-right:70px;font-size:13px}footer .logo{width:200px}}
@media(max-width:720px){footer .logo{width:210px}.about-page .steps{gap:25px 15px}.about-page .steps article{padding-right:10px}.about-page .step-icon{width:64px;height:64px}.step-icon svg{width:36px;height:36px}.about-page .steps h3{font-size:18px;white-space:normal}.about-page .steps p{font-size:14px}.about-page .rural,.about-page .support-row{grid-template-columns:1fr;padding:30px 0}.about-page .cta h2{font-size:30px}.about-page .cta p{font-size:16px}.about-page .cta .button{margin-right:0}}
.brand-motif{width:270px!important;height:245px;right:-35px;bottom:-35px;mix-blend-mode:normal;opacity:1}.brand-motif img{position:static;width:100%;height:100%;object-fit:contain}.about-page .cta{background:#002957}.about-page .cta-copy{max-width:750px}.about-page .cta .button{margin-right:155px}.about-page .cta .wrap{gap:25px}.about-page .cta h2{font-size:41px}
@media(max-width:1100px){.brand-motif{width:190px!important;height:180px;right:-25px;bottom:-25px}.about-page .cta .button{margin-right:95px}.about-page .cta h2{font-size:30px}}
@media(max-width:720px){.brand-motif{opacity:.25}.about-page .cta .button{margin-right:0}}
/* A consistent, optically aligned property icon set. */
.audience>div{gap:11px;align-items:center}.audience-icon{display:block;flex:0 0 36px;width:36px;height:36px;object-fit:contain}.audience>span{font-size:16px;line-height:1}
@media(min-width:721px) and (max-width:1100px){.audience-icon{flex-basis:30px;width:30px;height:30px}.audience>div{gap:9px}}
@media(max-width:720px){.audience-icon{flex-basis:24px;width:24px;height:24px}.audience>div{gap:5px}.audience>span{font-size:12px}}
/* Match the approved property strip: larger icons and centred circular separators. */
.audience{align-items:center;gap:32px;font-size:22px}.audience-icon{width:44px;height:44px;flex-basis:44px}.audience>div{gap:12px}.audience>span{display:block;flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#ff6b00;font-size:0;line-height:0;color:transparent}
@media(min-width:721px) and (max-width:1100px){.audience{gap:23px;font-size:14px}.audience-icon{width:30px;height:30px;flex-basis:30px}.audience>div{gap:9px}.audience>span{width:5px;height:5px;flex-basis:5px}}
@media(max-width:720px){.audience{gap:9px;font-size:11px}.audience-icon{width:25px;height:25px;flex-basis:25px}.audience>div{gap:5px}.audience>span{width:4px;height:4px;flex-basis:4px}}
.business-photo{aspect-ratio:434/336}.business-photo img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center 60%;transform:none}
.business-photo img{object-position:center center}
/* Give the homepage closing sections distinct surfaces and a calmer hierarchy. */
.homepage .local{background:#fff;color:#080d50;padding:48px 0;border-bottom:1px solid #e4e9ef}.homepage .local h2{color:#080d50;font-size:46px;line-height:1.15}.homepage .local p{color:#42536b;font-size:20px;line-height:1.55;max-width:790px}.homepage .local .textlink{color:#080d50;margin-top:22px}.homepage .local .brand-motif,.homepage .cta .brand-motif{display:none}.homepage .cta{background:#f1f4f7;color:#080d50;padding:45px 0}.homepage .cta h2{font-size:42px;line-height:1.18;max-width:650px}.homepage .cta .wrap{gap:45px}.homepage .cta .button{flex-shrink:0;white-space:nowrap}.homepage footer{border-top:0}
@media(min-width:721px) and (max-width:1100px){.homepage .local{padding:34px 0}.homepage .local h2{font-size:36px}.homepage .local p{font-size:17px}.homepage .cta{padding:35px 0}.homepage .cta h2{font-size:32px}.homepage .cta .button{font-size:14px;padding:15px 22px}}
@media(max-width:720px){.homepage .local{padding:32px 0}.homepage .local h2{font-size:31px}.homepage .local p{font-size:16px}.homepage .cta{padding:32px 0}.homepage .cta h2{font-size:31px}.homepage .cta .wrap{gap:22px}}
/* Services: alternating surfaces, concise benefits and room around each installation. */
.services-page .service-sections{width:100%;max-width:none}.services-page .service-band{padding:56px 0;background:white}.services-page .service-band:nth-child(even){background:#f1f4f7}.services-page .service-detail{padding:0;gap:58px;align-items:center;border:0}.services-page .service-detail>div:not(.photo-crop){padding:0}.services-page .service-detail .photo-crop{border-radius:9px}.services-page .service-detail h2{font-size:44px;margin-bottom:18px}.services-page .service-detail p{font-size:18px;line-height:1.65;margin-bottom:24px;max-width:520px}.services-page .service-band:nth-child(even) .photo-crop{order:2}.services-page .service-benefits{list-style:none;padding:0;margin:0 0 25px;display:grid;gap:15px}.services-page .service-benefits li{display:flex;align-items:center;gap:13px;margin:0;font-size:16px;line-height:1.5;color:#153559}.benefit-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex:0 0 26px;background:#ff6b00;color:#fff;border-radius:50%}.benefit-icon svg{width:20px;height:20px}.services-page .cta{background:#e8eef3;color:#080d50;padding:46px 0}.services-page .cta h2{font-size:40px;line-height:1.2}.services-page .cta .button{white-space:nowrap;flex-shrink:0}
@media(min-width:721px) and (max-width:1100px){.services-page .service-band{padding:42px 0}.services-page .service-detail{gap:34px}.services-page .service-detail h2{font-size:34px}.services-page .service-detail p{font-size:16px}.services-page .service-benefits li{font-size:14px}.services-page .cta h2{font-size:32px}}
@media(max-width:720px){.services-page .service-band{padding:32px 0}.services-page .service-detail{gap:25px;grid-template-columns:1fr}.services-page .service-band:nth-child(even) .photo-crop{order:0}.services-page .service-detail h2{font-size:32px;margin-bottom:14px}.services-page .service-detail p{font-size:16px;line-height:1.6;margin-bottom:20px}.services-page .service-benefits{gap:13px;margin-bottom:22px}.services-page .service-benefits li{font-size:15px}.services-page .cta{padding:32px 0}.services-page .cta h2{font-size:31px}}
/* Use one continuous full-width image and gradient across home and inner heroes. */
.homepage .hero,.services-page .pagehead,.about-page .pagehead{background-color:#002957;background-image:linear-gradient(90deg,#002957 0%,rgba(0,41,87,.94) 18%,rgba(0,41,87,.72) 34%,rgba(0,41,87,.24) 55%,rgba(0,41,87,0) 76%),url('/assets/hero.png');background-size:cover,cover;background-position:center,center 48%;background-repeat:no-repeat}
@media(min-width:1101px){.header nav{font-size:14px;gap:23px;white-space:nowrap}.header{gap:25px}}
@media(min-width:721px) and (max-width:1100px){.header nav{font-size:11px;gap:16px;white-space:nowrap}}
@media(max-width:720px){.homepage .hero,.services-page .pagehead,.about-page .pagehead{background-image:linear-gradient(90deg,rgba(0,41,87,.94),rgba(0,41,87,.68)),url('/assets/hero.png');background-position:center,65% center;background-size:cover}}
/* Approved hero composition: independent copy and photographic areas. */
.homepage .hero{position:relative;isolation:isolate;overflow:hidden;background:#002957;min-height:500px}.homepage .hero:before{content:'';position:absolute;z-index:-1;inset:0 0 0 auto;width:68%;background:url('/assets/hero.png') right center/cover no-repeat;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 17%,#000 34%)}.homepage .hero .wrap{position:relative;padding:65px 0}.homepage .hero h1{font-size:56px;line-height:1.1;max-width:650px;margin-bottom:24px}.homepage .hero p{font-size:21px;line-height:1.5;max-width:515px;margin-bottom:30px}
@media(min-width:721px) and (max-width:1100px){.homepage .hero{min-height:370px}.homepage .hero:before{width:66%}.homepage .hero .wrap{padding:42px 0}.homepage .hero h1{font-size:36px;max-width:58%}.homepage .hero p{font-size:16px;max-width:45%}}
@media(max-width:720px){.homepage .hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;background:#002957}.homepage .hero:before{display:none}.homepage .hero .wrap{padding:32px 0 8px}.homepage .hero h1{font-size:35px;max-width:100%;margin-bottom:18px}.homepage .hero p{font-size:16px;max-width:100%;margin-bottom:22px}.homepage .hero:after{content:'';display:block;width:100%;height:245px;background-image:linear-gradient(180deg,#002957,rgba(0,41,87,.4) 22%,transparent 50%),url('/assets/hero.png');background-size:cover,cover;background-position:center,70% 65%;background-repeat:no-repeat}}
@media(min-width:721px){.homepage .hero:before{mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 20%,rgba(0,0,0,.7) 40%,#000 60%)}}
/* One hero layout across all pages, with bounded photo crops on mobile. */
.services-page .pagehead,.about-page .pagehead,.property-page .pagehead,.contact-page .pagehead{background:#002957;isolation:isolate;min-height:500px;padding:0}.pagehead>.wrap{padding:60px 0}.pagehead h1{font-size:56px;max-width:650px;line-height:1.1}.pagehead p{font-size:21px;max-width:515px;line-height:1.5}.services-page .pagehead:before,.about-page .pagehead:before{content:'';position:absolute;z-index:-1;inset:0 0 0 auto;width:68%;background:url('/assets/hero.png') right center/cover no-repeat;mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.25) 20%,rgba(0,0,0,.7) 40%,#000 60%)}.property-page .pagehead:after,.contact-page .pagehead:after{display:none}.pagehead .head-scene{width:68%;z-index:-1;mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.25) 20%,rgba(0,0,0,.7) 40%,#000 60%)}
@media(min-width:721px) and (max-width:1100px){.services-page .pagehead,.about-page .pagehead,.property-page .pagehead,.contact-page .pagehead{min-height:370px}.pagehead>.wrap{padding:42px 0}.pagehead h1{font-size:36px;max-width:58%}.pagehead p{font-size:16px;max-width:45%}}
@media(max-width:720px){.services-page .pagehead,.about-page .pagehead,.property-page .pagehead,.contact-page .pagehead{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:0;background:#002957}.pagehead>.wrap{order:0;padding:32px 0 12px}.pagehead h1{font-size:35px;max-width:100%;margin-bottom:18px}.pagehead p{font-size:16px;max-width:100%;margin-bottom:12px}.services-page .pagehead:before,.about-page .pagehead:before{display:none}.services-page .pagehead:after,.about-page .pagehead:after{content:'';display:block;position:relative;order:1;width:100%;height:245px;background-image:linear-gradient(180deg,#002957,rgba(0,41,87,.4) 22%,transparent 50%),url('/assets/hero.png');background-size:cover,cover;background-position:center,70% 65%;background-repeat:no-repeat}.pagehead .head-scene{position:relative;order:1;inset:auto;width:100%;height:auto;aspect-ratio:453/375!important;opacity:1;z-index:0;mask-image:linear-gradient(180deg,transparent,#000 35%)}.property-page .pagehead:after,.contact-page .pagehead:after{display:none}}
/* One restrained enquiry band throughout the site. */
body .cta,body.homepage .cta,body.services-page .cta,body.about-page .cta{background:#f1f4f7;color:#080d50;padding:40px 0;border:0;border-top:1px solid #e2e8ef}body .cta>.wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}body .cta h2,body.homepage .cta h2,body.services-page .cta h2,body.about-page .cta h2{font-size:36px;line-height:1.2;margin:0 0 12px;max-width:none}body .cta p,body.about-page .cta p{font-size:17px;line-height:1.55;color:#52627a;margin:0}body .cta .button,body.about-page .cta .button{position:relative;margin:0;flex-shrink:0;white-space:nowrap;font-size:16px;padding:16px 24px;gap:25px}body .cta .brand-motif{display:none}
@media(max-width:1100px) and (min-width:721px){body .cta h2,body.homepage .cta h2,body.services-page .cta h2,body.about-page .cta h2{font-size:29px}body .cta p,body.about-page .cta p{font-size:15px}body .cta .button,body.about-page .cta .button{font-size:14px}}
@media(max-width:720px){body .cta,body.homepage .cta,body.services-page .cta,body.about-page .cta{padding:30px 0}body .cta>.wrap{flex-direction:column;align-items:flex-start;gap:22px}body .cta h2,body.homepage .cta h2,body.services-page .cta h2,body.about-page .cta h2{font-size:28px}body .cta p,body.about-page .cta p{font-size:15px}body .cta .button,body.about-page .cta .button{font-size:15px}}
/* Approved final inner-page introductions: compact navy, no repeated hero photos. */
body .pagehead.compact-intro{display:block;min-height:0;height:auto;background:#002957;padding:0;overflow:visible}body .pagehead.compact-intro:before,body .pagehead.compact-intro:after{display:none;content:none}body .pagehead.compact-intro>.wrap{padding:42px 0 38px;position:relative}body .pagehead.compact-intro h1{font-size:48px;line-height:1.15;max-width:100%;margin:0 0 16px}body .pagehead.compact-intro p{font-size:18px;line-height:1.55;max-width:820px;margin:0;color:#eef3f9}
@media(min-width:721px) and (max-width:1100px){body .pagehead.compact-intro>.wrap{padding:32px 0}body .pagehead.compact-intro h1{font-size:39px}body .pagehead.compact-intro p{font-size:16px;max-width:690px}}
@media(max-width:720px){body .pagehead.compact-intro>.wrap{padding:28px 0 30px}body .pagehead.compact-intro h1{font-size:33px;line-height:1.15;max-width:100%;margin-bottom:16px}body .pagehead.compact-intro p{font-size:16px;line-height:1.5;max-width:100%}}
.hero-stop{color:#ff6b00}body .contact-van{width:100%;height:auto;min-height:0;aspect-ratio:1672/941;object-fit:contain;object-position:center;display:block}
