@font-face{font-family:Inter;src:local('Arial');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg,#f3eee5);color:var(--ink,#302c26);font-size:16px;line-height:1.6}body.v1{--bg:#f5f1e9;--ink:#332c23;--muted:#6c6255;--accent:#765033;--line:#d4cab9;--panel:#ece5d8;--dark:#30291f;--light:#fcf9f2;--display:Georgia,'Times New Roman',serif}body.v2{--bg:#f5f7f6;--ink:#123747;--muted:#50646c;--accent:#8d602c;--line:#cbd6d7;--panel:#e8eeed;--dark:#092c3a;--light:#f7f6ef;--display:Georgia,'Times New Roman',serif}body.v3{--bg:#202421;--ink:#f4f0e5;--muted:#c2c5bc;--accent:#edb37d;--line:#566056;--panel:#2c322d;--dark:#171b18;--light:#f6f2e9;--display:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent,#765033);outline-offset:5px}button{color:inherit}img{max-width:100%;display:block;height:auto}svg{width:24px;height:24px;fill:currentColor;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display,Georgia);font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(42px,5.4vw,82px);margin-bottom:25px}h2{font-size:clamp(34px,3.8vw,58px);margin-bottom:24px}h3{font-size:23px;line-height:1.2;font-weight:500;letter-spacing:-.025em}p{color:var(--muted,#6c6255);max-width:65ch}small,.eyebrow{font-size:10px;font-weight:700;letter-spacing:.18em;line-height:1.5}.eyebrow{display:block;margin-bottom:20px}button{border:0}.skip{position:fixed;top:-80px;left:20px;background:white;color:black;z-index:100;padding:10px}.skip:focus{top:5px}.site-header{position:sticky;top:0;z-index:30;height:100px;display:flex;align-items:center;justify-content:space-between;padding:8px clamp(22px,4.5vw,72px);gap:26px;border-bottom:1px solid var(--line);background:var(--light);color:#332c23}.brand{display:block;flex-shrink:0;width:200px}.brand img{width:100%;height:78px;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:600}.desktop-nav>a,.services-trigger{padding:15px 0}.desktop-nav>a:hover,.services-trigger:hover{color:#956439}.services-trigger{background:transparent;font-size:13px;font-weight:600;display:flex;gap:14px;align-items:center}.services-trigger span{font-size:22px}.header-cta{background:var(--dark);color:var(--light);padding:13px 19px;display:flex;gap:10px;align-items:center;font-size:13px;white-space:nowrap}.header-cta svg{width:20px;height:20px}.mega{position:absolute;top:99px;left:8%;right:8%;background:#fcfaf5;border:1px solid #d4cab9;padding:32px;box-shadow:0 22px 40px #0002;color:#332c23;display:grid;grid-template-columns:1fr 2fr;gap:35px;max-height:70vh;overflow:auto}.mega>div{display:grid;align-content:start;gap:3px}.mega>div+div{grid-template-columns:1fr 1fr}.mega a{padding:10px 12px;font-size:13px}.mega a:hover{background:#ece5d8}.mega small{padding:10px 12px}.menu-toggle,.mobile-nav{display:none}[hidden]{display:none!important}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:14px 23px;background:var(--accent);color:var(--light);font-size:13px;line-height:1.3;border:1px solid var(--accent);font-weight:600;transition:transform .25s,background .25s,box-shadow .25s;max-width:100%}.button span{font-size:22px;line-height:1}.button:hover{transform:translateY(-3px);box-shadow:0 8px 22px #0002}.button:active{transform:translateY(0)}.button.secondary{background:transparent;border:1px solid var(--line);color:var(--ink)}.v3 .button:not(.secondary){color:#232721}.hero{position:relative;min-height:calc(100svh - 100px);display:grid;align-items:center}.hero-copy{position:relative;z-index:2}.hero-copy p{max-width:490px;font-size:16px;margin-bottom:30px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.hero-visual{overflow:hidden}.hero-visual img{width:100%;height:100%;object-fit:contain}.hero-bottom{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.12em;padding:20px 0;border-top:1px solid var(--line);grid-column:1/-1}.v1 .hero{padding:50px 4.5vw 0;grid-template-columns:44% 56%;gap:20px 0;background:linear-gradient(100deg,#f5f1e9,#e5d9c7)}.v1 .hero-visual{grid-column:2;grid-row:1;height:100%;min-height:480px;display:flex;align-items:center}.v1 .hero-visual img{aspect-ratio:3/2;height:auto}.v1 .hero-copy{grid-column:1;grid-row:1;padding-right:20px}.v1 .hero h1{font-size:clamp(44px,5.5vw,80px)}.v1 .hero-bottom{align-self:end}.v2 .site-header{border-bottom:0}.v2 .header-cta{border-radius:3px}.v2 .hero{background:#092c3a;color:#f7f6ef;padding:45px 5vw 0;grid-template-columns:1fr 1fr;gap:22px}.v2 .hero-copy{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:1.4fr 1fr;gap:0 40px}.v2 .hero-copy>.eyebrow{grid-column:1/-1;color:#d2b489}.v2 .hero h1{font-size:clamp(42px,5.2vw,75px);grid-row:2/4}.v2 .hero-copy p{color:#d7e1e1;align-self:end}.v2 .hero-visual{grid-column:1/-1;grid-row:2;max-width:1100px;width:100%;margin:auto;max-height:52vh}.v2 .hero-visual img{max-height:52vh;width:100%;object-fit:contain}.v2 .hero .button.secondary{color:white;border-color:#8aabae}.v2 .hero-bottom{border-color:#49636c}.v2 .hero .button:not(.secondary){background:#d0ab78;color:#092c3a;border-color:#d0ab78}.v3 .site-header{height:112px}.v3 .brand{width:250px}.v3 .hero{min-height:calc(100svh - 112px);padding:44px 4.5vw 0;grid-template-columns:1fr 1.15fr;gap:0 25px;background:linear-gradient(140deg,#202421 40%,#414534)}.v3 .hero-visual{grid-row:1;grid-column:2;align-self:stretch;display:flex;align-items:center}.v3 .hero-visual img{height:auto;width:100%;aspect-ratio:3/2;object-fit:contain}.v3 .hero-copy{grid-row:1;grid-column:1}.v3 .hero h1{font-weight:800;font-size:clamp(56px,6.8vw,100px);line-height:.94;letter-spacing:-.065em}.v3 .hero .eyebrow{color:#efc4a2}.v3 .hero-bottom{align-self:end;margin-top:45px}.marquee{overflow:hidden;background:var(--dark);color:var(--light);font-size:11px;letter-spacing:.19em;padding:18px 0;white-space:nowrap}.marquee>div{width:max-content;animation:ticker 38s linear infinite}.v3 .marquee{background:var(--accent);color:#202421;font-weight:700}.section{padding:85px 5vw;max-width:1540px;margin:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.section-heading h2{margin:0}.section-heading>p{max-width:270px;margin:0}.about-block{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-images{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;position:relative}.about-images img{width:100%;object-fit:contain;max-width:330px;box-shadow:0 20px 40px #0001}.about-images img+img{margin-top:60px}.image-label{grid-column:1/-1;text-align:right;font-family:var(--display);font-size:24px;color:var(--muted)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.category-card{position:relative;padding:30px 25px;min-height:235px;border-right:1px solid var(--line);transition:background .3s,transform .3s}.category-card:last-child{border-right:0}.category-card>span:first-child{font-size:11px;color:var(--muted)}.category-card h3{font-family:var(--display);font-size:27px;margin:20px 0 45px}.category-card:hover{background:var(--panel);transform:translateY(-5px)}.round-arrow{font-size:25px;display:block}.category-card .round-arrow{position:absolute;bottom:20px;right:25px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.service-card{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--panel);position:relative;transition:transform .3s,box-shadow .3s}.service-card:hover{transform:translateY(-6px);box-shadow:0 14px 28px #0002}.card-image{height:260px;display:flex;align-items:center;justify-content:center;padding:18px;background:var(--light)}.card-image img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.card-copy{padding:26px;flex:1;position:relative}.card-copy small{color:var(--muted);font-size:9px}.card-copy h3{margin:13px 0}.card-copy p{font-size:14px;padding-right:22px;margin-bottom:0}.card-copy .round-arrow{position:absolute;right:20px;bottom:18px;font-size:22px}.v1 .service-card{border:0;background:none;border-bottom:1px solid var(--line)}.v1 .card-copy{padding-left:0;padding-right:0}.v1 .card-image{background:#e9e1d3}.v1 .card-copy h3{font-family:Georgia;font-size:27px}.v2 .category-grid{gap:14px;border:0}.v2 .category-card{background:var(--dark);color:var(--light);border:0;border-radius:3px}.v2 .category-card>span:first-child{color:#cbb28c}.v2 .category-card:hover{background:#174c5b}.v2 .home-work{background:var(--panel);max-width:none}.v2 .service-card{border-radius:8px;overflow:hidden}.v2 .card-copy{border-top:3px solid #b58a53}.v3 .category-grid{grid-template-columns:1fr 1fr;border:0;gap:18px}.v3 .category-card{border:1px solid var(--line);min-height:190px;background:var(--panel)}.v3 .category-card h3{font-size:32px;font-weight:600;max-width:380px}.v3 .service-grid{gap:1px;background:var(--line);border:1px solid var(--line)}.v3 .service-card{border:0;background:var(--bg)}.v3 .card-image{background:#e5e1d7}.v3 .featured .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v3 .featured .service-card{display:grid;grid-template-columns:45% 55%;align-items:center}.v3 .featured .card-image{height:260px}.v3 .card-copy h3{font-weight:700}.material-band{padding:65px 5vw;background:var(--dark);color:var(--light);display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.material-band p{color:#d8d2c8;font-size:20px;line-height:1.8}.material-band h2{margin:0}.material-band .button.secondary{color:#faf7ef;border-color:#a99b80}.v3 .material-band{background:#e6b68e;color:#252a23}.v3 .material-band p{color:#343b30}.v3 .material-band .button.secondary{color:#252a23;border-color:#75604d}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 25px}.work-item{margin:0;align-self:start}.image-preview{display:flex;align-items:center;justify-content:center;width:100%;height:280px;padding:15px;background:var(--panel);overflow:hidden}.image-preview img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform .35s}.image-preview:hover img{transform:scale(1.025)}figcaption{display:flex;justify-content:space-between;font-size:12px;padding:12px 0;gap:10px}.home-work .work-grid{align-items:start}.v1 .home-work .work-item:nth-child(2){margin-top:55px}.v2 .work-item{border-bottom:1px solid var(--line)}.v3 .work-grid{gap:30px}.v3 .image-preview{background:#ebe6dd}.client-row{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:30px 0}.client-row span{font-size:15px;font-weight:600;border-top:1px solid var(--line);padding-top:24px}.text-link{border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:13px}.project-cta{padding:70px 5vw;background:var(--panel);display:flex;align-items:center;justify-content:space-between;gap:40px}.project-cta h2{margin-bottom:20px}.project-cta p{margin-bottom:0}.v2 .project-cta{background:#ddc7a7;color:#123747}.v2 .project-cta p{color:#39535a}.v3 .project-cta{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}footer{background:var(--dark);color:var(--light);padding:65px 5vw 22px}footer p{color:#ccc9be;font-size:13px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr 1fr 1.2fr;gap:35px}.footer-grid h3{font-size:12px;letter-spacing:.1em;margin:12px 0 22px}.footer-grid>div>a:not(.brand){display:block;font-size:12px;line-height:1.6;margin-bottom:13px;overflow-wrap:anywhere}.footer-grid>div>a:hover{color:#e6b78a}.footer-brand .brand{background:#f8f5ed;width:220px;padding:8px 15px;margin-bottom:23px}.footer-bottom{border-top:1px solid #ffffff35;margin-top:50px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#d5d2c9}.social{display:flex;gap:12px;margin-top:25px}.social a{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:#fff;border-radius:8px;transition:transform .2s}.social a:hover{transform:translateY(-5px) rotate(-4deg)}.social .facebook{color:#1877f2}.social .instagram{color:#d32c73}.social .tiktok{color:#111}.floating{position:fixed;bottom:20px;right:18px;z-index:25;display:flex;flex-direction:column;gap:8px}.floating a{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:2px solid white;border-radius:50%;box-shadow:0 4px 15px #0002;transition:transform .2s}.floating a:hover{transform:translateY(-3px)}.float-wa{background:#087c41;color:white}.float-call{background:var(--accent);color:var(--light);font-size:24px}.v3 .float-call{color:#202421}.backtop{position:fixed;bottom:22px;left:18px;z-index:20;background:var(--dark);color:var(--light);width:42px;height:42px;border:1px solid #fff5;border-radius:50%;font-size:22px}.page-intro{padding:70px 5vw 55px;border-bottom:1px solid var(--line);background:var(--panel)}.page-intro h1{max-width:1050px;font-size:clamp(43px,5.3vw,77px);margin-bottom:25px}.page-intro p{font-size:18px;max-width:750px;margin:0}.v2 .page-intro{background:var(--dark);color:var(--light);border:0}.v2 .page-intro p{color:#cbdcdf}.v2 .page-intro .eyebrow{color:#dbb782}.v3 .page-intro{background:linear-gradient(100deg,#2c322d,#384135)}.v3 .page-intro h1{font-weight:700}.detail-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;align-items:start}.detail-image{margin:0;background:var(--panel);padding:25px;display:flex;align-items:center;flex-direction:column}.detail-image img{max-width:100%;width:auto;max-height:490px;object-fit:contain}.detail-image figcaption{width:100%}.detail-list{list-style:none;padding:0;margin:30px 0}.detail-list li{padding:14px 0;border-bottom:1px solid var(--line)}.detail-list li:before{content:'↗';margin-right:18px;color:var(--accent)}.small-note{font-size:12px;margin-top:20px;max-width:400px}.related{padding-top:20px}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}.filters button{background:transparent;border:1px solid var(--line);padding:12px 20px;min-height:44px;font-size:13px}.filters button.active{background:var(--accent);color:var(--light)}.v3 .filters button.active{color:#202421}.materials-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.material-list>div{border-bottom:1px solid var(--line);padding:18px 0;display:flex;align-items:center;justify-content:space-between;font-family:var(--display);font-size:25px}.material-list a{width:44px;height:44px;text-align:center}.material-photos{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:start;align-items:center}.material-photos img{width:100%}.material-photos img:first-child{grid-column:1/-1;max-width:430px;margin:auto}.client-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.client-grid>div{padding:28px;min-height:115px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);display:flex;align-items:center;font-size:14px;font-weight:600}.contact-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:70px}.contact-details dt{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:22px}.contact-details dd{margin:4px 0;font-size:17px;overflow-wrap:anywhere}.enquiry-form{background:var(--panel);padding:35px}.enquiry-form h2{font-size:36px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid .full{grid-column:1/-1}label{font-size:12px;display:block}input,select,textarea{display:block;width:100%;margin-top:8px;padding:13px;border:1px solid var(--line);border-radius:0;background:var(--bg);color:var(--ink);min-width:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.form-note{font-size:12px;margin-top:20px}.form-status{font-size:13px;margin:16px 0 0}dialog{max-width:min(900px,94vw);max-height:90svh;background:var(--bg);color:var(--ink);border:1px solid var(--line);padding:50px 20px 15px}dialog::backdrop{background:#000c}dialog img{max-height:70svh;max-width:100%;margin:auto;object-fit:contain}dialog p{margin:12px 0 0;font-size:13px}.lightbox-close{position:absolute;right:10px;top:5px;width:44px;height:44px;font-size:32px;background:transparent}.reveal{animation:appear .65s ease-out both}@keyframes appear{from{opacity:.7;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes ticker{to{transform:translateX(-33.333%)}}.chooser{background:#efeae1;color:#302c26}.chooser main{padding:65px 5vw;max-width:1550px;margin:auto}.chooser h1{font-size:clamp(50px,6vw,88px)}.chooser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px}.choice{background:#fff8ef;border:1px solid #d3cabb;transition:transform .25s}.choice:hover{transform:translateY(-7px)}.choice>img{width:100%;aspect-ratio:3/2;object-fit:contain}.choice>div{padding:28px}.choice span{font-size:10px;letter-spacing:.14em}.choice h2{font-size:34px;margin:15px 0}.choice p{font-size:12px}.choice strong{font-size:13px}.choice-2{background:#092c3a;color:#fff8ef}.choice-2 p{color:#d8dfdd}.choice-3{background:#202421;color:#f0c29b}.choice-3 p{color:#d8dfdd}
@media(min-width:1500px){.hero-copy{max-width:680px}.hero{max-height:none}.v1 .hero-visual img,.v3 .hero-visual img{max-height:650px}.section{padding-left:70px;padding-right:70px}}
@media(max-width:1100px){.site-header{gap:16px;padding-left:25px;padding-right:25px}.brand{width:175px}.v3 .brand{width:220px}.desktop-nav{gap:17px;font-size:12px}.header-cta{padding:12px}.v1 .hero{grid-template-columns:47% 53%;padding-top:35px}.v1 .hero-visual{min-height:420px}.v1 .hero h1{font-size:55px}.v3 .hero h1{font-size:70px}.section{padding:65px 5vw}.about-block{gap:40px}.card-image{height:225px}.card-copy{padding:20px}.category-card{padding:24px 18px}.category-card h3{font-size:23px}.footer-grid{gap:22px}.footer-brand .brand{width:175px}.footer-grid{grid-template-columns:1fr .8fr 1fr 1.2fr}.contact-layout{gap:35px}.enquiry-form{padding:25px}.v3 .featured .service-card{grid-template-columns:42% 58%}.v3 .featured .card-copy h3{font-size:22px}}
@media(max-width:900px){.desktop-nav{display:none}.site-header,.v3 .site-header{height:90px;gap:14px}.brand,.v3 .brand{width:205px;margin-right:auto}.brand img{height:70px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;background:transparent;padding:10px}.menu-toggle span{display:block;width:24px;height:2px;background:#302c26;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.mobile-nav{display:block;position:absolute;top:89px;left:16px;right:16px;max-height:calc(85svh - 90px);overflow-y:auto;padding:15px 20px;background:#fcfaf5;color:#302c26;border:1px solid #d4cab9;box-shadow:0 16px 35px #0003}.mobile-nav>a,.mobile-nav summary{display:block;padding:12px 4px;border-bottom:1px solid #ded6c8;font-size:14px;min-height:45px}.mobile-nav summary{cursor:pointer;list-style:none}.mobile-nav summary:after{content:'+';float:right}.mobile-nav details[open] summary:after{content:'−'}.mobile-nav details>div{padding:12px;background:#f0eade}.mobile-nav details a{display:block;padding:10px;font-size:13px;border-bottom:1px solid #ddd1bd}.hero{min-height:calc(100svh - 90px)}.v1 .hero{grid-template-columns:1fr;padding-top:40px}.v1 .hero-copy{grid-column:1;grid-row:1;padding:0}.v1 .hero-visual{grid-column:1;grid-row:2;min-height:0;max-width:680px;margin:auto}.v1 .hero-visual img{max-height:46svh;object-fit:contain}.hero-copy h1{max-width:680px}.v1 .hero h1{font-size:60px}.v1 .hero-copy p{max-width:650px}.v1 .hero-bottom{grid-row:3;margin-top:20px}.v2 .hero{padding-top:35px}.v2 .hero-copy{grid-template-columns:1fr;gap:0}.v2 .hero h1{grid-row:auto;font-size:62px}.v2 .hero-copy p{max-width:650px}.v3 .hero{grid-template-columns:1fr;min-height:calc(100svh - 90px);gap:25px}.v3 .hero-visual{grid-column:1;grid-row:2;max-width:700px;margin:auto}.v3 .hero-copy{grid-column:1;grid-row:1}.v3 .hero h1{font-size:80px}.v3 .hero-visual img{max-height:45svh}.v3 .hero-bottom{margin-top:0}.about-block{grid-template-columns:1fr;gap:35px}.about-images{max-width:640px}.category-grid{grid-template-columns:1fr 1fr}.category-card:nth-child(2){border-right:0}.category-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v3 .featured .service-card{display:flex}.work-grid{grid-template-columns:1fr 1fr}.home-work .work-grid{grid-template-columns:repeat(3,1fr)}.home-work .image-preview{height:230px}.v1 .home-work .work-item:nth-child(2){margin-top:35px}.material-band{gap:35px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-brand .brand{width:210px}.contact-layout{grid-template-columns:1fr 1.2fr;gap:25px}.enquiry-form{padding:22px}.form-grid{grid-template-columns:1fr}.detail-layout{grid-template-columns:1fr 1fr;gap:35px}.client-grid{grid-template-columns:1fr 1fr}.chooser-grid{grid-template-columns:1fr}.choice{display:grid;grid-template-columns:1.1fr 1fr;align-items:center}.choice>img{height:100%;object-fit:contain}}
@media(max-width:600px){html{scroll-padding-top:82px}.site-header,.v3 .site-header{height:82px;padding:5px 14px;gap:7px}.brand,.v3 .brand{width:160px;max-width:calc(100vw - 155px)}.brand img{height:68px}.header-cta{padding:11px 10px;font-size:11px;gap:7px;min-height:44px}.header-cta svg{width:18px;height:18px}.menu-toggle{width:40px;min-width:40px;padding:8px}.mobile-nav{top:81px;left:10px;right:10px;max-height:calc(85svh - 82px)}.eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:18px}h1{font-size:43px}h2{font-size:37px}h3{font-size:22px}p{font-size:14px}.hero{min-height:calc(100svh - 82px)!important}.v1 .hero,.v2 .hero,.v3 .hero{padding:30px 20px 0;gap:22px}.v1 .hero h1{font-size:45px;line-height:1.08}.hero-copy p{font-size:14px;margin-bottom:22px}.hero-buttons{gap:10px}.button{padding:13px 17px;gap:18px;font-size:12px}.hero-buttons .button{min-height:46px}.hero-visual img{max-height:none!important;width:100%}.v1 .hero-visual{margin:0 -20px;max-width:calc(100% + 40px);width:calc(100% + 40px)}.v1 .hero-bottom{margin-top:0}.hero-bottom{font-size:8px;letter-spacing:.06em;padding:15px 0;gap:15px}.hero-bottom>span{max-width:210px}.hero-bottom>a{white-space:nowrap}.v2 .hero{padding-top:35px}.v2 .hero h1{font-size:46px}.v2 .hero-visual{max-height:none;align-self:center}.v3 .hero h1{font-size:60px}.v3 .hero-visual{width:calc(100% + 40px);max-width:calc(100% + 40px);margin:0 -20px}.marquee{padding:14px 0;font-size:9px}.section{padding:52px 20px}.section-heading{display:block;margin-bottom:25px}.section-heading>.button{margin-top:20px}.section-heading>p{margin-top:18px}.about-images{gap:14px}.about-images img+img{margin-top:40px}.image-label{font-size:21px}.category-grid,.v3 .category-grid{gap:0}.category-card,.v3 .category-card{padding:22px 16px;min-height:220px}.category-card h3,.v3 .category-card h3{font-size:24px;margin-top:20px}.v2 .category-grid{gap:10px}.v2 .category-card{padding:20px 15px;min-height:230px}.service-grid,.v3 .featured .service-grid{gap:16px;grid-template-columns:1fr}.service-card,.v3 .featured .service-card{display:grid;grid-template-columns:42% 58%;align-items:stretch}.card-image,.v3 .featured .card-image{height:auto;min-height:205px;padding:12px}.card-copy{padding:20px 15px 32px}.card-copy small{font-size:8px;letter-spacing:.08em}.card-copy h3,.v1 .card-copy h3,.v3 .featured .card-copy h3{font-size:22px;line-height:1.12}.card-copy p{font-size:12px;padding-right:0}.card-copy .round-arrow{font-size:18px;bottom:10px;right:14px}.v1 .card-copy{padding-left:15px;padding-right:8px}.v3 .service-grid{gap:1px}.material-band{padding:45px 20px;grid-template-columns:1fr;gap:25px}.material-band p{font-size:17px;margin-bottom:22px}.work-grid,.home-work .work-grid{grid-template-columns:1fr 1fr;gap:25px 14px}.image-preview,.home-work .image-preview{height:190px;padding:8px}.work-item figcaption{font-size:11px;line-height:1.35}.v1 .home-work .work-item:nth-child(2){margin-top:0}.home-work .work-item:last-child{grid-column:1/-1;max-width:330px;margin:auto;width:100%}.home-work .work-item:last-child .image-preview{height:250px}.client-row{grid-template-columns:1fr 1fr;gap:20px}.client-row span{font-size:12px}.project-cta{padding:48px 20px;display:block}.project-cta>.button{margin-top:25px}.project-cta h2{font-size:38px}footer{padding:45px 20px 110px}.footer-grid{gap:28px 20px;grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-brand .brand{width:200px}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid>div>a:not(.brand){font-size:13px}.footer-grid h3{margin-bottom:18px}.footer-bottom{flex-direction:column;gap:10px;margin-top:30px;padding-right:30px}.floating{right:12px;bottom:14px}.floating a{width:45px;height:45px}.backtop{left:12px;bottom:15px}.page-intro{padding:42px 20px 35px}.page-intro h1{font-size:43px;overflow-wrap:normal}.page-intro p{font-size:15px}.detail-layout{grid-template-columns:1fr;gap:30px}.detail-image{padding:18px}.detail-image img{max-height:430px;max-width:100%}.detail-copy h2{font-size:33px}.detail-list{font-size:14px}.related{padding-top:12px}.filters{gap:8px}.filters button{font-size:11px;padding:10px 13px}.materials-layout{grid-template-columns:1fr;gap:30px}.material-list>div{font-size:23px}.client-grid>div{padding:20px 15px;font-size:11px;min-height:100px;overflow-wrap:anywhere}.contact-layout{grid-template-columns:1fr;gap:40px}.contact-details dd{font-size:16px}.enquiry-form{padding:24px 18px}.enquiry-form h2{font-size:32px}.chooser main{padding:40px 20px}.chooser h1{font-size:52px}.choice{display:block}.choice>div{padding:25px}.choice h2{font-size:32px}.chooser-grid{gap:25px}.v3 .page-intro h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

.hero-copy{animation:hero-enter .8s ease-out both}.hero-visual{animation:hero-image 1.1s ease-out both}@keyframes hero-enter{from{opacity:.4;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes hero-image{from{opacity:.5}to{opacity:1}}@media(prefers-reduced-motion:reduce){.hero-copy,.hero-visual{animation:none}}
