/* Company site, review version 03 */
body{background:#fff}header{position:sticky;top:0;box-shadow:0 2px 20px #122d4108;background:#fff;height:92px}header nav{gap:25px}header nav a[aria-current]{color:var(--green);text-decoration:underline;text-underline-offset:7px}.brand img{width:250px}.header-contact{background:var(--ink);color:#fff;border:0;padding:15px 20px;gap:26px;font-size:12px}.container{max-width:1440px;margin:auto}.company-hero{display:grid;grid-template-columns:1fr 1fr;position:relative;background:var(--ink);color:white;min-height:640px}.company-hero .hero-copy{padding:70px 9% 65px 10%;align-self:center}.company-hero .eyebrow{font-size:9px;color:#bfd0d9;letter-spacing:1.2px}.company-hero h1{font-size:clamp(48px,4.7vw,77px);letter-spacing:-2.8px;line-height:1.12;margin:28px 0}.company-hero h1 em{color:#a8d192}.company-hero .hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#d5e0e6;max-width:445px}.company-hero .hero-actions{margin-top:30px;gap:24px}.company-hero .button{background:#b1d79d;color:#122d41;gap:37px;font-weight:600}.company-hero .hero-secondary{color:#edf3f5;border-color:#8ca5b4;margin:0;font-size:12px}.hero-tel{display:block;margin-top:27px;font-size:11px;color:#bccdd7}.photo-figure{margin:0;position:relative;overflow:hidden;background:#d9e1e5}.photo-figure>img{width:100%;height:100%;object-fit:cover;display:block}.photo-figure figcaption{position:absolute;right:13px;bottom:12px;color:#fff;background:#122d41d9;padding:5px 8px;font-size:8px;letter-spacing:.6px}.hero-photo>img{position:absolute;inset:0;object-position:55% 50%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b223aa6,transparent 60%)}.hero-photo figcaption{z-index:2}.hero-photo-badge{position:absolute;bottom:45px;left:54%;color:white;pointer-events:none}.hero-photo-badge span{font-size:8px;letter-spacing:1.3px;color:#c9dfbf}.hero-photo-badge strong{font-family:var(--display);font-size:23px;line-height:1.4;display:block;font-weight:500;margin-top:10px}.benefit-band{background:#edf2f3;display:flex;justify-content:space-around;gap:25px;padding:24px 5%;font-size:12px;font-weight:500;border-bottom:1px solid var(--line)}.benefit-band span:before{content:'✓';color:var(--green);margin-right:14px}.work-intro{padding-top:76px;padding-bottom:75px}.work-intro>div>p:not(.eyebrow){font-size:15px;line-height:1.8}.section-heading .eyebrow{margin-bottom:18px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:37px}.service-card{background:white;border:1px solid var(--line);padding:29px 26px;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.service-card:hover{border-color:#547660;transform:translateY(-3px)}.service-card>.eyebrow{font-size:8px;color:var(--green);letter-spacing:1px}.service-card h3{font-size:24px;line-height:1.3;letter-spacing:-.7px;margin-top:25px}.service-card p{font-size:13px;line-height:1.8;color:var(--muted);margin:15px 0 26px}.card-link{font-size:11px;font-weight:600;margin-top:auto;display:flex;justify-content:space-between;align-items:center;color:var(--green)}.card-link b{font-size:22px;font-weight:400}.split-story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.split-story>.photo-figure{aspect-ratio:1.12}.split-story h2{font-size:43px;margin:22px 0;letter-spacing:-1.8px}.split-story>div>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted)}.split-story .text-link{margin-top:15px}.company-process{padding:70px 5%;background:var(--ink);color:white;display:grid;grid-template-columns:.8fr 1.8fr;gap:9%}.company-process .eyebrow{color:#b7cbbd;margin-bottom:25px}.company-process h2{font-size:39px;letter-spacing:-1.6px}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.process-steps article{border-top:1px solid #577181;padding-top:23px}.process-steps article>span{font-size:10px;color:#a8d192}.process-steps h3{font-size:22px;line-height:1.4;letter-spacing:-.5px;margin:19px 0 13px}.process-steps p{font-size:12px;color:#c4d1d9;line-height:1.9}.sector-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.sector-photo-grid .photo-figure{min-height:400px}.sector-links{display:flex;flex-direction:column}.sector-links a{padding:24px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:19px}.sector-links a:first-child{border-top:1px solid var(--line)}.sector-links a span{color:var(--green)}.sector-links a:hover{color:var(--green)}.home-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.home-faq h2{font-size:38px;margin-top:20px;letter-spacing:-1.5px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{font-size:15px;line-height:1.5;gap:25px;font-weight:500;padding:23px 0;justify-content:space-between}.faq-list summary span{font-size:20px;color:var(--green)}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:13px;color:var(--muted);line-height:1.85;margin:0 30px 23px 0}.guides-home{background:#f3f6f7;max-width:none}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.guide-grid>a{padding:30px;background:white;border:1px solid var(--line);display:flex;flex-direction:column}.guide-grid h3{font-size:24px;line-height:1.4;letter-spacing:-.6px;margin:28px 0 14px}.guide-grid p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:27px}.guide-grid .eyebrow{font-size:8px;color:var(--green)}.guide-grid>a:hover{border-color:var(--green)}.company-cta{padding:67px 5%;background:#dfebd7;display:grid;grid-template-columns:1.5fr 1fr;gap:7%;align-items:center}.company-cta h2{font-size:43px;letter-spacing:-1.8px;margin:20px 0}.company-cta p:not(.eyebrow){font-size:14px;line-height:1.8}.company-cta>div:last-child{justify-self:end}.company-cta .button{gap:52px}.cta-phone{display:block;font-size:12px;text-align:center;margin-top:18px}.company-footer{display:grid;grid-template-columns:1.3fr 1.2fr .7fr;align-items:start;padding:54px 5% 25px;gap:8%;font-size:12px;line-height:1.6;color:var(--muted);background:white}.footer-intro img{max-width:250px;width:100%;height:auto}.footer-intro p{font-family:var(--display);font-size:25px;line-height:1.4;color:var(--ink);letter-spacing:-.6px;margin:25px 0}.company-footer>div>a{display:block;margin:10px 0;font-size:11px}.company-footer h2{font-size:13px;font-weight:600;letter-spacing:0;margin:8px 0 18px}.company-footer .footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;margin-top:20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:9px}.preview-note{width:100%;font-size:9px;margin:6px 0!important;color:#687780}.company-footer a:hover{text-decoration:underline;text-underline-offset:4px}.breadcrumbs{padding:22px 5%;display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:10px;color:var(--muted);border-bottom:1px solid var(--line);background:#fff}.breadcrumbs a:hover{text-decoration:underline}.page-intro{padding:64px 5%;background:var(--ink);color:white}.page-intro .eyebrow{font-size:9px;color:#c0d5c1}.page-intro h1{font-size:clamp(39px,4.6vw,68px);line-height:1.16;letter-spacing:-2.4px;max-width:1000px;margin:23px 0}.page-intro p:not(.eyebrow){font-size:17px;color:#cfdee6;line-height:1.8;max-width:720px;margin:20px 0 0}.service-layout,.article-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.8fr);gap:12%;align-items:start}.service-main h2,.article-copy h2{font-size:29px;letter-spacing:-.8px;line-height:1.35;margin:35px 0 17px}.service-main>h2:first-child,.article-copy>h2:first-child{margin-top:0}.service-main p,.article-copy p,.area-layout p{font-size:15px;line-height:1.9;color:var(--muted)}.service-main .photo-figure{aspect-ratio:1.6;margin:30px 0 40px}.check-list{list-style:none;padding:0;margin:23px 0}.check-list li{border-bottom:1px solid var(--line);padding:13px 0 13px 25px;position:relative;font-size:14px;line-height:1.7}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--green)}.quote-aside{padding:30px;background:#edf3e9;border-top:3px solid #5f8a52;position:sticky;top:122px}.quote-aside .eyebrow{font-size:8px;letter-spacing:1px;color:var(--green)}.quote-aside h2{font-size:34px;letter-spacing:-1.4px;margin:22px 0}.quote-aside p{font-size:13px;line-height:1.9;color:var(--muted)}.quote-aside>a{display:block;font-size:12px;margin:23px 0 0}.quote-aside .button{padding:17px;text-align:center}.quote-aside hr{border:0;border-top:1px solid #c9d6c4;margin:25px 0}.service-faq{padding-top:0}.service-faq h2{font-size:35px;margin-bottom:30px;letter-spacing:-1px}.service-faq .faq-list{max-width:850px}.expertise>h2{font-size:40px;margin:18px 0}.wide-photo{padding-top:45px;padding-bottom:15px}.wide-photo .photo-figure{height:400px}.sector-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 8%;padding-top:55px}.sector-detail-grid article{border-top:1px solid var(--line);padding-top:28px;scroll-margin-top:120px}.sector-detail-grid article h2{font-size:36px;letter-spacing:-1.3px;margin:18px 0}.sector-detail-grid article h3{font-size:18px;line-height:1.6;margin:20px 0}.sector-detail-grid article p{font-size:14px;line-height:1.9;color:var(--muted)}.sector-detail-grid .check-list li{font-size:12px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5%;background:#f2f5f6;max-width:none}.value-grid article h2{font-size:27px;letter-spacing:-.9px;line-height:1.3}.value-grid article p{font-size:14px;line-height:1.9;color:var(--muted)}.company-legal{font-size:12px!important;border-top:1px solid var(--line);padding-top:25px;margin-top:28px!important}.area-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:start}.area-layout h2{font-size:45px;letter-spacing:-1.8px;margin:22px 0}.area-layout>.photo-figure{aspect-ratio:.85}.area-list{margin-top:25px}.area-list>div{display:flex;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.area-list span{font-size:9px;color:var(--green)}.area-list h3{font-size:20px;letter-spacing:-.5px;flex:1}.area-list a{font-size:11px;color:var(--green)}.resource-grid{grid-template-columns:1fr 1fr}.resource-grid h2{font-size:29px;line-height:1.4;letter-spacing:-.8px;margin:23px 0 5px}.article-copy{max-width:800px}.article-copy a{text-decoration:underline;text-underline-offset:3px}.source-note{padding:22px;background:#f1f5f6;margin-top:30px}.source-note h2{font-size:20px;margin:0}.source-note p{font-size:13px}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding-bottom:15px}.contact-cards>a{padding:28px;border:1px solid var(--line);display:flex;flex-direction:column}.contact-cards h2{font-size:28px;letter-spacing:-1px;margin:20px 0 10px}.contact-cards p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:25px}.contact-cards>a>span:last-child{margin-top:auto;font-size:12px;font-weight:500;color:var(--green)}.contact-cards .eyebrow{font-size:8px}.brief-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.brief-layout h2{font-size:40px;letter-spacing:-1.6px;margin:23px 0}.brief-layout>div>p{font-size:14px;color:var(--muted);line-height:1.9}.email-fallback{font-size:12px!important}.email-fallback span{user-select:all;color:var(--ink)}#enquiry-builder{background:#f2f5f6;padding:32px}#enquiry-builder label{display:block;font-size:13px;margin-bottom:20px;font-weight:500}#enquiry-builder label span{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;display:block;font:inherit;font-size:14px;border:1px solid #bbc9d0;color:var(--ink);background:#fff;padding:13px;border-radius:0;margin-top:9px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #397c52;outline-offset:2px}#enquiry-builder button{border:0;cursor:pointer}#enquiry-builder .button{gap:20px}.form-note{font-size:11px;line-height:1.7;color:var(--muted);margin:17px 0 0}.email-draft{border-top:1px solid var(--line);margin-top:25px;padding-top:25px}.email-draft h3{font-size:22px}.email-draft p{font-size:12px;line-height:1.7}.email-draft pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 var(--font);background:white;padding:15px}.email-draft[hidden]{display:none}#copy-brief{margin-top:15px;padding:12px;background:#dce8d6;color:var(--ink);font-size:12px}#copy-status{min-height:1.7em}html{scroll-padding-top:115px}
@media(min-width:1650px){.company-hero .hero-copy{padding-left:max(10%,calc((100vw - 1440px)/2))}.company-hero{min-height:740px}}
@media(max-width:1100px){header nav{gap:17px;font-size:11px}.brand img{width:215px}.header-contact{padding:13px 16px;font-size:11px;gap:15px}.company-hero{min-height:610px}.company-hero .hero-copy{padding-top:48px;padding-bottom:45px}.company-hero h1{font-size:49px}.company-hero .hero-copy>p:not(.eyebrow){font-size:14px}.company-hero .hero-actions{gap:23px}.hero-photo-badge strong{font-size:20px}.service-card{padding:24px 20px}.service-card h3{font-size:21px}.company-process{display:block}.process-steps{margin-top:38px}.company-process h2 br{display:none}.company-footer{gap:5%}.service-layout,.article-layout{gap:7%}.quote-aside{padding:23px}.quote-aside h2{font-size:29px}.contact-cards h2{font-size:23px}.contact-cards>a{padding:24px}.guide-grid{gap:16px}.guide-grid>a{padding:23px}.guide-grid h3{font-size:22px}}
@media(max-width:760px){header{height:78px;padding:0 6%}.brand img{width:215px}.review-strip{font-size:6px;letter-spacing:.5px;gap:20px}.review-strip>span:first-child{max-width:160px}.review-strip>span:last-child{white-space:nowrap}.header-contact{display:none}#mobile-nav:not([hidden]){top:78px;background:white;font-size:15px}header #mobile-nav{gap:20px}.company-hero{display:block;min-height:0}.company-hero .hero-copy{padding:42px 6% 38px}.company-hero .eyebrow{font-size:7px;letter-spacing:.7px}.company-hero h1{font-size:48px;letter-spacing:-2px;margin:25px 0}.company-hero .hero-copy>p:not(.eyebrow){font-size:15px}.company-hero .hero-actions{gap:23px;margin-top:27px}.company-hero .button{font-size:12px;padding:16px 18px;gap:22px}.company-hero .hero-secondary{font-size:11px}.hero-tel{font-size:10px;margin-top:25px}.hero-photo{height:340px}.hero-photo-badge{left:6%;bottom:42px}.hero-photo-badge strong{font-size:22px}.hero-photo-badge span{font-size:7px}.benefit-band{display:flex;flex-direction:column;gap:13px;padding:24px 6%;font-size:12px}.benefit-band span:before{margin-right:13px}.work-intro{padding-top:48px;padding-bottom:47px}.work-intro>div>p:not(.eyebrow){font-size:14px}.service-grid{grid-template-columns:1fr;gap:13px;margin-top:29px}.service-card{padding:25px}.service-card h3{font-size:24px;margin-top:17px}.service-card p{font-size:13px;margin-bottom:24px}.service-card>.eyebrow{font-size:8px}.service-card .card-link{font-size:11px}.split-story{display:flex;flex-direction:column;gap:32px}.split-story .photo-figure{width:100%;aspect-ratio:1.3}.split-story h2{font-size:36px;letter-spacing:-1.5px}.split-story>div>p:not(.eyebrow){font-size:14px}.company-process{padding:48px 6%}.company-process h2{font-size:35px}.process-steps{display:block;margin-top:30px}.process-steps article{padding:20px 0;margin-top:12px}.process-steps h3{font-size:24px;margin-top:13px}.process-steps p{font-size:13px}.sector-photo-grid{display:block}.sector-photo-grid .photo-figure{min-height:0;height:270px;margin-bottom:24px}.sector-links a{font-size:17px;padding:20px 0}.home-faq{display:block}.home-faq h2{font-size:33px;margin:18px 0 30px}.faq-list summary{font-size:14px}.guide-grid{grid-template-columns:1fr;gap:16px}.guide-grid>a{padding:27px}.guide-grid h3{font-size:25px;margin-top:22px}.company-cta{display:block;padding:48px 6%}.company-cta h2{font-size:36px;letter-spacing:-1.5px}.company-cta p:not(.eyebrow){font-size:13px}.company-cta>div:last-child{margin-top:28px}.company-cta .button{width:100%;justify-content:space-between}.cta-phone{text-align:left;font-size:12px}.company-footer{display:grid;grid-template-columns:1fr 1fr;padding:40px 6% 105px;gap:30px 23px}.footer-intro{grid-column:1/-1}.footer-intro img{width:238px}.footer-intro p{font-size:25px;margin:20px 0}.company-footer>div>a{font-size:11px;line-height:1.7}.company-footer h2{font-size:12px}.company-footer .footer-bottom{margin-top:5px;font-size:9px;line-height:1.8}.preview-note{font-size:9px;line-height:1.8}.breadcrumbs{padding:19px 6%;font-size:9px;gap:9px}.page-intro{padding:43px 6%}.page-intro h1{font-size:39px;letter-spacing:-1.5px;line-height:1.17}.page-intro p:not(.eyebrow){font-size:15px}.page-intro .eyebrow{font-size:8px}.service-layout,.article-layout{display:block}.service-main h2,.article-copy h2{font-size:27px}.service-main p,.article-copy p,.area-layout p{font-size:14px;line-height:1.85}.check-list li{font-size:13px}.service-main .photo-figure{margin:25px 0 35px;aspect-ratio:1.35}.quote-aside{position:static;margin-top:40px;padding:28px}.quote-aside h2{font-size:33px}.quote-aside .button{max-width:330px}.service-faq h2{font-size:30px}.service-faq{padding-top:0}.expertise>h2{font-size:33px}.wide-photo{padding-top:30px;padding-bottom:0}.wide-photo .photo-figure{height:260px}.sector-detail-grid{display:block}.sector-detail-grid article{padding-top:27px;margin-bottom:45px}.sector-detail-grid article:last-child{margin-bottom:0}.sector-detail-grid article h2{font-size:33px}.sector-detail-grid article h3{font-size:18px}.value-grid{display:block}.value-grid article+article{margin-top:35px}.value-grid article h2{font-size:27px}.area-layout{display:flex;flex-direction:column;gap:33px}.area-layout>.photo-figure{width:100%;aspect-ratio:1.3}.area-layout h2{font-size:36px}.area-list>div{gap:14px}.area-list h3{font-size:18px}.resource-grid h2{font-size:27px}.contact-cards{display:block;padding-bottom:0}.contact-cards>a{margin-bottom:16px;padding:27px}.contact-cards h2{font-size:28px}.brief-layout{display:block}.brief-layout h2{font-size:36px}#enquiry-builder{padding:24px;margin-top:35px}#enquiry-builder label{font-size:12px}input,select,textarea{font-size:16px}#enquiry-builder .button{width:100%;font-size:12px;gap:10px;justify-content:space-between}.brief-layout>div>p{font-size:14px}.local h2{font-size:33px}.section-heading h2{font-size:36px}html{scroll-padding-top:98px}}
@media(max-width:365px){.company-hero h1{font-size:41px}.company-hero .eyebrow{font-size:6px}.brand img{width:184px}.company-hero .button{font-size:11px;gap:14px}.company-hero .hero-actions{gap:18px}.company-hero .hero-secondary{font-size:10px}.page-intro h1{font-size:34px}.service-card{padding:23px}.company-footer{grid-template-columns:1fr}.company-footer>div{grid-column:1}.review-strip{font-size:5px}.company-cta h2{font-size:32px}}
/* Enquiry routes and direct submission */
.enquiry-routes{background:#f2f5f6}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.journey-card{display:flex;flex-direction:column;background:white;padding:32px;border-top:3px solid #397c52;transition:box-shadow .2s,transform .2s}.journey-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #122d4110}.journey-card h3{font-size:28px;line-height:1.25;letter-spacing:-1px;margin:24px 0 16px}.journey-card>p{font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 30px}.journey-card .card-link{margin-top:auto;color:var(--green);font-size:12px}.contact-enquiry{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:start}.enquiry-intro h2{font-size:42px;line-height:1.2;letter-spacing:-1.8px;margin:20px 0}.enquiry-intro>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--muted)}.next-steps{border-top:1px solid var(--line);margin-top:34px;padding-top:25px}.next-steps h3{font-size:20px}.next-steps ol{padding-left:23px}.next-steps li{padding-left:10px;margin:24px 0;color:var(--green)}.next-steps strong,.next-steps span{display:block}.next-steps strong{font-size:15px;color:var(--ink);margin-bottom:7px}.next-steps span{font-size:13px;color:var(--muted);line-height:1.8}.contact-direct{background:#edf3e9;padding:25px;margin-top:32px}.contact-direct p{font-size:13px;line-height:1.7}.contact-direct>a{font-size:22px;font-weight:500}.contact-direct>a:last-child{font-size:12px}.contact-direct p a{font-size:13px;text-decoration:underline;text-underline-offset:4px}#enquiry-form{padding:35px;background:#f2f5f6;min-width:0}#enquiry-form label{display:block;font-size:13px;font-weight:500;margin-bottom:20px}#enquiry-form label>span{font-weight:400;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-row>*{min-width:0}.need-options{border:0;padding:0;margin:0;min-width:0}.need-options legend{font-size:17px;font-weight:500;margin-bottom:18px}#enquiry-form .need-options label{display:flex;align-items:center;background:white;border:1px solid #c2cfd4;padding:14px;gap:12px;margin-bottom:9px;cursor:pointer}#enquiry-form .need-options label:has(input:checked){border-color:var(--green);background:#eaf3e5;box-shadow:inset 0 0 0 1px var(--green)}#enquiry-form .need-options input{width:17px;height:17px;margin:0;accent-color:var(--green);flex-shrink:0}#enquiry-form .need-options span{color:var(--ink);font-size:13px}.need-guidance{font-size:12px;line-height:1.7;color:var(--muted);min-height:3.4em;margin:15px 0 25px}.service-choice{margin-bottom:20px}.service-choice summary{cursor:pointer;font-size:13px;color:var(--green);padding-bottom:12px}.service-choice label{margin-top:10px}#enquiry-form input[type=file]{padding:12px;font-size:12px;white-space:normal}#attachment-help{display:block;font-size:11px;line-height:1.7;margin-top:8px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#enquiry-form .button{border:0;cursor:pointer;width:100%;justify-content:space-between;margin-top:23px;font:inherit;font-size:14px}#enquiry-form .button:disabled{opacity:.55;cursor:wait}#enquiry-form .form-note a{text-decoration:underline}#form-status{font-size:12px;line-height:1.8;min-height:1.8em;margin:15px 0 0}#form-status[data-error=true]{color:#9e2634}.enquiry-success{padding:30px;background:#e7f0df;margin-top:25px;border-left:3px solid var(--green)}.enquiry-success[hidden]{display:none}.enquiry-success h3{font-size:28px;line-height:1.25;margin:17px 0}.enquiry-success p{font-size:13px;line-height:1.8}.enquiry-success:focus{outline:2px solid var(--green);outline-offset:3px}#enquiry-reference{font-weight:600;overflow-wrap:anywhere}#enquiry-form [hidden]{display:none}
@media(max-width:1000px){.journey-card{padding:24px}.journey-card h3{font-size:25px}.contact-enquiry{gap:5%;grid-template-columns:.8fr 1.2fr}.enquiry-intro h2{font-size:35px}#enquiry-form{padding:26px}.form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:760px){.journey-grid,.contact-enquiry{display:block}.journey-card{margin-bottom:16px;padding:27px}.journey-card h3{font-size:28px}.journey-card>p{font-size:14px}.enquiry-intro h2{font-size:35px}#enquiry-form{margin-top:35px;padding:23px}.contact-enquiry{padding-top:35px}.next-steps{margin-top:25px}.need-guidance{min-height:0}.need-options legend{font-size:16px}.enquiry-success{padding:23px}.enquiry-success h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.journey-card{transition:none}.journey-card:hover{transform:none}}
@media(max-width:760px){.contact-enquiry{display:flex;flex-direction:column}#enquiry-form{order:-1;width:100%;margin-top:0}.enquiry-intro{margin-top:38px}.enquiry-routes .section-heading>p{margin-top:22px}}
#form-status{margin:0 0 20px}#form-fallback{font-size:12px;line-height:1.8;margin:-8px 0 25px}#form-fallback a{color:var(--green);text-decoration:underline;text-underline-offset:3px}

/* Responsive refinement: one full-width gutter calculation, with a readable content width. */
@media(min-width:761px){
 .section,.section.article-copy,.company-process,.company-cta,.company-footer{max-width:none;padding-inline:max(5%,calc((100% - 1440px)/2))}
 header,.review-strip,.breadcrumbs,.page-intro,.benefit-band{padding-inline:max(5%,calc((100% - 1440px)/2))}
 header nav a{display:flex;align-items:center;min-height:44px}
 .section.article-copy{padding-inline:max(5%,calc((100% - 800px)/2))}
}
.service-grid>*,.guide-grid>*,.journey-grid>*,.contact-enquiry>*,.company-footer>*,.split-story>*,.area-layout>*{min-width:0}
h1,h2,h3,p,li,.breadcrumbs,.company-footer a{overflow-wrap:break-word}
.button,.text-link{max-width:100%}
.button span,.card-link b,.sector-links a span,.faq-list summary span{flex-shrink:0}
@media(min-width:761px) and (max-width:1100px){
 .service-grid,.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .journey-grid{grid-template-columns:1fr}
 .journey-card{padding:28px}
 .journey-card h3{margin-top:16px}
 .journey-card>p{margin-bottom:20px;max-width:65ch}
 .contact-enquiry{display:flex;flex-direction:column;gap:0}
 #enquiry-form{order:-1;width:100%;max-width:740px;margin:0 auto}
 .enquiry-intro{width:100%;margin-top:40px}
 .form-row{grid-template-columns:1fr 1fr;gap:18px}
}
@media(max-width:760px){
 .menu-button{width:44px;height:44px;flex-shrink:0}
 header #mobile-nav:not([hidden]){gap:0;max-height:calc(100dvh - 190px - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;padding-block:12px}
 #mobile-nav a{min-height:48px;display:flex;align-items:center;padding-block:10px}
 .company-footer>div>a{min-height:36px;display:flex;align-items:center;margin-block:3px}
 .company-footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
 .mobile-contact{padding-left:max(6%,env(safe-area-inset-left));padding-right:max(6%,env(safe-area-inset-right))}
}
@media(max-height:650px){.quote-aside{position:static}}

/* Original logo, transparent surface treatment and a fixed-size header icon. */
.brand img{mix-blend-mode:normal;object-fit:contain;background:transparent}
.footer-intro img{background:transparent}
.header-contact{align-items:center;justify-content:center;min-height:46px;padding:12px 18px;gap:12px;line-height:1.25;white-space:nowrap;flex-shrink:0;border-radius:4px}
.header-contact svg{display:block;width:18px;height:18px;flex:0 0 18px}
.header-contact:hover{background:#214836}

/* Confirmed service range: three clear families, ten detailed services. */
.family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:38px}
.family-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}
.family-card .photo-figure{height:200px;margin:0;overflow:hidden}
.family-card img{width:100%;height:100%;object-fit:cover}
.family-copy{padding:28px;display:flex;flex-direction:column;flex:1}
.family-copy h3{font-size:29px;line-height:1.15;letter-spacing:-1px;margin:20px 0 16px}
.family-copy>p:not(.eyebrow){font-size:14px;line-height:1.8;color:var(--muted)}
.family-copy ul{list-style:none;margin:18px 0 26px;padding:0}
.family-copy li{border-bottom:1px solid var(--line)}
.family-copy li a{display:flex;justify-content:space-between;gap:14px;padding:12px 0;font-size:13px;line-height:1.6}
.family-copy li a:hover{color:var(--green)}
.family-copy li span{flex-shrink:0;color:var(--green)}
.family-copy>.text-link{margin-top:auto;align-self:flex-start}
.service-jump{display:flex;flex-wrap:wrap;gap:12px;padding-block:26px;background:#eef3ed}
.service-jump a{padding:13px 18px;border:1px solid #b9cbb5;border-radius:4px;font-size:13px;line-height:1.5;background:#fff}
.service-jump a:hover{background:#dce8d6}
.service-group:nth-of-type(even){background:#f2f5f6}
.service-group .service-grid{margin-top:30px}
.service-group .section-heading h2{max-width:650px}
@media(min-width:761px) and (max-width:1100px){.family-grid{grid-template-columns:1fr}.family-card{display:grid;grid-template-columns:1fr 1.3fr}.family-card .photo-figure{height:100%;min-height:280px}.family-copy{padding:30px}.family-copy h3{font-size:30px}}
@media(max-width:760px){.family-grid{grid-template-columns:1fr;gap:24px}.family-card .photo-figure{height:210px}.family-copy{padding:25px}.family-copy h3{font-size:28px}.service-jump{display:grid;grid-template-columns:1fr;padding-block:22px;gap:9px}.service-jump a{display:flex;min-height:48px;align-items:center}.family-copy li a{min-height:48px}.service-group .section-heading h2{font-size:34px}}

/* Approved launch contact routes */
.contact-launch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:9%;align-items:start}.contact-launch-copy h2{font-size:clamp(32px,3vw,44px);line-height:1.25;margin:22px 0}.contact-launch-copy>p,.quote-channels p{font-size:15px;line-height:1.8;color:var(--muted)}.quote-channels{display:grid;gap:20px}.quote-channels article{border:1px solid var(--line);padding:30px}.quote-channels .quote-email{background:#edf3ee;border-top:3px solid #548463}.quote-channels h2{font-size:30px;letter-spacing:-1px;margin:18px 0}.quote-channels h3{font-size:23px;font-weight:500;margin:16px 0}.quote-channels .eyebrow{font-size:9px;color:#355544}.quote-channels .button{margin:14px 0 5px;max-width:100%;gap:24px}.quote-channels .channel-hint{font-size:12px}.email-address{display:block;overflow-wrap:anywhere;font-size:15px;text-decoration:underline;text-underline-offset:4px;margin:17px 0}.contact-call{font-size:28px;display:inline-block;line-height:1.6}.copy-email{border:1px solid #8a9c91;background:transparent;padding:11px 15px;border-radius:3px;color:var(--ink);cursor:pointer}.quote-channels #copy-status{font-size:12px;margin:10px 0 0}.quote-channels #copy-status:empty{display:none}.quote-channels .text-link{line-height:1.6;gap:10px}.contact-launch .next-steps{margin-top:34px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #578e36;outline-offset:3px}
@media(max-width:900px){.contact-launch{grid-template-columns:1fr;gap:35px}.quote-channels{grid-row:1}.quote-channels article{padding:25px}.contact-launch-copy{max-width:680px}.quote-channels .button{font-size:12px;gap:16px}}

/* Quote form: comfortable controls on mobile and a clear submission outcome. */
.contact-launch{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:6%}
.quote-channels .quote-form-card{background:#f2f6f2;border-top:3px solid #548463}
#quote-form{margin-top:25px;position:relative;min-width:0}
#quote-fields{border:0;padding:0;margin:0;min-width:0}
.quote-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}
.quote-fields-grid label{font-size:13px;font-weight:600;line-height:1.7;display:block;min-width:0}
.quote-fields-grid label>span{font-size:11px;font-weight:400;color:#52645c;white-space:nowrap}
.quote-fields-grid input,.quote-fields-grid select,.quote-fields-grid textarea{box-sizing:border-box;width:100%;max-width:100%;display:block;margin-top:7px;background:#fff;border:1px solid #a9b9af;border-radius:3px;padding:12px;font:400 16px/1.5 'DM Sans',sans-serif;color:#143142;min-height:48px}
.quote-fields-grid select{padding-right:25px}
.quote-fields-grid textarea{resize:vertical;min-height:130px}
.quote-fields-grid input::placeholder,.quote-fields-grid textarea::placeholder{color:#65736d;opacity:1}
.quote-fields-grid input[type=file]{font-size:13px;overflow:hidden;padding:9px}
.quote-fields-grid input[type=file]::file-selector-button{font:inherit;background:#e9f0e9;border:1px solid #adbcad;border-radius:3px;margin-right:10px;padding:7px;cursor:pointer}
.quote-fields-grid small{display:block;font-size:11px;font-weight:400;line-height:1.7;color:#53665c;margin-top:7px}
.form-wide{grid-column:1/-1}
.quote-channels .form-privacy{font-size:12px;line-height:1.7;margin:22px 0 10px}
.form-privacy a{text-decoration:underline;text-underline-offset:3px}
.quote-channels #quote-submit{border:0;cursor:pointer;min-height:52px;width:100%;justify-content:space-between;font:600 14px/1.5 'DM Sans',sans-serif;margin-top:12px}
#quote-submit:disabled{opacity:.65;cursor:wait}
#quote-form [hidden]{display:none!important}
.quote-channels #quote-status{font-size:14px;margin:16px 0 0;line-height:1.7}
#quote-status:empty{display:none}
.quote-channels #quote-status.form-error{background:#fff2ed;border-left:3px solid #a03e26;color:#782c1a;padding:14px}
#quote-success{background:#e2eedf;border:1px solid #95b78c;padding:24px}
#quote-success h3{font-size:27px;line-height:1.25}
#quote-reference{font-weight:600;overflow-wrap:anywhere}
.form-trap,.form-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:900px){.contact-launch{grid-template-columns:1fr;gap:35px}.quote-channels{grid-row:1}}
@media(max-width:480px){.quote-fields-grid{grid-template-columns:1fr;gap:16px}.quote-channels .quote-form-card{padding:22px 18px}.quote-channels .quote-form-card h2{font-size:28px}.quote-fields-grid select{font-size:14px}#quote-success{padding:18px}}
