@import url('https://fonts.googleapis.com/css2?family=Zilla+Slab:ital,wght@0,400;0,500;0,600;0,700;1,500&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

:root{
  --pine:#122A20;--pine-deep:#0B1D16;--stone:#EDE7D8;--paper:#FBF9F3;
  --ink:#171510;--ochre:#A6741F;--ochre-light:#C99A44;
  --line:rgba(23,21,16,.14);--line-on-dark:rgba(255,255,255,.2);
  --container:1320px;--ease:cubic-bezier(.2,.75,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body,h1,h2,h3,p,ul,figure{margin:0}ul{padding:0;list-style:none}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open,body.lightbox-open{overflow:hidden}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}img{display:block;max-width:100%}
section[id]{scroll-margin-top:88px}
h1,h2,h3{font-family:'Zilla Slab',Georgia,serif;font-weight:600;line-height:1.05;letter-spacing:-.012em;color:var(--pine-deep)}
.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
.mono{font-family:'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.skip-link{position:absolute;left:-999px;top:0;background:var(--pine);color:#fff;padding:12px 18px;z-index:500}.skip-link:focus{left:12px;top:12px}
a:focus-visible,button:focus-visible{outline:2px solid var(--ochre-light);outline-offset:4px}
::selection{background:var(--ochre-light);color:var(--pine-deep)}

.eyebrow{display:flex;align-items:center;gap:13px;font-family:'JetBrains Mono';font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ochre);margin-bottom:20px}.eyebrow::before{content:"";width:34px;height:1px;background:currentColor;flex:none}.eyebrow--light{color:var(--ochre-light)}

.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 24px;font-weight:600;font-size:.9rem;border:1px solid transparent;transition:transform .22s var(--ease),background-color .22s ease,color .22s ease,border-color .22s ease;position:relative;overflow:hidden}.btn svg{transition:transform .22s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn:hover svg{transform:translate(3px,-3px)}
.btn-primary{background:var(--ochre);color:var(--paper)}.btn-primary:hover{background:var(--ochre-light)}.btn-outline{border-color:rgba(255,255,255,.42);color:#fff}.btn-outline:hover{background:rgba(255,255,255,.1);border-color:#fff}.btn-outline-dark{border-color:var(--line);color:var(--ink)}.btn-outline-dark:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* HEADER */
.site-header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(251,249,243,0);border-bottom:1px solid transparent;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}.site-header.is-scrolled{background:rgba(251,249,243,.96);backdrop-filter:blur(12px);border-bottom-color:var(--line);box-shadow:0 8px 28px rgba(11,29,22,.05)}
.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:15px;min-width:0}.brand-mark{display:block;width:218px;line-height:0}.brand-mark img{width:100%;height:auto}.brand-tagline{font-family:'JetBrains Mono';font-size:.56rem;letter-spacing:.13em;color:var(--ochre-light);white-space:nowrap}.site-header.is-scrolled .brand-tagline{color:var(--ochre)}
.main-nav{margin-left:auto}.main-nav ul{display:flex;gap:32px}.main-nav a{font-size:.88rem;font-weight:500;padding:7px 0;position:relative;color:#fff}.site-header.is-scrolled .main-nav a{color:var(--ink)}.main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--ochre);transition:right .25s ease}.main-nav a:hover::after{right:0}
.header-cta{display:flex;align-items:center;gap:18px}.phone-link{font-family:'JetBrains Mono';font-size:.77rem;letter-spacing:.02em;white-space:nowrap}.site-header:not(.is-scrolled) .phone-link{color:#fff}.header-quote{min-height:42px;display:inline-flex;align-items:center;padding:0 16px;border:1px solid rgba(255,255,255,.4);color:#fff;font-size:.78rem;font-weight:600;transition:.22s ease}.site-header.is-scrolled .header-quote{border-color:var(--line);color:var(--ink)}.header-quote:hover{background:var(--ochre);border-color:var(--ochre);color:#fff;transform:translateY(-1px)}
.nav-toggle{display:none;width:44px;height:44px;position:relative;flex:none}.nav-toggle span{position:absolute;left:10px;right:10px;height:2px;background:currentColor;transition:transform .25s var(--ease),opacity .2s ease}.nav-toggle span:nth-child(1){top:15px}.nav-toggle span:nth-child(2){top:21px}.nav-toggle span:nth-child(3){top:27px}.nav-toggle.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-nav{position:fixed;inset:88px 0 0;background:var(--paper);z-index:99;opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .25s ease,transform .3s var(--ease),visibility .25s ease;overflow:auto}.mobile-nav.is-open{opacity:1;visibility:visible;transform:none}.mobile-nav-inner{width:min(calc(100% - 40px),620px);margin:0 auto;padding:26px 0 44px}.mobile-nav-label{font-size:.68rem;color:var(--ochre);margin-bottom:18px}.mobile-nav li{border-top:1px solid var(--line)}.mobile-nav li:last-child{border-bottom:1px solid var(--line)}.mobile-nav a{display:flex;justify-content:space-between;align-items:center;padding:18px 0;font:600 2rem/1 'Zilla Slab';color:var(--pine-deep)}.mobile-nav a span{font:500 .68rem 'JetBrains Mono';color:var(--ochre)}.mobile-nav-contact{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}.mobile-nav-contact a{font:500 .82rem 'JetBrains Mono';color:var(--ochre)}

/* HERO */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--pine-deep)}.hero-media{position:absolute;inset:0}.hero-media picture,.hero-media img{width:100%;height:100%}.hero-media img{object-fit:cover;object-position:56% center}.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,29,22,.62),rgba(11,29,22,.18) 55%,rgba(11,29,22,.26)),linear-gradient(0deg,rgba(11,29,22,.94),rgba(11,29,22,.2) 58%,rgba(11,29,22,.2))}
.hero-inner{position:relative;z-index:1;width:100%;padding:190px 0 58px}.hero-eyebrow{display:flex;align-items:center;gap:13px;font:500 .72rem 'JetBrains Mono';letter-spacing:.15em;color:var(--ochre-light);text-transform:uppercase;margin-bottom:24px}.hero-eyebrow::before{content:"";width:42px;height:1px;background:var(--ochre-light)}.hero h1{font-size:clamp(3.4rem,7vw,6rem);color:#fff;max-width:8ch}.hero h1 em{font-style:italic;font-weight:500;color:var(--ochre-light)}.hero-sub{max-width:590px;margin-top:28px;color:rgba(255,255,255,.86);font-size:1rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:38px}.hero-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-on-dark);margin-top:68px;padding-top:20px;max-width:760px}.hero-facts div{padding-right:26px;border-right:1px solid var(--line-on-dark)}.hero-facts div+div{padding-left:24px}.hero-facts div:last-child{border-right:0}.hero-facts strong{display:block;font:600 1.45rem 'Zilla Slab';color:#fff;margin-bottom:2px}.hero-facts span{display:block;font-size:.78rem;color:rgba(255,255,255,.7)}.hero-scroll{position:absolute;right:32px;bottom:32px;z-index:2;display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.7);font-size:.62rem;writing-mode:vertical-rl}.hero-scroll span{display:block;width:1px;height:44px;background:var(--ochre-light);animation:scrollLine 2s ease-in-out infinite}@keyframes scrollLine{0%,100%{transform:scaleY(.55);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}

/* WHO WE ARE */
.intro{padding:130px 0;background:var(--paper)}.intro-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:76px;align-items:start}.intro-visual .eyebrow{margin-bottom:22px}.intro-image{display:block;width:100%;aspect-ratio:1 / 1;position:relative;overflow:hidden;background:var(--stone);padding:0;text-align:left}.intro-image img{display:block;width:100%;height:100%;aspect-ratio:1 / 1;object-fit:cover;transition:transform .7s var(--ease)}.intro-image:hover img{transform:scale(1.025)}.image-expand{position:absolute;right:14px;bottom:14px;padding:8px 10px;background:rgba(11,29,22,.78);color:#fff;font-size:.58rem;opacity:0;transform:translateY(6px);transition:.25s ease}.intro-image:hover .image-expand,.why-media button:hover .image-expand{opacity:1;transform:none}.intro-copy{padding-top:46px}.intro-statement{font:500 italic clamp(2rem,3.5vw,3rem)/1.2 'Zilla Slab';color:var(--pine-deep);max-width:18ch}.intro-statement strong{font-weight:700;font-style:normal;color:var(--ochre)}.intro-body{max-width:58ch;margin-top:36px;color:#3a3a33;font-size:1rem}.intro-body p+p{margin-top:16px}

/* SERVICES */
.services{padding:124px 0 116px;background:var(--stone);overflow:hidden}.services-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;border-bottom:1px solid var(--line);padding-bottom:38px;margin-bottom:40px}.services-head h2{font-size:clamp(3rem,5.5vw,4.6rem);margin-top:4px}.services-note{max-width:35ch;font-size:.94rem;color:#48473f}.service-gallery-wrap{position:relative}.service-gallery{display:flex;gap:18px;overflow-x:auto;padding:0 2px 24px;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;scrollbar-width:none}.service-gallery::-webkit-scrollbar{display:none}.service-card{flex:0 0 clamp(300px,30vw,390px);scroll-snap-align:start;background:var(--paper);border:1px solid rgba(23,21,16,.09);transition:transform .35s var(--ease),border-color .35s ease;box-shadow:0 10px 30px rgba(23,21,16,.035)}.service-card:hover{transform:translateY(-5px);border-color:rgba(166,116,31,.35)}.service-image{display:block;width:100%;position:relative;overflow:hidden;background:#d7d0c2;padding:0;text-align:left}.service-image img{width:100%;height:280px;object-fit:cover;transition:transform .7s var(--ease),filter .4s ease}.service-card:hover .service-image img{transform:scale(1.035)}.service-open{position:absolute;right:14px;top:14px;padding:8px 10px;background:rgba(11,29,22,.82);color:#fff;font:500 .58rem 'JetBrains Mono';letter-spacing:.1em;text-transform:uppercase;opacity:0;transform:translateY(-5px);transition:.25s ease}.service-card:hover .service-open,.service-image:focus-visible .service-open{opacity:1;transform:none}.service-card-body{display:grid;grid-template-columns:40px 1fr;gap:14px;padding:20px 20px 23px}.service-number{color:var(--ochre);font-size:.65rem;padding-top:3px}.service-category{font-size:.57rem;color:var(--ochre);margin-bottom:7px}.service-card h3{font-size:1.48rem;margin-bottom:8px}.service-card-body p:last-child{font-size:.84rem;color:#4a4941;line-height:1.55}.gallery-controls{display:flex;align-items:center;gap:12px;max-width:520px;margin:24px auto 0}.gallery-arrow{width:44px;height:44px;border:1px solid var(--line);display:grid;place-items:center;font-size:1rem;transition:.2s ease;flex:none}.gallery-arrow:hover{background:var(--pine);border-color:var(--pine);color:#fff}.gallery-progress{height:1px;background:rgba(23,21,16,.16);flex:1;position:relative;overflow:hidden}.gallery-progress span{position:absolute;inset:0 auto 0 0;width:10%;background:var(--ochre);transition:width .2s ease}

/* WORK */
.work{padding:132px 0;background:var(--paper)}.work-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:54px}.work-head h2{font-size:clamp(3rem,5.4vw,4.4rem)}.work-head>p{max-width:34ch;color:#3a3a33;font-size:.94rem}.work-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.work-item{position:relative;overflow:hidden;background:var(--ink);min-width:0}.work-item button{width:100%;height:100%;display:block;padding:0}.work-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .5s ease}.work-item:hover img{transform:scale(1.045)}.work-item::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(0,0,0,.64),transparent 58%);opacity:0;transition:.25s ease;pointer-events:none}.work-item:hover::before{opacity:1}.work-item .frame{position:absolute;inset:12px;border:1px solid transparent;z-index:2;pointer-events:none;transition:.3s ease}.work-item:hover .frame{border-color:rgba(255,255,255,.5)}.work-item .corner{position:absolute;width:14px;height:14px;z-index:3;opacity:0;transition:.25s ease}.work-item:hover .corner{opacity:1}.corner.tl{top:8px;left:8px;border-top:1px solid #fff;border-left:1px solid #fff}.corner.tr{top:8px;right:8px;border-top:1px solid #fff;border-right:1px solid #fff}.corner.bl{bottom:8px;left:8px;border-bottom:1px solid #fff;border-left:1px solid #fff}.corner.br{bottom:8px;right:8px;border-bottom:1px solid #fff;border-right:1px solid #fff}.cap{position:absolute;z-index:4;left:20px;bottom:16px;color:#fff;font-size:.6rem;opacity:0;transform:translateY(6px);transition:.25s ease}.work-item:hover .cap{opacity:1;transform:none}.w-a{grid-column:1/8;grid-row:1/3;height:640px}.w-b{grid-column:8/13;height:310px}.w-c{grid-column:8/13;height:310px}.w-d{grid-column:1/5;height:380px}.w-e{grid-column:5/9;height:380px}.w-f{grid-column:9/13;height:380px}.work-more{display:flex;justify-content:center;margin-top:50px}

/* WHY */
.why{background:var(--pine-deep);color:#fff;overflow:hidden}.why-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:650px}.why-media{position:relative;min-height:520px}.why-media button{width:100%;height:100%;padding:0;position:relative;overflow:hidden;text-align:left}.why-media img{width:100%;height:100%;min-height:520px;object-fit:cover;transition:transform .75s var(--ease)}.why-media button:hover img{transform:scale(1.025)}.why-content{padding:100px 0 100px 72px;display:flex;flex-direction:column;justify-content:center}.why-content h2{color:#fff;font-size:clamp(2.7rem,4.8vw,4rem);max-width:9ch;margin-bottom:34px}.why-list{border-top:1px solid var(--line-on-dark)}.why-item{display:grid;grid-template-columns:72px 1fr;gap:16px;padding:24px 0;border-bottom:1px solid var(--line-on-dark);transition:padding-left .3s var(--ease)}.why-item:hover{padding-left:8px}.why-item .num{font:500 .66rem 'JetBrains Mono';color:var(--ochre-light);padding-top:4px}.why-item h3{color:#fff;font-size:1.22rem;margin-bottom:7px}.why-item p{color:rgba(255,255,255,.7);font-size:.88rem;max-width:44ch}

/* ABOUT */
.about{padding:132px 0;background:var(--paper)}.about .container{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:76px;align-items:center}.about-media{position:relative}.about-media img{width:100%;height:560px;object-fit:cover}.about-media .tag{position:absolute;left:0;bottom:0;background:var(--ochre);color:#fff;padding:11px 16px;font-size:.6rem}.about-body h2{font-size:clamp(2.8rem,4.7vw,4rem);max-width:10ch;margin-bottom:26px}.about-body>p:not(.eyebrow){max-width:55ch;color:#3a3a33;font-size:1rem}.about-body>p+p{margin-top:17px}.about-trades{display:flex;flex-wrap:wrap;gap:0 14px;border-top:1px solid var(--line);margin-top:36px;padding-top:25px}.about-trades span{font-size:.63rem;color:var(--pine-deep);padding-right:14px;position:relative}.about-trades span:not(:last-child)::after{content:"·";position:absolute;right:1px;color:var(--ochre)}

/* CONTACT */
.contact{background:var(--pine);color:#fff;padding:132px 0 88px}.contact-top{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;padding-bottom:68px;border-bottom:1px solid var(--line-on-dark)}.contact h2{color:#fff;font-size:clamp(3.2rem,6vw,5.3rem);max-width:9ch}.contact-top>div>p:not(.eyebrow){max-width:45ch;margin-top:24px;color:rgba(255,255,255,.76);font-size:1rem}.contact-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.contact-details{display:grid;gap:30px;align-content:start}.contact-details .label{font-size:.61rem;color:var(--ochre-light);margin-bottom:7px}.contact-details .value{display:block;font:500 1.5rem/1.2 'Zilla Slab';margin-bottom:5px;transition:color .2s ease}.contact-details a.value:hover{color:var(--ochre-light)}.contact-details .value-email{font-size:1.02rem;word-break:break-word}.contact-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:30px;font-size:.61rem;color:rgba(255,255,255,.52)}

/* FOOTER */
.site-footer{background:var(--pine-deep);color:rgba(255,255,255,.6);padding:28px 0 36px}.site-footer .container{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;font-size:.75rem}.brand-mini{font:700 1.05rem 'Zilla Slab';color:#fff}.footer-social{display:flex;justify-content:center;gap:10px}.footer-social a{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);color:rgba(255,255,255,.78);transition:.22s ease}.footer-social svg{width:18px;height:18px}.footer-social a:hover{color:#fff;border-color:#fff;background:rgba(255,255,255,.08);transform:translateY(-2px)}.site-footer .container>span:last-child{text-align:right}

/* LIGHTBOX */
.lightbox{position:fixed;inset:0;z-index:300;background:rgba(7,16,12,.97);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;padding:80px 90px 70px}.lightbox.is-open{opacity:1;visibility:visible}.lightbox-top{position:absolute;top:20px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center}.lightbox-top p{color:var(--ochre-light);font-size:.62rem}.lightbox-close,.lightbox-prev,.lightbox-next{width:52px;height:52px;display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.24);font-size:1.35rem;transition:.2s ease;z-index:2}.lightbox-close{font-size:2rem;font-weight:300}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:rgba(255,255,255,.1);border-color:#fff}.lightbox-prev{position:absolute;left:24px;top:50%;transform:translateY(-50%)}.lightbox-next{position:absolute;right:24px;top:50%;transform:translateY(-50%)}.lightbox-figure{max-width:min(92vw,1180px);max-height:calc(100vh - 160px);display:flex;flex-direction:column;align-items:center;gap:12px}.lightbox-figure img{max-width:100%;max-height:calc(100vh - 200px);width:auto;height:auto;object-fit:contain;box-shadow:0 28px 90px rgba(0,0,0,.45)}.lightbox-figure figcaption{color:rgba(255,255,255,.72);font-size:.72rem;text-align:center}.lightbox-count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);font-size:.61rem;color:rgba(255,255,255,.6)}

/* FLOATING WHATSAPP */
.whatsapp-float{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:190;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#25D366;color:#fff;box-shadow:0 9px 28px rgba(11,29,22,.35);transition:transform .22s var(--ease),box-shadow .22s ease}.whatsapp-float:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(11,29,22,.43)}.whatsapp-float svg{width:28px;height:28px;position:relative;z-index:2}.wa-ping{position:absolute;inset:0;border-radius:50%;background:#25D366;opacity:.5;animation:wa-pulse 2.5s ease-out infinite}.wa-tooltip{position:absolute;right:70px;top:50%;transform:translateY(-50%);background:var(--ink);color:#fff;padding:8px 12px;font:500 .62rem Inter;white-space:nowrap;opacity:0;visibility:hidden;transition:.2s ease}.whatsapp-float:hover .wa-tooltip{opacity:1;visibility:visible}@keyframes wa-pulse{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.65);opacity:0}}

/* REVEAL */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s var(--ease)}.reveal.is-visible{opacity:1;transform:none}

/* RESPONSIVE */
@media(max-width:1100px){
  .brand-mark{width:190px}.brand-tagline{display:none}.main-nav ul{gap:24px}.header-quote{display:none}.hero-inner{padding-top:160px}.intro-layout{gap:52px}.why-content{padding-left:52px}.about .container{gap:52px}
}
@media(max-width:900px){
  .container{width:min(calc(100% - 40px),var(--container))}.header-inner{min-height:72px}.brand-mark{width:176px}.main-nav{display:none}.nav-toggle{display:block}.site-header{background:rgba(251,249,243,.96);backdrop-filter:blur(12px);border-bottom-color:var(--line);box-shadow:0 8px 28px rgba(11,29,22,.05)}.site-header:not(.is-scrolled) .nav-toggle,.site-header.is-scrolled .nav-toggle{color:var(--ink)}.site-header:not(.is-scrolled) .phone-link{color:var(--ink)}.mobile-nav{inset:72px 0 0}.hero-inner{padding:145px 0 52px}.hero-scroll{display:none}.hero-facts{max-width:none}.intro-layout,.about .container{grid-template-columns:1fr}.intro-copy{padding-top:0}.about-media img{height:420px}.why-layout{grid-template-columns:1fr}.why-media,.why-media img{min-height:420px;height:420px}.why-content{padding:70px 0 78px}.contact-top{grid-template-columns:1fr;gap:48px}.site-footer .container{grid-template-columns:1fr auto}.site-footer .container>span:last-child{grid-column:1/-1;text-align:left}.footer-social{grid-column:2;grid-row:1}.service-card{flex-basis:min(72vw,370px)}
}
@media(max-width:640px){
  .container{width:calc(100% - 40px)}section[id]{scroll-margin-top:76px}.brand-mark{width:158px}.hero{min-height:100svh}.hero-media img{object-position:54% center}.hero-media::after{background:linear-gradient(90deg,rgba(11,29,22,.64),rgba(11,29,22,.2) 80%),linear-gradient(0deg,rgba(11,29,22,.94),rgba(11,29,22,.08) 62%,rgba(11,29,22,.25))}.hero-inner{padding:128px 0 34px}.hero h1{font-size:clamp(3rem,15vw,4.25rem)}.hero-sub{font-size:.91rem;line-height:1.55;margin-top:22px}.hero-actions{display:grid;grid-template-columns:1fr;margin-top:30px}.hero-actions .btn{width:100%}.hero-facts{grid-template-columns:1fr 1fr;margin-top:42px;padding-top:16px;gap:14px 0}.hero-facts div{min-height:58px;padding-right:12px}.hero-facts div+div{padding-left:14px}.hero-facts div:last-child{grid-column:1/-1;border-right:0;border-top:1px solid var(--line-on-dark);padding:14px 0 0}.hero-facts strong{font-size:1.25rem}.hero-facts span{font-size:.7rem}.mobile-nav a{font-size:1.75rem}.intro{padding:84px 0}.intro-layout{gap:42px}.intro-image img{aspect-ratio:1 / 1}.intro-copy{padding-top:0}.intro-statement{font-size:2rem}.intro-body{font-size:.93rem}.services{padding:86px 0 78px}.services-head{display:block;margin-bottom:28px;padding-bottom:28px}.services-note{margin-top:14px;font-size:.88rem}.service-gallery{gap:14px;padding-bottom:18px}.service-card{flex-basis:82vw}.service-image img{height:230px}.service-card-body{padding:17px 17px 20px}.service-card h3{font-size:1.3rem}.service-card-body p:last-child{font-size:.8rem}.gallery-controls{margin-top:16px}.work{padding:88px 0}.work-head{display:block;margin-bottom:30px}.work-head>p{margin-top:18px}.work-grid{grid-template-columns:repeat(2,1fr);gap:10px}.w-a,.w-f{grid-column:1/-1;height:68vw}.w-b,.w-c,.w-d,.w-e{grid-column:auto;height:52vw}.work-item .cap{display:none}.work-item .frame{inset:7px}.work-more{margin-top:34px}.why-media,.why-media img{min-height:310px;height:310px}.why-content{padding:60px 0 66px}.why-content h2{font-size:3rem}.why-item{grid-template-columns:44px 1fr;padding:21px 0}.why-item h3{font-size:1.1rem}.why-item p{font-size:.82rem}.about{padding:88px 0}.about-media img{height:320px}.about-body h2{font-size:3rem}.about-body>p:not(.eyebrow){font-size:.92rem}.contact{padding:88px 0 60px}.contact h2{font-size:3.35rem}.contact-top{gap:40px;padding-bottom:48px}.contact-actions{display:grid;grid-template-columns:1fr}.contact-actions .btn{width:100%}.contact-details .value{font-size:1.35rem}.contact-details .value-email{font-size:.92rem}.contact-bottom{font-size:.55rem}.site-footer{padding-bottom:calc(34px + env(safe-area-inset-bottom))}.site-footer .container{grid-template-columns:1fr;justify-items:center;text-align:center}.footer-social{grid-column:auto;grid-row:auto;order:-1}.site-footer .container>span:last-child{grid-column:auto;text-align:center}.whatsapp-float{right:max(16px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:54px;height:54px}.whatsapp-float svg{width:25px;height:25px}.wa-tooltip{display:none}.lightbox{padding:70px 52px 60px}.lightbox-prev,.lightbox-next{width:44px;height:44px}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-close{width:44px;height:44px}.lightbox-top{left:14px;right:14px;top:14px}.lightbox-figure img{max-height:calc(100vh - 190px)}
}
@media(max-width:360px){.container{width:calc(100% - 32px)}.brand-mark{width:146px}.hero h1{font-size:2.85rem}.hero-facts{grid-template-columns:1fr}.hero-facts div,.hero-facts div+div{padding:10px 0;border-right:0;border-bottom:1px solid var(--line-on-dark)}.hero-facts div:last-child{grid-column:auto;border-top:0;border-bottom:0}.service-card{flex-basis:86vw}.mobile-nav-inner{width:calc(100% - 32px)}}

@media (hover:none){.image-expand,.service-open,.work-item .cap{opacity:1;transform:none}.work-item::before{opacity:.55}.work-item .frame{border-color:rgba(255,255,255,.35)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.wa-ping{animation:none;display:none}.hero-scroll span{animation:none}.service-gallery{scroll-behavior:auto}}
