@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('assets/dm-sans-400.woff') format('woff')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('assets/dm-sans-500.woff') format('woff')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:600;font-display:swap;src:url('assets/dm-sans-600.woff') format('woff')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('assets/space-grotesk-500.woff') format('woff')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url('assets/space-grotesk-700.woff') format('woff')}
:root{--ink:#161719;--paper:#f5f5f1;--lime:#d5fb56;--green:#596d16;--line:#d7d8d1;--muted:#606359;--radius:12px;--ease:cubic-bezier(.2,.75,.25,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.5}::selection{background:var(--lime);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #778e24;outline-offset:6px}.projects a:focus-visible{outline-color:var(--lime)}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Space Grotesk',Arial,sans-serif;font-weight:500}h2{font-size:clamp(2.75rem,4.7vw,4.25rem);line-height:1.09;letter-spacing:-.055em}h3{letter-spacing:-.035em}svg.icon{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.wrap{width:min(1280px,88%);margin-inline:auto}.skip-link{position:fixed;top:10px;left:20px;z-index:99;background:var(--lime);padding:12px 20px;transform:translateY(-150%)}.skip-link:focus{transform:none}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.13em;line-height:1.7}.eyebrow>span:first-child:not(.tiny-separator){color:var(--green);margin-right:14px}.tiny-separator{margin-inline:10px;color:#8c8f80}.serif-accent{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-.065em}.site-header{position:sticky;top:0;z-index:30;background:rgba(245,245,241,.94);border-bottom:1px solid var(--line);transition:box-shadow .25s,background .25s}.site-header.scrolled{background:rgba(245,245,241,.97);box-shadow:0 5px 25px #16171908;backdrop-filter:blur(14px)}.header-inner{min-height:89px;display:flex;align-items:center;justify-content:space-between;gap:35px}.logo{display:inline-flex;align-items:baseline;font-family:'Space Grotesk',Arial,sans-serif;font-size:30px;font-weight:700;letter-spacing:-1.6px;white-space:nowrap}.logo>span:not(.logo-period){color:var(--green)}.logo-period{width:6px;height:6px;border-radius:50%;background:var(--lime);margin-left:5px}.site-header nav{display:flex;align-items:center;gap:34px;font-size:.875rem}.site-header nav>a{transition:color .2s}.site-header nav>a:hover{color:var(--green)}.nav-contact{display:inline-flex;align-items:center;gap:25px;border:1px solid var(--ink);padding:11px 17px;border-radius:6px}.nav-contact .icon{width:17px;height:17px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.04fr 1fr;position:relative;padding-top:56px;column-gap:25px}.hero-copy{position:relative;z-index:2;padding-bottom:60px}.hero h1{font-size:clamp(4.5rem,8.2vw,7.35rem);line-height:1.005;letter-spacing:-.07em;margin:30px 0 30px}.title-line{display:block}.highlight{display:inline-block;background:var(--lime);padding:0 .1em .075em;transform:rotate(-2deg);margin-top:6px}.hero-description{font-size:1.0625rem;line-height:1.8;color:var(--muted);max-width:470px}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:30px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:57px;padding:17px 23px;border-radius:6px;background:var(--ink);color:var(--paper);font-size:.9375rem;font-weight:500;transition:transform .25s var(--ease),background .25s,box-shadow .25s}.button .icon{width:19px;height:19px}.button:hover{background:#2f3525;transform:translateY(-3px);box-shadow:0 8px 22px #16171915}.button .icon:last-child{transition:transform .25s}.button:hover .icon:last-child{transform:translate(2px,-2px)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:.875rem;border-bottom:1px solid transparent;padding:9px 0;transition:border-color .2s}.text-link .icon{width:16px;height:16px}.text-link:hover{border-color:var(--ink)}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;isolation:isolate}.sculpture-stage{width:117%;aspect-ratio:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-55%)}.sculpture-fallback{width:100%;height:100%;object-fit:contain;transition:opacity .4s}#sculpture{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .4s} .sculpture-stage.webgl-ready #sculpture{opacity:1}.sculpture-stage.webgl-ready .sculpture-fallback{opacity:0}.art-orbit{position:absolute;width:89%;aspect-ratio:1;border:1px solid #dce0d1;border-radius:50%;transform:translateY(-3%);z-index:-1}.art-orbit::after{content:'';position:absolute;inset:16%;border:1px solid #e2e5da;border-radius:50%}.art-cross{position:absolute;font-size:25px;font-weight:400;color:#8f9585}.cross-one{top:9%;right:3%}.cross-two{bottom:22%;left:5%}.art-note{position:absolute;bottom:11%;right:2%;display:flex;align-items:center;gap:14px;font-size:.875rem;color:var(--muted)}.art-note-line{width:42px;height:1px;background:#8b9479}.art-coordinate{position:absolute;top:5%;left:8%;font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:#717766}.hero-foot{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;border-top:1px solid var(--line);font-size:.6875rem;letter-spacing:.1em;color:var(--muted)}.hero-foot>div{display:flex;gap:26px;font-size:.8125rem;letter-spacing:0}.hero-foot>a{display:grid;place-items:center;width:30px;height:30px}.section{padding-block:100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:23px}.section-intro{font-size:1rem;line-height:1.8;color:var(--muted);padding-bottom:3px}.projects{background:var(--ink);color:var(--paper);margin-top:25px;border-radius:24px 24px 0 0}.projects .eyebrow,.projects .section-intro{color:#adb3a5}.projects .eyebrow>span:first-child{color:var(--lime)}.projects h2 .serif-accent{color:var(--lime)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 30px}.project-featured{grid-column:1/-1}.project-card{min-width:0}.project-visual{position:relative;display:block;border-radius:var(--radius);padding:30px 30px 0;overflow:hidden;isolation:isolate;perspective:1000px}.visual-vola{background:#bfc7b1;padding:45px 9% 0}.visual-amu{background:#39423b}.visual-er{background:#b4b7a6}.browser-frame{border:1px solid #ffffff38;border-bottom:0;border-radius:9px 9px 0 0;overflow:hidden;box-shadow:0 20px 60px #080c193d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s var(--ease);will-change:auto;background:#f4f4ef}.browser-bar{height:31px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 11px;background:#f4f4ef;color:#5e6359;font-size:.625rem}.browser-bar>.icon{width:12px;height:12px}.browser-dots{display:flex;gap:4px}.browser-dots i{width:4px;height:4px;background:#b9bdb2;border-radius:50%}.project-picture{aspect-ratio:1348/870;overflow:hidden;background:#e9e3d9}.project-picture img{width:100%;height:100%;object-fit:cover;object-position:top}.project-featured .project-picture{aspect-ratio:1348/795}.project-open{position:absolute;bottom:18px;right:18px;width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--ink);box-shadow:0 2px 16px #0002;transition:transform .25s,background .25s}.project-visual:hover .project-open{transform:rotate(45deg);background:var(--lime)}.project-details{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-top:25px}.project-type{font-size:.6875rem;font-weight:500;letter-spacing:.1em;color:#b5b9ac}.project-details h3{font-size:clamp(1.4rem,2vw,1.8rem);line-height:1.2;margin:10px 0 11px}.project-details h3 a:hover{color:var(--lime)}.project-details p:not(.project-type){color:#b5b9ac;font-size:.9375rem;line-height:1.7;max-width:580px}.project-link{display:inline-flex;align-items:center;gap:12px;white-space:nowrap;font-size:.8125rem;margin-top:28px;transition:color .2s}.project-link .icon{width:16px;height:16px}.project-link:hover{color:var(--lime)}.project-card:not(.project-featured) .project-details{flex-direction:column}.project-card:not(.project-featured) .project-link{margin-top:1px}.type-preview{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#33282b;font-family:Georgia,serif}.type-preview>span{font-size:clamp(2rem,6vw,5rem);letter-spacing:.07em}.type-preview>em{font-size:clamp(1rem,3vw,2rem)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-card{padding:30px 30px 32px;display:flex;flex-direction:column;border-right:1px solid var(--line);transition:background .25s}.service-card:first-child{padding-left:0}.service-card:last-child{border:0;padding-right:0}.service-top{display:flex;align-items:center;justify-content:space-between}.service-icon{width:57px;height:57px;border:1px solid var(--line);border-radius:12px;display:grid;place-items:center;transition:transform .3s,background .3s,border-color .3s}.service-icon .icon{width:27px;height:27px}.service-card:hover .service-icon{background:var(--lime);border-color:var(--lime);transform:rotate(-6deg)}.number{font-size:.75rem;color:#777d6b}.service-card h3{font-size:2rem;line-height:1.12;margin:32px 0 19px}.service-card p{font-size:1rem;line-height:1.8;color:var(--muted);margin-bottom:28px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto}.tags span{font-size:.75rem;border:1px solid var(--line);padding:6px 10px;border-radius:99px}.process{padding-top:5px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0;gap:27px}.process-grid li{position:relative;padding-top:30px;border-top:1px solid #c9cebc}.step{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--paper);border:1px solid #c9cebc;font-size:.75rem;margin-bottom:27px;position:relative;transition:background .3s}.process-grid li:hover .step{background:var(--lime)}.process-grid h3{font-size:1.25rem;margin-bottom:13px}.process-grid p{font-size:.9375rem;line-height:1.8;color:var(--muted)}.contact{background:var(--lime);border-radius:24px 24px 0 0;position:relative;overflow:hidden}.contact-inner{padding-block:60px 36px}.contact-top{display:flex;align-items:center;justify-content:space-between}.contact .eyebrow>span:first-child{color:#505e28}.contact-mark{font-size:75px;line-height:1;font-weight:400}.contact h2{font-size:clamp(3.4rem,7.2vw,6.8rem);margin:18px 0 40px;max-width:1000px}.contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:35px}.contact-bottom>p{font-size:1.125rem;line-height:1.8;color:#3e4828}.contact-links{display:flex;align-items:center;justify-content:space-between;margin-top:43px;border-top:1px solid #9db640;padding-top:21px;font-size:.875rem}.contact-links a{display:inline-flex;align-items:center;gap:13px}.contact-links a:hover{text-decoration:underline}.contact-links .icon{width:16px;height:16px}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:30px 90px}footer>span{font-size:.8125rem;color:var(--muted)}.back-top{display:inline-flex;align-items:center;gap:15px;font-size:.8125rem}.back-top .icon{width:17px;height:17px}.floating-wa{position:fixed;z-index:35;bottom:calc(24px + env(safe-area-inset-bottom,0px));right:calc(24px + env(safe-area-inset-right,0px));height:56px;width:56px;display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--lime);border:1px solid #ffffff55;border-radius:50%;box-shadow:0 5px 18px #16171924;transition:background .25s,transform .25s}.floating-wa>.icon{width:26px;height:26px}.floating-wa:hover{transform:translateY(-3px);background:#303825}.floating-label{position:absolute;right:68px;background:var(--ink);color:var(--paper);padding:6px 12px;white-space:nowrap;font-size:.8125rem;border-radius:4px;opacity:0;transform:translateX(5px);transition:opacity .2s,transform .2s;pointer-events:none}.floating-wa:hover .floating-label,.floating-wa:focus-visible .floating-label{opacity:1;transform:none}
/* Content starts visible. Enhancement animates only elements entering the viewport. */
@keyframes enter{from{opacity:.1;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal{from{opacity:.2;translate:0 24px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference){.hero-enter{animation:enter .75s var(--ease) both}.hero .eyebrow{animation-delay:.03s}.title-line:nth-child(1){animation-delay:.08s}.title-line:nth-child(2){animation-delay:.14s}.title-line:nth-child(3){animation-delay:.2s}.hero-description{animation-delay:.24s}.hero-actions{animation-delay:.3s}.reveal.in-view{animation:reveal .65s var(--ease) both;animation-delay:var(--delay,0ms)}}
@media(min-width:1600px){.hero{padding-top:80px}.hero-copy{padding-bottom:85px}}
@media(max-width:1100px){.site-header nav{gap:22px}.hero{grid-template-columns:1.12fr 1fr;column-gap:0}.hero-actions{gap:15px}.hero-art .sculpture-stage{width:126%}.hero h1{font-size:clamp(4.1rem,8.4vw,6rem)}.section{padding-block:80px}.section-intro{max-width:230px}.service-card{padding-inline:22px}.project-grid{gap:40px 22px}.project-visual{padding:22px 22px 0}.visual-vola{padding:35px 8% 0}.service-card h3{font-size:1.75rem}.process{padding-top:5px}.process-grid{gap:20px}.process-grid h3{font-size:1.125rem}}
@media(max-width:760px){html{scroll-padding-top:95px}.wrap{width:89%}.header-inner{min-height:73px;gap:15px;flex-wrap:wrap}.logo{font-size:27px}.menu-toggle{align-items:center;justify-content:center;gap:12px;min-width:84px;min-height:44px;background:transparent;border:1px solid var(--line);border-radius:5px;font-size:.8125rem;cursor:pointer}.menu-lines{position:relative;width:16px;height:10px;border-top:1px solid;border-bottom:1px solid;transition:transform .2s}.menu-toggle[aria-expanded=true] .menu-lines{border-bottom:0;transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{content:'';position:absolute;top:-1px;left:0;width:16px;border-top:1px solid;transform:rotate(90deg)}.site-header nav{width:100%;padding:0 0 17px;gap:10px;flex-wrap:wrap}.site-header nav>a{padding:10px 12px;font-size:.875rem}.site-header nav .nav-contact{margin-left:auto}.menu-enhanced .menu-toggle{display:flex}.menu-enhanced .site-header nav{display:none}.menu-enhanced .site-header nav.open{display:flex}.hero{padding-top:38px;grid-template-columns:1fr}.hero-copy{padding-bottom:0}.hero .eyebrow{font-size:.6875rem;letter-spacing:.07em}.tiny-separator{margin-inline:6px}.hero h1{font-size:clamp(4.35rem,12.7vw,6.4rem);line-height:1.015;margin-block:25px}.hero-description{font-size:1rem;max-width:490px;line-height:1.8}.hero-actions{gap:22px;margin-top:27px}.button{padding:16px 20px;gap:20px;font-size:.875rem;min-height:55px}.hero-art{height:325px;max-width:470px;width:100%;margin:0 auto;overflow:hidden}.hero-art .sculpture-stage{width:100%;max-width:420px;transform:translate(-50%,-50%);top:48%}.art-orbit{width:70%;height:82%;aspect-ratio:auto;transform:none}.cross-one{right:6%;top:15%}.cross-two{left:5%;bottom:20%}.art-note{bottom:5%;right:3%;font-size:.75rem}.art-coordinate{top:9%;left:5%;font-size:.625rem}.hero-foot{padding-block:17px;font-size:.625rem;gap:15px}.hero-foot>span{max-width:135px;line-height:1.7}.hero-foot>div{gap:12px;font-size:.75rem}.hero-foot>a{display:none}.projects{margin-top:15px;border-radius:17px 17px 0 0}.section{padding-block:60px}.section-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:33px}.section-heading .eyebrow{margin-bottom:19px}.section-intro{max-width:none;font-size:.9375rem}.section-intro br{display:none}.section-intro br:after{content:' '}.section-intro br{display:initial}h2{font-size:clamp(2.5rem,8.6vw,3.6rem)}.project-grid{grid-template-columns:1fr;gap:37px}.project-featured{grid-column:auto}.project-visual,.visual-vola{padding:20px 20px 0;border-radius:9px}.browser-bar{height:25px;font-size:.5625rem;gap:8px}.browser-dots{gap:3px}.browser-dots i{width:3px;height:3px}.project-picture,.project-featured .project-picture{aspect-ratio:1348/926}.project-open{width:36px;height:36px;bottom:12px;right:12px}.project-open .icon{width:19px;height:19px}.project-details,.project-featured .project-details{flex-direction:column;padding-top:20px;gap:15px}.project-details h3{font-size:1.5rem}.project-link,.project-featured .project-link{margin-top:0}.project-details p:not(.project-type){font-size:.9375rem}.service-grid{grid-template-columns:1fr}.service-card,.service-card:first-child,.service-card:last-child{border-right:0;border-bottom:1px solid var(--line);padding:27px 0}.service-card:last-child{border-bottom:0}.service-card h3{font-size:1.9rem;margin:22px 0 15px}.service-card h3 br{display:none}.service-card h3 br:after{content:' '}.service-card h3{max-width:300px}.service-card p{margin-bottom:20px}.service-icon{width:48px;height:48px}.process{padding-top:0}.process-grid{grid-template-columns:1fr 1fr;gap:30px 24px}.process-grid li{padding-top:20px}.step{margin-bottom:19px}.process-grid h3{font-size:1.125rem;line-height:1.35}.process-grid p{font-size:.875rem}.contact{border-radius:17px 17px 0 0}.contact-inner{padding-block:36px 26px}.contact .eyebrow{font-size:.6875rem}.contact-mark{font-size:49px}.contact h2{font-size:clamp(2.9rem,10vw,4.9rem);line-height:1.1;margin:24px 0 30px}.contact-bottom{flex-direction:column;align-items:flex-start;gap:25px}.contact-bottom>p{font-size:1rem}.contact-links{margin-top:32px;gap:20px;flex-wrap:wrap;font-size:.8125rem}footer{flex-wrap:wrap;gap:22px;padding:27px 0 103px}footer>.logo{width:100%}footer>span{font-size:.75rem}.back-top{margin-left:auto;font-size:.75rem}.floating-wa{width:50px;height:50px;right:calc(17px + env(safe-area-inset-right,0px));bottom:calc(17px + env(safe-area-inset-bottom,0px))}.floating-wa>.icon{width:24px;height:24px}.floating-label{display:none}}
@media(max-width:370px){.hero h1{font-size:3.4rem}.hero-actions{gap:10px}.hero .eyebrow{font-size:.625rem}.hero-art{height:285px}.project-visual,.visual-vola{padding:14px 14px 0}.process-grid{grid-template-columns:1fr}.contact h2{font-size:2.75rem}.site-header nav>a{padding:9px 6px}.site-header nav .nav-contact{margin-left:0}.hero-foot>div{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.browser-frame{transform:none!important}#sculpture{display:none!important}.sculpture-stage .sculpture-fallback{opacity:1!important}}
@media(hover:none){.browser-frame{transform:none!important}}

.floating-wa.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
