:root{--ink:#17211d;--muted:#68706a;--paper:#f4f3ee;--white:#fffefa;--line:#dcded6;--accent:#bf6544;--deep:#202d27;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.announcement{height:34px;padding:0 6.3%;display:flex;align-items:center;justify-content:space-between;background:#25332d;color:#d3d7d0;font-size:10px;letter-spacing:.09em;text-transform:uppercase}.announcement a{color:#e3b69e}.site-header{height:86px;padding:0 6.3%;display:flex;align-items:center;justify-content:space-between;background:var(--white);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-size:23px;font-weight:800;letter-spacing:-1.3px;line-height:.85}.brand-light{font-weight:500}.brand small{display:block;margin-top:8px;font-family:var(--sans);font-size:8px;letter-spacing:.26em;font-weight:600}.brand-mark{width:29px;height:29px;display:grid;grid-template-columns:1fr 1fr;gap:3px;transform:rotate(-10deg)}.brand-mark i{background:var(--accent);border-radius:2px}.brand-mark i:nth-child(2){opacity:.73}.brand-mark i:nth-child(3){opacity:.46}.brand-mark i:nth-child(4){opacity:.9}.main-nav{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600}.main-nav>a:not(.nav-cta){transition:color .2s}.main-nav>a:not(.nav-cta):hover{color:var(--accent)}.nav-cta{padding:14px 18px;border:1px solid #adb3aa;transition:.2s}.nav-cta:hover{background:var(--ink);border-color:var(--ink);color:white}.nav-cta span{margin-left:13px;color:var(--accent)}.menu-toggle{display:none}.hero{height:min(730px,calc(100vh - 120px));min-height:610px;position:relative;overflow:hidden;background:#242621;color:#fff}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background-image:url('assets/auditorium-hero.png');background-size:cover;background-position:center 54%;transform:scale(1.015);animation:hero-in 1s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(12,18,15,.78) 0%,rgba(12,18,15,.55) 36%,rgba(12,18,15,.08) 75%),linear-gradient(0deg,rgba(10,14,12,.36),transparent 40%)}.hero-content{position:absolute;left:10.2%;top:50%;transform:translateY(-46%);max-width:670px}.eyebrow{display:flex;align-items:center;gap:10px;margin:0;color:#59655d;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.eyebrow>span{width:19px;height:1px;background:var(--accent);display:inline-block}.eyebrow.light{color:#d9ded7}.hero h1{margin:31px 0 20px;font:500 clamp(56px,7vw,100px)/.98 var(--display);letter-spacing:-.075em}.hero h1 em,.intro h2 em,.section-heading h2 em,.approach h2 em,.contact h2 em,blockquote em{font-family:var(--serif);font-weight:400;letter-spacing:-.06em}.hero-copy{max-width:405px;color:#d6dbd5;font-size:14px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:33px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:17px 20px;font-size:11px;font-weight:700;letter-spacing:.01em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:16px}.button-light{background:var(--white);color:var(--ink)}.button-light:hover{background:#e8c2a9}.text-link{display:inline-flex;align-items:center;gap:13px;font-size:11px;font-weight:700}.text-link span{color:var(--accent);font-size:17px;transition:transform .2s}.text-link:hover span{transform:translateX(4px)}.light-link{color:white}.hero-index{position:absolute;right:6.5%;bottom:68px;display:flex;align-items:center;gap:12px;font-size:10px;color:#d2d5d0}.hero-index i{height:1px;width:54px;background:#b9bcb6}.hero-index small{position:absolute;right:0;top:26px;white-space:nowrap;font-size:8px;letter-spacing:.17em}.hero-note{position:absolute;bottom:28px;left:6.3%;display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.06em;color:#d6d8d3}.note-dot{height:6px;width:6px;border-radius:100%;background:#d18b67}.section-pad{padding:112px 10.2%}.intro{background:var(--white)}.intro-kicker{display:flex;justify-content:space-between;align-items:center}.intro-number{font-size:9px;letter-spacing:.1em;color:#8b928a}.intro-grid{display:grid;grid-template-columns:1.13fr .7fr;gap:12%;align-items:end;margin-top:42px}.intro h2,.section-heading h2,.approach h2,.contact h2{margin:0;font:500 clamp(43px,5.2vw,72px)/1.08 var(--display);letter-spacing:-.075em}.intro h2 em,.section-heading h2 em{color:var(--accent)}.intro-body{padding-bottom:8px}.intro-body p{font-size:13px;line-height:1.85;color:#636b64;margin:0 0 16px}.intro-body .text-link{margin-top:12px}.intro-stats{border-top:1px solid var(--line);margin-top:70px;padding-top:24px;display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;gap:24px}.intro-stats div{display:flex;gap:14px;align-items:center}.intro-stats b{font:500 27px var(--display);letter-spacing:-.06em;color:var(--accent)}.intro-stats span{font-size:9px;line-height:1.5;color:#737a73}.intro-stats>p{align-self:center;justify-self:end;max-width:185px;margin:0;color:#737a73;font-size:10px;line-height:1.6}.products{background:var(--paper);padding-top:112px;padding-bottom:125px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.section-heading h2{margin-top:22px}.section-heading h2 em{color:var(--accent)}.section-side-copy{max-width:255px;margin:0 1% 8px 30px;color:#717871;font-size:12px;line-height:1.8}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);column-gap:24px;row-gap:42px}.product-card{display:block;min-width:0}.product-feature{grid-column:span 2}.product-image{height:268px;background-color:#d8dbd2;background-image:linear-gradient(0deg,rgba(19,28,23,.23),transparent 43%),var(--image);background-size:cover;background-position:center;position:relative;overflow:hidden;transition:background-size .4s}.product-feature .product-image{height:370px}.product-card:hover .product-image{filter:saturate(1.06)}.card-arrow{position:absolute;right:16px;top:16px;width:36px;height:36px;display:grid;place-items:center;background:var(--white);border-radius:50%;font-size:16px;transition:.2s}.product-card:hover .card-arrow{background:var(--accent);color:white;transform:rotate(45deg)}.product-count{position:absolute;left:17px;bottom:15px;color:white;font-size:10px;letter-spacing:.1em}.product-meta{padding-top:15px;display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid #cfd2ca;padding-bottom:14px}.product-meta>div>span{display:block;margin-bottom:7px;color:#828981;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.product-meta h3{font:600 17px var(--display);letter-spacing:-.04em;margin:0}.product-link{font-size:9px;color:#737a73;white-space:nowrap}.approach{background:var(--deep);color:white;display:grid;grid-template-columns:1fr 1fr;min-height:650px}.approach-image{position:relative;min-height:650px;overflow:hidden}.approach-image img{width:100%;height:100%;position:absolute;object-fit:cover;inset:0;filter:brightness(.74)}.image-caption{position:absolute;bottom:28px;left:10%;font:italic 14px var(--serif);color:#f0e9e0}.approach-copy{padding:90px 14% 80px 12%;align-self:center}.approach h2{margin:28px 0 18px}.approach h2 em{color:#d88e69}.approach-copy>p:not(.eyebrow){max-width:390px;color:#c7cec8;font-size:12px;line-height:1.85}.approach-steps{margin:30px 0 31px;border-top:1px solid rgba(255,255,255,.2)}.approach-steps>div{display:grid;grid-template-columns:36px 1fr 20px;align-items:center;border-bottom:1px solid rgba(255,255,255,.2);padding:14px 0}.approach-steps>div>span:first-child{font-size:9px;color:#dc936e}.approach-steps p{margin:0}.approach-steps b,.approach-steps small{display:block}.approach-steps b{font-size:11px;font-weight:600}.approach-steps small{font-size:9px;color:#aab4ad;margin-top:5px}.step-plus{color:#d28c68;font-size:16px}.button-outline{border:1px solid #939f96;color:white}.button-outline:hover{background:#fff;color:var(--ink)}.statement{background:#e9e9e1;padding-top:87px;padding-bottom:55px}.statement blockquote{font:500 clamp(34px,4.1vw,57px)/1.24 var(--display);letter-spacing:-.065em;margin:48px 0 56px}.statement blockquote em{color:var(--accent)}.statement-bottom{border-top:1px solid #c9ccc3;padding-top:17px;display:flex;justify-content:space-between;color:#858a83;font-size:8px;letter-spacing:.12em}.contact{background:#18251f;color:white;display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:115px;padding-bottom:112px}.contact h2{margin:29px 0 20px}.contact h2 em{color:#d98f6a}.contact-heading>p:not(.eyebrow){max-width:330px;color:#bdc6bf;font-size:12px;line-height:1.8}.contact-direct{display:grid;gap:12px;margin-top:34px}.contact-direct a{font-size:12px;color:#e8eae6}.contact-direct a span{color:#d98f6a;margin-left:9px}.enquiry-form{background:#27352e;padding:30px 32px 25px;align-self:center}.form-top{display:flex;justify-content:space-between;border-bottom:1px solid #4a564f;padding-bottom:17px;margin-bottom:18px;font-size:8px;letter-spacing:.14em;color:#b7c1ba}.enquiry-form label{display:block;margin:14px 0 0;color:#bfc8c1;font-size:9px;letter-spacing:.04em}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;display:block;border:0;border-bottom:1px solid #526057;background:transparent;border-radius:0;color:#fff;padding:10px 0 11px;font-family:var(--sans);font-size:12px;outline:none}.enquiry-form input::placeholder,.enquiry-form textarea::placeholder{color:#818d84}.enquiry-form select{color:#bfc8c1}.enquiry-form select option{color:var(--ink)}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:#df9a76}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-submit{width:100%;margin-top:23px;border:0;cursor:pointer;font-family:var(--sans)}.form-note{color:#8f9d93;font-size:9px;line-height:1.5;margin:12px 0 0}.site-footer{padding:38px 6.3% 19px;background:#f4f3ee}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding-bottom:35px}.brand-footer{justify-self:start}.footer-main>p{font:italic 15px/1.5 var(--serif);color:#68716a;justify-self:center}.footer-top{justify-self:end;font-size:10px;color:#6a746c}.footer-bottom{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;font-size:9px;color:#828981}.menu-toggle{border:0;background:transparent}.form-error{color:#f0b39a}@keyframes hero-in{from{opacity:.5;transform:scale(1.055)}to{opacity:1;transform:scale(1.015)}}
@media(max-width:900px){.main-nav{gap:20px}.section-pad{padding-left:7%;padding-right:7%}.hero-content{left:7%}.product-grid{column-gap:17px}.product-image{height:230px}.product-feature .product-image{height:320px}.approach-copy{padding-left:10%;padding-right:10%}.contact{gap:7%}}
@media(max-width:700px){.announcement{padding:0 5%;font-size:8px}.announcement a{font-size:8px}.site-header{height:72px;padding:0 5%}.brand{font-size:21px}.menu-toggle{display:flex;width:38px;height:38px;flex-direction:column;justify-content:center;gap:6px;align-items:center}.menu-toggle span{height:1px;width:22px;background:var(--ink);transition:.2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.main-nav{display:none;position:absolute;left:0;right:0;top:72px;padding:24px 5% 28px;background:var(--white);box-shadow:0 15px 20px #17211d12;align-items:stretch;gap:0;flex-direction:column}.main-nav.open{display:flex}.main-nav>a:not(.nav-cta){padding:14px 0;border-bottom:1px solid var(--line)}.nav-cta{margin-top:17px;text-align:center}.hero{min-height:650px;height:calc(100svh - 106px);max-height:820px}.hero-image{background-position:57% center}.hero-shade{background:linear-gradient(90deg,rgba(12,18,15,.78),rgba(12,18,15,.38)),linear-gradient(0deg,rgba(10,14,12,.35),transparent 45%)}.hero-content{left:7%;right:7%;top:48%;transform:translateY(-45%)}.hero h1{font-size:clamp(57px,13vw,82px);margin-top:27px}.hero-copy{font-size:13px;max-width:330px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-index{right:7%;bottom:58px}.hero-note{left:7%;font-size:8px}.section-pad{padding:76px 7%}.intro-grid{grid-template-columns:1fr;gap:24px;margin-top:31px}.intro h2,.section-heading h2,.approach h2,.contact h2{font-size:clamp(44px,11vw,65px)}.intro-body{max-width:500px}.intro-stats{grid-template-columns:1fr 1fr;row-gap:20px;margin-top:43px}.intro-stats>p{justify-self:start}.section-heading{display:block;margin-bottom:31px}.section-side-copy{margin:20px 0 0;max-width:350px}.product-grid{grid-template-columns:1fr 1fr;column-gap:14px;row-gap:30px}.product-feature{grid-column:span 2}.product-feature .product-image{height:260px}.product-image{height:175px}.product-meta{align-items:start;gap:10px}.product-meta h3{font-size:14px}.product-link{font-size:8px;margin-top:18px}.product-meta>div>span{font-size:8px}.approach{grid-template-columns:1fr}.approach-image{min-height:360px}.approach-copy{padding:68px 7% 74px}.approach h2{margin-top:23px}.statement{padding-top:70px;padding-bottom:35px}.statement blockquote{font-size:clamp(32px,8vw,47px);margin:34px 0 44px}.statement blockquote br{display:none}.statement-bottom{gap:20px;font-size:7px;line-height:1.5}.statement-bottom span:last-child{text-align:right}.contact{grid-template-columns:1fr;gap:36px;padding-top:76px;padding-bottom:75px}.contact h2{margin-top:23px}.enquiry-form{padding:25px 22px 22px}.site-footer{padding:32px 7% 16px}.footer-main{grid-template-columns:1fr auto;row-gap:14px}.footer-main>p{grid-row:2;grid-column:1;justify-self:start;margin:0}.footer-top{grid-column:2;grid-row:1/3}.footer-bottom{flex-wrap:wrap;gap:10px}.footer-bottom span:last-child{display:none}}
@media(max-width:390px){.announcement{letter-spacing:.04em}.product-grid{column-gap:10px}.product-image{height:150px}.product-feature .product-image{height:215px}.product-meta h3{font-size:12px}.product-link{font-size:7px}.form-row{grid-template-columns:1fr;gap:0}.hero-actions .text-link{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Larger type and source-site product catalogue */
body{font-size:16px;line-height:1.65}
.announcement{font-size:11px}.announcement-links{display:flex;gap:26px;align-items:center}.announcement-links a{font-size:11px}
.main-nav{font-size:14px}.nav-cta{font-size:13px}
.hero-copy{font-size:17px;line-height:1.75;max-width:480px}.eyebrow{font-size:12px}.hero-note{font-size:11px}.hero-index{font-size:12px}
.intro-body p{font-size:16px;line-height:1.8}.intro-stats span{font-size:12px}.intro-stats>p{font-size:12px}.intro-number{font-size:11px}
.section-side-copy{font-size:15px;line-height:1.8}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.product-card{padding:16px 16px 15px;background:var(--white);border:1px solid #e4e5de;display:flex;flex-direction:column}.category-gallery{height:260px;position:relative;display:grid;grid-template-columns:1fr 92px;gap:7px;background:#f1f1ed;overflow:hidden}.gallery-main{width:100%;height:100%;min-height:0;object-fit:contain;background:#f6f6f3}.gallery-thumbs{display:grid;grid-template-rows:repeat(3,1fr);gap:7px;min-height:0}.gallery-thumbs img{width:100%;height:100%;min-height:0;object-fit:contain;background:#fff}.product-count{left:11px;bottom:10px;color:#354038;background:#ffffffd9;padding:5px 8px;font-size:10px}.product-meta{padding-top:18px;padding-bottom:11px}.product-meta h3{font-size:23px;letter-spacing:-.045em}.product-meta>div>span{font-size:10px}.product-description{font-size:15px;color:#626b64;line-height:1.75;margin:13px 0 9px}.product-list{font-size:13px;color:#4f5c53;line-height:1.8;margin:0;padding:0 0 12px;border-bottom:1px solid var(--line)}.product-more{font-size:13px;line-height:1.75;color:#626b64}.product-more summary{padding:12px 0;cursor:pointer;font-weight:700;color:var(--ink);font-size:13px}.product-more p{margin:0 0 12px}.card-enquire{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);font-size:13px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.card-enquire span{color:var(--accent);font-size:18px}.product-card:hover{border-color:#c5cabe}
.approach-copy>p:not(.eyebrow){font-size:15px}.approach-steps b{font-size:14px}.approach-steps small{font-size:12px}.step-plus{font-size:20px}.image-caption{font-size:16px}
.statement blockquote{line-height:1.3}.statement-bottom{font-size:10px}
.contact-heading>p:not(.eyebrow){font-size:15px}.contact-direct a{font-size:16px}.contact-location{display:grid;gap:7px;border-top:1px solid #4c5a51;padding-top:19px;margin-top:7px;color:#d9ded9}.contact-location b{font-size:10px;letter-spacing:.13em;color:#d98f6a}.contact-location>span{font-size:13px;line-height:1.7;color:#bdc6bf}.contact-location>a{font-size:12px}
.enquiry-form label{font-size:12px}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{font-size:15px;padding:12px 0 13px}.form-note{font-size:11px}.form-top{font-size:10px}
.client-trust{background:#fffefa}.client-logo-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.client-logo-grid img{width:100%;height:94px;object-fit:contain;background:#fff;border:1px solid #ecece6;padding:7px}.client-trust .section-heading{margin-bottom:38px}
.footer-main{grid-template-columns:1fr auto auto auto;gap:36px}.footer-main>p{font-size:17px}.footer-social{display:grid;gap:8px;font-size:12px;color:#647067}.footer-top,.footer-bottom{font-size:11px}
@media(max-width:900px){.client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.footer-main{grid-template-columns:1fr 1fr;row-gap:22px}.footer-main>p{justify-self:end}.footer-social{grid-column:1}.footer-top{grid-column:2;grid-row:2}}
@media(max-width:700px){body{font-size:15px}.announcement{height:auto;min-height:36px;padding:7px 5%;gap:12px}.announcement>span:first-child{max-width:42%;line-height:1.4}.announcement-links{gap:10px;flex-direction:column;align-items:flex-end}.announcement-links a{font-size:9px}.main-nav{font-size:15px}.hero-copy{font-size:16px}.eyebrow{font-size:10px}.hero-note{font-size:10px}.intro-body p{font-size:15px}.intro-stats span,.intro-stats>p{font-size:11px}.product-grid{grid-template-columns:1fr;gap:17px}.product-card{padding:12px}.category-gallery{height:245px;grid-template-columns:1fr 78px}.product-meta h3{font-size:21px}.product-description{font-size:15px}.product-list{font-size:13px}.product-more,.product-more summary{font-size:13px}.card-enquire{font-size:13px}.approach-copy>p:not(.eyebrow){font-size:14px}.approach-steps b{font-size:14px}.approach-steps small{font-size:12px}.contact-heading>p:not(.eyebrow){font-size:14px}.contact-direct a{font-size:15px}.contact-location>span{font-size:12px}.enquiry-form label{font-size:11px}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{font-size:14px}.client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.client-logo-grid img{height:78px;padding:5px}.footer-main{grid-template-columns:1fr auto;gap:14px}.footer-main>p{grid-column:1;grid-row:2;justify-self:start;font-size:15px}.footer-social{grid-row:3;grid-column:1/3;display:flex;flex-wrap:wrap;gap:12px;font-size:11px}.footer-top{grid-column:2;grid-row:1/3}.footer-bottom{font-size:10px}}
.text-link{font-size:14px}.button{font-size:14px}.section-side-copy p{margin:0 0 13px}.section-side-copy .text-link{font-size:13px}.product-list,.product-more,.product-more summary{font-size:14px}.form-row label{min-width:0}

/* Scroll-scrubbed auditorium film */
.cinematic-experience{position:relative;height:220vh;height:220svh;min-height:1700px;background:#111713;color:#fff}
.cinematic-stage{position:sticky;top:0;height:100vh;height:100svh;min-height:560px;overflow:hidden;isolation:isolate;background:#111713}
.cinematic-video,.cinematic-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.cinematic-video{display:block;background:#111713}
.cinematic-poster{display:none}
.cinematic-poster[hidden],.cinematic-fallback-note[hidden]{display:none!important}
.cinematic-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,15,12,.82) 0%,rgba(10,15,12,.58) 34%,rgba(10,15,12,.12) 72%,rgba(10,15,12,.08) 100%),linear-gradient(0deg,rgba(8,12,10,.52),transparent 42%);pointer-events:none}
.cinematic-copy{position:absolute;z-index:2;left:6.3%;bottom:15%;width:min(620px,58vw)}
.cinematic-kicker{display:flex;align-items:center;gap:11px;margin:0 0 27px;font-size:10px;letter-spacing:.18em;font-weight:600;color:#f1e9dd}
.cinematic-kicker>span:first-child{width:25px;height:1px;background:#d78b68}
.cinematic-step{margin-left:auto;color:#d2d6ce;font-variant-numeric:tabular-nums}
.cinematic-scenes{position:relative;min-height:225px}
.cinematic-scene{position:absolute;inset:0 auto auto 0;max-width:610px;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .35s ease,transform .35s ease,visibility .35s}
.cinematic-scene.is-active{opacity:1;visibility:visible;transform:translateY(0)}
.cinematic-scene h2{font:600 clamp(48px,6.7vw,96px)/.98 var(--display);letter-spacing:-.075em;margin:0 0 18px;text-wrap:balance}
.cinematic-scene h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.07em;color:#e2a17c}
.cinematic-scene p{max-width:430px;margin:0;color:#e0e2dc;font-size:15px;line-height:1.7}
.cinematic-link{display:inline-flex;align-items:center;gap:30px;margin-top:12px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.65);font-size:13px;font-weight:600;color:#fff;transition:color .2s,border-color .2s}
.cinematic-link span{color:#e2a17c;font-size:17px}
.cinematic-link:hover,.cinematic-link:focus-visible{color:#efb592;border-color:#efb592}
.cinematic-progress{position:absolute;z-index:3;left:6.3%;bottom:35px;width:min(430px,42vw);height:2px;background:rgba(255,255,255,.4);overflow:hidden}
.cinematic-progress-fill{display:block;width:100%;height:100%;background:#e1a17c;transform:scaleX(0);transform-origin:left center}
.cinematic-scroll-hint{position:absolute;z-index:3;right:6.3%;bottom:22px;margin:0;color:#f3f0e9;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.cinematic-scroll-hint span{display:inline-block;margin-left:13px;color:#e1a17c;font-size:17px;vertical-align:-1px}
.cinematic-fallback-note{position:absolute;z-index:4;right:6%;bottom:62px;max-width:290px;color:#fff;background:rgba(15,22,18,.83);padding:12px 15px;font-size:12px;line-height:1.5}
.cinematic-experience.is-fallback{height:auto;min-height:0}
.cinematic-experience.is-fallback .cinematic-stage{position:relative;height:min(80svh,900px);min-height:540px}
.cinematic-experience.is-fallback .cinematic-video{display:none}
.cinematic-experience.is-fallback .cinematic-poster{display:block}
.cinematic-experience.is-fallback .cinematic-progress,.cinematic-experience.is-fallback .cinematic-scroll-hint{display:none}
.cinematic-experience.is-fallback .cinematic-scene:not([data-scene="3"]){display:none}

/* The scroll-controlled film is the homepage hero. */
.cinematic-hero .cinematic-copy{left:8.2%;bottom:14%;width:min(760px,78vw)}
.cinematic-hero .cinematic-kicker{font-size:11px;letter-spacing:.16em;margin-bottom:24px}
.cinematic-hero .cinematic-scenes{min-height:264px}
.cinematic-hero .cinematic-scene{max-width:740px}
.cinematic-hero .cinematic-scene h1,.cinematic-hero .cinematic-scene h2{font:600 clamp(54px,7vw,102px)/.96 var(--display);letter-spacing:-.075em;margin:0 0 18px;text-wrap:balance}
.cinematic-hero .cinematic-scene h1 em,.cinematic-hero .cinematic-scene h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.07em;color:#e6a982}
.cinematic-hero .cinematic-scene p{max-width:490px;font-size:16px;line-height:1.7;color:#f0ede6}
.cinematic-actions{display:flex;align-items:center;gap:28px;margin-top:8px}
.cinematic-primary{display:inline-flex;align-items:center;gap:28px;background:#fffefa;color:#17211d;padding:16px 19px;font-size:13px;font-weight:700;transition:background .2s,transform .2s}
.cinematic-primary:hover,.cinematic-primary:focus-visible{background:#e7c2aa;transform:translateY(-2px)}
.cinematic-primary span{font-size:17px;color:#a75b3d}
.cinematic-hero .cinematic-link{margin:0;padding:10px 0;font-size:13px}
.cinematic-hero .cinematic-progress{left:8.2%;bottom:34px;width:min(440px,42vw)}
.cinematic-hero .cinematic-scroll-hint{right:8.2%;bottom:22px;font-size:10px}
.cinematic-hero .cinematic-poster:not([hidden]){display:block}
.cinematic-hero .cinematic-video[hidden]{display:none}

@media(max-width:700px){
  .cinematic-hero .cinematic-copy{left:6%;bottom:14%;width:88vw}
  .cinematic-hero .cinematic-kicker{gap:7px;margin-bottom:18px;font-size:8px;letter-spacing:.12em}
  .cinematic-hero .cinematic-scenes{min-height:250px}
  .cinematic-hero .cinematic-scene h1,.cinematic-hero .cinematic-scene h2{font-size:clamp(42px,10.6vw,68px);line-height:.98;margin-bottom:14px}
  .cinematic-hero .cinematic-scene p{max-width:380px;font-size:14px;line-height:1.55}
  .cinematic-actions{gap:16px;flex-wrap:wrap;margin-top:4px}
  .cinematic-primary{padding:14px 16px;font-size:12px}
  .cinematic-hero .cinematic-link{font-size:12px}
  .cinematic-hero .cinematic-progress{left:6%;bottom:28px;width:46vw}
  .cinematic-hero .cinematic-scroll-hint{right:6%;bottom:16px;font-size:8px;letter-spacing:.06em}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .cinematic-hero{height:auto;min-height:0}
  .cinematic-hero .cinematic-stage{position:relative;height:min(88svh,900px);min-height:560px}
  .cinematic-hero .cinematic-scene{transition:none}
  .cinematic-primary{transition:none}
}
@media(max-width:900px){.cinematic-copy{left:7%;width:min(600px,70vw)}.cinematic-scene h2{font-size:clamp(48px,8vw,82px)}.cinematic-progress{left:7%;width:38vw}.cinematic-scroll-hint{right:7%}}
@media(max-width:700px){.cinematic-experience{height:180vh;height:180svh;min-height:1250px}.cinematic-stage{min-height:520px}.cinematic-video,.cinematic-poster{inset:19% 0 auto;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;transform:translateY(-50%)}.cinematic-shade{background:linear-gradient(180deg,rgba(10,15,12,.3) 0%,transparent 20%,rgba(10,15,12,.1) 35%,#111713 58%,#111713 100%)}.cinematic-copy{left:6%;right:6%;bottom:15%;width:auto}.cinematic-kicker{gap:8px;margin-bottom:17px;font-size:8px;letter-spacing:.13em}.cinematic-kicker>span:first-child{width:18px}.cinematic-scenes{min-height:190px}.cinematic-scene h2{font-size:clamp(42px,11.2vw,64px);margin-bottom:12px}.cinematic-scene p{max-width:350px;font-size:13px;line-height:1.55}.cinematic-link{margin-top:4px;font-size:12px}.cinematic-progress{left:6%;right:6%;bottom:31px;width:auto}.cinematic-scroll-hint{right:6%;bottom:46px;font-size:8px}.cinematic-fallback-note{left:6%;right:6%;bottom:60px;max-width:none}}
@media(prefers-reduced-motion:reduce){.cinematic-experience{height:auto;min-height:0}.cinematic-stage{position:relative;top:auto;height:min(80svh,900px);min-height:540px}.cinematic-video{display:none}.cinematic-poster{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none}.cinematic-progress,.cinematic-scroll-hint{display:none}.cinematic-copy{bottom:10%}.cinematic-scene:not([data-scene="3"]){display:none}.cinematic-scene[data-scene="3"]{position:relative;opacity:1;visibility:visible;transform:none}.cinematic-scenes{min-height:0}}
.no-js .cinematic-experience{height:auto;min-height:0}
.no-js .cinematic-stage{position:relative;top:auto;height:min(80svh,900px);min-height:540px}
.no-js .cinematic-video{display:none}
.no-js .cinematic-poster{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.no-js .cinematic-progress,.no-js .cinematic-scroll-hint{display:none}
.no-js .cinematic-scene:not([data-scene="3"]){display:none}
.no-js .cinematic-scene[data-scene="3"]{position:relative;opacity:1;visibility:visible;transform:none}
.no-js .cinematic-scenes{min-height:0}
.no-js .cinematic-hero .cinematic-poster{display:block!important}

/* Keep the hero full-bleed on small screens too. */
@media(max-width:700px){
  .cinematic-hero .cinematic-video,.cinematic-hero .cinematic-poster{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 54%;transform:none}
  .cinematic-hero .cinematic-copy{left:6%;right:auto;bottom:14%;width:88vw}
  .cinematic-hero .cinematic-scenes{min-height:250px}
  .cinematic-hero .cinematic-scene h1,.cinematic-hero .cinematic-scene h2{font-size:clamp(42px,10.6vw,68px);line-height:.98}
  .cinematic-hero .cinematic-scene p{font-size:14px;line-height:1.55}
}
@media(prefers-reduced-motion:reduce){
  .cinematic-hero{height:auto;min-height:0}
  .cinematic-hero .cinematic-stage{position:relative;top:auto;height:min(88svh,900px);min-height:560px}
  .cinematic-hero .cinematic-video{display:none}
  .cinematic-hero .cinematic-poster{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none}
  .cinematic-hero .cinematic-progress,.cinematic-hero .cinematic-scroll-hint{display:none}
  .cinematic-hero .cinematic-scenes{min-height:220px}
  .cinematic-hero .cinematic-scene:not([data-scene="3"]){display:none}
  .cinematic-hero .cinematic-scene[data-scene="3"]{position:relative;opacity:1;visibility:visible;transform:none}
}
/* Clearer product, trust, approach and enquiry sections */
.products .section-heading{gap:8%;margin-bottom:54px}
.products .section-heading>div:first-child{flex:1}
.products .section-heading h2{max-width:760px}
.products .section-side-copy{max-width:390px;margin-right:0;color:#566159}
.products .section-side-copy p{margin:0 0 18px}
.products .section-side-copy .text-link{border-bottom:1px solid #c8cdc5;padding-bottom:8px}
.client-trust{padding-top:105px;padding-bottom:108px;background:#eeeee8}
.client-trust .section-heading{align-items:end;gap:8%;margin-bottom:42px}
.client-trust .section-heading>div:first-child{flex:1}
.client-trust .section-heading h2{max-width:760px}
.trust-intro{max-width:390px;margin-bottom:3px}
.trust-intro .section-side-copy{max-width:none;margin:0;color:#566159}
.trust-caption{display:block;margin:17px 0 0 30px;padding-left:14px;border-left:1px solid var(--accent);color:#777f77;font-size:11px;letter-spacing:.035em}
.client-logo-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.client-logo-grid img{height:118px;padding:16px;background:#fffefa;border:1px solid #e1e2dc;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.client-logo-grid img:hover{transform:translateY(-3px);border-color:#c8c9c0;box-shadow:0 12px 24px #17211d0b}
.approach-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,21,17,.44),transparent 42%);pointer-events:none}
.image-caption{z-index:1;max-width:80%;line-height:1.5}
.approach-copy{padding-top:104px;padding-bottom:96px}
.approach h2{font-size:clamp(48px,5vw,70px);line-height:1.04}
.approach-copy>p:not(.eyebrow){max-width:435px;color:#d0d7d1;font-size:16px;line-height:1.8}
.approach-steps{margin-top:34px;margin-bottom:34px}
.approach-steps>div{grid-template-columns:42px 1fr 24px;padding:17px 0;transition:padding .2s ease}
.approach-steps>div:hover{padding-left:5px}
.approach-steps>div>span:first-child{font-size:11px;letter-spacing:.06em}
.approach-steps b{font-size:15px;letter-spacing:-.01em}
.approach-steps small{max-width:340px;font-size:13px;line-height:1.55}
.step-plus{font-size:15px}
.approach .button-outline{min-width:220px}
.contact{gap:10%;padding-top:122px;padding-bottom:120px;background:radial-gradient(ellipse at 85% 8%,#26372f 0,transparent 42%),#18251f}
.contact h2{font-size:clamp(50px,5.3vw,75px);line-height:1.04}
.contact-heading>p:not(.eyebrow){max-width:390px;font-size:16px;line-height:1.8}
.contact-direct{gap:0;margin-top:36px;max-width:420px}
.contact-direct>a{display:flex;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid #4c5a51;font-size:16px;line-height:1.4;transition:color .2s ease}
.contact-direct>a:hover{color:#f1bb9b}
.contact-direct>a>span:last-child{margin-left:auto}
.contact-label{min-width:76px;color:#98a59c;font-size:9px;font-weight:700;letter-spacing:.12em}
.contact-location{margin-top:16px;padding-top:22px}
.enquiry-form{padding:34px 36px 29px;border:1px solid #435148;box-shadow:0 24px 70px #08110d35}
.form-top{letter-spacing:.12em}
.form-top span:last-child{color:#e1a17f}
.enquiry-form label{font-size:11px;font-weight:600;letter-spacing:.025em}
.enquiry-form input,.enquiry-form select,.enquiry-form textarea{font-size:14px;line-height:1.5}
.enquiry-form textarea{resize:vertical;min-height:84px}
.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:#e6a481}
.form-submit{min-height:54px;margin-top:26px;background:#f4f1e9}
.form-submit:hover{background:#e5b392}
.form-note{font-size:11px}
@media(max-width:900px){.client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.contact{gap:7%}.enquiry-form{padding:28px 26px 24px}}
@media(max-width:700px){
  .products .section-heading{margin-bottom:32px}
  .products .section-side-copy{max-width:440px}
  .client-trust{padding-top:78px;padding-bottom:78px}
  .client-trust .section-heading{margin-bottom:30px}
  .trust-caption{margin-top:12px}
  .client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
  .client-logo-grid img{height:88px;padding:10px}
  .approach-copy{padding-top:68px;padding-bottom:74px}
  .approach h2{font-size:clamp(45px,11vw,64px)}
  .approach-copy>p:not(.eyebrow){font-size:15px}
  .approach-steps>div{padding:15px 0}
  .contact{padding-top:78px;padding-bottom:76px}
  .contact h2{font-size:clamp(48px,12vw,68px)}
  .contact-direct>a{font-size:15px}
  .contact-label{min-width:68px;font-size:8px}
  .enquiry-form{padding:24px 20px 21px}
  .form-top{font-size:9px;gap:10px}
  .form-row{gap:14px}
}
@media(max-width:390px){.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-row{grid-template-columns:1fr;gap:0}.contact-direct>a{font-size:14px}}
.product-card{border-radius:3px;overflow:hidden;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.product-card:hover{transform:translateY(-3px);box-shadow:0 18px 34px #17211d10}
.category-gallery{border-radius:2px}
.contact-direct .contact-label{margin-left:0;color:#98a59c}
@media(prefers-reduced-motion:reduce){.product-card,.client-logo-grid img,.approach-steps>div{transition:none}}
.site-footer{padding:0 10.2% 24px;background:#17231e;color:#f3f2ec}
.footer-invite{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:72px 0 58px;border-bottom:1px solid #46534b}
.footer-invite h2{margin:22px 0 0;font:500 clamp(42px,5vw,66px)/1.03 var(--display);letter-spacing:-.075em}
.footer-invite h2 em{color:#dfa181;font-family:var(--serif);font-weight:400;letter-spacing:-.06em}
.footer-invite-button{display:inline-flex;align-items:center;gap:28px;justify-content:space-between;min-width:238px;padding:17px 19px;border:1px solid #728078;color:#fffefa;font-size:13px;font-weight:700;transition:background .2s,border-color .2s,color .2s}
.footer-invite-button span{color:#e2a17f;font-size:17px}
.footer-invite-button:hover{background:#f1e7db;border-color:#f1e7db;color:#17231e}
.footer-main{display:grid;grid-template-columns:1.45fr .8fr 1.35fr .62fr;align-items:start;gap:44px;padding:44px 0 48px}
.footer-brand-block .brand-footer{color:#f7f5ee}
.footer-brand-block>p{max-width:300px;margin:22px 0 0;color:#aeb8b0;font-size:12px;line-height:1.75}
.footer-column{display:grid;align-content:start;gap:12px}
.footer-column h3{margin:2px 0 7px;color:#df9b78;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.footer-column>a{width:fit-content;color:#d4dbd5;font-size:12px;line-height:1.55;transition:color .2s}
.footer-column>a:hover{color:#f0b48f}
.footer-social{display:grid;gap:12px;font-size:inherit;color:inherit}
.footer-social a{display:flex;align-items:center;justify-content:space-between;gap:12px}
.footer-social a span,.footer-contact .footer-map span{color:#df9b78}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:17px;border-top:1px solid #46534b;color:#9da9a0;font-size:10px;letter-spacing:.025em}
.footer-bottom .footer-top{color:#e8e8e1;font-size:10px;transition:color .2s}
.footer-bottom .footer-top:hover{color:#f0b48f}
@media(max-width:1000px){.site-footer{padding-left:7%;padding-right:7%}.footer-main{grid-template-columns:1.4fr 1fr 1.3fr;gap:34px}.footer-social{grid-column:2}}
@media(max-width:700px){
  .site-footer{padding:0 7% 20px}
  .footer-invite{align-items:flex-start;flex-direction:column;gap:25px;padding:55px 0 42px}
  .footer-invite h2{font-size:clamp(42px,10vw,58px)}
  .footer-invite-button{width:100%;max-width:360px}
  .footer-main{grid-template-columns:1fr 1fr;gap:32px 20px;padding:34px 0 35px}
  .footer-brand-block{grid-column:1/-1}
  .footer-brand-block>p{margin-top:17px;font-size:13px}
  .footer-column h3{font-size:9px}
  .footer-column>a{font-size:12px;overflow-wrap:anywhere}
  .footer-social{grid-column:auto;display:grid;gap:12px}
  .footer-bottom{justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:9px}
  .footer-bottom>span:nth-child(2){display:none}
}
/* Burgundy footer creates a distinct close against the green enquiry section */
.site-footer{background:linear-gradient(135deg,#351a20 0%,#421f26 100%)}
.footer-invite{border-bottom-color:#67414a}
.footer-invite h2 em{color:#e5aa8b}
.footer-invite-button{border-color:#8b686b}
.footer-invite-button span,.footer-column h3,.footer-social a span,.footer-contact .footer-map span{color:#e5aa8b}
.footer-invite-button:hover{background:#f1e7db;border-color:#f1e7db;color:#351a20}
.footer-brand-block>p{color:#d0bfc0}
.footer-column>a{color:#eadfe0}
.footer-column>a:hover{color:#f1b897}
.footer-bottom{border-top-color:#67414a;color:#c9b7b9}
.footer-bottom .footer-top{color:#f2e6e5}
.footer-bottom .footer-top:hover{color:#f1b897}

/* Client logos: keep the published marks intact, with clear names and hierarchy */
.client-logo-grid{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch}
.client-logo-grid figure{min-width:0;min-height:154px;margin:0;padding:12px 13px 11px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:7px;border:1px solid #e1e2dc;border-radius:16px;background:#fffefa;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.client-logo-grid figure:hover{transform:translateY(-3px);border-color:#c8c9c0;box-shadow:0 12px 24px #17211d0b}
.client-logo-grid figure img{width:100%;height:92px;padding:2px;object-fit:contain;border:0;border-radius:8px;background:transparent;transition:none}
.client-logo-grid figure figcaption{min-height:28px;display:grid;place-items:center;text-align:center;color:#505c53;font-size:12px;font-weight:600;line-height:1.25;overflow-wrap:anywhere}
@media(max-width:900px){.client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.client-logo-grid figure{min-height:140px;padding:9px 9px 10px;border-radius:14px}.client-logo-grid figure img{height:82px}.client-logo-grid figure figcaption{font-size:12px}}
@media(max-width:460px){.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-logo-grid figure{min-height:138px}.client-logo-grid figure img{height:80px}}
@media(prefers-reduced-motion:reduce){.client-logo-grid figure{transition:none}.client-logo-grid figure:hover{transform:none}}

/* Softer surfaces and a warmer product discovery palette */
html{overflow-x:clip}
.button,.nav-cta,.cinematic-primary,.footer-invite-button,.form-submit{border-radius:999px}
.nav-cta{padding:12px 17px}
.products{background:#e9e0d4}
.products .eyebrow>span{background:#a95339}
.products .section-heading h2 em{color:#9d5038}
.products .section-side-copy{color:#4f5a52}
.products .section-side-copy .text-link{border-color:#c7b9a8}
.product-card{padding:18px;background:#fffdf9;border:1px solid #ded4c8;border-radius:24px;box-shadow:0 8px 24px rgba(56,43,29,.045)}
.product-card:hover{border-color:#c9ac98;box-shadow:0 16px 32px rgba(56,43,29,.1)}
.category-gallery{height:clamp(235px,25vw,320px);grid-template-columns:minmax(0,1fr) 84px;gap:8px;border-radius:17px;background:#eee7dc}
.gallery-main{border-radius:14px;background:#f4eee5}
.gallery-thumbs img{border-radius:11px;background:#fffdfa}
.product-count{left:12px;bottom:12px;padding:7px 11px;border-radius:999px;background:#26362e;color:#fffefa}
.product-meta{border-color:#e2d9ce}
.product-meta>div>span{color:#9b5c43}
.product-description{color:#59635c}
.product-list{border-color:#e4dbd0;color:#566159}
.product-more summary{border-radius:8px;color:#73412f}
.card-enquire{padding:12px 15px;margin-top:15px;border:0;border-radius:999px;background:#f1ebe3;transition:background .2s,color .2s}
.card-enquire:hover{background:#e6d7c7;color:#302c25}
.client-logo-grid img{border-radius:15px}
.approach-image{margin:20px;border-radius:26px}
.image-caption{padding:10px 15px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(22,31,26,.55);backdrop-filter:blur(8px)}
.statement blockquote{padding:clamp(22px,4vw,42px);border-radius:26px;background:#f4f2eb}
.enquiry-form{border-radius:24px}
.enquiry-form input,.enquiry-form select,.enquiry-form textarea{padding:12px 14px;border:1px solid #526057;border-radius:12px;background:rgba(255,255,255,.035)}
.enquiry-form input::placeholder,.enquiry-form textarea::placeholder{color:#a3ada5}
.enquiry-form label{margin-top:17px}
.contact-location{border-color:#4c5a51;border-radius:16px}
.cinematic-stage{border-radius:0 0 26px 26px}
.cinematic-progress,.cinematic-progress-fill{border-radius:999px}
.cinematic-primary{padding:15px 20px}

/* Keep navigation and split sections comfortable at tablet widths */
@media(max-width:960px){
  .site-header{height:78px;padding-left:6%;padding-right:6%}
  .menu-toggle{display:flex;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid #d9ddd6;border-radius:50%;background:#fffefa}
  .menu-toggle span{width:18px;height:1.5px;background:var(--ink);transition:transform .2s}
  .main-nav{display:none;position:absolute;top:calc(100% + 8px);left:4%;right:4%;padding:14px 20px 20px;border:1px solid #e5e6df;border-radius:22px;background:#fffefa;box-shadow:0 18px 46px rgba(23,33,29,.16);align-items:stretch;gap:0;flex-direction:column}
  .main-nav.open{display:flex}
  .main-nav>a:not(.nav-cta){padding:13px 3px;border-bottom:1px solid #e9e9e2}
  .main-nav .nav-cta{margin-top:15px;text-align:center}
  .product-grid{column-gap:18px;row-gap:20px}
}
@media(max-width:840px){
  .approach{grid-template-columns:1fr}
  .approach-image{min-height:390px}
  .approach-copy{padding:64px 8% 70px}
}

/* Mobile-first refinements across the full page */
@media(max-width:700px){
  body{font-size:15px}
  .announcement{display:flex;min-height:38px;height:auto;padding:8px 5%;text-align:center}
  .announcement>span:first-child{display:none}
  .announcement-links{width:100%;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:14px}
  .announcement-links a{font-size:9px;white-space:nowrap}
  .site-header{height:72px;padding:0 5%}
  .brand{font-size:20px}
  .main-nav{top:calc(100% + 7px);left:5%;right:5%;padding:13px 18px 18px;border-radius:20px}
  .hero{min-height:620px;height:calc(100svh - 110px);max-height:780px}
  .hero-content{left:6%;right:6%;max-width:none}
  .hero h1{font-size:clamp(52px,12vw,76px)}
  .hero-copy{max-width:430px;font-size:15px}
  .hero-actions{gap:15px}
  .cinematic-experience{height:190svh;min-height:0}
  .cinematic-stage{height:100svh;min-height:560px;border-radius:0 0 20px 20px}
  .cinematic-hero .cinematic-copy{left:6%;right:6%;bottom:13%;width:auto}
  .cinematic-hero .cinematic-scenes{min-height:238px}
  .cinematic-hero .cinematic-scene h1,.cinematic-hero .cinematic-scene h2{font-size:clamp(40px,10.5vw,64px)}
  .cinematic-hero .cinematic-scene p{font-size:14px;max-width:440px}
  .cinematic-hero .cinematic-progress{left:6%;bottom:24px;width:42vw}
  .cinematic-hero .cinematic-scroll-hint{right:6%;bottom:13px;font-size:8px}
  .section-pad{padding:68px 6%}
  .intro-grid{gap:22px}
  .intro h2,.section-heading h2,.approach h2,.contact h2{font-size:clamp(42px,10.5vw,62px)}
  .intro-stats{grid-template-columns:1fr 1fr;gap:10px;margin-top:36px;padding-top:18px}
  .intro-stats>div{min-height:70px;padding:12px;border-radius:16px;background:#f3f1ea;gap:10px}
  .intro-stats>div b{font-size:24px}
  .intro-stats>div span{font-size:10px}
  .intro-stats>p{grid-column:1/-1;max-width:none;margin-top:4px}
  .products{padding-top:70px;padding-bottom:78px}
  .products .section-heading{margin-bottom:28px}
  .products .section-heading h2{font-size:clamp(42px,10.5vw,62px)}
  .products .section-side-copy{margin-top:17px;font-size:14px;line-height:1.7}
  .product-grid{grid-template-columns:minmax(0,1fr);gap:16px}
  .product-card{padding:12px;border-radius:20px}
  .category-gallery{height:clamp(220px,62vw,310px);grid-template-columns:minmax(0,1fr) 68px;gap:7px;border-radius:14px}
  .gallery-main{border-radius:11px}
  .gallery-thumbs img{border-radius:9px}
  .product-meta{gap:8px;align-items:flex-start}
  .product-meta h3{font-size:clamp(18px,5vw,22px)}
  .product-meta>div>span{font-size:9px}
  .product-link{margin-top:2px;font-size:9px}
  .product-description{font-size:14px;line-height:1.7}
  .product-list,.product-more,.product-more summary{font-size:13px}
  .card-enquire{font-size:12px}
  .client-trust{padding-top:70px;padding-bottom:74px}
  .client-trust .section-heading{margin-bottom:26px}
  .trust-intro{margin-top:17px}
  .trust-caption{margin-left:0}
  .client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
  .client-logo-grid img{height:84px;padding:9px;border-radius:12px}
  .approach-image{min-height:320px;margin:14px 14px 0;border-radius:20px}
  .approach-copy{padding:48px 6% 60px}
  .approach-copy>p:not(.eyebrow){font-size:14px}
  .approach-steps>div{grid-template-columns:34px minmax(0,1fr) 18px;padding:14px 0}
  .approach-steps b{font-size:13px}
  .approach-steps small{font-size:11px}
  .approach .button-outline{border-radius:999px}
  .statement{padding:58px 6% 34px}
  .statement blockquote{margin:28px 0 32px;padding:22px;border-radius:20px;font-size:clamp(30px,8vw,44px)}
  .statement-bottom{font-size:8px;gap:12px}
  .contact{grid-template-columns:minmax(0,1fr);gap:30px;padding:68px 6%}
  .contact-heading>p:not(.eyebrow){font-size:14px}
  .contact-direct{max-width:none}
  .contact-direct>a{font-size:14px;gap:9px}
  .contact-label{min-width:64px;font-size:8px}
  .contact-location{padding-top:18px}
  .contact-location>span{font-size:12px}
  .enquiry-form{padding:22px 17px 18px;border-radius:20px}
  .form-row{grid-template-columns:minmax(0,1fr);gap:0}
  .enquiry-form label{font-size:11px}
  .enquiry-form input,.enquiry-form select,.enquiry-form textarea{font-size:16px}
  .form-submit{width:100%;padding:14px 18px}
  .site-footer{padding:0 6% 20px}
  .footer-invite{padding:48px 0 35px;gap:22px}
  .footer-invite h2{font-size:clamp(40px,10vw,56px)}
  .footer-invite-button{width:100%;max-width:100%;border-radius:999px}
  .footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 16px;padding:30px 0}
  .footer-brand-block{grid-column:1/-1}
  .footer-brand-block>p{font-size:12px}
  .footer-column>a{font-size:11px}
  .footer-bottom{gap:10px}
}
@media(max-width:460px){
  .announcement-links{gap:10px}
  .announcement-links a{font-size:8px}
  .client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .statement-bottom{flex-direction:column;align-items:flex-start}
  .statement-bottom span:last-child{text-align:left}
  .contact-direct>a{font-size:13px;overflow-wrap:anywhere}
  .contact-direct .contact-label{display:none}
  .footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 12px}
  .footer-social a{justify-content:flex-start}
}
@media(max-width:350px){
  .announcement-links a:first-child{display:none}
  .announcement-links{justify-content:center}
  .brand{font-size:18px}
  .cinematic-hero .cinematic-scenes{min-height:252px}
  .cinematic-hero .cinematic-scene h1,.cinematic-hero .cinematic-scene h2{font-size:40px}
  .category-gallery{grid-template-columns:minmax(0,1fr) 56px}
  .product-meta h3{font-size:17px}
  .footer-column>a{font-size:10px}
}
@media(max-width:700px) and (prefers-reduced-motion:reduce){.cinematic-experience{height:auto;min-height:0}}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d18b68;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.product-card,.client-logo-grid img,.approach-steps>div,.footer-invite-button{transition:none}.product-card:hover{transform:none}}
