@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.357dd_6abeqge.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.17-aodiw50953.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.357dd_6abeqge.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.17-aodiw50953.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.357dd_6abeqge.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.17-aodiw50953.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.357dd_6abeqge.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.17-aodiw50953.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.357dd_6abeqge.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.17-aodiw50953.woff2?dpl=dpl_D2uyn8VwErwfwcPsKGGw3HDPA9mE)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_4523a226-module__pxR-ia__className{font-family:Archivo,Archivo Fallback;font-style:normal}.archivo_4523a226-module__pxR-ia__variable{--font-archivo:"Archivo", "Archivo Fallback"}
:root{--color-bg:#f3f2f2;--color-surface:#eae9e9;--color-text:#201e1d;--color-divider:#201e1d66;--color-neutral-100:#f8f4f4;--color-neutral-200:#eae7e7;--color-neutral-300:#d7d3d3;--color-neutral-400:#bab6b6;--color-neutral-500:#9b9797;--color-neutral-600:#7d7979;--color-neutral-700:#605d5d;--color-neutral-800:#444141;--color-neutral-900:#2d2b2b;--color-accent:#33502f;--color-accent-100:#e6ece4;--color-accent-200:#cfdccb;--color-accent-300:#a9c0a3;--color-accent-400:#5c7a54;--color-accent-500:#33502f;--color-accent-600:#2a4227;--color-accent-700:#22361f;--color-accent-800:#192817;--color-accent-900:#111b10;--font-heading:var(--font-archivo), "Archivo", system-ui, sans-serif;--font-heading-weight:700;--font-body:var(--font-archivo), "Archivo", system-ui, sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--radius-md:0px;--pad-x:48px}*,:before,:after{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);margin:0;font-size:15px;font-weight:400;line-height:1.55}a{color:var(--color-accent-700);text-underline-offset:3px;text-decoration:none}a:hover{color:var(--color-accent)}::selection{background:var(--color-accent-200)}img{max-width:100%;display:block}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:var(--font-heading-weight);letter-spacing:-.015em;margin:0;line-height:1.12}.grayscale{filter:grayscale()contrast(1.08)}.kicker{letter-spacing:.24em;text-transform:uppercase;color:var(--color-accent-700);margin-bottom:20px;font-size:12px}.btn{cursor:pointer;font-family:var(--font-heading);font-weight:var(--font-heading-weight);color:var(--color-text);padding:var(--space-2) calc(var(--space-3) * 1.2);border-radius:var(--radius-md);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;font-size:14px;line-height:1.2;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-bg)}.btn-primary:hover{background:var(--color-accent-600);color:var(--color-bg)}.btn-primary:active{background:var(--color-accent-700)}.btn-secondary{border-color:var(--color-divider)}.btn-secondary:hover{background:color-mix(in srgb, var(--color-text) 7%, transparent)}.btn-secondary:active{background:color-mix(in srgb, var(--color-text) 14%, transparent)}.btn-inverse{color:#fff;background:0 0;border-color:#fff}.btn-inverse:hover{color:#fff;background:#ffffff24}.btn-inverse:active{background:#ffffff3d}.field>label{color:color-mix(in srgb, var(--color-text) 70%, transparent);margin-bottom:5px;font-size:12px;display:block}.input{width:100%;min-height:36px;font:inherit;color:var(--color-text);caret-color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:6px 10px;font-size:14px}.input:hover{border-color:color-mix(in srgb, var(--color-text) 45%, transparent)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}textarea.input{resize:vertical;min-height:90px}.site-nav{padding:14px var(--pad-x);z-index:20;background:0 0;border-bottom:2px solid #0000;justify-content:space-between;align-items:center;transition:background .3s,border-color .3s;display:flex;position:fixed;top:0;left:0;right:0}.site-nav .brand{flex:none;display:block}.site-nav .brand img{filter:brightness(0)invert()drop-shadow(0 1px 6px #111b108c);width:auto;height:82px;transition:filter .3s;display:block}.nav-links{letter-spacing:.12em;text-transform:uppercase;gap:32px;font-size:13px;display:flex}.nav-links a{color:#fff;transition:color .3s}.nav-links a:hover{opacity:.65}.nav-links a.nav-contact{font-weight:600}.site-nav.scrolled{background:var(--color-bg);border-bottom-color:var(--color-divider)}.site-nav.scrolled .brand img{filter:none}.site-nav.scrolled .nav-links a{color:#201e1d}.nav-toggle{cursor:pointer;background:0 0;border:0;padding:10px;display:none}.nav-toggle span{background:#fff;width:26px;height:2px;transition:background .3s,transform .25s,opacity .25s;display:block}.nav-toggle span+span{margin-top:7px}.site-nav.scrolled .nav-toggle span,.site-nav.open .nav-toggle span{background:#201e1d}.hero{border-bottom:2px solid var(--color-divider);height:100vh;min-height:800px;padding-top:112px;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-media video,.hero-media img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-scrim{background:linear-gradient(90deg,#111b10b8 0%,#111b1059 55%,#111b101a 100%),linear-gradient(#111b1059 0%,#111b1000 28%);position:absolute;inset:0}.hero-content{left:var(--pad-x);bottom:80px;right:var(--pad-x);color:#fff;max-width:760px;position:absolute}.hero-content .kicker{color:var(--color-accent-300);margin-bottom:18px}.hero-content h1{letter-spacing:-.02em;text-wrap:pretty;margin:0 0 24px;font-size:80px;line-height:1.02}.hero-content p{color:#e8eae6;max-width:560px;margin:0 0 28px;font-size:18px;line-height:1.55}.hero-actions{gap:16px;display:flex}.positioning{padding:150px var(--pad-x);border-bottom:2px solid var(--color-divider);grid-template-columns:1.2fr 1fr;gap:80px;display:grid}.positioning h2{text-wrap:pretty;font-size:56px;line-height:1.08}.positioning-copy{color:var(--color-neutral-700);font-size:16px;line-height:1.65}.positioning-copy p{margin:0 0 16px}.positioning-copy p:last-child{margin-bottom:0}.services{padding:150px var(--pad-x);border-bottom:2px solid var(--color-divider)}.services h2{letter-spacing:-.01em;text-wrap:pretty;max-width:860px;margin:0 0 56px;font-size:48px;line-height:1.1}.service-list-grid{grid-template-columns:repeat(3,1fr);column-gap:48px;margin:0;padding:0;list-style:none;display:grid}.service-list-grid li{border-top:1px solid var(--color-divider);align-items:baseline;gap:14px;padding:15px 0;display:flex}.service-list-grid .num{color:var(--color-neutral-500);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.service-list-grid .item{font-size:15px;font-weight:500;line-height:1.45}.why{padding:150px var(--pad-x);border-bottom:2px solid var(--color-divider)}.why h2{letter-spacing:-.01em;text-wrap:pretty;max-width:760px;margin:0 0 64px;font-size:48px;line-height:1.1}.why-grid{grid-template-columns:repeat(3,1fr);gap:48px;display:grid}.why-item{border-top:2px solid var(--color-accent);padding-top:18px}.why-item .num{color:var(--color-neutral-500);margin-bottom:10px;font-size:13px}.why-item .title{font-family:var(--font-heading);text-wrap:pretty;margin-bottom:8px;font-size:18px;font-weight:600;line-height:1.25}.why-item .desc{color:var(--color-neutral-700);font-size:14px;line-height:1.55}.projects{padding:150px var(--pad-x);border-bottom:2px solid var(--color-divider)}.projects-head{justify-content:space-between;align-items:baseline;gap:32px;margin-bottom:64px;display:flex}.projects-head .kicker{margin-bottom:16px}.projects-head h2{letter-spacing:-.01em;font-size:48px;line-height:1.1}.projects-head .all-link{letter-spacing:.12em;text-transform:uppercase;border-bottom:2px solid var(--color-accent);white-space:nowrap;padding-bottom:4px;font-size:13px}.card-grid{background:var(--color-divider);border:2px solid var(--color-divider);grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.project-card{background:var(--color-bg);color:inherit;display:block}a.project-card{text-decoration:none}a.project-card .thumb img{transition:transform .5s cubic-bezier(.22,.61,.36,1)}a.project-card:hover .thumb img{transform:scale(1.04)}a.project-card:hover .title{color:var(--color-accent)}a.project-card .title{transition:color .25s}a.project-card .body:after{content:"View project →";letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);margin-top:14px;font-size:12px;display:block}.project-card .thumb{aspect-ratio:4/3;overflow:hidden}.project-card .thumb img{object-fit:cover;width:100%;height:100%}.project-card .body{padding:22px 24px 28px}.project-card .cat{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent-700);margin-bottom:8px;font-size:11px}.project-card .title{font-family:var(--font-heading);margin-bottom:6px;font-size:18px;font-weight:600}.project-card .desc{color:var(--color-neutral-700);font-size:14px;line-height:1.55}.project-card .attr{color:var(--color-neutral-500);margin-top:10px;font-size:12px;font-style:italic}.infra{background:var(--color-accent);color:#fff;padding:120px var(--pad-x);border-bottom:2px solid var(--color-divider)}.infra .kicker{color:var(--color-accent-300)}.infra h2{letter-spacing:-.01em;text-wrap:pretty;max-width:820px;margin:0 0 64px;font-size:48px;line-height:1.1}.infra-grid{grid-template-columns:repeat(4,1fr);gap:40px;display:grid}.infra-item{border-top:2px solid var(--color-accent-300);padding-top:16px}.infra-item .title{font-family:var(--font-heading);margin-bottom:8px;font-size:20px;font-weight:600}.infra-item .desc{color:var(--color-accent-200);font-size:14px;line-height:1.55}.infra-note{color:var(--color-accent-300);margin-top:32px;font-size:12px;font-style:italic}.about{padding:150px var(--pad-x);border-bottom:2px solid var(--color-divider);grid-template-columns:380px 1fr;align-items:start;gap:64px;display:grid}.about-photo{border:2px solid var(--color-divider)}.about-photo img{width:100%;display:block}.about .kicker{margin-bottom:16px}.about h2{letter-spacing:-.01em;margin:0 0 24px;font-size:48px;line-height:1.1}.about h2 .quals{letter-spacing:0;color:var(--color-neutral-500);font-size:18px;font-weight:400}.about p{color:var(--color-neutral-700);max-width:640px;margin:0 0 16px;font-size:16px;line-height:1.65}.about p.lead-out{margin-bottom:28px}.contact{padding:150px var(--pad-x);grid-template-columns:1fr 1fr;gap:64px;display:grid}.contact .kicker{margin-bottom:16px}.contact h2{letter-spacing:-.015em;text-wrap:pretty;margin:0 0 24px;font-size:56px;line-height:1.08}.contact-intro{color:var(--color-neutral-700);max-width:480px;margin:0 0 32px;font-size:16px;line-height:1.65}.contact-rows{gap:14px;font-size:16px;display:grid}.contact-row{align-items:baseline;gap:12px;display:flex}.contact-row .tag{letter-spacing:.18em;text-transform:uppercase;color:var(--color-neutral-500);flex:none;width:64px;font-size:12px}.contact-row a{font-weight:600}.enquiry-form{border:2px solid var(--color-divider);align-content:start;gap:18px;padding:36px;display:grid}.enquiry-form .form-title{font-family:var(--font-heading);font-size:18px;font-weight:600}.enquiry-form .btn{text-align:left;justify-content:flex-start}.site-footer{border-top:2px solid var(--color-divider);padding:56px var(--pad-x);color:var(--color-neutral-500);justify-content:space-between;align-items:flex-end;gap:32px;font-size:12px;display:flex}.site-footer .footer-logo{width:auto;height:150px;display:block}.footer-meta{text-align:right;gap:8px;display:grid}@media (prefers-reduced-motion:no-preference){.reveal{opacity:0;transition:opacity .75s cubic-bezier(.22,.61,.36,1),transform .75s cubic-bezier(.22,.61,.36,1);transform:translateY(16px)}.reveal.in{opacity:1;transform:none}.hero-content>*{opacity:0;transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform .9s cubic-bezier(.22,.61,.36,1);transform:translateY(18px)}.hero-content.in>*{opacity:1;transform:none}.hero-content.in>:first-child{transition-delay:.18s}.hero-content.in>:nth-child(2){transition-delay:.31s}.hero-content.in>:nth-child(3){transition-delay:.44s}.hero-content.in>:nth-child(4){transition-delay:.57s}}.project-page{padding:170px var(--pad-x) 120px;max-width:1180px}.back-link{letter-spacing:.12em;text-transform:uppercase;margin-bottom:44px;font-size:13px;display:inline-block}.project-page h1{letter-spacing:-.015em;text-wrap:pretty;margin:0 0 24px;font-size:56px;line-height:1.08}.project-intro{color:var(--color-neutral-700);max-width:680px;margin:0;font-size:18px;line-height:1.6}.project-page .attr{color:var(--color-neutral-500);margin:12px 0 0;font-size:13px;font-style:italic}.project-gallery{grid-template-columns:repeat(2,1fr);gap:40px;margin:64px 0 56px;display:grid}.project-gallery figure{border:2px solid var(--color-divider);background:#fbfaf8;margin:0}.project-gallery figure.wide{grid-column:1/-1}.project-gallery img{width:100%;height:auto;display:block}.project-gallery figcaption{border-top:2px solid var(--color-divider);color:var(--color-neutral-700);padding:14px 18px;font-size:13px;line-height:1.5}@media (max-width:1180px){:root{--pad-x:32px}.hero-content h1{font-size:64px}.positioning h2{font-size:46px}.services h2,.projects-head h2,.infra h2,.about h2,.why h2{font-size:40px}.contact h2{font-size:46px}.service-list-grid,.why-grid{column-gap:32px}.infra-grid{gap:28px}}@media (max-width:1000px){.nav-links{background:var(--color-accent-900);opacity:0;pointer-events:none;z-index:-1;flex-direction:column;justify-content:center;align-items:center;gap:28px;font-size:16px;transition:opacity .3s;position:fixed;inset:0}.site-nav.open .nav-links{opacity:1;pointer-events:auto}.nav-links a,.site-nav.scrolled .nav-links a{color:#fff}.nav-toggle{display:block}.site-nav.open .nav-toggle span{background:#fff}.site-nav.open .nav-toggle span:first-child{transform:translateY(9px)rotate(45deg)}.site-nav.open .nav-toggle span:nth-child(2){opacity:0}.site-nav.open .nav-toggle span:nth-child(3){transform:translateY(-9px)rotate(-45deg)}.site-nav .brand img{height:64px}.hero{min-height:640px}.hero-content h1{font-size:48px}.positioning{grid-template-columns:1fr;gap:40px;padding-block:96px}.services,.projects,.about,.contact,.why{padding-block:96px}.infra{padding-block:80px}.card-grid{grid-template-columns:1fr}.service-list-grid,.why-grid{grid-template-columns:repeat(2,1fr)}.why h2{margin-bottom:48px}.service-list{margin-top:56px}.projects-head{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:40px}.infra-grid{grid-template-columns:repeat(2,1fr)}.project-page{padding-top:130px;padding-bottom:88px}.project-page h1{font-size:40px}.project-gallery{gap:28px;margin:48px 0 40px}.about{grid-template-columns:1fr;gap:40px}.about-photo{max-width:380px}.contact{grid-template-columns:1fr;gap:48px}}@media (max-width:600px){:root{--pad-x:20px}.hero{min-height:560px}.hero-content{bottom:56px}.hero-content h1{font-size:38px}.hero-actions{flex-wrap:wrap}.positioning h2,.contact h2{font-size:34px}.services h2,.projects-head h2,.infra h2,.about h2,.why h2{font-size:32px}.service-list-grid,.why-grid{grid-template-columns:1fr}.why-grid{row-gap:36px}.project-gallery{grid-template-columns:1fr}.project-page h1{font-size:32px}.project-intro{font-size:16px}.site-footer{flex-direction:column;align-items:flex-start}.footer-meta{text-align:left}.site-footer .footer-logo{height:110px}.enquiry-form{padding:24px}}.pf-index{grid-template-columns:1fr 1fr;gap:64px;display:grid}.pf-index-col h3{font-family:var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--color-accent-700);margin-bottom:18px;font-size:12px;font-weight:500}.pf-index ol{border-top:2px solid var(--color-divider);margin:0;padding:0;list-style:none}.pf-index li a{border-bottom:1px solid var(--color-divider);color:inherit;grid-template-columns:84px 34px 1fr;align-items:center;gap:18px;padding:14px 0;display:grid}.pf-index .thumb{background:var(--color-surface);width:84px;height:60px;overflow:hidden}.pf-index .thumb img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.22,.61,.36,1)}.pf-index .num{letter-spacing:.1em;color:var(--color-neutral-500);font-size:12px}.pf-index .title{font-family:var(--font-heading);font-size:17px;font-weight:600;line-height:1.3;transition:color .25s;display:block}.pf-index .meta{color:var(--color-neutral-600);margin-top:2px;font-size:13px;display:block}.pf-index li a:hover .title{color:var(--color-accent)}.pf-index li a:hover .thumb img{transform:scale(1.06)}.portfolio{padding:170px var(--pad-x) 120px}.pf-intro{max-width:920px;margin-bottom:88px}.pf-intro h1{letter-spacing:-.015em;text-wrap:pretty;font-size:56px;line-height:1.08}.pf-intro p{color:var(--color-neutral-700);max-width:680px;margin:24px 0 0;font-size:18px;line-height:1.6}.pf-jump{flex-wrap:wrap;gap:14px 36px;margin-top:36px;display:flex}.pf-jump a{letter-spacing:.12em;text-transform:uppercase;border-bottom:2px solid var(--color-accent);padding-bottom:4px;font-size:13px}.pf-group{border-top:2px solid var(--color-divider);padding-top:56px;scroll-margin-top:110px}.pf-group+.pf-group{margin-top:120px}.pf-group-title{letter-spacing:-.01em;font-size:40px;line-height:1.1}.pf-group-intro{max-width:760px;color:var(--color-neutral-800);background:var(--color-surface);border-left:3px solid var(--color-accent);margin:24px 0 0;padding:18px 22px;font-size:15px;line-height:1.6}.pf-project{border-bottom:1px solid var(--color-divider);grid-template-columns:minmax(260px,1fr) 2.3fr;gap:56px;padding:72px 0;scroll-margin-top:90px;display:grid}.pf-project:last-child{border-bottom:0}.pf-text{align-self:start;position:sticky;top:130px}.pf-num{letter-spacing:.2em;color:var(--color-accent-700);margin-bottom:14px;font-size:13px}.pf-text h3{text-wrap:pretty;margin-bottom:10px;font-size:28px;line-height:1.15}.pf-type{color:var(--color-neutral-700);margin:0 0 24px;font-size:16px;line-height:1.5}.pf-brief,.pf-employment{margin:0 0 18px;font-size:15px;line-height:1.6}.pf-label,.pf-meta dt{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent-700);margin-bottom:6px;font-size:11px;display:block}.pf-meta{margin:0 0 18px}.pf-meta div{border-top:1px solid var(--color-divider);padding:12px 0}.pf-meta div:last-child{border-bottom:1px solid var(--color-divider)}.pf-meta dd{margin:0;font-size:15px;line-height:1.55}.pf-credit{color:var(--color-neutral-600);margin:0;font-size:13px;font-style:italic;line-height:1.5}.pf-images{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.pf-images figure{border:1px solid var(--color-neutral-300);background:#fbfaf8;margin:0}.pf-images figure.wide,.pf-images figure.solo{grid-column:1/-1}.pf-images figure.solo{justify-self:start;max-width:100%}.pf-images figure.solo img{width:auto;max-width:100%;max-height:560px}.pf-images a{cursor:zoom-in;display:block}.pf-images img{width:100%;height:auto;display:block}.pf-images figcaption{border-top:1px solid var(--color-neutral-300);color:var(--color-neutral-700);padding:10px 14px;font-size:13px;line-height:1.5}.pf-cta{margin-top:96px}@media (max-width:1180px){.pf-project{grid-template-columns:minmax(240px,1fr) 2fr;gap:40px}.pf-intro h1{font-size:46px}}@media (max-width:1000px){.portfolio{padding-top:130px;padding-bottom:88px}.pf-index{grid-template-columns:1fr;gap:48px}.pf-project{grid-template-columns:1fr;gap:28px;padding:56px 0}.pf-text{max-width:640px;position:static}.pf-group-title{font-size:32px}}@media (max-width:600px){.pf-intro h1{font-size:34px}.pf-intro p{font-size:16px}.pf-images{grid-template-columns:1fr;gap:14px}.pf-text h3{font-size:24px}.pf-index li a{grid-template-columns:64px 1fr;gap:14px}.pf-index .thumb{width:64px;height:48px}.pf-index .num{display:none}}.form-error{color:#9b2c2c;margin:0 0 12px;font-size:14px}.enquiry-form{position:relative}.enquiry-form .optional{text-transform:none;letter-spacing:0;color:var(--color-neutral-500);font-weight:400}
