*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbfcf8;color:#172b23;font:17px/1.65 Arial,Helvetica,sans-serif}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b77412;outline-offset:4px}img{display:block;max-width:100%;height:auto}.skip{position:absolute;left:20px;top:-80px;padding:12px;background:#fff;z-index:20}.skip:focus{top:12px}.wrap{max-width:1320px;margin:auto;padding-left:40px;padding-right:40px}.header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:27px;padding-bottom:27px;border-bottom:1px solid #dce3d5}.brand{display:inline-flex;align-items:center;gap:16px;text-decoration:none}.brand>b{font:bold 53px/1 Arial,sans-serif;letter-spacing:-4px}.brand>span{max-width:85px;font:bold 12px/1.4 Arial,sans-serif;letter-spacing:2px}.nav{display:flex;align-items:center;gap:27px;font-size:15px}.nav>a{text-decoration:none}.nav>a:not(.button):hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:#183528;color:#fff;text-decoration:none;border:1px solid #183528;border-radius:4px;padding:14px 21px;font-weight:600;font-size:15px;min-height:50px;cursor:pointer}.button.light{background:#d7ef91;color:#19311e;border-color:#d7ef91}.button.outline{background:transparent;color:#1c3929;border-color:#8a9c82}.button:disabled{opacity:.5;cursor:default}.arrow{font-size:21px;font-weight:400;line-height:1}.menu{display:none}.eyebrow{display:block;font-size:12px;line-height:1.5;font-weight:700;letter-spacing:1.6px;margin-bottom:20px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:center;padding-top:62px;padding-bottom:66px}.hero h1{font-size:clamp(43px,4.65vw,65px);font-weight:500;letter-spacing:-2.8px;line-height:1.07;margin-bottom:25px}.hero h1 em{font-family:Georgia,serif;font-weight:400}.hero p{max-width:510px;color:#526457;font-size:18px;line-height:1.8;margin-bottom:29px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.hero-actions>a:not(.button){font-size:15px}.hero .location{font-size:14px;display:block;color:#61715e;margin-top:23px}.hero-visual{position:relative;min-height:480px;border-radius:5px;overflow:hidden;align-self:stretch;background:#e8eee0}.hero-visual img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,#0b221bbb)}.visual-label{position:absolute;bottom:65px;left:30px;right:30px;z-index:1;color:white}.visual-label>span{font-size:12px;font-weight:bold;letter-spacing:1.5px;display:block;margin-bottom:12px}.visual-label strong{font:400 40px/1.1 Georgia,serif}.hero-visual figcaption{position:absolute;bottom:22px;left:30px;right:20px;color:white;z-index:1;font-size:12px;line-height:1.5}.intro-strip{background:#eaf0e1;border-top:1px solid #dce4d2;border-bottom:1px solid #dce4d2}.intro-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:20px;padding-bottom:20px;font-size:15px}.intro-strip span{color:#546550}.section{padding-top:72px;padding-bottom:75px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:35px}.section-heading h2,h2{font-size:clamp(29px,3.3vw,44px);letter-spacing:-1.5px;line-height:1.15;font-weight:500}.section-heading p{color:#526653;font-size:17px;line-height:1.8}.section-heading .eyebrow{margin-bottom:15px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.work-card{border:1px solid #d6dfcf;background:#f0f4e9;border-radius:5px;overflow:hidden}.work-picture{display:block;position:relative;height:300px;overflow:hidden;text-decoration:none}.work-picture img{width:100%;height:100%;object-fit:cover}.work-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(#0c261788,transparent 75%)}.work-name{position:absolute;top:25px;left:25px;right:20px;z-index:1;color:white;font:500 32px/1.1 Georgia,serif}.work-name small{display:block;font:700 11px/1.5 Arial,sans-serif;letter-spacing:1.8px;margin-top:8px}.work-copy{padding:25px}.work-copy>.eyebrow{margin-bottom:11px;font-size:12px;color:#4e654c}.work-copy h3{font-size:23px;font-weight:500;line-height:1.35;letter-spacing:-.5px;margin-bottom:18px}.work-copy p{font-size:16px;color:#53654f;margin-bottom:20px}.work-links{display:flex;gap:25px;flex-wrap:wrap;font-size:15px}.work-links a{text-decoration-thickness:1px}.note{font-size:14px;color:#596d54;margin-top:23px;line-height:1.7}.dark{background:#193629;color:#fff}.dark .eyebrow{color:#d7ee93}.dark h2{max-width:560px;margin-bottom:25px}.dark p{color:#d0ddc8}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.scope-list{list-style:none;padding:0;margin:0}.scope-list li{padding:15px 0;border-bottom:1px solid #d5e3c62b;font-size:17px;display:flex;gap:15px}.scope-list li:before{content:'✓';color:#d7ee93}.dark .button{margin-top:27px}.dark .note{color:#c4d4bc}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:33px}.steps article>span{display:block;font-size:15px;margin-bottom:15px;color:#5b7258}.steps h3{font-size:23px;font-weight:500;letter-spacing:-.5px;margin-bottom:12px}.steps p{font-size:16px;color:#53684f}.soft{background:#ecf1e5}.software{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.software article{padding:26px;border:1px solid #cbd9c0;border-radius:4px}.software h3{font-size:24px;margin-bottom:12px;font-weight:500}.software p{font-size:16px;color:#486144}.software small{display:block;font-size:14px;color:#62755a;margin-top:17px}.cta{display:flex;align-items:center;justify-content:space-between;gap:45px}.cta h2{max-width:720px;margin-bottom:17px}.cta p{color:#51664d}.footer{border-top:1px solid #d6dfcd;padding-top:30px;padding-bottom:30px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:14px}.footer .brand>b{font-size:40px}.footer .brand>span{font-size:10px}.footer p{color:#5c7055;font-size:14px}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.crumb{display:flex;gap:10px;align-items:center;padding-top:24px;font-size:14px;color:#566d50}.service-hero{padding-top:37px}.service-hero h1{font-size:clamp(40px,4.2vw,59px)}.service-hero .hero-visual{min-height:430px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.benefits article{border-top:2px solid #8da179;padding-top:21px}.benefits h3{font-size:23px;line-height:1.25;font-weight:500;margin-bottom:12px}.benefits p{font-size:16px;color:#53674d}.faq{max-width:880px;margin:30px auto 0}.faq details{border-bottom:1px solid #cbd6c1;padding:20px 0}.faq summary{font-weight:600;font-size:18px;cursor:pointer;line-height:1.5;padding-right:15px}.faq p{margin-top:14px;font-size:16px;line-height:1.8;color:#4d6248}.contact-intro{padding-top:54px;padding-bottom:32px;max-width:920px;margin-left:0}.contact-intro h1{font-size:clamp(38px,5vw,58px);font-weight:500;line-height:1.1;letter-spacing:-2px;margin-bottom:22px}.contact-intro p{font-size:18px;line-height:1.8;color:#506449;max-width:760px}.contact-layout{display:grid;grid-template-columns:1.35fr .75fr;gap:50px;padding-bottom:65px;align-items:start}.project-form{padding:28px;background:#fff;border:1px solid #d1ddc8;border-radius:5px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.project-form label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600}.project-form input,.project-form select,.project-form textarea{width:100%;min-width:0;font:16px/1.5 Arial,sans-serif;padding:12px;border:1px solid #aebb9f;border-radius:4px;color:#263b21;background:#fff}.project-form input,.project-form select{min-height:48px}.project-form textarea{min-height:155px;resize:vertical}.project-form .wide{grid-column:1/-1}.project-form .field-note{font-size:14px;color:#5b6d54;font-weight:400}.form-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.form-actions>button:not(.button){background:transparent;color:#435e3b;border:0;text-decoration:underline;cursor:pointer;min-height:44px;font-size:15px;padding:7px}.form-note{font-size:14px;color:#4f6548;line-height:1.75}.form-status{font-size:16px;color:#284819}.form-result{padding-top:22px;border-top:1px solid #d1dec6}.form-result h2{font-size:25px;letter-spacing:-.7px;margin-bottom:12px}.form-result p{font-size:15px;color:#4c6443;margin:13px 0}.form-result textarea{min-height:280px;margin:14px 0}.form-result[hidden]{display:none}.contact-aside{padding:28px;background:#eaf0df;border-radius:5px}.contact-aside h2{font-size:28px;margin-bottom:17px}.contact-aside>a{font-size:16px;overflow-wrap:anywhere}.contact-aside h3{font-size:19px;margin:30px 0 10px}.contact-aside p,.contact-aside li{font-size:16px;color:#4c6544}.contact-aside ol{padding-left:20px}.contact-aside li{margin-bottom:12px}.contact-aside small{font-size:14px;display:block;color:#536d49;margin-top:25px}.not-found{text-align:center;min-height:60vh;display:grid;align-content:center;justify-items:center;gap:20px;padding:50px 20px}.not-found h1{font-size:45px}.not-found p{max-width:580px}
@media(max-width:1000px){.wrap{padding-left:26px;padding-right:26px}.header{gap:15px}.nav{gap:20px;font-size:14px}.hero{gap:35px}.hero h1{font-size:49px}.hero-visual{min-height:440px}.hero p{font-size:17px}.section-heading,.split{gap:45px}.steps{gap:30px}.contact-layout{gap:27px}.project-form{padding:23px}.contact-aside{padding:24px}.visual-label strong{font-size:34px}.work-picture{height:270px}}
@media(max-width:730px){.wrap{padding-left:20px;padding-right:20px}.header{position:relative;padding-top:22px;padding-bottom:22px}.brand>b{font-size:42px}.brand>span{font-size:10px;max-width:70px}.menu{display:block;background:transparent;border:1px solid #9caf91;border-radius:4px;padding:10px 14px;font-size:15px;min-height:44px;color:#1d3825;cursor:pointer}.nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:10;background:#fbfcf8;border-bottom:1px solid #bcccaf;padding:20px;align-items:stretch;flex-direction:column;gap:18px;font-size:16px}.nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:37px;padding-bottom:42px;gap:33px}.hero h1{font-size:47px;letter-spacing:-2px}.hero p{font-size:17px;margin-bottom:23px}.hero-visual{min-height:340px}.visual-label{bottom:62px;left:24px}.hero-visual figcaption{left:24px;font-size:12px}.hero .location{font-size:14px}.intro-strip .wrap{align-items:start;flex-direction:column;gap:5px;font-size:15px}.section{padding-top:47px;padding-bottom:48px}.section-heading{display:block;margin-bottom:25px}.section-heading p{margin-top:19px;font-size:16px}.section-heading h2,h2{font-size:33px;letter-spacing:-1px}.work-grid{grid-template-columns:1fr;gap:25px}.work-copy{padding:23px}.work-picture{height:260px}.work-name{font-size:30px}.split{grid-template-columns:1fr;gap:27px}.steps,.benefits{grid-template-columns:1fr;gap:28px}.steps article>span{margin-bottom:9px}.steps h3{font-size:23px}.software{grid-template-columns:1fr;gap:20px}.cta{align-items:start;flex-direction:column;gap:25px}.footer{gap:22px;padding-top:25px;padding-bottom:25px}.footer p{flex-basis:100%;order:3}.footer-links{font-size:14px}.service-hero{padding-top:28px}.service-hero h1{font-size:42px}.service-hero .hero-visual{min-height:320px}.crumb{font-size:14px;flex-wrap:wrap}.contact-intro{padding-top:38px}.contact-intro h1{font-size:42px}.contact-intro p{font-size:17px}.contact-layout{grid-template-columns:1fr;gap:24px;padding-bottom:45px}.project-form{grid-template-columns:1fr;padding:22px 19px}.project-form .wide{grid-column:auto}.project-form label{font-size:14px}.contact-aside{padding:24px}.eyebrow{font-size:12px;letter-spacing:1.2px}.note{font-size:14px}.hero-actions{gap:20px}.scope-list li{font-size:16px}}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-card{display:flex;flex-direction:column;padding:28px;border:1px solid #cbd9c0;border-radius:5px;background:#f0f4e9;text-decoration:none}.service-card:hover{background:#e8efdd;border-color:#8da179}.service-card .eyebrow{color:#53684f;margin-bottom:22px}.service-card h3,.service-detail h3{font-size:25px;font-weight:500;letter-spacing:-.6px;line-height:1.25;margin-bottom:14px}.service-card p{font-size:16px;color:#506449;margin-bottom:24px}.service-link{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:4px}.service-jumps{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:38px}.service-jumps a{display:inline-flex;align-items:center;border:1px solid #c3d0b9;border-radius:4px;padding:10px 15px;min-height:44px;font-size:15px;text-decoration:none;background:#edf2e6}.service-jumps a:hover{text-decoration:underline}.service-group{border-top:1px solid #d8e1d0;scroll-margin-top:20px}.service-group:nth-of-type(even){background:#f0f4e9}.service-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.service-detail{padding:28px;border:1px solid #cbd9c0;border-radius:5px;background:#fbfcf8}.service-detail:only-child{grid-column:1/-1;max-width:960px}.service-detail>p{font-size:16px;color:#506449;margin-bottom:16px}.service-detail .service-scope{padding-top:16px;border-top:1px solid #dce4d2;font-size:15px}.service-detail .note{font-size:14px;margin-top:0}.service-detail .work-links{margin-top:23px}.availability{display:inline-block;max-width:100%;font-size:12px;font-weight:700;line-height:1.5;padding:5px 10px;border-radius:3px;margin-bottom:20px;background:#e7eddf;color:#344d2d}.availability.available{background:#dceccd;color:#2c4820}.availability.developing,.availability.review{background:#f0e9dc;color:#63512d}.service-group .section-heading{align-items:start}
@media(max-width:1000px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card,.service-detail{padding:24px}}
@media(max-width:730px){.service-grid,.service-details{grid-template-columns:1fr;gap:18px}.service-card{padding:24px}.service-card .eyebrow{margin-bottom:15px}.service-jumps{gap:8px;padding-bottom:28px}.service-jumps a{font-size:14px;padding:10px 12px}.service-detail{padding:23px}.service-card h3,.service-detail h3{font-size:24px}.service-detail:only-child{grid-column:auto}}
.sample-preview{margin:-28px -28px 28px;padding-bottom:25px;border-bottom:1px solid #dce4d2}.sample-preview figure{margin-bottom:20px}.sample-preview img,.sample-preview video{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#edf0e8;border-radius:4px 4px 0 0}.sample-preview video{aspect-ratio:16/9;background:#122219}.sample-preview figcaption{padding:10px 28px 0;font-size:13px;color:#52634b;line-height:1.5}.sample-preview h4{font-size:21px;font-weight:500;line-height:1.3;margin:0 28px 10px}.sample-preview>p{margin:0 28px 15px;font-size:15px;color:#506449}.sample-open{display:inline-block;margin:0 28px;font-size:15px;font-weight:600;min-height:44px;padding-top:8px}.sample-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.sample-gallery figure:only-child{grid-column:1/-1;max-width:1050px}.sample-gallery img,.sample-gallery video{display:block;width:100%;height:auto;border:1px solid #d8e1d0;border-radius:5px;background:#edf0e8}.sample-gallery video{aspect-ratio:16/9;max-height:650px}.sample-gallery figcaption{font-size:14px;color:#506449;margin-top:12px}.sample-story{max-width:1000px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin:45px 0 55px}.sample-story section{border-top:1px solid #ccd9c0;padding-top:24px}.sample-story h2{font-size:28px;letter-spacing:-.8px;margin-bottom:18px}.sample-story p,.sample-story li{font-size:16px;color:#506449}.sample-story ul{padding-left:22px}.sample-story li+li{margin-top:10px}.sample-demo{margin-top:30px;display:flex;gap:25px;align-items:center;flex-wrap:wrap}.sample-demo p{font-size:15px;max-width:550px;color:#506449}
@media(max-width:1000px){.sample-preview{margin:-24px -24px 24px}.sample-preview figcaption{padding-left:24px;padding-right:24px}.sample-preview h4,.sample-preview>p,.sample-open{margin-left:24px;margin-right:24px}}
@media(max-width:730px){.sample-preview{margin:-23px -23px 23px}.sample-gallery,.sample-story{grid-template-columns:1fr;gap:25px}.sample-story{margin:32px 0 42px}.sample-gallery figure:only-child{grid-column:auto}.sample-preview h4{font-size:20px}.sample-preview figcaption{font-size:13px}.sample-demo{align-items:start;flex-direction:column;gap:15px}}
.sample-preview{margin-top:24px}.sample-preview img{height:280px;aspect-ratio:auto}.sample-preview video{max-height:340px}.sample-preview .sample-cover{object-fit:contain}
@media(max-width:730px){.sample-preview{margin-top:22px}.sample-preview img{height:240px}}
.portfolio-case{margin:45px 0 65px;max-width:1120px}.portfolio-case header{max-width:920px}.portfolio-case h2{margin-bottom:20px}.portfolio-case h3{font-size:26px;line-height:1.3;font-weight:500;letter-spacing:-.6px;margin:0 0 18px}.portfolio-case p{font-size:16px;color:#4f644a;margin:14px 0;line-height:1.8}.portfolio-case>section{border-top:1px solid #d2ddc8;margin-top:35px;padding-top:28px}.portfolio-case ul{font-size:16px;color:#4f644a;padding-left:24px}.portfolio-case li{margin-bottom:10px}.table-scroll{overflow-x:auto;border:1px solid #cad7bf;border-radius:4px}.portfolio-case table{width:100%;min-width:660px;border-collapse:collapse;background:#fbfcf8;font-size:15px;line-height:1.7}.portfolio-case caption{text-align:left;padding:16px 20px;background:#e8efdf;color:#334e2b;font-size:14px}.portfolio-case th,.portfolio-case td{text-align:left;vertical-align:top;padding:20px;border-top:1px solid #d1ddc6}.portfolio-case thead{background:#eaf0e1}.portfolio-case tbody th{font-weight:600;width:29%}.portfolio-case blockquote{margin:25px 0;padding:18px 25px;border-left:3px solid #829b6d;background:#edf2e6}.portfolio-case dl{display:grid;grid-template-columns:210px 1fr;gap:15px 25px;font-size:16px}.portfolio-case dt{font-weight:600}.portfolio-case dd{margin:0;color:#4f644a}.sample-caption{border:1px solid #cbd8bf;border-radius:4px;padding:24px;margin-top:20px;background:#f1f5eb}.sample-caption h4{margin:0 0 15px;font-size:20px;font-weight:500}.sample-caption p:last-child{margin-bottom:0}
@media(max-width:730px){.portfolio-case{margin-top:32px}.portfolio-case h3{font-size:24px}.portfolio-case dl{grid-template-columns:1fr;gap:6px}.portfolio-case dd{margin-bottom:16px}.sample-caption{padding:21px}.portfolio-case th,.portfolio-case td{padding:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.social-strip{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;column-gap:24px;row-gap:0;padding-top:6px;padding-bottom:6px;font-size:14px;border-bottom:1px solid #dce3d5}.social-strip>span{color:#526457}.social-strip>a,.footer-socials>a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;text-decoration:none}.social-strip>a:hover,.footer-socials>a:hover{text-decoration:underline}.social-strip .arrow,.footer-socials .arrow{font-size:17px}.footer-contact{display:grid;gap:8px}.footer-socials{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.footer-links a{overflow-wrap:anywhere}@media(max-width:730px){.social-strip{justify-content:flex-start;column-gap:22px}.social-strip>span{flex-basis:100%;padding-top:3px}.footer-contact{min-width:0;max-width:100%}}
.video-transcript{padding:14px 18px;border-top:1px solid #dce4d2;background:#edf2e6}.video-transcript summary{cursor:pointer;font-size:.9rem;font-weight:600}.video-transcript p{font-size:.9rem;line-height:1.6;margin:12px 0}.sample-credits{padding:32px 0 50px;border-top:1px solid #dce4d2}.sample-credits li{margin:10px 0}.sample-credits a{text-underline-offset:3px}

.sample-gallery .sample-wide{grid-column:1/-1;width:100%;max-width:1050px}
