:root{--ink:#15271f;--forest:#1d3c30;--forest-deep:#10251d;--paper:#f2f4ee;--white:#fbfcf8;--lime:#d3f56a;--coral:#da7555;--muted:#65736b;--line:#15271f29;--line-light:#f2f4ee33;--display:"Bricolage Grotesque", system-ui, sans-serif;--sans:"Hanken Grotesk", system-ui, sans-serif;--pad:clamp(20px, 4vw, 56px)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}h1,h2,h3,p,ol{margin:0;padding:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.035em;font-weight:700;line-height:1}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.skip-link{z-index:60;background:var(--lime);padding:10px 14px;position:absolute;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:none}.wrap{width:min(100%,1240px);padding:0 var(--pad);margin:0 auto}section{position:relative}.site-header{z-index:50;border:1px solid var(--line-light);background:var(--forest-deep);width:min(1180px,100% - 32px);height:60px;color:var(--paper);border-radius:99px;justify-content:space-between;align-items:center;padding:0 10px 0 22px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #05120c47}.brand img{width:auto;height:30px}.main-nav{align-items:center;gap:30px;font-size:15px;display:flex}.main-nav a:not(.nav-cta):hover{color:var(--lime)}.nav-cta{background:var(--lime);color:var(--ink);border-radius:99px;padding:11px 20px;font-weight:600;transition:background .2s}.nav-cta:hover{background:var(--white)}.mobile-menu{display:none}.hero{text-align:center;padding:150px var(--pad) clamp(48px, 6vw, 80px);background:var(--forest-deep);color:var(--paper);flex-direction:column;align-items:center;display:flex;overflow:hidden}.hero-kicker{border:1px solid var(--line-light);color:#fbfcf8d1;border-radius:99px;align-items:center;gap:10px;padding:7px 16px;font-size:14px;display:inline-flex}.dot{background:var(--lime);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #d3f56a24}.hero h1{letter-spacing:-.045em;margin-top:28px;font-size:clamp(46px,8.4vw,124px);line-height:.94}.hero h1 em{color:var(--lime);font-style:normal}.hero-lead{color:#fbfcf8c7;max-width:58ch;margin-top:28px;font-size:19px}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:34px;display:flex}.button{background:var(--lime);color:var(--ink);border-radius:99px;gap:10px;padding:16px 28px;font-weight:600;transition:transform .2s,background .2s;display:inline-flex}.button:hover{background:var(--white);transform:translateY(-2px)}.button-ghost{color:var(--paper);border:1px solid var(--line-light);background:0 0}.button-ghost:hover{background:#f2f4ee1a}.browser-window{background:var(--white);text-align:left;border-radius:14px 14px 0 0;overflow:hidden}.browser-toolbar{border-bottom:1px solid var(--line);color:var(--muted);background:#f7f8f4;align-items:center;gap:14px;padding:11px 16px;font-size:13px;display:flex}.browser-dots{gap:6px;display:flex}.browser-dots i{background:#d7dbd4;border-radius:50%;width:10px;height:10px}.browser-screen img{width:100%}.marquee{background:var(--lime);color:var(--ink);overflow:hidden}.marquee-track{width:max-content;animation:32s linear infinite scroll;display:flex}.marquee p{flex:none;display:flex}.marquee span{font:700 clamp(22px, 2.6vw, 34px)/1 var(--display);letter-spacing:-.02em;align-items:center;gap:36px;padding:20px 36px 20px 0;display:inline-flex}.marquee b{color:var(--coral)}@keyframes scroll{to{transform:translate(-50%)}}.head{grid-template-columns:1.3fr 1fr;align-items:end;gap:40px;display:grid}.head h2{font-size:clamp(34px,5vw,72px)}.head p{max-width:44ch;color:var(--muted);justify-self:end}.head-light p{color:#fbfcf8b8}.expertise{padding:clamp(80px,10vw,140px) 0}.services{border-top:1px solid var(--ink);margin-top:clamp(40px,5vw,72px)}.service{border-bottom:1px solid var(--ink);grid-template-columns:1.2fr 1fr 56px;align-items:center;gap:32px;padding:34px 20px;transition:background .25s,color .25s;display:grid}.service h3{font-size:clamp(26px,3.2vw,44px)}.service p{color:var(--muted);max-width:44ch;transition:color .25s}.service-arrow{border:1px solid;border-radius:50%;place-items:center;width:52px;height:52px;font-size:20px;transition:background .25s,color .25s,border-color .25s,transform .25s;display:grid}.service:hover{background:var(--forest-deep);color:var(--paper)}.service:hover p{color:#fbfcf8b8}.service:hover .service-arrow{background:var(--lime);border-color:var(--lime);color:var(--ink);transform:rotate(45deg)}.work{background:var(--forest);color:var(--paper);padding:clamp(80px,10vw,140px) 0}.stack{margin-top:clamp(40px,5vw,72px)}.panel{color:var(--ink);border-radius:32px;margin-bottom:28px;position:sticky;top:92px;overflow:hidden}.panel:nth-child(2){top:108px}.panel:nth-child(3){margin-bottom:0;top:124px}.panel a{grid-template-columns:minmax(220px,1fr) minmax(0,2fr);align-items:end;gap:clamp(24px,4vw,64px);min-height:520px;padding:clamp(28px,4vw,56px) clamp(28px,4vw,56px) 0;display:grid}.panel-forest{background:var(--forest-deep);color:var(--paper);border:1px solid var(--line-light)}.panel-info{flex-direction:column;justify-content:space-between;align-self:stretch;gap:24px;padding-bottom:clamp(28px,4vw,56px);display:flex}.panel-info h3{font-size:clamp(32px,4vw,56px)}.panel-info p{opacity:.78;margin-top:10px}.pill{border:1px solid;border-radius:99px;align-self:flex-start;padding:8px 18px;font-size:14px;font-weight:600;transition:background .2s,color .2s}.panel-forest .pill{background:var(--lime);border-color:var(--lime);color:var(--ink)}.panel a:hover .pill{background:var(--ink);border-color:var(--ink);color:var(--paper)}.panel .browser-window{transition:transform .5s cubic-bezier(.2,.8,.2,1);box-shadow:0 -8px 50px #05120c40}.panel a:hover .browser-window{transform:translateY(-12px)}.method{padding:clamp(80px,10vw,140px) 0}.steps{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(40px,5vw,72px);list-style:none;display:grid}.steps li{background:var(--white);border:1px solid var(--line);border-radius:24px;padding:32px 28px 36px}.step-n{background:var(--lime);width:48px;height:48px;font:700 18px var(--display);border-radius:50%;place-items:center;display:grid}.steps h3{margin-top:56px;font-size:clamp(26px,2.6vw,36px)}.steps p{color:var(--muted);margin-top:12px}.cta{padding-bottom:clamp(80px,10vw,140px)}.cta-box{background:var(--lime);border-radius:32px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding:clamp(32px,5vw,64px);display:flex}.cta-box p{font-weight:500}.cta-box strong{font:700 clamp(40px, 6.4vw, 92px)/1 var(--display);letter-spacing:-.045em;margin-top:6px;display:block}.cta-box .button{background:var(--forest-deep);color:var(--paper)}.cta-box .button:hover{background:var(--ink)}.faq{padding:0 0 clamp(80px,10vw,140px)}.faq-grid{grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,96px);display:grid}.head-stack{align-self:start;display:block;position:sticky;top:100px}.head-stack p{justify-self:auto;margin-top:22px}.faq-item{border-top:1px solid var(--ink)}.faq-item:last-child{border-bottom:1px solid var(--ink)}.faq-item summary{cursor:pointer;font:600 clamp(18px, 1.8vw, 23px)/1.2 var(--display);letter-spacing:-.01em;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-toggle{border:1px solid var(--ink);border-radius:50%;flex:none;width:36px;height:36px;transition:transform .25s,background .25s;position:relative}.faq-toggle:before,.faq-toggle:after{content:"";background:var(--ink);height:2px;position:absolute;top:17px;left:10px;right:10px}.faq-toggle:after{transform:rotate(90deg)}.faq-item[open] .faq-toggle{background:var(--lime);transform:rotate(45deg)}.faq-answer{color:#3b4d43;max-width:60ch;padding:0 56px 26px 0}.faq-answer a{border-bottom:1px solid var(--coral)}.contact{background:var(--coral);padding:clamp(72px,9vw,120px) 0}.contact h2{font-size:clamp(38px,6vw,88px)}.contact-link{font:700 clamp(26px, 5vw, 72px)/1.05 var(--display);letter-spacing:-.035em;border-bottom:3px solid var(--ink);overflow-wrap:anywhere;margin-top:28px;transition:background .2s;display:inline-block}.contact-link:hover{background:var(--lime)}.contact p{margin-top:18px;font-weight:500}.site-footer{background:var(--forest-deep);color:#fbfcf8b8;padding:64px 0 28px;overflow:hidden}.footer-row{flex-wrap:wrap;justify-content:space-between;gap:28px;display:flex}.footer-row nav{gap:28px;display:flex}.footer-row a:hover{color:var(--lime)}.footer-logo{width:min(100%,80px);height:auto;margin:56px auto 32px;display:block}.footer-bottom{border-top:1px solid var(--line-light);flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-top:22px;font-size:14px;display:flex}@media (max-width:860px){.main-nav{display:none}.mobile-menu{display:block}.mobile-menu-trigger{cursor:pointer;background:0 0;border:0;place-content:center;gap:6px;width:44px;height:44px;display:grid}.mobile-menu-trigger span{background:var(--paper);width:24px;height:2px;display:block}.mobile-menu-panel{background:var(--forest-deep);border:1px solid var(--line-light);border-radius:28px;gap:2px;padding:14px 24px 24px;display:grid;position:absolute;top:68px;left:0;right:0}.mobile-menu-panel a{font:700 24px var(--display);padding:14px 0}.mobile-menu-panel .nav-cta{font:600 16px var(--sans);text-align:center;margin-top:12px}.hero{padding-top:120px}.head,.faq-grid,.steps{grid-template-columns:1fr}.head p{justify-self:start}.head-stack{position:static}.service{grid-template-columns:1fr 52px;gap:14px 20px;padding:26px 0}.service p{grid-area:2/1}.service-arrow{grid-area:1/2/3}.panel{position:static}.panel a{grid-template-columns:1fr;min-height:0}.panel-info{padding-bottom:0}.faq-answer{padding-right:0}.footer-row nav{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
