@charset "UTF-8";
:root{--paper:#f7f8f2;--ink:#25382f;--muted:#647168;--line:#d7ded2;--lime:#d8f36a;--dark:#20372d;--white:#fff;--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #759936;outline-offset:5px;border-radius:3px}button,input{font:inherit}img{max-width:100%;display:block}p{margin:0}h1,h2,h3{margin:0;font-weight:500}::selection{background:var(--lime);color:var(--ink)}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;left:20px;top:-80px;z-index:20;padding:15px;background:var(--lime);color:var(--ink)}.skip-link:focus{top:15px}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:29px;font-weight:700;letter-spacing:-1.5px;white-space:nowrap}.brand img{width:34px;height:34px}.desktop-nav{display:flex;gap:34px;font-size:14px;align-items:center}.desktop-nav a:not(.nav-contact){position:relative}.desktop-nav a:not(.nav-contact):hover{color:#628132}.nav-contact{border:1px solid var(--ink);border-radius:28px;padding:12px 19px;display:inline-flex;align-items:center;gap:20px;transition:background .18s}.nav-contact:hover{background:var(--lime)}.mobile-menu{display:none}.hero{padding:70px 0 60px;display:grid;grid-template-columns:1.12fr 1fr;gap:65px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;display:flex;align-items:center;gap:10px;line-height:1.6}.eyebrow:before{content:"";width:7px;height:7px;background:#76974a;border-radius:50%;flex-shrink:0}.hero h1{font-size:clamp(51px,5.35vw,78px);line-height:1.06;letter-spacing:-4.6px;margin:29px 0 24px}.hero h1 .soft{color:#7c8b74}.hero-copy{font-size:17px;line-height:1.8;max-width:415px;color:var(--muted)}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;gap:29px;align-items:center;justify-content:space-between;padding:17px 23px;background:var(--ink);color:var(--white);font-size:13px;border-radius:32px;transition:background .18s,transform .18s}.button:hover{background:#405d46;transform:translateY(-2px)}.arrow{font-family:Arial,sans-serif;font-weight:400;font-size:18px;line-height:1}.text-link{display:inline-flex;gap:16px;align-items:center;font-size:13px;border-bottom:1px solid var(--line);padding:12px 0}.text-link:hover{border-color:var(--ink)}.hero-visual{position:relative;background:var(--dark);border-radius:var(--radius);overflow:hidden;aspect-ratio:1/1.04}.hero-visual>img{height:100%;width:100%;object-fit:cover}.visual-caption{position:absolute;inset:23px 25px auto;color:#ecf2e5;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.15em}.visual-bottom{inset:auto 25px 23px;align-items:center}.visual-bottom .mini{letter-spacing:0;font-size:11px;color:#becdbb}.hero-baseline{display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:0 0 32px;color:var(--muted);font-size:11px;letter-spacing:.05em}.baseline-tags{display:flex;align-items:center;gap:22px}.baseline-tags span+span:before{content:"/";margin-right:22px;color:#a0aba0}.section{padding:94px 0}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:48px}.section-label{font-size:11px;letter-spacing:.13em;text-transform:uppercase;display:flex;align-items:center;gap:14px;margin-bottom:25px}.section-label .number{color:#7d8b78}.section h2{font-size:clamp(34px,3.5vw,49px);line-height:1.13;letter-spacing:-2px}.section-intro{font-size:16px;line-height:1.8;max-width:430px;color:var(--muted);justify-self:end}.service-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service{padding:36px 40px 37px 0;display:grid;grid-template-columns:48px 1fr;gap:24px}.service+ .service{padding-left:40px;border-left:1px solid var(--line)}.service-icon{width:48px;height:48px;border:1px solid #bbc9ad;border-radius:12px;display:grid;place-items:center;background:#edf1e5;position:relative}.icon-mobile:before{content:"";width:16px;height:25px;border:1.6px solid var(--ink);border-radius:4px}.icon-mobile:after{content:"";position:absolute;width:5px;height:1.5px;background:var(--ink);bottom:14px}.icon-software:before{content:"";width:25px;height:20px;border:1.6px solid var(--ink);border-radius:4px;background:linear-gradient(to bottom,transparent 5px,var(--ink) 5px,var(--ink) 6px,transparent 6px)}.service h3{font-size:22px;letter-spacing:-.6px;margin:2px 0 13px}.service p{font-size:14px;line-height:1.85;color:var(--muted);max-width:390px}.service small{display:block;color:#55634e;margin-top:23px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.about-band{background:#e9eedf;border-top:1px solid #e1e6d9;border-bottom:1px solid #e1e6d9}.about-layout{display:grid;grid-template-columns:.8fr 1.25fr;gap:110px;align-items:start}.about-emblem{width:154px;height:154px;border:1px solid #c4d1b6;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;margin-top:43px}.about-emblem:after{content:"";position:absolute;inset:13px;border:1px solid #c4d1b6;border-radius:50%}.about-emblem img{width:55px;height:55px;transform:rotate(-10deg)}.about-copy h2{font-size:clamp(31px,3.15vw,45px);line-height:1.24;letter-spacing:-1.8px;margin-bottom:27px}.about-copy p{font-size:15px;line-height:1.9;color:#53634f;max-width:620px}.company-name{font-size:14px;display:block;margin-top:24px;letter-spacing:.08em}.approach-heading{margin-bottom:46px}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}.step{border-top:1px solid #bbc8af;padding-top:25px}.step-index{width:34px;height:34px;background:var(--lime);display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;margin-bottom:35px}.step h3{font-size:22px;letter-spacing:-.7px;margin-bottom:15px}.step p{font-size:14px;line-height:1.85;color:var(--muted)}.contact{padding:0 0 95px}.contact-panel{background:var(--lime);border-radius:var(--radius);padding:53px 58px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.contact h2{font-size:48px;letter-spacing:-2px;line-height:1.1;margin-bottom:18px}.contact p{font-size:14px;line-height:1.8;max-width:420px;color:#465638}.contact-details{border-left:1px solid #a6c34f;padding-left:47px}.contact-details .detail-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}.email-link{display:inline-flex;align-items:center;gap:15px;font-size:clamp(16px,1.8vw,25px);letter-spacing:-.4px;border-bottom:1px solid #8aa13f;padding-bottom:9px;overflow-wrap:anywhere;max-width:100%}.email-link:hover{border-color:var(--ink)}.contact-details .legal{font-size:12px;margin-top:22px;line-height:1.8}.pending-contact{font-size:16px!important;line-height:1.7!important}.site-footer{background:var(--dark);color:#edf3e8;padding:48px 0 26px}.footer-main{display:flex;align-items:start;justify-content:space-between;gap:28px;padding-bottom:40px}.footer-brand .brand{font-size:28px}.footer-brand p{font-size:12px;color:#b3c2b1;margin-top:18px}.footer-links{display:flex;align-items:center;gap:27px;font-size:12px;padding-top:10px}.footer-links a:hover{color:var(--lime)}.footer-bottom{padding-top:24px;border-top:1px solid #4b5d50;display:flex;justify-content:space-between;gap:20px;color:#b3c2b1;font-size:10px;line-height:1.8}.footer-bottom a{text-decoration:underline}.footer-dot{color:var(--lime);padding-right:8px}.policy{max-width:780px;padding:65px 0 85px}.policy h1{font-size:58px;letter-spacing:-2.5px;line-height:1.12;margin:22px 0}.policy .lead{font-size:18px;color:var(--muted);line-height:1.8;margin:24px 0 36px}.policy .policy-date{font-size:12px;color:var(--muted)}.policy section{margin-top:32px}.policy h2{font-size:22px;margin-bottom:13px;letter-spacing:-.5px}.policy p,.policy li{font-size:15px;line-height:1.9;color:#52634f}.policy a:not(.text-link){text-decoration:underline;text-underline-offset:3px}.policy .scope-note{background:#e9eedf;padding:22px;border-radius:12px;line-height:1.8;font-size:14px}.not-found{min-height:60vh;padding:100px 0}.not-found h1{font-size:80px;letter-spacing:-4px}.not-found p{margin:24px 0;line-height:1.8}.not-found .button{margin-right:12px}
@media(min-width:1600px){.hero h1{font-size:80px}.hero{padding-top:85px;padding-bottom:70px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:35px;padding-top:53px}.hero h1{font-size:58px;letter-spacing:-3.5px}.desktop-nav{gap:22px}.hero-copy{font-size:15px}.hero-actions{gap:18px}.about-layout{gap:60px}.contact-panel{padding:42px;gap:35px}.contact-details{padding-left:30px}.contact h2{font-size:42px}.hero-baseline{font-size:10px}.baseline-tags{gap:14px}.baseline-tags span+span:before{margin-right:14px}.section{padding:76px 0}}
@media(max-width:760px){html{scroll-padding-top:25px}.wrap{width:calc(100% - 40px)}.site-header{height:80px}.brand{font-size:27px}.brand img{width:32px;height:32px}.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:25px;padding:10px 15px;font-size:12px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{margin-left:9px}.mobile-menu[open] summary{background:var(--lime)}.mobile-menu nav{position:absolute;right:0;top:48px;z-index:5;min-width:210px;background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:9px;box-shadow:0 12px 36px #20372d17}.mobile-menu nav a{display:block;padding:14px 12px;font-size:14px;border-radius:7px}.mobile-menu nav a:hover{background:#e9eedf}.hero{grid-template-columns:1fr;gap:36px;padding:44px 0 29px}.hero h1{font-size:clamp(46px,9.3vw,68px);letter-spacing:-2.7px;line-height:1.06;margin:24px 0 22px}.hero-copy{max-width:460px;font-size:15px}.hero-actions{margin-top:26px}.hero-visual{aspect-ratio:1.1;max-width:none}.hero-visual>img{object-position:center}.visual-caption{inset:21px 22px auto;font-size:9px}.visual-bottom{inset:auto 22px 21px}.hero-baseline{padding-bottom:25px;font-size:9px;line-height:1.8}.baseline-tags{gap:10px;flex-wrap:wrap}.baseline-tags span+span:before{margin-right:10px}.hero-baseline>span{max-width:100px;text-align:right}.section{padding:63px 0}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:34px}.section-label{margin-bottom:21px;font-size:10px}.section h2{font-size:35px;letter-spacing:-1.4px}.section-intro{justify-self:start;font-size:15px}.service-grid{grid-template-columns:1fr}.service{padding:27px 0;gap:18px}.service+ .service{padding:27px 0;border-left:0;border-top:1px solid var(--line)}.service h3{font-size:21px}.service small{margin-top:18px}.about-layout{grid-template-columns:1fr;gap:32px}.about-emblem{display:none}.about-layout .section-label{margin:0}.about-copy h2{font-size:32px;line-height:1.3;margin-bottom:23px}.about-copy p{font-size:14px}.company-name{font-size:13px;margin-top:21px}.approach-heading{margin-bottom:30px}.approach-grid{grid-template-columns:1fr;gap:27px}.step{display:grid;grid-template-columns:34px 1fr;column-gap:19px;padding-top:24px}.step-index{grid-row:1/3;margin:0}.step h3{font-size:21px;margin:4px 0 12px}.step p{grid-column:2}.contact{padding:0 0 60px}.contact-panel{grid-template-columns:1fr;gap:31px;padding:33px 27px;border-radius:15px}.contact h2{font-size:36px;letter-spacing:-1.4px}.contact-details{border-left:0;border-top:1px solid #a6c34f;padding:26px 0 0}.email-link{font-size:21px}.contact-details .legal{margin-top:19px}.site-footer{padding-top:36px}.footer-main{display:block;padding-bottom:29px}.footer-links{margin-top:27px;padding:0;gap:25px;flex-wrap:wrap}.footer-bottom{flex-direction:column;gap:11px;padding-top:20px}.footer-brand p{margin-top:14px}.policy{padding:42px 0 60px}.policy h1{font-size:43px;letter-spacing:-1.7px}.policy .lead{font-size:16px}.policy section{margin-top:29px}.policy h2{font-size:21px}.policy p,.policy li{font-size:14px}.not-found{padding:70px 0}.not-found h1{font-size:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{body{background:white;color:black}.mobile-menu,.hero-visual,.hero-actions,.about-emblem{display:none}.site-header,.site-footer,.contact-panel,.about-band{background:white;color:black}.wrap{width:100%}.hero,.about-layout,.contact-panel{display:block}.section,.hero{padding:25px 0}.section h2,.hero h1{font-size:32px}.site-footer{padding:20px 0}.contact-details{border:0;padding:20px 0}.footer-bottom,.footer-brand p{color:black}}
