@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Manrope:wght@400;500;600;700&display=swap');

:root{
  --bg:#09110d; --bg2:#0d1812; --ink:#f1f5ec; --muted:#9aa79f; --line:rgba(255,255,255,.12);
  --lime:#c8ff64; --lime2:#95db37; --card:#111f17; --black:#050805;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:hidden;cursor:none}
a{color:inherit;text-decoration:none} img{display:block;width:100%} button{font:inherit}
.noise{position:fixed;inset:0;pointer-events:none;z-index:1000;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E")}
.cursor-dot,.cursor-ring{position:fixed;pointer-events:none;z-index:2000;border-radius:50%;transform:translate(-50%,-50%);mix-blend-mode:difference}.cursor-dot{width:7px;height:7px;background:#fff}.cursor-ring{width:34px;height:34px;border:1px solid rgba(255,255,255,.8);transition:width .2s,height .2s,background .2s}
.cursor-ring.active{width:58px;height:58px;background:rgba(255,255,255,.12)}
.site-header{height:90px;padding:0 4vw;position:absolute;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.15)}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border:1px solid rgba(255,255,255,.28);border-radius:50%;display:grid;place-items:center}.brand-mark svg{width:28px;fill:var(--lime)}.brand-copy{display:grid;line-height:.9}.brand-copy strong{font-family:'Manrope',sans-serif;font-size:16px;letter-spacing:-.4px}.brand-copy em{font-style:normal;color:var(--lime);font-size:12px;text-transform:uppercase;letter-spacing:2px;margin-top:5px}.desktop-nav{display:flex;gap:34px;font-size:14px}.desktop-nav a{position:relative;color:#dfe7df}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--lime);transition:.3s}.desktop-nav a:hover:after{right:0}.header-cta{border:1px solid rgba(255,255,255,.25);padding:14px 18px;border-radius:100px;font-size:13px;display:flex;gap:14px;align-items:center;backdrop-filter:blur(10px);transition:.3s}.header-cta:hover{background:var(--lime);color:#0a100b;border-color:var(--lime)}.menu-toggle,.mobile-menu{display:none}
.hero{height:100svh;min-height:720px;position:relative;overflow:hidden;display:flex;align-items:flex-end}.hero-bg{position:absolute;inset:-8% 0;background:url('https://images.unsplash.com/photo-1763657236597-e077b187afe4?auto=format&fit=crop&fm=jpg&q=88&w=2200') center/cover no-repeat;transform:scale(1.06)}.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,10,7,.88) 0%,rgba(5,10,7,.42) 52%,rgba(5,10,7,.2) 100%),linear-gradient(0deg,rgba(4,8,5,.72),transparent 55%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:96px 96px;mask-image:linear-gradient(to right,#000,transparent 70%)}
.hero-content{position:relative;z-index:3;width:100%;padding:0 4vw 9vh}.eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#dce8da;margin-bottom:25px}.pulse{width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 0 rgba(200,255,100,.65);animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(200,255,100,0)}100%{box-shadow:0 0 0 0 rgba(200,255,100,0)}}
.hero-title{font-family:'Manrope',sans-serif;font-size:clamp(58px,9.5vw,150px);line-height:.84;letter-spacing:-.07em;margin:0;max-width:1200px;font-weight:500}.hero-title .line{display:block;overflow:hidden;padding-bottom:.08em}.hero-title .line>span{display:block;transform:translateY(110%);animation:titleIn 1.15s cubic-bezier(.16,1,.3,1) forwards .15s}.hero-title .accent-line>span{animation-delay:.28s;color:var(--lime)}@keyframes titleIn{to{transform:translateY(0)}}
.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:38px}.hero-bottom p{max-width:520px;color:#d0dad1;font-size:18px;line-height:1.55;margin:0}.hero-actions{display:flex;align-items:center;gap:26px}.primary-btn{background:var(--lime);color:#0b110c;padding:17px 20px 17px 24px;border-radius:100px;display:flex;gap:30px;align-items:center;font-weight:600;transition:.35s}.primary-btn b{width:34px;height:34px;background:#0b110c;color:var(--lime);display:grid;place-items:center;border-radius:50%;transition:.35s}.primary-btn:hover b{transform:rotate(45deg)}.text-link{font-size:14px;color:#d4ddd5}.text-link span{display:inline-block;margin-left:8px;animation:bob 1.5s infinite}@keyframes bob{50%{transform:translateY(5px)}}
.hero-side-card{position:absolute;z-index:4;right:4vw;top:145px;width:220px;padding:24px;border-radius:18px}.glass{background:rgba(8,18,12,.44);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(18px)}.hero-side-card small{color:var(--lime);text-transform:uppercase;letter-spacing:2px;font-size:10px}.hero-side-card strong{font-family:'Manrope';font-size:22px;display:block;line-height:1.15;margin:12px 0 16px}.mini-line{height:1px;background:rgba(255,255,255,.16);margin:10px 0 13px}.hero-side-card span{font-size:12px;color:#b7c2b9}.scroll-cue{position:absolute;z-index:5;right:4vw;bottom:34px;font-size:9px;letter-spacing:3px;display:flex;align-items:center;gap:12px;writing-mode:vertical-rl}.scroll-cue span{height:48px;width:1px;background:linear-gradient(var(--lime),transparent)}
.marquee-band{background:var(--lime);color:#0c130d;overflow:hidden;padding:14px 0;transform:rotate(-1deg) scale(1.02);position:relative;z-index:5}.marquee-track{display:flex;width:max-content;gap:24px;align-items:center;animation:marquee 24s linear infinite;font-family:'Manrope';font-weight:700;letter-spacing:1px}.marquee-track span{font-size:14px}.marquee-track i{font-style:normal}@keyframes marquee{to{transform:translateX(-50%)}}
.section-pad{padding:130px 6vw}.section-kicker{font-size:11px;letter-spacing:2.4px;color:var(--lime);text-transform:uppercase}.intro{background:var(--bg)}.intro-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:10vw;margin-top:58px}.intro h2,.section-head h2,.contact h2{font-family:'Manrope';font-size:clamp(46px,6.5vw,96px);line-height:.94;letter-spacing:-.055em;font-weight:500;margin:0}.intro h2 span{color:#75847a}.intro-copy p{font-size:19px;line-height:1.65;color:#b6c2b9;margin:0 0 54px;max-width:650px}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:24px}.stats-row div{display:flex;flex-direction:column}.stats-row strong{font-family:'Manrope';font-size:30px}.stats-row span{font-size:11px;color:#7f8e83;text-transform:uppercase;letter-spacing:1.3px;margin-top:7px}
.services{background:#0b150f;position:relative;overflow:hidden}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:70px}.section-head .section-kicker{display:block;margin-bottom:20px}.section-head p{max-width:410px;font-size:17px;line-height:1.6;color:#95a399;margin:0}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:70px 1.2fr 1fr 50px;gap:26px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line);position:relative;z-index:3;transition:.35s}.service-row:before{content:"";position:absolute;inset:0;background:var(--lime);transform:scaleY(0);transform-origin:bottom;transition:.4s cubic-bezier(.16,1,.3,1);z-index:-1}.service-row:hover:before{transform:scaleY(1)}.service-row:hover{color:#0a100b;padding-left:20px;padding-right:20px}.service-num{font-size:11px;color:#76847b}.service-row:hover .service-num{color:#304027}.service-row h3{font-family:'Manrope';font-size:clamp(25px,3vw,44px);letter-spacing:-.03em;margin:0;font-weight:500}.service-row p{color:#8d9c92;line-height:1.5;max-width:400px}.service-row:hover p{color:#263022}.service-arrow{font-size:27px;transition:.3s}.service-row:hover .service-arrow{transform:rotate(45deg)}.service-float-img{position:fixed;left:0;top:0;width:280px;height:190px;overflow:hidden;border-radius:10px;pointer-events:none;z-index:20;opacity:0;transform:translate(-50%,-50%) scale(.8) rotate(-4deg);transition:opacity .18s,transform .25s}.service-float-img.visible{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(-2deg)}.service-float-img img{height:100%;object-fit:cover}
.feature-image{height:90vh;min-height:680px;position:relative;overflow:hidden;display:flex;align-items:center}.feature-bg{position:absolute;inset:-10%;background:url('https://images.unsplash.com/photo-1621584283394-4901c92661d7?auto=format&fit=crop&fm=jpg&q=88&w=2200') center/cover}.feature-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,9,6,.82),rgba(5,9,6,.18))}.feature-copy{position:relative;z-index:2;margin-left:6vw;max-width:650px}.feature-copy>span{color:var(--lime);text-transform:uppercase;letter-spacing:2px;font-size:11px}.feature-copy h2{font-family:'Manrope';font-size:clamp(60px,7.5vw,110px);line-height:.84;letter-spacing:-.06em;font-weight:500;margin:24px 0 30px}.feature-copy p{font-size:18px;color:#d2d9d3;margin-bottom:30px}.outline-btn{display:inline-flex;align-items:center;gap:40px;border:1px solid rgba(255,255,255,.4);padding:16px 18px 16px 22px;border-radius:100px;transition:.3s}.outline-btn:hover{background:#fff;color:#081009}
.process{background:var(--bg)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.process-card{min-height:360px;background:var(--card);padding:26px;border:1px solid var(--line);border-radius:20px;position:relative;overflow:hidden;transition:.35s}.process-card:before{content:"";position:absolute;width:220px;height:220px;background:radial-gradient(circle,rgba(200,255,100,.17),transparent 70%);right:-80px;top:-80px}.process-card>span{font-size:11px;color:#738178}.icon-orbit{width:82px;height:82px;border:1px solid rgba(200,255,100,.35);border-radius:50%;display:grid;place-items:center;font-size:28px;color:var(--lime);margin:58px 0 48px;position:relative}.icon-orbit:after{content:"";position:absolute;width:10px;height:10px;background:var(--lime);border-radius:50%;top:3px;left:10px;transform-origin:31px 37px;animation:orbit 5s linear infinite}@keyframes orbit{to{transform:rotate(360deg)}}.process-card h3{font-family:'Manrope';font-size:27px;margin:0 0 12px}.process-card p{color:#8f9d94;line-height:1.55;margin:0}.process-card:hover{border-color:rgba(200,255,100,.42);transform:translateY(-7px)}
.gallery-section{padding:0 0 120px;background:var(--bg);overflow:hidden}.gallery-track{display:flex;gap:18px;width:max-content;padding-left:6vw}.gallery-card{width:420px;height:500px;position:relative;overflow:hidden;border-radius:18px}.gallery-card.tall{height:610px}.gallery-card img{height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}.gallery-card:hover img{transform:scale(1.07)}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 65%,rgba(0,0,0,.6))}.gallery-card figcaption{position:absolute;z-index:2;bottom:22px;left:22px;font-size:11px;letter-spacing:2px;color:#fff}
.contact{position:relative;background:#c8ff64;color:#0a110c;overflow:hidden}.contact-glow{position:absolute;width:700px;height:700px;border:1px solid rgba(6,12,8,.15);border-radius:50%;right:-210px;top:-290px;box-shadow:0 0 0 100px rgba(7,12,8,.035),0 0 0 200px rgba(7,12,8,.025)}.contact-grid{position:relative;display:grid;grid-template-columns:1.15fr 1fr;gap:10vw}.contact .section-kicker{color:#34412f}.contact-title p{font-size:17px;max-width:420px;line-height:1.6;color:#384431;margin-top:25px}.contact-panel{border-top:1px solid rgba(10,17,12,.25)}.contact-item{display:grid;grid-template-columns:1fr auto;gap:6px;position:relative;padding:26px 4px;border-bottom:1px solid rgba(10,17,12,.25);transition:.3s}.contact-item small{grid-column:1/2;font-size:10px;letter-spacing:1.7px;color:#5c6957}.contact-item strong{font-size:20px;font-weight:500}.contact-item span{grid-column:2;grid-row:1/3;align-self:center;font-size:25px;transition:.3s}.contact-item:hover{padding-left:12px}.contact-item:hover span{transform:rotate(45deg)}.contact-item.location:hover span{transform:none}
footer{padding:34px 6vw;background:#050805;display:flex;align-items:center;justify-content:space-between;color:#778079;font-size:12px}.footer-brand{font-family:'Manrope';font-size:18px;color:#eaf0e9}.footer-brand span{color:var(--lime)}
.reveal{opacity:0;transform:translateY(42px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:none}.reveal-delay{opacity:0;transform:translateY(30px);animation:revealHero .9s .75s forwards}@keyframes revealHero{to{opacity:1;transform:none}}
@media(max-width:950px){body{cursor:auto}.cursor-dot,.cursor-ring{display:none}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:12px}.menu-toggle span{width:26px;height:1px;background:#fff;transition:.3s}.mobile-menu{display:flex;position:fixed;inset:0;background:#09110d;z-index:45;flex-direction:column;justify-content:center;padding:8vw;gap:18px;transform:translateY(-100%);transition:.55s cubic-bezier(.16,1,.3,1)}.mobile-menu.open{transform:none}.mobile-menu a{font-family:'Manrope';font-size:11vw;letter-spacing:-.05em}.mobile-menu .mobile-call{font-family:'DM Sans';font-size:16px;color:var(--lime);margin-top:25px}.site-header{position:absolute}.hero-side-card{display:none}.hero-content{padding-bottom:8vh}.hero-bottom{align-items:flex-start;flex-direction:column}.hero-actions{flex-wrap:wrap}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:55px}.section-head{align-items:flex-start;flex-direction:column}.process-grid{grid-template-columns:1fr}.service-row{grid-template-columns:50px 1fr 35px}.service-row p{display:none}.service-arrow{grid-column:3}.gallery-card{width:75vw}.gallery-card.tall{height:500px}}
@media(max-width:600px){.site-header{height:76px;padding:0 20px}.brand-copy strong{font-size:14px}.brand-mark{width:36px;height:36px}.hero{min-height:680px}.hero-content{padding-left:20px;padding-right:20px}.hero-title{font-size:16vw}.hero-bottom p{font-size:15px}.primary-btn{padding:13px 14px 13px 18px}.scroll-cue{display:none}.section-pad{padding:88px 20px}.intro h2,.section-head h2,.contact h2{font-size:13vw}.intro-copy p{font-size:16px}.stats-row{gap:12px}.stats-row strong{font-size:23px}.stats-row span{font-size:9px}.services .section-head{margin-bottom:45px}.service-row{padding:24px 0}.service-row h3{font-size:7vw}.feature-copy{margin:0 20px}.feature-copy h2{font-size:15vw}.process-card{min-height:330px}.gallery-track{padding-left:20px}.gallery-card,.gallery-card.tall{width:82vw;height:460px}.contact-item strong{font-size:16px;word-break:break-word}footer{align-items:flex-start;gap:14px;flex-direction:column;padding:28px 20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
