:root{--red:#c82930;--red-dark:#ab1d26;--ink:#242424;--paper:#fff;--mist:#f2f2ee;--muted:#646461;--line:#d9d9d4;--display:Georgia,'Times New Roman',serif;--body:Arial,Helvetica,sans-serif;--gutter:clamp(24px,5.5vw,88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #28639b;outline-offset:5px}button{cursor:pointer}img{max-width:100%;height:auto}.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:30}.brand{display:flex}.brand img{width:188px}.header nav{display:flex;gap:30px;align-items:center;font-size:14px;font-weight:600}.header nav>a:not(.button):hover{color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 25px;color:#fff;background:var(--red);border:1px solid var(--red);font-size:15px;font-weight:600;transition:background .2s}.button:hover{background:var(--red-dark);border-color:var(--red-dark)}.button.small{min-height:46px;padding:10px 20px}.menu-toggle{display:none}.skip-link{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip-link:focus{top:10px}.hero{display:grid;grid-template-columns:1.06fr 1fr;min-height:650px}.hero-copy{padding:75px 4vw 28px var(--gutter);display:flex;flex-direction:column}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;margin:0 0 28px;display:flex;align-items:center;gap:12px}.red-line{height:2px;width:28px;background:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,5.3vw,84px);letter-spacing:-.055em;line-height:1.07;font-weight:500;margin-bottom:28px}em{font-family:var(--display);font-weight:400;letter-spacing:-.05em}h1 em{color:var(--red)}.hero-description{color:var(--muted);font-size:18px;line-height:1.7;margin-bottom:30px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid currentColor;padding:8px 0;display:inline-block;width:fit-content}.text-link:hover{color:var(--red)}.hero-foot{margin-top:auto;display:flex;gap:28px;padding-top:65px;font-size:11px;letter-spacing:.1em;font-weight:600}.hero-palette{background:var(--red);color:white;display:flex;flex-direction:column;position:relative;min-height:650px;padding:70px 45px 0;overflow:hidden}.palette-title{font-size:clamp(40px,4.7vw,76px);line-height:.98;font-weight:800;letter-spacing:-.06em;position:relative;z-index:1}.palette-caption{margin-top:auto;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;padding:35px 0}.palette-base{height:190px;margin:0 -45px;display:grid;grid-template-columns:1fr 1fr 1fr}.palette-base span{display:flex;align-items:flex-end;font-size:9px;letter-spacing:.05em;padding:22px 15px;background:#a92129;min-width:0}.palette-base span:nth-child(2){background:#f2f2ee;color:var(--ink)}.palette-base span:nth-child(3){background:var(--ink)}.section{padding:95px var(--gutter)}.section-heading{display:grid;grid-template-columns:1fr 2fr;align-items:start;margin-bottom:48px}.section-heading .eyebrow{margin-top:14px}h2{font-size:clamp(36px,4vw,60px);font-weight:500;letter-spacing:-.05em;line-height:1.12;margin-bottom:22px}h3{font-size:36px;line-height:1.13;letter-spacing:-.04em;font-weight:500}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-card{background:var(--mist);padding:42px;display:grid;grid-template-columns:55px 1fr;column-gap:15px}.service-card h3{grid-column:2}.service-card p,.service-card a{grid-column:2}.service-card p{max-width:430px;color:var(--muted)}.service-number{font-size:13px}.service-card.dark{background:var(--ink);color:#fff}.service-card.dark p{color:#d3d3cf}.service-card.dark a:hover{color:#ffc9cb}.quote{background:var(--mist)}.quote>p:not(.eyebrow){max-width:480px;color:var(--muted);margin-bottom:30px}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:45px var(--gutter);border-top:1px solid var(--line);font-size:14px}footer img{width:170px}footer p{margin:0;color:var(--muted)}footer>a{font-size:18px;font-weight:600}@media(min-width:1600px){body{max-width:1920px;margin:auto}}@media(max-width:1050px){.nav-phone{display:none}.header nav{gap:22px}.hero-copy{padding-top:55px}.hero-palette{padding:55px 28px 0}.palette-base{margin:0 -28px}.hero-foot{gap:15px;font-size:10px}.service-card{padding:30px;grid-template-columns:30px 1fr}}@media(max-width:760px){html{scroll-padding-top:95px}.header{height:84px;padding-top:env(safe-area-inset-top)}.brand img{width:154px}.menu-toggle{display:flex;align-items:center;gap:12px;background:white;border:1px solid var(--line);min-height:44px;padding:8px 12px;font-size:14px}.header nav{display:none;position:absolute;left:0;right:0;top:100%;padding:24px;background:white;border-bottom:1px solid var(--line);align-items:stretch;gap:10px}.header nav.open{display:flex;flex-direction:column}.header nav a{padding:10px 12px;min-height:44px}.header nav .nav-phone{display:block}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px var(--gutter) 35px}h1{font-size:clamp(44px,10.5vw,70px)}.eyebrow{font-size:11px;margin-bottom:23px}.hero-description{font-size:16px}.hero-foot{padding-top:40px;justify-content:space-between}.hero-palette{min-height:360px;padding:32px var(--gutter) 0}.palette-title{font-size:48px;max-width:400px}.palette-caption{font-size:9px;padding:30px 0 20px}.palette-base{height:85px;margin:0 calc(-1 * var(--gutter))}.palette-base span{padding:13px;font-size:8px}.section{padding:65px var(--gutter)}.section-heading{display:block;margin-bottom:32px}.section-heading .eyebrow{margin-top:0}h2{font-size:40px}.service-grid{grid-template-columns:1fr}.service-card{padding:30px 22px;grid-template-columns:27px 1fr}.service-card h3{font-size:32px}.actions{gap:14px}.actions .button{width:100%}footer{flex-direction:column;align-items:flex-start;padding:35px var(--gutter)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.story{background:var(--mist)}.story-stage{padding:40px var(--gutter);display:flex;flex-direction:column;min-height:600px}.story-top,.story-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px}.story-top .eyebrow{margin:0}.story-top .text-link{font-size:12px}.story-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7vw;padding:45px 0;flex:1}.story-copy p{max-width:350px;color:var(--muted)}.prototype-note{font-size:12px}.colour-study{min-height:330px;height:100%;background:#d2d5cc;position:relative;overflow:hidden;display:flex;align-items:center;padding:35px}.colour-reveal{position:absolute;inset:0;background:#a8b9a1;transform:scaleX(1);transform-origin:left}.colour-word{position:relative;color:white;mix-blend-mode:normal;font-size:clamp(32px,4.7vw,70px);line-height:1;font-weight:600;letter-spacing:-.04em;max-width:100%;overflow-wrap:normal}.colour-word em{font-weight:400;font-size:.88em}.colour-code{position:absolute;bottom:20px;left:35px;font-size:10px;letter-spacing:.13em;color:#fff}.story-bottom{font-size:11px;letter-spacing:.06em}.progress-track{height:2px;background:#cdcdc7;flex:1;max-width:350px}.progress-track>div{height:2px;background:var(--red);width:100%;transform:scaleX(0);transform-origin:left}.story.enhanced{height:calc(var(--story-height) + var(--story-travel))}.enhanced .story-stage{position:sticky;top:100px;height:var(--story-height);min-height:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{border-top:1px solid var(--line);padding-top:25px}.steps article>span{font-size:13px;color:var(--red);display:block;margin-bottom:30px}.steps h3{font-size:28px}.steps p{color:var(--muted);font-size:16px}.region-line{margin-top:65px;padding:30px 0 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;align-items:start}.region-line>span{font-size:11px;letter-spacing:.1em;font-weight:600}.region-line p{max-width:460px;line-height:1.5;font-size:20px}.quote{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.phone-large{display:block;font-size:clamp(30px,3vw,46px);letter-spacing:-.035em;margin:30px 0 0}.phone-large:hover{color:var(--red)}.contact-region{color:var(--muted);font-size:14px}.quote-intro>.button{margin-top:15px}.quote-builder{background:white;padding:35px}.quote-builder h3{font-size:25px;margin-bottom:13px}.quote-builder>p{font-size:14px;color:var(--muted)}.quote-builder label{display:block;font-size:14px;font-weight:600;margin-top:18px}.quote-builder input,.quote-builder select,.quote-builder textarea{display:block;width:100%;min-width:0;border:1px solid #aaa;background:#fff;padding:12px;margin-top:6px;border-radius:0;font-size:16px;color:var(--ink)}.quote-builder textarea{resize:vertical}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.optional{font-weight:400;color:var(--muted)}.prepare-button{margin-top:24px;width:100%}#quote-result{margin-top:28px;border-top:1px solid var(--line);padding-top:22px}#quote-result h4{margin:0 0 15px;font-weight:500;font-size:20px}#quote-summary{margin-bottom:20px;font-size:14px}.result-status{font-size:13px;color:var(--muted);margin:15px 0 0}[hidden]{display:none!important}.style-tile{max-width:1200px;margin:auto}.tile-colours{display:grid;grid-template-columns:repeat(4,1fr);margin:35px 0}.tile-colours div{padding:50px 20px 20px;font-size:14px}.tile-note{max-width:650px;color:var(--muted)}@media(max-width:1000px){.quote{gap:30px}.quote-builder{padding:25px}.field-pair{grid-template-columns:1fr;gap:0}.story-layout{gap:30px}.colour-study{padding:25px}.colour-code{left:25px}.steps{gap:25px}}@media(max-width:760px){.story-stage{padding:28px var(--gutter);min-height:0}.enhanced .story-stage{top:84px}.story-layout{grid-template-columns:1fr;gap:20px;padding:24px 0}.story-copy h2{font-size:33px;margin-bottom:12px}.story-copy>p{font-size:14px;margin-bottom:10px}.story-copy .prototype-note{font-size:11px}.colour-study{min-height:170px;height:170px;padding:25px}.colour-word{font-size:39px}.colour-code{font-size:9px;bottom:15px}.story-top{gap:10px}.story-top .eyebrow{font-size:10px;letter-spacing:.06em}.story-top .text-link{font-size:11px;white-space:nowrap}.story-bottom{font-size:10px;gap:12px}.story-bottom>span:last-child{display:none}.progress-track{max-width:100px}.steps{grid-template-columns:1fr;gap:20px}.steps article{display:grid;grid-template-columns:28px 1fr;gap:0 15px}.steps article>span{grid-row:1/3}.steps h3,.steps p{grid-column:2}.steps h3{font-size:26px}.region-line{display:block;margin-top:35px;padding-top:24px}.region-line p{font-size:20px;margin-top:15px}.quote{grid-template-columns:1fr;gap:35px}.quote-builder{padding:24px 20px}.phone-large{font-size:38px}.tile-colours{grid-template-columns:1fr 1fr}}@media(max-height:650px){.story.enhanced{height:auto}.enhanced .story-stage{position:static;height:auto;min-height:0}.story-layout{padding:24px 0}.colour-study{min-height:200px}.story-bottom{display:none}}@media(prefers-reduced-motion:reduce){.story.enhanced{height:auto}.enhanced .story-stage{position:static;height:auto}.progress-track{display:none}.colour-reveal{transform:scaleX(1)!important}}

.colour-word,.colour-code{color:#242424!important}@media(max-width:760px){.story-layout{align-content:center}}
/* Our Story: original photograph and complete narrative side by side. */
.our-story{background:#fff}.story-split{display:grid;grid-template-columns:1.08fr 1fr;gap:clamp(32px,5vw,76px);align-items:start}.story-photo-column{min-width:0}.neighbourhood-photo{margin:0}.neighbourhood-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.neighbourhood-photo figcaption{padding:12px 0;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}.story-editorial{display:block;margin:0;min-width:0}.since-mark{display:grid;grid-template-columns:auto 1fr;gap:0 22px;align-items:center;margin-top:24px}.since-mark strong{grid-row:1/3;grid-column:1;font-size:72px;color:var(--red);font-weight:500;line-height:1;letter-spacing:-.07em}.since-mark span{grid-column:2;font-size:10px;font-weight:700;letter-spacing:.09em}.story-editorial .story-lead{font-size:clamp(22px,2vw,29px);line-height:1.4;letter-spacing:-.025em;color:var(--ink);margin-bottom:24px}.story-editorial p{color:var(--muted);max-width:650px}.approach{border-top:1px solid var(--line)}@media(min-width:761px) and (max-width:1150px){.header nav{gap:17px}.nav-phone{display:none}}@media(max-width:900px){.story-split{grid-template-columns:1fr;gap:32px}.story-photo-column{max-width:680px}.story-editorial{max-width:680px}.since-mark{max-width:480px}}@media(max-width:760px){.story-editorial .story-lead{font-size:23px}.our-story .section-heading h2{font-size:36px}.hero-foot{font-size:9px;gap:10px}.since-mark{gap:0 16px}.since-mark strong{font-size:65px}.since-mark span{font-size:9px}}

/* Opening choreography: one calm entrance, then a still, readable hero. */
.hero-line{display:block;overflow:clip;padding-bottom:.12em;margin-bottom:-.12em}.hero-line>span{display:block}.hero h1 em{position:relative;display:inline-block}.hero h1 em::after{content:"";position:absolute;left:3%;right:0;bottom:-.035em;height:2px;background:var(--red);transform-origin:left}.hero-palette::before{content:"";position:absolute;inset:0;background:var(--red-dark);transform:scaleX(0);transform-origin:right;pointer-events:none}.palette-caption,.palette-base{position:relative;z-index:1}.hero-palette .palette-base span{transform-origin:bottom}.button{transition:background .2s,box-shadow .2s,transform .2s}.button:hover{transform:translateY(-2px);box-shadow:0 5px 14px #24242412}.button:active{transform:translateY(0)}
@keyframes entrance-up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes heading-reveal{from{opacity:0;transform:translateY(110%)}to{opacity:1;transform:translateY(0)}}
@keyframes underline-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes paint-uncover{from{transform:scaleX(1)}to{transform:scaleX(0)}}
@keyframes swatch-rise{from{transform:translateY(100%)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
 .header .brand,.header nav,.menu-toggle{animation:entrance-up .6s ease-out both}
 .header nav,.menu-toggle{animation-delay:.12s}
 .hero-copy>.eyebrow{animation:entrance-up .65s ease-out .12s both}
 .hero-line>span{animation:heading-reveal .9s cubic-bezier(.2,.75,.2,1) .18s both}
 .hero-line:nth-child(2)>span{animation-delay:.33s}
 .hero h1 em::after{animation:underline-in .65s cubic-bezier(.2,.75,.2,1) .85s both}
 .hero-description{animation:entrance-up .75s ease-out .45s both}
 .hero-copy>.actions{animation:entrance-up .75s ease-out .57s both}
 .hero-foot{animation:entrance-up .75s ease-out .68s both}
 .hero-palette::before{animation:paint-uncover 1.3s cubic-bezier(.2,.75,.2,1) .12s both}
 .palette-title{animation:entrance-up .9s ease-out .3s both}
 .palette-caption{animation:entrance-up .8s ease-out .6s both}
 .palette-base>span{animation:swatch-rise 1s cubic-bezier(.2,.75,.2,1) .25s both}
 .palette-base>span:nth-child(2){animation-delay:.38s}
 .palette-base>span:nth-child(3){animation-delay:.51s}
 .reveal-arriving{animation:entrance-up .7s cubic-bezier(.2,.75,.2,1) both}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-line{overflow:visible}.button:hover{transform:none}.hero-palette::before{display:none}.reveal-arriving{opacity:1;transform:none}}

/* Refined editorial direction: authentic photography, restrained red, generous type. */
:root{--ink:#252523;--mist:#f5f5f2;--muted:#686864;--line:#ddddd7;--gutter:clamp(24px,5.5vw,88px)}
body{font-weight:400}.header{background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}.brand img{width:174px}.header nav{font-size:13px;font-weight:500;gap:28px}.header nav>a:not(.button){position:relative}.header nav>a:not(.button)::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s}.header nav>a:hover::after{transform:scaleX(1)}
.button{font-weight:500;letter-spacing:.015em;padding:15px 25px;min-height:54px;font-size:14px}.button.small{font-size:13px}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.17em}.hero{grid-template-columns:1fr 1fr;min-height:690px;gap:0}.hero-copy{padding:70px 4.5vw 35px var(--gutter)}h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:-.035em}h1{font-size:clamp(54px,5.8vw,91px);line-height:1.04;margin-bottom:33px}.hero h1 em{letter-spacing:-.055em}.hero h1 em::after{height:1px;opacity:.5}.hero-description{font-size:17px;line-height:1.75;max-width:430px;margin-bottom:33px}.hero-copy>.actions{align-items:flex-start;gap:20px}.hero-copy>.actions .text-link{margin-top:6px}.hero-foot{font-size:10px;font-weight:500;letter-spacing:.11em;padding-top:65px;gap:25px}.hero-photo{isolation:isolate;min-height:690px;padding:0;margin:24px 24px 24px 0;overflow:hidden;background:#3a4438}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:39% 58%;z-index:-2}.hero-photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(19,25,20,.44) 0%,rgba(19,25,20,.03) 38%,rgba(13,20,15,.82) 100%);z-index:-1}.hero-photo::before{background:#fff;z-index:4}.photo-topline{position:absolute;top:32px;left:32px;right:32px;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.12em;color:#fff}.photo-caption{margin-top:auto;padding:36px;color:white}.photo-caption .eyebrow{font-size:10px;letter-spacing:.18em;margin-bottom:20px}.photo-caption p{font-family:var(--display);font-size:clamp(34px,3.6vw,57px);line-height:1.1;letter-spacing:-.025em;margin-bottom:22px}.photo-story-link{display:inline-block;font-size:13px;border-bottom:1px solid #ffffff80;padding-bottom:7px;letter-spacing:.025em}.photo-story-link:hover{border-color:white}.section{padding-top:110px;padding-bottom:110px}.section-heading{grid-template-columns:1fr 1.7fr;margin-bottom:52px}.section-heading .eyebrow{padding-top:9px}.section-heading h2{font-size:clamp(39px,4.1vw,63px)}.service-grid{gap:30px}.service-card{padding:40px 38px 42px;border-top:1px solid var(--line);background:#f5f5f2;grid-template-columns:35px 1fr;column-gap:25px}.service-number{font-family:var(--display);font-size:18px;color:var(--red)}.service-card h3{font-size:43px;margin-bottom:25px}.service-card p{font-size:16px;line-height:1.8}.service-card .text-link{margin-top:12px;font-weight:400}.service-card.dark{background:#282b28;border-color:#282b28}.service-card.dark .service-number{color:#c6ccbf}.text-link{font-weight:400}.story{background:#eceee8}.story-copy h2{font-size:clamp(36px,4vw,61px)}.colour-study{min-height:330px}.colour-word{font-family:var(--display);font-weight:400;letter-spacing:-.035em}.prototype-note{opacity:.8}.story-stage{padding-top:36px;padding-bottom:36px}.story-split{gap:clamp(36px,5.5vw,80px);grid-template-columns:1.07fr 1fr}.story-editorial .story-lead{font-family:var(--display);font-size:clamp(24px,2.2vw,32px);line-height:1.25;margin-bottom:24px}.story-editorial p:not(.story-lead){font-size:16px;line-height:1.8}.story-photo-column{background:var(--mist);padding:16px 16px 22px}.neighbourhood-photo figcaption{font-size:11px;letter-spacing:.03em;padding:14px 0;border:0}.since-mark{border-top:1px solid var(--line);margin-top:0;padding-top:20px;gap:0 22px}.since-mark strong{font-family:var(--display);font-size:68px}.since-mark span{font-size:9px;letter-spacing:.09em;font-weight:500}.steps{gap:48px}.steps h3{font-size:32px}.steps article>span{font-family:var(--display);font-size:20px}.steps p{line-height:1.8}.region-line p{font-family:var(--display);font-size:26px;line-height:1.35}.region-line strong{font-weight:400;font-style:italic}.quote{background:#252b28;color:#fff;gap:6vw}.quote h2{font-size:clamp(41px,4.2vw,65px)}.quote-intro>.eyebrow{color:#c4cdbf}.quote-intro>p:not(.eyebrow){color:#d2d7cf}.quote-intro .contact-region{font-size:13px;margin-top:20px}.phone-large{font-family:var(--display);font-size:clamp(32px,3.4vw,50px);letter-spacing:-.02em;line-height:1.3;margin-top:30px}.phone-large:hover{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}.email-link{display:inline-block;color:#e5e7e0;border-bottom:1px solid #818a80;font-size:16px;margin-top:10px;padding-bottom:5px;overflow-wrap:anywhere}.email-link:hover{border-color:#fff}.quote-builder{color:var(--ink);background:#f9f9f6;padding:38px}.quote-builder h3{font-size:32px}.quote-builder>p{font-size:14px;line-height:1.7}.quote-builder input,.quote-builder select,.quote-builder textarea{background:transparent;border-color:#c4c6bd}.quote-builder label{font-weight:400;font-size:13px}.quote-builder .button{font-weight:500}.text-button{background:transparent;border:0;border-bottom:1px solid currentColor;padding:8px 0;font-size:14px;color:var(--ink)}.result-status{line-height:1.5}.footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.footer-contact a:first-child{font-family:var(--display);font-size:24px}.footer-contact a:last-child{font-size:13px;border-bottom:1px solid #bbb}.footer-contact a:hover{color:var(--red)}footer{padding-top:48px;padding-bottom:48px}footer p{font-size:13px;line-height:1.8}
@keyframes photo-settle{from{transform:scale(1.055)}to{transform:scale(1)}}
@media(prefers-reduced-motion:no-preference){.hero-image{animation:photo-settle 1.6s cubic-bezier(.2,.7,.3,1) both}.photo-topline{animation:entrance-up .85s ease-out .55s both}.photo-caption{animation:entrance-up .9s ease-out .65s both}.hero-photo::before{animation:paint-uncover 1.2s cubic-bezier(.2,.75,.2,1) .1s both}}
@media(max-width:1150px){.header nav{gap:18px}.hero-copy{padding-top:60px}.hero-copy>.actions{gap:16px}.hero-foot{flex-direction:column;gap:5px}.photo-topline{left:25px;right:25px;font-size:9px}.photo-caption{padding:28px}.service-card{padding:35px 28px;column-gap:15px}.service-card h3{font-size:38px}}
@media(max-width:900px){.story-split{grid-template-columns:1fr}.story-photo-column{max-width:none}.hero{min-height:630px}.hero-photo{min-height:600px;margin-right:18px}.photo-topline{flex-direction:column;gap:4px}.hero-description{font-size:16px}.hero-copy>.actions .button{padding-left:17px;padding-right:17px}.steps{gap:28px}.steps h3{font-size:29px}}
@media(max-width:760px){.header{background:#fff}.brand img{width:154px}.header nav{font-size:14px;gap:10px}.header nav>a:not(.button)::after{display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px var(--gutter) 35px}h1{font-size:clamp(48px,12vw,74px);line-height:1.07}.hero-description{font-size:16px;margin-bottom:26px}.hero-foot{flex-direction:row;justify-content:space-between;padding-top:35px;font-size:9px;gap:14px}.hero-copy>.actions{gap:10px}.hero-copy>.actions .text-link{margin-top:0}.hero-photo{margin:0 var(--gutter) 30px;min-height:440px;aspect-ratio:4/5}.hero-image{object-position:36% 61%}.photo-topline{left:23px;right:23px;top:22px;flex-direction:row;font-size:8px}.photo-caption{padding:26px 23px}.photo-caption p{font-size:40px}.photo-caption .eyebrow{font-size:9px;margin-bottom:17px}.section{padding-top:68px;padding-bottom:68px}.section-heading{display:block;margin-bottom:34px}.section-heading .eyebrow{padding-top:0}.section-heading h2{font-size:39px}.service-card{padding:30px 24px;grid-template-columns:24px 1fr;gap:0 16px}.service-card h3{font-size:34px}.story-copy h2{font-size:34px}.story-stage{padding-top:26px;padding-bottom:26px}.colour-study{min-height:170px}.story-split{gap:32px}.story-photo-column{padding:12px 12px 18px}.story-editorial .story-lead{font-size:27px}.story-editorial p:not(.story-lead){font-size:16px}.since-mark{gap:0 15px}.since-mark strong{font-size:58px}.since-mark span{font-size:8px;letter-spacing:.06em}.steps h3{font-size:29px}.quote{gap:38px}.quote h2{font-size:43px}.quote-builder{padding:28px 22px}.quote-builder h3{font-size:29px}.email-link{font-size:15px}.phone-large{font-size:39px}.footer-contact{align-items:flex-start}.footer-contact a:first-child{font-size:25px}}
@media(prefers-reduced-motion:reduce){.hero-image{animation:none;transform:none}.hero-photo::before{display:none}}
@media(max-width:760px){.hero-photo{width:calc(100% - 2 * var(--gutter));min-width:0;aspect-ratio:auto}.photo-caption{min-width:0}.photo-caption p{font-size:clamp(32px,10vw,40px)}}@media(max-width:370px){.photo-topline{flex-direction:column;gap:5px}}
