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

:root{--ink:#101514;--paper:#f2f1eb;--white:#fbfaf6;--mint:#b9ffd9;--green:#38e28c;--muted:#6f7671;--line:rgba(16,21,20,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.nav{position:fixed;z-index:20;top:0;left:0;width:100%;height:82px;padding:0 clamp(24px,5vw,78px);display:flex;align-items:center;justify-content:space-between;color:#fff;transition:.35s}.nav.scrolled{height:68px;background:rgba(16,21,20,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.1)}.brand{display:flex;align-items:center;gap:12px;font-weight:600;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border:1px solid currentColor;border-radius:50%;font-family:'DM Mono';font-size:14px}.nav-links{display:flex;align-items:center;gap:34px;font-size:13px}.nav-links>a{transition:.2s}.nav-links>a:hover{color:var(--mint)}.nav-cta{padding:12px 17px;border:1px solid rgba(255,255,255,.35);border-radius:999px}.nav-cta span,.button span{margin-left:9px}.menu-button{display:none;background:none;border:0;color:#fff}.hero{position:relative;min-height:920px;padding:180px clamp(24px,8vw,128px) 48px;overflow:hidden;background:var(--ink);color:#fff}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to bottom,black,transparent 88%)}.orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.6}.orb-one{right:-4%;top:9%;width:520px;height:520px;background:radial-gradient(circle at 40% 40%,rgba(185,255,217,.5),rgba(56,226,140,.08) 45%,transparent 70%)}.orb-two{right:29%;bottom:10%;width:220px;height:220px;background:radial-gradient(circle,rgba(56,226,140,.18),transparent 70%)}.eyebrow,.section-label{position:relative;font-family:'DM Mono';font-size:11px;text-transform:uppercase;letter-spacing:.12em}.eyebrow{display:flex;align-items:center;gap:10px;color:#b9c2bd}.pulse{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(56,226,140,.12)}h1{position:relative;max-width:1050px;margin:42px 0 30px;font-size:clamp(58px,8.8vw,136px);line-height:.88;letter-spacing:-.07em;font-weight:500}h1 span{color:var(--mint);font-style:italic}.hero-copy{position:relative;max-width:620px;margin-left:min(18vw,220px);font-size:clamp(18px,2vw,25px);line-height:1.55;color:#c6ccc9}.hero-actions{position:relative;margin:38px 0 70px min(18vw,220px);display:flex;gap:12px}.button{display:inline-flex;align-items:center;padding:15px 20px;border-radius:999px;font-size:13px}.primary{background:var(--mint);color:var(--ink)}.secondary{border:1px solid rgba(255,255,255,.3)}.signal-card{position:absolute;right:7%;bottom:112px;width:290px;height:170px;padding:22px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035);backdrop-filter:blur(10px)}.signal-top{display:flex;align-items:center;gap:8px;font-family:'DM Mono';font-size:8px;letter-spacing:.1em;color:#a8b0ac}.signal-line{height:1px;flex:1;background:#45504b}.signal-bars{height:95px;display:flex;align-items:end;gap:8px;margin-top:18px}.signal-bars i{flex:1;background:linear-gradient(var(--mint),rgba(185,255,217,.1));border-radius:2px 2px 0 0}.hero-foot{position:absolute;left:clamp(24px,8vw,128px);right:clamp(24px,8vw,128px);bottom:35px;display:flex;justify-content:space-between;font-family:'DM Mono';font-size:9px;color:#85908a;letter-spacing:.12em}.section{padding:120px clamp(24px,8vw,128px)}.section-label{padding-bottom:22px;border-bottom:1px solid var(--line);color:#626964}.section-label span{display:inline-block;width:52px;color:#9ca29e}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;padding-top:70px}.about h2,.section-heading h2,.process h2,.contact h2{margin:0;font-size:clamp(42px,5.8vw,82px);line-height:1.02;letter-spacing:-.055em;font-weight:500}.about-copy{padding-top:7px}.about-copy>p{font-size:19px;line-height:1.65;color:#4f5652;margin:0 0 24px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border-top:1px solid var(--line);margin-top:48px;padding-top:25px}.principles strong,.principles span{display:block}.principles strong{font-size:13px}.principles span{font-size:11px;color:#7d847f;margin-top:6px}.services{background:var(--white)}.section-heading{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:10vw;padding:60px 0 75px}.section-heading p{margin:0;color:#68706b;line-height:1.65;max-width:460px}.service{display:grid;grid-template-columns:70px 1fr 50px;gap:20px;padding:36px 0;border-top:1px solid var(--line)}.service-number{font-family:'DM Mono';font-size:11px;color:#929993}.service h3{font-size:30px;letter-spacing:-.035em;margin:0 0 12px}.service p{max-width:650px;margin:0;color:#68706b;line-height:1.6}.service ul{display:flex;gap:8px;list-style:none;padding:0;margin:22px 0 0;flex-wrap:wrap}.service li{font-family:'DM Mono';font-size:9px;text-transform:uppercase;letter-spacing:.07em;padding:8px 10px;border:1px solid var(--line);border-radius:999px}.service-arrow{font-size:24px;transition:.25s}.service:hover .service-arrow{transform:translate(5px,-5px);color:#0f9b58}.projects{background:#dfe3dd}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.project{background:var(--white)}.project-visual{position:relative;height:310px;overflow:hidden;background:#18201d}.project-2 .project-visual{background:#cfefd8}.project-3 .project-visual{background:#303a36}.project-index{position:absolute;top:18px;left:20px;font-family:'DM Mono';font-size:10px;color:rgba(255,255,255,.6)}.project-2 .project-index{color:#536158}.data-motif{position:absolute;inset:50px 25px;display:flex;align-items:flex-end;gap:11px;transform:skewX(-15deg)}.data-motif i{flex:1;height:30%;border:1px solid rgba(185,255,217,.25);background:rgba(185,255,217,.06)}.data-motif i:nth-child(2){height:58%}.data-motif i:nth-child(3){height:42%}.data-motif i:nth-child(4){height:78%}.data-motif i:nth-child(5){height:95%;background:var(--mint)}.project-2 .data-motif i{border-color:rgba(16,21,20,.2);background:rgba(16,21,20,.04)}.project-2 .data-motif i:nth-child(5){background:#18201d}.metric{position:absolute;right:20px;bottom:18px;text-align:right;color:#fff}.project-2 .metric{color:var(--ink)}.metric small,.metric strong{display:block}.metric small{font-family:'DM Mono';font-size:8px;text-transform:uppercase}.metric strong{font-size:20px;margin-top:3px}.project-body{padding:26px 26px 32px}.project-body>span{font-family:'DM Mono';font-size:9px;color:#7c847f;letter-spacing:.1em}.project-body h3{font-size:24px;margin:15px 0 10px;letter-spacing:-.035em}.project-body p{font-size:14px;color:#69706c;line-height:1.65;margin:0}.process{background:var(--white)}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:12vw;padding-top:70px}.process ol{list-style:none;padding:0;margin:0}.process li{display:grid;grid-template-columns:50px 1fr;padding:24px 0;border-top:1px solid var(--line)}.process li>span{font-family:'DM Mono';font-size:10px;color:#8e9691}.process strong{font-size:20px}.process li p{margin:7px 0 0;color:#727973;font-size:14px}.contact{position:relative;overflow:hidden;background:var(--ink);color:#fff}.contact .section-label{border-color:rgba(255,255,255,.16);color:#9da8a2}.contact-glow{position:absolute;width:700px;height:700px;right:-250px;bottom:-300px;border-radius:50%;background:radial-gradient(circle,rgba(56,226,140,.2),transparent 68%)}.contact-inner{position:relative;padding-top:80px}.contact-inner>p{font-family:'DM Mono';font-size:10px;color:var(--mint);letter-spacing:.12em}.contact h2{font-size:clamp(52px,7.6vw,112px);margin:30px 0 60px}.contact h2 em{color:var(--mint);font-weight:400}.contact-link{display:flex;align-items:center;justify-content:space-between;font-size:clamp(20px,3vw,38px);padding:23px 0;border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}.contact-link span{color:var(--mint)}.contact-meta{display:flex;justify-content:space-between;margin-top:34px;color:#8f9a94;font-size:12px}footer{background:var(--ink);color:#8e9893;padding:34px clamp(24px,8vw,128px);border-top:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;font-size:11px}footer p:nth-child(2){text-align:center}footer p:last-child{text-align:right}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav{height:70px}.menu-button{display:block;width:36px;height:36px}.menu-button span{display:block;width:22px;height:1px;background:#fff;margin:7px}.nav-links{position:fixed;inset:68px 0 auto;background:var(--ink);padding:28px 24px 34px;display:none;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid rgba(255,255,255,.1)}.nav-links.open{display:flex}.nav-links>a{padding:14px 0}.nav-cta{margin-top:12px;text-align:center}.hero{min-height:820px;padding-top:150px}h1{font-size:clamp(52px,15vw,92px)}.hero-copy,.hero-actions{margin-left:0}.signal-card{display:none}.about-grid,.section-heading,.process-grid{grid-template-columns:1fr;gap:45px}.section-heading{align-items:start}.project-grid{grid-template-columns:1fr}.project-visual{height:270px}.principles{grid-template-columns:1fr}.section{padding-top:90px;padding-bottom:90px}}
@media(max-width:560px){.hero{min-height:760px}.hero-actions{flex-direction:column;align-items:stretch}.button{justify-content:space-between}.service{grid-template-columns:35px 1fr}.service-arrow{display:none}.contact-meta{flex-direction:column;gap:10px}.contact h2{margin-bottom:42px}footer{grid-template-columns:1fr;gap:18px}footer p:nth-child(2),footer p:last-child{text-align:left;margin:0}.orb-one{width:360px;height:360px}.section-heading{padding-bottom:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
.metric small {
  display: none;
}
