@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--paper:#fff;--ink:#182e52;--sage:#e1eff8;--green:#182e52;--muted:#586779;--line:#d7e4ef}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:16px;line-height:1.65}h1,h2,h3,p,figure{margin:0}h1,h2,h3{letter-spacing:-.045em;font-family:Manrope,Arial,sans-serif;font-weight:500;line-height:1.13}h1{font-size:clamp(42px,4.6vw,72px)}h2{font-size:clamp(32px,3.2vw,47px)}h3{font-size:25px}p{color:var(--muted)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}:is(a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible){outline:3px solid #4a86b4}img{object-fit:cover;width:100%;height:100%;display:block}figure{position:relative;overflow:hidden}figcaption{color:#586779;background:#fffffff2;padding:8px 12px;font-size:12px}.eyebrow{letter-spacing:.15em;color:#39769f;margin-bottom:22px;font-size:12px;font-weight:600;display:block}.button,.outline-button{background:var(--green);color:#fff;border:1px solid var(--green);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;min-height:52px;padding:14px 24px;font-size:14px;font-weight:500;transition:background .2s;display:inline-flex}.button:hover{background:#294873}.button:disabled{opacity:.65;cursor:wait}.outline-button{color:var(--green);background:0 0}.text-link{border-bottom:1px solid #739cc0;padding:7px 0;font-size:14px;font-weight:600;display:inline-block}.text-link:hover{color:var(--green);border-bottom-color:var(--green)}.header{border-bottom:1px solid var(--line);background:var(--paper);z-index:10;justify-content:space-between;align-items:center;gap:30px;max-width:1600px;margin:auto;padding:27px 5.5%;display:flex;position:relative}.brand{letter-spacing:-1px;white-space:nowrap;align-items:center;gap:12px;font-family:Manrope,Arial;font-size:23px;font-weight:700;line-height:1.2;display:flex}.brand small{letter-spacing:.22em;margin-top:5px;font-size:8px;font-weight:500;display:block}.brand-mark{color:var(--green);letter-spacing:-6px;border:1px solid #75b2dd;padding:5px 10px;font-size:26px;font-weight:400;display:block}.brand-mark span{padding-right:5px}.nav{align-items:center;gap:25px;font-size:13px;display:flex}.nav>a:not(.button):hover,.service-nav>a:hover{color:var(--green)}.button.small{min-height:44px;padding:11px 18px;font-size:13px}.service-nav{position:relative}.service-menu{background:var(--paper);border:1px solid var(--line);min-width:190px;padding:15px;display:none;position:absolute;top:100%;left:-15px}.service-menu a{padding:8px;display:block}.service-nav:hover .service-menu,.service-nav:focus-within .service-menu{display:block}.menu-button{display:none}.hero{grid-template-columns:1fr 1fr;max-width:1600px;min-height:670px;margin:auto;display:grid;position:relative}.hero-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:75px 7% 50px 11%;display:flex}.hero-copy h1{letter-spacing:-.05em;font-size:clamp(43px,4.2vw,66px);line-height:1.12}.hero-copy h1 em{color:#39769f;margin-top:8px;font-style:normal;display:block}.hero-copy p{max-width:440px;margin:27px 0 30px;font-size:16px}.eyebrow i{background:var(--green);vertical-align:middle;width:16px;height:1px;margin-right:8px;display:inline-block}.hero-actions{align-items:center;gap:25px;display:flex}.hero-location{letter-spacing:.12em;color:#526b85;margin-top:55px;font-size:10px}.hero-image{border-radius:2px;min-height:610px;margin:25px 6% 25px 0}.hero-image img{height:100%;position:absolute;inset:0}.hero-image figcaption{font-size:11px;position:absolute;bottom:0;right:0}.hero-annotation{background:var(--paper);border-left:2px solid #75b2dd;padding:21px 27px;position:absolute;bottom:85px;right:7%;box-shadow:0 8px 30px #0000000c}.hero-annotation span{letter-spacing:-1px;font-family:Manrope;font-size:25px;display:block}.hero-annotation small{color:var(--muted);font-size:12px}.reassurance{border-block:1px solid var(--line);color:#294873;background:#eef6fc;justify-content:space-around;gap:24px;padding:26px 7%;font-size:13px;display:flex}.reassurance span:before{content:"✓";margin-right:12px}.section{max-width:1400px;margin:auto;padding:90px 6%}.section-heading{justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:42px;display:flex}.section-heading p{max-width:360px;font-size:15px}.section-heading .eyebrow{margin-bottom:15px}.service-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.main-service{display:block}.main-service figure{height:330px}.main-service img{transition:transform .5s}.main-service:hover img{transform:scale(1.025)}.main-service>div{padding:25px 0}.main-service .eyebrow{margin-bottom:12px}.main-service h3{font-size:33px}.main-service p{max-width:470px;margin:15px 0}.technical-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1.2fr 1fr auto;align-items:center;gap:30px;margin-top:25px;padding:35px 0;display:grid}.technical-band .eyebrow{margin-bottom:10px}.technical-band h3{font-size:25px}.technical-band p{font-size:14px}.gallery-section{background:#f3f7fb;max-width:none;padding-inline:max(6%,50% - 616px)}.gallery-disclaimer{margin-top:-20px;margin-bottom:30px;font-size:14px}.project-grid{grid-template-columns:repeat(3,1fr);gap:25px;display:grid}.project-card figure{height:280px}.project-card>div{padding:20px 0}.project-card .eyebrow{margin-bottom:10px;font-size:10px}.project-card h3{font-size:23px}.project-card p{margin-top:14px;font-size:13px}.project-card small{color:#586779;margin-top:8px;font-size:12px;display:block}.steps{grid-template-columns:repeat(4,1fr);gap:30px;display:grid}.step-num{color:#39769f;border-bottom:1px solid var(--line);letter-spacing:-1px;margin-bottom:23px;padding-bottom:20px;font-family:Manrope;font-size:36px;display:block}.steps h3{margin-bottom:13px;font-size:21px}.steps p{font-size:14px}.section-note{color:#586779;font-size:13px;line-height:1.7}.process>.section-note{max-width:800px;margin-top:35px}.why{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:100px;display:grid}.why-copy p{max-width:410px;margin:24px 0}.why-list>div{border-bottom:1px solid var(--line);gap:25px;padding:25px 0;display:flex}.why-list>div:first-child{padding-top:0}.why-list>div>span{color:#39769f;font-size:13px}.why-list h3{margin-bottom:12px;font-size:23px}.why-list p{font-size:15px}.reviews{text-align:center;background:#e6f2fb;max-width:none}.review-placeholder{max-width:650px;margin:25px auto 0}.quote-symbol{color:#39769f;font-family:Georgia;font-size:65px;line-height:1}.review-placeholder p{color:var(--ink);letter-spacing:-.7px;margin:10px 0 20px;font-family:Manrope;font-size:25px}.review-placeholder small{color:#586779;font-size:12px}.faq-section{grid-template-columns:.8fr 1.2fr;gap:80px;display:grid}.faq-section>div>p{max-width:310px;margin-top:22px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-size:15px;font-weight:500;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span{color:var(--green);font-size:22px;font-weight:400}details[open] summary span{transform:rotate(45deg)}details p{padding:0 30px 22px 0;font-size:14px}.quote-section{background:#eef6fc;grid-template-columns:1fr 1fr;gap:100px;max-width:none;padding-inline:max(6%,50% - 616px);display:grid}.quote-section h2{max-width:440px}.quote-section>div>p{max-width:400px;margin:25px 0}.quote-points{border-top:1px solid #ccdeed;max-width:400px;margin-top:40px}.quote-points p{border-bottom:1px solid #ccdeed;padding:15px 0;font-size:14px}.enquiry-form{background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:30px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.enquiry-form label{color:var(--ink);margin-bottom:18px;font-size:13px;font-weight:500;display:block}label small{color:var(--muted);font-weight:400}label>span{color:var(--green)}input,select,textarea{width:100%;min-height:45px;color:var(--ink);background:#fff;border:1px solid #b9cddd;border-radius:3px;margin-top:7px;padding:10px 12px;font-size:14px;display:block}textarea{resize:vertical}input[type=file]{max-width:100%;padding:8px;font-size:12px}.upload{border:1px dashed #a8c5dc;padding:12px}.upload input{background:0 0;border:0;padding-inline:0}.upload small{font-size:12px;display:inline-block}.privacy-note{margin:0 0 15px;font-size:12px}.privacy-note a{text-decoration:underline}.form-error{color:#9e3328;margin-bottom:12px;font-size:14px}.honeypot{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.confirmation{background:var(--paper);border:1px solid var(--line);padding:40px}.confirmation h3{font-size:30px}.confirmation p{margin-top:20px}footer{color:#f1f7fc;background:#182e52;padding:60px 6% 25px}.footer-top{grid-template-columns:1.3fr .9fr .8fr 1.2fr;gap:40px;max-width:1230px;margin:auto;display:grid}.footer-brand{letter-spacing:-1.5px;font-family:Manrope;font-size:30px;font-weight:600}.footer-brand span{letter-spacing:0;color:#c1d9ed;margin-top:10px;font-family:DM Sans;font-size:13px;font-weight:400;display:block}footer h3{letter-spacing:0;margin-bottom:18px;font-size:14px}footer div>div>a{color:#c1d9ed;margin:8px 0;font-size:13px;display:block}footer p{color:#c1d9ed;font-size:13px}.footer-cta{border-bottom:1px solid #75b2dd;padding-bottom:5px;margin-top:20px!important;display:inline-block!important}.footer-bottom{color:#c1d9ed;border-top:1px solid #3d587c;justify-content:space-between;max-width:1230px;margin:50px auto 0;padding-top:20px;font-size:11px;display:flex}.mobile-quote{display:none}.skip{z-index:30;background:#fff;padding:15px;position:absolute;top:-100px}.skip:focus{top:0}.service-hero{grid-template-columns:1fr 1fr;align-items:center;gap:70px;display:grid}.service-hero p{max-width:490px;margin:25px 0}.service-hero figure{height:480px}.service-hero figcaption{position:absolute;bottom:0}.split-section{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:100px;display:grid}.split-section p{margin-top:25px}.types-list>div{border-bottom:1px solid var(--line);gap:25px;padding:25px 0;display:flex}.types-list span{color:#39769f;font-size:13px}.types-list h3{font-size:24px}.scope-section{background:#eef6fc;grid-template-columns:1fr 1fr;align-items:center;gap:70px;display:grid}.scope-section p{margin-top:20px}.drawing{background:#f7fbff;border:1px solid #c7dced;padding:25px}.drawing img{object-fit:contain;background:#fff;width:100%;height:auto}.drawing figcaption{background:0 0;padding:10px 0 0;font-size:12px}.deliverables{margin:25px 0;padding:0;list-style:none}.deliverables li{border-bottom:1px solid var(--line);padding:12px 0 12px 25px;font-size:15px;position:relative}.deliverables li:before{content:"✓";color:#39769f;position:absolute;left:0}.page-intro{text-align:center;max-width:1100px;padding-block:85px 60px}.page-intro .eyebrow{margin-bottom:25px}.page-intro p{max-width:620px;margin:25px auto}.packages{grid-template-columns:repeat(3,1fr);gap:25px;padding-top:30px;display:grid}.packages article{border:1px solid var(--line);background:#eef6fc;padding:30px}.packages h2{font-size:29px}.packages p{margin-top:20px;font-size:14px}.packages .fee{border-top:1px solid var(--line);padding-top:20px;font-weight:500}.project-placeholder{border:1px solid var(--line);background:#eef6fc;margin:40px 0;padding:50px}.project-placeholder p{max-width:750px;margin-top:20px}.about-values h3{margin-top:25px}.about-values h3:first-child{margin-top:0}.about-values p{margin-top:12px}.contact-page{grid-template-columns:1fr 1fr;align-items:start;gap:80px;display:grid}.contact-page h1{font-size:53px}.contact-page>div>p{margin-top:25px}.contact-details{border-top:1px solid var(--line);margin-top:50px;padding-top:25px}.contact-details h3{margin:25px 0 15px;font-size:20px}.contact-details p{font-size:14px}.privacy-page{max-width:950px}.privacy-page h1{margin-bottom:30px}.privacy-page h2{margin:35px 0 15px;font-size:26px}.privacy-page p{margin-bottom:20px}.privacy-page a{text-decoration:underline}@media (min-width:1600px){.hero-copy{padding-left:90px}}@media (max-width:1150px){.nav{gap:15px}.header{padding-inline:4%}.brand{font-size:20px}.hero-copy{padding-left:8%;padding-right:8%}.hero-actions{flex-wrap:wrap;gap:15px}.hero{min-height:630px}.hero-image{min-height:580px}.why,.quote-section,.faq-section{gap:50px}.technical-band{grid-template-columns:1fr 1fr}.technical-band>a{grid-column:2;justify-self:start}.contact-page{gap:40px}}@media (max-width:900px){.header{padding:20px 5%}.menu-button{background:0 0;border:1px solid #b7cede;border-radius:3px;min-height:44px;padding:9px 15px;font-size:14px;display:block}.nav{display:none}.nav.open{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:20px 5%;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 20px #00000010}.nav>a,.service-nav>a{padding:13px 0;display:block}.nav .button{margin:10px 0;padding:12px}.service-menu{border:0;flex-direction:column;padding:0 0 5px 15px;display:flex;position:static}.service-menu a{padding:8px;font-size:13px}.hero-copy h1{font-size:46px}.hero-copy{padding-top:50px}.hero-image{min-height:530px}.hero-annotation{display:none}.section{padding:65px 5%}.section-heading{gap:30px}.project-card figure{height:220px}.steps{grid-template-columns:1fr 1fr;gap:35px}.packages{grid-template-columns:1fr}.service-hero,.scope-section{gap:35px}.service-hero figure{height:380px}.split-section{gap:40px}.footer-top{grid-template-columns:1fr 1fr}.contact-page h1{font-size:44px}}@media (max-width:640px){body{font-size:16px}.header{padding:17px 5%}.brand{font-size:22px}.hero{flex-direction:column;min-height:0;display:flex}.hero-copy{padding:40px 6% 30px}.hero .eyebrow{margin-bottom:22px;font-size:10px}.hero-copy h1{max-width:360px;font-size:44px}.hero-copy h1 em{margin-top:5px}.hero-copy p{margin:22px 0 25px;font-size:15px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:16px;width:100%}.hero-actions .button{padding-inline:19px;font-size:13px}.hero-actions .text-link{font-size:13px}.hero-location{margin-top:27px;font-size:9px}.hero-image{height:330px;min-height:330px;margin:0 5% 25px}.hero-image figcaption{font-size:10px}.reassurance{flex-direction:column;gap:12px;padding:22px 6%;font-size:12px}.section{padding:55px 6%}.eyebrow{letter-spacing:.13em;margin-bottom:18px;font-size:10px}h2{font-size:33px}.section-heading{margin-bottom:30px;display:block}.section-heading p,.section-heading>a{margin-top:20px}.service-grid,.project-grid{grid-template-columns:1fr;gap:25px}.main-service figure{height:285px}.main-service>div{padding:20px 0}.main-service h3{font-size:30px}.main-service p{font-size:15px}.technical-band{grid-template-columns:1fr;gap:20px;padding:27px 0}.technical-band>a{grid-column:auto}.technical-band h3{font-size:24px}.project-card figure{height:290px}.gallery-disclaimer{margin-top:0;font-size:13px}.project-card h3{font-size:25px}.steps{gap:30px 20px}.steps h3{font-size:20px}.steps p{font-size:14px}.step-num{margin-bottom:18px;padding-bottom:14px;font-size:30px}.why,.faq-section,.quote-section,.service-hero,.scope-section,.split-section,.contact-page{grid-template-columns:1fr;gap:35px}.why-list h3{font-size:22px}.why-list p{font-size:14px}.reviews h2{font-size:31px}.review-placeholder p{font-size:22px}.reviews small{max-width:270px;margin:auto;display:block}.faq-section>div>p{font-size:15px}.quote-section{padding-bottom:65px}.quote-points{margin-top:25px}.quote-section>div>p{font-size:15px}.enquiry-form{padding:22px 18px}.form-grid{gap:13px}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{font-size:16px}.enquiry-form label{font-size:13px}.enquiry-form .button{width:100%}.privacy-note,.upload input[type=file]{font-size:12px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-brand,.footer-top>div:last-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:15px;margin-top:35px;font-size:11px}footer{padding:45px 6% 100px}.mobile-quote{z-index:15;min-height:46px;padding:10px 28px;font-size:14px;display:flex;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 6px 25px #182e5240}.service-hero h1,.contact-page h1{font-size:43px}.service-hero figure{height:340px}.page-intro h1{font-size:43px}.page-intro p{font-size:15px}.packages{padding-top:0}.packages article{padding:25px}.scope-section{padding:40px 6%}.drawing{padding:12px}.types-list>div{padding:20px 0}.types-list h3{font-size:23px}.project-placeholder{padding:25px}.project-placeholder h2{font-size:29px}.contact-details{margin-top:30px}.privacy-page h1{font-size:43px}.privacy-page h2{font-size:25px}.section-note{font-size:13px}.confirmation{padding:25px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.header{padding-block:14px}.brand{flex-shrink:0;display:block}.logo-window{background:#fff;border-radius:2px;width:185px;height:106px;display:block;position:relative;overflow:hidden}.logo-window img{object-fit:contain;max-width:none;position:absolute;top:-46px;left:-77px;width:340px!important;height:auto!important}.footer-brand>.footer-logo{letter-spacing:normal;margin:0 0 18px}.footer-brand>.footer-logo img{display:block}.footer-brand>span:last-child{letter-spacing:0;color:#c1d9ed;font-size:13px}.footer-logo{border-radius:4px}.menu-button{color:var(--ink)}@media (max-width:1150px){.logo-window{width:164px;height:94px}.logo-window img{top:-41px;left:-68px;width:302px!important}}@media (max-width:640px){.header{padding-block:8px}.logo-window{width:151px;height:88px}.logo-window img{top:-38px;left:-64px;width:280px!important}.footer-logo{width:185px;height:106px}.footer-logo img{top:-46px;left:-77px;width:340px!important}.hero-copy{padding-top:30px}.hero-copy h1{font-size:42px}}.main-service figure,.project-card figure,.service-hero figure{aspect-ratio:3/2;height:auto}.main-service figure>img,.project-card figure>img,.service-hero figure>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.whatsapp-widget{z-index:20;color:#fff;background:#176a3b;border:1px solid #247948;border-radius:30px;justify-content:center;align-items:center;gap:10px;min-height:54px;padding:13px 20px;font-size:14px;font-weight:600;transition:background .2s,box-shadow .2s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 6px 24px #182e5226}.whatsapp-widget:hover{background:#12532e;box-shadow:0 8px 28px #182e5233}.whatsapp-widget svg{flex-shrink:0}.whatsapp-widget:focus-visible{outline-offset:4px;outline:3px solid #182e52}@media (max-width:640px){.whatsapp-widget{border-radius:50%;width:56px;height:56px;padding:0;bottom:14px;right:16px}.whatsapp-widget span{display:none}.mobile-quote{min-height:52px;padding:12px 18px;bottom:16px;left:16px;right:88px;transform:none}}.email-alternative{font-size:14px}.email-alternative a{text-underline-offset:4px;color:var(--ink);overflow-wrap:anywhere;text-decoration:underline}.contact-details a{overflow-wrap:anywhere}.service-hero .remote-service-note{color:#39769f;border-left:2px solid #75b2dd;margin:0 0 25px;padding-left:16px;font-size:14px;line-height:1.65}
