:root{--ink:#080808;--muted:#545c60;--orange:#ff8a00;--paper:#f4f5f5;--line:#d7dcdd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit}button,input,textarea,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b35b00;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.035em}h1,h2{font-family:'Arial Black',Arial,Helvetica,sans-serif;font-weight:900}h1{font-size:clamp(2.9rem,5.6vw,5.6rem);margin-bottom:28px}h2{font-size:clamp(2rem,3.8vw,3.6rem);margin-bottom:24px}h3{font-size:1.35rem;line-height:1.22}p{color:var(--muted)}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.section{padding-top:90px;padding-bottom:90px}.eyebrow{font-size:.875rem;font-weight:bold;letter-spacing:.14em;text-transform:uppercase;margin-bottom:20px}.eyebrow:before{content:'';display:inline-block;width:24px;height:3px;background:var(--orange);margin-right:12px;vertical-align:middle}.lead{font-size:1.18rem;max-width:580px;line-height:1.6}.button{border:1px solid var(--orange);background:var(--orange);color:var(--ink);display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:12px 23px;text-decoration:none;font-weight:700;border-radius:2px;cursor:pointer;transition:background .15s}.button:hover{background:#ffab47;border-color:#ffab47}.outline{background:transparent;border-color:#85898c;color:inherit}.outline:hover{background:#ffffff15;border-color:var(--orange)}.actions{display:flex;gap:12px;flex-wrap:wrap}.skip{position:absolute;left:20px;top:-100px;z-index:20;background:white;padding:10px}.skip:focus{top:12px}header{background:var(--ink);color:white;position:sticky;top:0;z-index:10;border-bottom:1px solid #353839}.nav{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:30px}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font-size:1.4rem;letter-spacing:.025em;font-weight:800;line-height:1.1}.brand img{width:58px;height:58px;object-fit:contain}.brand small,.brand-footer small{display:block;color:var(--orange);font-size:.75rem;letter-spacing:.2em;margin-top:8px}.nav nav{display:flex;gap:28px;align-items:center}.nav nav>a:not(.button){font-size:.94rem;text-decoration:none}.nav nav>a:hover,.nav nav>a[aria-current]{color:var(--orange)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:620px;align-items:center;gap:55px;padding-top:64px;padding-bottom:64px}.hero h1 span{color:#b75900}.hero-note{font-size:.875rem;margin:26px 0 0}.hero-image{margin:0;position:relative;align-self:stretch;min-height:450px;overflow:hidden;border-radius:2px}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute}.hero-image:after{content:'';position:absolute;width:90px;height:12px;background:var(--orange);bottom:0;left:0}.hero-image figcaption{position:absolute;bottom:19px;right:18px;padding:3px 8px;background:#111b;color:white;font-size:.75rem}.experience{background:var(--ink);color:#fff}.experience>.wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0}.experience strong{font-size:2rem;letter-spacing:-.04em;color:var(--orange);white-space:nowrap}.experience span{font-size:.9rem}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.section-heading>p{max-width:330px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.service:hover{background:var(--paper)}.service:last-child{grid-column:span 3;display:grid;grid-template-columns:70px 1fr 1.5fr 1fr;align-items:start;gap:24px}.service:last-child p{margin:0}.service:last-child .number{margin:0}.number{font-weight:bold;color:#a85300;font-size:.875rem;display:block;margin-bottom:36px;letter-spacing:.12em}.service p{margin-bottom:25px}.service a,.text-link{font-size:.9rem;font-weight:bold;text-underline-offset:6px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.approach{border-top:1px solid var(--line)}.principles article{padding:24px 0;border-bottom:1px solid var(--line)}.principles article h3{margin-bottom:12px}.principles p{margin:0}.area-section{background:var(--paper);padding:90px 0}.areas{display:grid;grid-template-columns:1fr 1fr;gap:0 26px}.areas span{padding:16px 0;border-bottom:1px solid #c6ccce;font-weight:bold;font-size:1.08rem}.cta{background:var(--orange);padding:65px 0}.cta>.wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta p{color:var(--ink)}.cta h2{margin-bottom:12px}.cta p:last-child{margin-bottom:0}.cta .eyebrow:before{background:var(--ink)}.cta .button{background:var(--ink);color:#fff;border-color:var(--ink)}.cta .outline{background:transparent;color:var(--ink)}footer{background:var(--ink);color:#fff;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:40px}.brand-footer{font-weight:bold;font-size:1.6rem;letter-spacing:.04em}.brand-footer p{font-size:1rem;letter-spacing:0;font-weight:normal;color:#bbc1c3;margin-top:24px}.footer-grid h3{font-size:1rem;margin-bottom:22px}.footer-grid a{display:block;margin-bottom:10px;text-decoration:none;font-size:.94rem;color:#bbc1c3}.footer-grid a:hover{color:var(--orange)}.copyright{border-top:1px solid #383c3d;margin-top:40px;padding-top:22px;font-size:.875rem;color:#bfc5c7}.page-intro{padding-top:85px;padding-bottom:55px;border-bottom:1px solid var(--line)}.page-intro h1{max-width:950px}.feature-image{width:100%;aspect-ratio:1/1;object-fit:cover}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.steps .number{margin-bottom:18px}.panel{background:var(--paper);padding:38px;border-top:4px solid var(--orange)}.panel h2{font-size:2rem}.contact-details{display:flex;flex-direction:column;align-items:start;gap:16px}.contact-details .eyebrow{margin:0}.contact-details a{font-size:clamp(1.1rem,2.3vw,1.5rem);overflow-wrap:anywhere}.phone{font-size:clamp(1.4rem,2.4vw,2rem);font-weight:bold;text-decoration:none;letter-spacing:-.025em}.quote-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:70px;align-items:start}.quote-layout aside .steps{grid-template-columns:1fr;gap:5px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:30px 0}.form-grid label{font-size:.94rem;font-weight:600}.wide{grid-column:span 2}input,select,textarea{display:block;width:100%;background:white;border:1px solid #aeb7ba;border-radius:2px;margin-top:8px;padding:12px;color:var(--ink);min-height:48px}textarea{resize:vertical}.small{font-size:.875rem;margin:18px 0 0}.menu-toggle{background:transparent;color:white;border:1px solid #677075;padding:8px 13px;font-size:.94rem}@media(min-width:1500px){.hero{min-height:690px}}@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.nav nav{gap:16px}.brand{font-size:1.12rem}.brand img{width:48px;height:48px}.hero{gap:30px}.services{grid-template-columns:1fr 1fr}.service:last-child{grid-column:span 2;display:block}.service:last-child .number{margin-bottom:36px}.service:last-child p{margin-bottom:25px}.split{gap:40px}.quote-layout{gap:35px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.nav{min-height:78px;flex-wrap:wrap;gap:0}.menu-toggle{display:block}.nav nav{display:none;width:100%;padding:20px 0;flex-direction:column;align-items:stretch;gap:18px}.nav nav.open{display:flex}.nav nav a{padding:4px 0}.nav nav .button{padding:12px}.hero{grid-template-columns:1fr;padding-top:45px;padding-bottom:35px;gap:32px;min-height:0}.hero h1{font-size:clamp(2.7rem,10vw,4.5rem)}.hero-image{min-height:300px}.hero-copy .lead{font-size:1.08rem}.actions .button{flex:1 1 auto}.experience>.wrap{display:grid;grid-template-columns:auto 1fr;gap:12px 25px}.experience span:nth-last-child(-n+3){display:none}.section{padding-top:55px;padding-bottom:55px}.section-heading,.cta>.wrap{display:block}.section-heading>p{max-width:none}.services{grid-template-columns:1fr}.service,.service:last-child{grid-column:auto;padding:28px}.number{margin-bottom:22px}.service:last-child .number{margin-bottom:22px}.split,.quote-layout{grid-template-columns:1fr;gap:30px}.area-section{padding:55px 0}.steps{grid-template-columns:1fr;gap:14px}.cta{padding:45px 0}.cta .actions{margin-top:30px}.footer-grid{grid-template-columns:1fr;gap:25px}.page-intro{padding-top:45px;padding-bottom:35px}.page-intro h1{font-size:clamp(2.6rem,9vw,4rem)}.panel{padding:25px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.form-grid label{font-size:1rem}h3{font-size:1.35rem}.feature-image{aspect-ratio:4/3}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Velocore brand system */
@font-face{font-family:VelocoreHeading;src:url('/assets/heading-bold.woff') format('woff');font-weight:700;font-style:normal;font-display:swap}
header,footer{background:#000}
h1,h2,h3{font-family:VelocoreHeading,'Arial Narrow',Arial,sans-serif;font-weight:700;letter-spacing:.005em}
h1,h2{text-transform:uppercase;line-height:1.04}
h1{font-size:clamp(3.1rem,6.2vw,6rem)}h2{font-size:clamp(2.25rem,4.1vw,4rem)}h3{font-size:1.65rem;line-height:1.15}
.brand{display:block;line-height:0;flex-shrink:0}.brand img{width:290px;height:116px;object-fit:contain}.nav{min-height:116px}
.brand-footer img{width:230px;height:230px;object-fit:contain;display:block}
.hero{background:#080808;color:white}.hero.wrap{width:100%;padding-left:max(40px,calc((100vw - 1200px)/2));padding-right:max(40px,calc((100vw - 1200px)/2))}
.hero h1 span{color:var(--orange)}.hero .lead,.hero-note{color:#c8ccce}.hero .eyebrow{color:#eee}.hero .outline{color:white}.experience{border-top:1px solid #454545}
.service h3{font-size:1.7rem}.principles h3{font-size:1.6rem}.cta{background:var(--orange)}.button{border-radius:0}.page-intro .eyebrow{color:#444}
@media(max-width:1050px){.brand img{width:220px;height:95px}.nav{min-height:95px}.nav nav{gap:15px}.nav nav .button{padding:10px 16px}}
@media(max-width:760px){.brand img{width:215px;height:86px}.nav{min-height:86px}.hero.wrap{padding-left:20px;padding-right:20px}.hero h1{font-size:clamp(3.15rem,12vw,4.9rem)}.page-intro h1{font-size:clamp(3rem,11vw,4.8rem)}.brand-footer img{width:190px;height:190px}.hero-image{min-height:290px}.panel h2{font-size:2.3rem}}
@media(max-width:350px){.brand img{width:185px;height:78px}.menu-toggle{padding:7px 10px}}

/* Final brand refinements */
.nav{min-height:102px}.brand img{width:270px;height:102px}
.hero{grid-template-columns:1.12fr 1fr;gap:65px;padding-top:60px;padding-bottom:68px}
.hero .brand-tagline{font-size:clamp(4rem,7.8vw,7.6rem);line-height:.96;letter-spacing:.008em;margin-bottom:30px}
.hero .lead{font-size:1.08rem;max-width:475px;margin-bottom:28px}
.hero-image{margin:26px 0 0;min-height:495px;align-self:stretch;border-radius:0;border-bottom:8px solid var(--orange)}
.hero-image:after{display:none}
.hero-image img{object-position:57% center}
.hero-capabilities{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid #383838;margin-top:32px;padding-top:20px;font-size:.875rem;color:#c8ccce}
.hero-capabilities span+span{border-left:1px solid #5a5a5a;padding-left:20px}
.experience{background:#16191a}.experience>.wrap{padding:26px 0}
.section-heading{margin-bottom:48px}.section-heading h2{margin-bottom:0}
.service{padding:36px;position:relative}.service:hover{background:#eceff0}.service h3{margin-bottom:17px}.service .number{margin-bottom:26px}
.service a{display:inline-block;text-decoration:none;border-bottom:1px solid #aaa;padding-bottom:3px}.service a:hover{border-color:#ac5200;color:#ac5200}
.area-section{background:#e9ecee}.areas span{padding:19px 0}
.cta{background:#111;color:#fff;border-top:5px solid var(--orange)}.cta .eyebrow{color:#ddd}.cta .eyebrow:before{background:var(--orange)}.cta p{color:#bec4c6}.cta .button{background:var(--orange);color:#080808;border-color:var(--orange)}.cta .outline{background:transparent;color:white;border-color:#777}
.brand-footer .footer-tagline{font-family:VelocoreHeading,'Arial Narrow',Arial,sans-serif;color:var(--orange);font-size:1.55rem;font-weight:700;line-height:1.15;margin:12px 0 20px;max-width:360px}
footer{padding-top:45px}.brand-footer img{width:200px;height:200px}.footer-grid{align-items:start}.footer-grid>div:not(.brand-footer){padding-top:28px}
.button{transition:background .18s,border-color .18s,box-shadow .18s}.button:hover{box-shadow:0 3px 12px #0002}.page-intro{padding-bottom:50px}
@media(max-width:1050px){.nav{min-height:95px}.brand img{width:220px;height:95px}.hero{gap:35px}.hero-image{min-height:470px}.hero .brand-tagline{font-size:clamp(4rem,8vw,6rem)}}
@media(max-width:760px){.nav{min-height:86px}.brand img{width:215px;height:86px}.hero{grid-template-columns:1fr;padding-top:40px;padding-bottom:35px;gap:28px}.hero .brand-tagline{font-size:clamp(4rem,16vw,6.6rem);margin-bottom:25px}.hero .lead{font-size:1.06rem}.hero-image{min-height:300px;margin:0}.hero-capabilities{gap:14px;margin-top:25px;padding-top:18px}.hero-capabilities span+span{padding-left:14px}.section-heading{margin-bottom:30px}.section-heading h2{margin-bottom:24px}.service{padding:28px}.cta{padding:45px 0}.footer-grid>div:not(.brand-footer){padding-top:0}}
@media(max-width:350px){.brand img{width:185px;height:78px}.hero .brand-tagline{font-size:3.8rem}.hero-capabilities{gap:10px}.hero-capabilities span+span{padding-left:10px}}

address{font-style:normal;font-size:1rem;line-height:1.65}footer address{color:#bbc1c3;margin-top:22px}.contact-details address{font-size:1.1rem}

.leadership{display:grid;grid-template-columns:1fr 1.35fr;gap:80px;align-items:start;border-bottom:1px solid var(--line)}.leadership-title h2{font-size:clamp(2.7rem,4.4vw,4.3rem);line-height:1.1}.leadership-title h2 span{color:#a94f00}.leadership-experience{display:flex;align-items:center;gap:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin-top:35px}.leadership-experience strong{font-family:VelocoreHeading,Arial,sans-serif;font-size:5rem;line-height:1;color:var(--ink)}.leadership-experience span{font-size:.94rem;color:var(--muted);line-height:1.5}.leadership-motto{font-family:VelocoreHeading,Arial,sans-serif;color:var(--ink);font-size:1.8rem;line-height:1.15;margin-top:25px}.leadership-bio p{margin-bottom:24px}.leadership-bio .lead{color:var(--ink);font-size:1.25rem;line-height:1.6}.leadership-bio .button{margin-top:8px}@media(max-width:760px){.leadership{grid-template-columns:1fr;gap:35px}.leadership-title h2{font-size:3rem}.leadership-experience{margin-top:25px;padding:18px 0}.leadership-motto{margin-bottom:0}.leadership-bio .lead{font-size:1.15rem}}

.hero-image img{object-position:50% 43%}.hero-image figcaption{font-size:.75rem;background:#000b}@media(max-width:760px){.hero-image{min-height:350px}.hero-image img{object-position:50% 43%}}

.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:38px}.project-photo{margin:0;min-width:0}.project-image{aspect-ratio:4/5;overflow:hidden;background:#141819;border-bottom:6px solid var(--orange)}.project-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 40%}.project-photo figcaption{padding:27px 0 0}.project-photo .eyebrow{margin-bottom:14px}.project-photo h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:15px}.project-photo figcaption p:last-child{max-width:470px;margin-bottom:0}.project-enquiry{border-top:1px solid var(--line)}@media(max-width:760px){.project-gallery{grid-template-columns:1fr;gap:45px}.project-image{aspect-ratio:4/5}.project-photo figcaption{padding-top:22px}}

.imported-project{border-bottom:1px solid var(--line)}.project-heading{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-bottom:35px;align-items:start}.project-heading h2{font-size:clamp(2.2rem,3.8vw,3.8rem)}.project-facts{border-left:3px solid var(--orange);padding-left:18px;font-size:.94rem}.project-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.project-collection figure{margin:0;min-width:0}.project-collection a{display:block;background:#1a1e20;overflow:hidden;border-bottom:4px solid var(--orange)}.project-collection img{display:block;width:100%;height:290px;object-fit:cover;filter:brightness(.87) saturate(.85);transition:filter .2s}.project-collection a:hover img{filter:brightness(1) saturate(1)}.project-collection figcaption{font-size:.875rem;color:var(--muted);line-height:1.55;padding-top:14px}.project-collection.aquatic img{object-fit:contain;height:360px;filter:brightness(.94) saturate(.9)}.project-collection.bathroom{grid-template-columns:1fr 1fr}.project-collection.bathroom img{height:540px;object-fit:contain}.project-sectors{background:var(--paper)}.sector-grid,.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:35px}.sector-grid article,.capability-grid article{border-top:2px solid #bfc5c7;padding-top:22px}.sector-grid p,.capability-grid p{margin-bottom:0}@media(max-width:1050px){.project-collection{grid-template-columns:1fr 1fr}.project-heading{gap:35px}.project-collection.aquatic img{height:350px}}@media(max-width:760px){.project-heading{grid-template-columns:1fr;gap:0;margin-bottom:25px}.project-collection,.project-collection.bathroom{grid-template-columns:1fr;gap:30px}.project-collection img{height:auto;max-height:540px;object-fit:contain}.project-collection.aquatic img,.project-collection.bathroom img{height:auto;max-height:600px;object-fit:contain}.sector-grid,.capability-grid{grid-template-columns:1fr;gap:25px}}
