/* Client revisions: full-width composition, fade hero, labels and footer. */
:root{--page-gutter:48px}.container{width:calc(100% - var(--page-gutter)*2);max-width:none}.section{padding:80px 0}.header-inner{max-width:none;padding-left:var(--page-gutter);padding-right:var(--page-gutter); padding-top: 5px; padding-bottom: 5px;}.topbar{background:#202020;padding:11px 0;font-size:13px;letter-spacing:0}.topbar .container{display:flex;align-items:center;justify-content:flex-start;gap:34px}.topbar a{display:inline-flex;align-items:center;gap:10px;color:#f0f0f0;line-height:1.5}.topbar a i{color:#fff;font-size:17px;flex-shrink:0}.topbar .topbar-address{margin-left:auto}.topbar a:hover span{color:var(--teal)}
/* Only the entire slide fades. No resizing, zoom, wipe, or content movement. */
.hero-slide{transition:opacity .85s ease,visibility .85s;transform:none!important;clip-path:none!important}.hero-bg,.is-active .hero-bg{transform:none!important;transition:none!important;background-position:center}.hero-copy>*,.hero-copy .eyebrow,.hero-copy .hero-title,.hero-copy .hero-description,.hero-copy .btn,.is-active .hero-copy>*{transform:none!important;opacity:1!important;transition:none!important;animation:none!important}.hero-slide .sample,.hero-slide.is-active .sample{transform:none!important;opacity:1;transition:none!important}.hero-progress{display:none}.hero-inner{width:calc(100% - var(--page-gutter)*2);max-width:none;gap:40px}.hero-copy{width:59%}.hero-samples{margin-left:0;margin-right:65px;width:350px;height:430px;flex-shrink:0}.sample-one{left:0;top:40px}.sample-two{left:70px;top:210px}.hero-dots{left:var(--page-gutter)}.hero-controls .hero-pause{font:500 11px 'DM Sans',sans-serif;width:auto;border:0;border-radius:0;min-width:42px;padding:0 5px;margin-left:2px;color:#eee;text-transform:uppercase;letter-spacing:1px}.tile-callout{position:absolute;display:block;color:#b0101a;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.3px}.callout-label{display:block;white-space:nowrap;border-radius:20px;background:#fff;padding:5px 8px;font-weight:700}.callout-dot{display:block;position:absolute;width:38px;height:38px;border-radius:50%;background:#ffffff60}.callout-dot:after{content:'';position:absolute;inset:15px;border-radius:50%;background:#fff}.callout-line{position:absolute;display:block;border-color:#ffffffb8;border-style:solid;pointer-events:none}.callout-top{top:-26px;right:-15px}.callout-top .callout-dot{top:33px;left:calc(50% - 19px)}.callout-top .callout-line{top:75px;right:50%;width:85px;height:48px;border-width:0 1px 1px 0}.callout-bottom{bottom:-60px;left:-45px}.callout-bottom .callout-label{margin-top:42px}.callout-bottom .callout-dot{bottom:35px;left:calc(50% - 19px);width:30px;height:30px}.callout-bottom .callout-dot:after{inset:11px}.callout-bottom .callout-line{bottom:70px;left:50%;width:120px;height:45px;border-width:1px 0 0 1px}
/* Vertical section subtitles with the two overlapping teal squares. */
.side-heading{padding-left:33px}.section-kicker{font-size:11px;font-weight:500;letter-spacing:0;line-height:1;color:#b0101a;top:2px;display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.section-kicker:before{content:'';display:block;width:12px;height:12px;flex-shrink:0;background:#b0101a;box-shadow:4px 4px 0 #031e4d}.centred-heading{display:inline-block;text-align:left;margin-left:auto;margin-right:auto}.centred-heading h2{margin-bottom:0}.slider-heading{position:relative;text-align:center;padding:0 90px;margin-bottom:44px}.gallery-content .slider-heading h2{font-size:42px}.gallery-content .section-kicker,.cta-band .section-kicker{color:white}.slider-heading .carousel-controls{position:absolute;inset:0;display:flex;justify-content:space-between;align-items:center;margin:0;pointer-events:none}.slider-heading .carousel-controls button{pointer-events:auto}.reference-arrow{position:relative;width:46px!important;height:46px!important;border-radius:50%;background:#f3f0eb!important;color:#b0101a!important;border:none;overflow:visible;flex-shrink:0}.reference-arrow svg{position:absolute;width:62px;height:24px;left:-16px;top:11px;fill:none;stroke:currentColor;stroke-width:1.6;transition:translate .3s}.reference-arrow.arrow-prev svg{transform:rotate(180deg);left:0}.reference-arrow:hover svg{translate:5px 0}.reference-arrow.arrow-prev:hover svg{translate:-5px 0}.reference-arrow:hover{background:var(--teal)!important;color:#fff!important}.gallery-grid{width:calc(100% - var(--page-gutter)*2);max-width:none}.showcase{width:calc(100% - var(--page-gutter)*2);max-width:none;height:430px}.gallery-content{padding-top:180px}.gallery-item img{height:380px}.split{gap:70px}.collage{max-width:680px;width:100%;height:500px;margin:auto}.image-mosaic img{height:225px}.image-mosaic img:last-child{height:245px}.faq-image{max-width:620px;width:100%;margin:auto}.faq-image img{height:420px}.about .split>div:last-child>p,.expertise .split>div:first-child>p{max-width:740px}.testimonials .slider-heading h2{margin-bottom:0;font-size:40px}.testimonials .demo-note{margin:18px 0 0;color:#777;font-size:12px}.review-grid{margin-top:0;align-items:stretch;gap:30px}.review-card{display:flex;flex-direction:column;min-height:260px;background:linear-gradient(#f3f1eef2,#f3f1eef2),var(--review-image) center/cover;padding:32px 32px 0}.review-card blockquote{font-size:17px;line-height:1.8;max-width:760px;margin-bottom:30px;flex:1}.review-card figcaption{margin-left:-32px;width:calc(100% + 64px);padding:18px 32px;background:var(--teal);position:relative}.review-card .quote-mark{margin-left:auto;color:#174344}.cta-band .centred-heading{margin-bottom:28px}.contact-grid{grid-template-columns:1fr 1.1fr;gap:65px}.contact-details dl{font-size:15px}.contact-details dd a:hover{color:#b0101a}.showroom-map{margin-top:28px}.map-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.map-heading h3{font-size:19px;margin:0}.map-heading h3 i{color:#031e4d;margin-right:8px}.map-heading>a{font-size:12px;color:#b0101a;white-space:nowrap}.showroom-map iframe{display:block;width:100%;height:290px;border:0;background:#eee}.contact-grid form{padding:32px;background:#f6f5f2;align-self:start}.contact-grid input,.contact-grid textarea,.contact-grid select{background:white}.compact-footer{padding:16px 0 16px;background:#262626;color:white}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:36px;padding-bottom:16px;border-bottom:1px solid #ffffff14}.footer-brand img{width:180px;height:auto}.compact-footer nav ul{display:flex;gap:26px;list-style:none;padding:0;margin:0;color:#eee;font-size:15px;line-height:1.5}.footer-contact-icons{display:flex;align-items:center;gap:22px}.footer-contact-icons a{color:#fff;font-size:19px}.footer-contact-icons a:hover{color:var(--teal)}.footer-bottom{display:flex;justify-content:space-between;gap:28px;color:#aeb3b1;font-size:11px;line-height:1.6;padding-top:18px}.compact-footer nav a:hover{color:#fff}
@media(min-width:1600px){.hero-inner{width:calc(100% - var(--page-gutter)*2)}.hero-samples{margin-right:140px}.hero-dots{left:var(--page-gutter)}.hero-copy{width:60%}}
@media(max-width:1199px){:root{--page-gutter:32px}.topbar .container{gap:22px;flex-wrap:wrap;justify-content:center}.topbar .topbar-address{margin-left:0;font-size:12px}.hero-copy{width:61%}.hero-samples{margin-left:-40px;margin-right:20px}.split{gap:45px}.collage{height:420px}.footer-main{gap:24px}.compact-footer nav ul{gap:17px}.footer-contact-icons{gap:15px}.footer-brand img{width:155px}.gallery-item img{height:330px}}
@media(max-width:940px){.hero-copy{width:62%}.hero-samples{margin-left:-60px;margin-right:0}.hero-controls{right:65px}.topbar .container{gap:8px 24px}.topbar .topbar-address{flex-basis:100%;justify-content:center}.section{padding:65px 0}.collage{height:390px}.showcase{height:330px}.image-mosaic img{height:175px}.image-mosaic img:last-child{height:205px}.faq-image img{height:340px}.slider-heading{padding:0 70px}.gallery-content .slider-heading h2,.testimonials .slider-heading h2{font-size:34px}.footer-main{flex-wrap:wrap}.compact-footer nav{order:3;flex-basis:100%}.compact-footer nav ul{justify-content:center;flex-wrap:wrap;gap:14px 30px}.footer-contact-icons{margin-left:auto}.footer-bottom{font-size:10px}.contact-grid{gap:30px;grid-template-columns:1fr 1fr}.contact-grid form{padding:24px}.contact-grid .form-row{grid-template-columns:1fr;gap:0}.map-heading{align-items:flex-start;flex-direction:column;gap:8px}.review-card blockquote{font-size:15px}.review-card figcaption{padding:15px 22px;font-size:12px}}
@media(max-width:640px){:root{--page-gutter:20px}.topbar{padding:9px 0}.topbar .container{width:calc(100% - 28px);gap:7px 18px;justify-content:center}.topbar a{display:inline-flex;font-size:11px;gap:6px}.topbar a i{font-size:14px}.topbar .topbar-address{font-size:10px;max-width:100%;text-align:left;align-items:flex-start}.topbar .topbar-address span{max-width:290px}.header-inner,.header.scrolled .header-inner{padding-left:16px;padding-right:16px}.hero{height:690px}.hero-inner{width:100%;text-align: center;display:block;padding-top:42px}.hero-copy{width:100%}.hero-samples{width:350px;height:430px;left:0;right:0px;bottom:105px;scale:.4;transform-origin:bottom center;margin:0;opacity:1}.sample-one{left:0;top:40px}.sample-two{left:70px;top:210px}.tile-callout{font-size:16px}.callout-top{right:-10px}.callout-top .callout-label{padding:7px 10px}.callout-top .callout-dot{top:40px}.callout-top .callout-line{top:82px}.callout-bottom{left:-50px;bottom:-58px}.callout-bottom .callout-label{padding:7px 10px}.hero-controls{right:20px;bottom:22px;gap:10px}.hero-dots{left:20px}.hero-controls .hero-pause{font-size:9px;letter-spacing:.5px;min-width:38px}.hero-count span{width:22px}.hero-count{gap:8px}.section{padding:56px 0}.side-heading{padding-left:29px}.section-kicker{font-size:9px;gap:8px}.section-kicker:before{width:10px;height:10px;box-shadow:3px 3px 0 #031e4d}.split{gap:36px}.collage{height:370px}.showcase{height:240px}.gallery-content{padding-top:140px}.slider-heading{padding:0 42px;margin-bottom:30px}.gallery-content .slider-heading h2,.testimonials .slider-heading h2{font-size:21px;line-height:1.12;letter-spacing:-1px}.slider-heading .centred-heading{padding-left:25px}.slider-heading .carousel-controls{align-items:center}.reference-arrow{width:32px!important;height:32px!important}.reference-arrow svg{width:22px;height:18px;left:2px;top:7px}.reference-arrow.arrow-prev svg{left:9px}.gallery-grid{width:calc(100% - 40px)}.gallery-item img{height:320px}.faq-image img{height:300px}.testimonials .demo-note{font-size:10px;line-height:1.5;margin-top:15px}.review-grid{gap:18px}.review-card{padding:24px 24px 0;min-height:260px}.review-card blockquote{font-size:15px;margin:20px 0 26px}.review-card figcaption{margin-left:-24px;width:calc(100% + 48px);padding:15px 22px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-grid form{padding:24px 18px}.map-heading{flex-direction:row;align-items:center}.map-heading h3{font-size:17px}.showroom-map iframe{height:270px}.cta-band .centred-heading{padding-left:29px;margin:0 0 25px}.cta-band h2{font-size:29px}.compact-footer{padding:25px 0 20px}.footer-main{gap:24px;padding-bottom:22px}.footer-brand img{width:157px}.compact-footer nav ul{font-size:12px;gap:16px 22px}.footer-contact-icons{gap:16px;font-size:18px}.footer-bottom{flex-direction:column;gap:9px;text-align:center;font-size:10px}.gallery-content .slider-heading .section-kicker{font-size:8px}}
@media(max-width:359px){.hero-controls{gap:6px;right:14px}.hero-count{gap:6px}.hero-count span{width:14px}.hero-controls button{min-width:26px}.hero-dots{left:14px}.hero-samples{scale:.34;right:10px}.slider-heading{padding:0 36px}.gallery-content .slider-heading h2,.testimonials .slider-heading h2{font-size:24px}.footer-contact-icons{gap:13px}.footer-brand img{width:145px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none!important}.reference-arrow svg{transition:none}.tile-callout{animation:none}}
