:root{--ink:#15201b;--muted:#3e4b42;--paper:#f8f9f5;--lime:#a6ff1a;--line:#dde2d9;--dark:#121b17;--radius:6px}*{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,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.04;letter-spacing:-.055em;font-weight:600}h1{font-size:clamp(46px,6.4vw,100px)}h2{font-size:clamp(34px,4.5vw,66px)}h3{font-size:27px}p{color:var(--muted)}h1 span,h2 span{color:#465a4b}h2+p{margin-top:25px}p+p{margin-top:18px}.wrap{width:min(1320px,calc(100% - 104px));margin:auto}.section{padding:108px 0}.eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;line-height:1.5;margin-bottom:25px}.eyebrow.light{color:#cbd6ce}.eyebrow i,figcaption i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime);margin-right:9px}.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:53px;padding:13px 23px;border-radius:3px;font-size:13px;font-weight:700;line-height:1.4;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.lime{background:var(--lime);color:#15200e}.button.lime:hover{background:#c8fb65}.button.dark{background:var(--dark);color:white}.button.outline{color:#fff;border-color:#657067;background:transparent}.button.outline:hover{background:#263229}.text-link{display:inline-flex;gap:35px;font-size:14px;font-weight:700;border-bottom:1px solid var(--ink);padding:8px 0}.header{height:96px;background:rgba(248,249,245,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav-wrap{display:flex;align-items:center;justify-content:space-between;height:100%;gap:30px}.brand{flex-shrink:0}.brand img{width:178px;height:auto}.header nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:600}.header nav>a{padding:12px 0;position:relative}.header nav>a:hover,.header nav>a[aria-current]{color:#396420}.header nav>a[aria-current]:after{content:'';position:absolute;bottom:2px;left:0;width:25px;height:2px;background:#396420}.header nav .nav-contact{border:1px solid #c7cec4;border-radius:3px;padding:13px 17px;display:flex;gap:20px}.menu-toggle{display:none}.skip{position:fixed;left:12px;top:-100px;z-index:100;background:var(--lime);padding:10px}.skip:focus{top:12px}:focus-visible{outline:3px solid #549521;outline-offset:5px}.home-hero{background:var(--dark);color:white;padding:58px 0 0}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.hero-copy{padding:15px 0 40px}.hero-copy h1{font-size:clamp(62px,6.5vw,102px);letter-spacing:-.065em}.hero-copy h1 span{color:var(--lime)}.hero-copy p{font-size:16px;max-width:445px;color:#b8c4bc;margin:29px 0}.hero-image{height:570px;position:relative;border-radius:4px 90px 4px 4px;overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:50% 48%}.hero-image:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#07140de0)}.hero-image figcaption{position:absolute;bottom:26px;left:26px;right:26px;z-index:1;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#fff}.hero-baseline{margin-top:40px;padding:22px 0;display:flex;justify-content:space-between;color:#9caca1;border-top:1px solid #344438;font-size:11px;letter-spacing:.03em}.references{background:white;padding:37px 0 43px;border-bottom:1px solid var(--line)}.reference-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.reference-head .eyebrow{margin:0}.reference-head p{font-size:12px}.reference-logos{display:grid;grid-template-columns:1.5fr 1.25fr 1fr 1.1fr .8fr;align-items:center;gap:55px}.reference-logos img{max-height:58px;width:100%;object-fit:contain}.reference-logos .crest{max-height:76px}.section-heading{display:grid;grid-template-columns:1.45fr 1fr;align-items:end;gap:90px;margin-bottom:45px}.section-heading>p,.section-heading>div>p{max-width:425px}.section-heading .button{margin-top:25px}.division-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.division{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s}.division:hover{box-shadow:0 12px 25px #1d2a1910}.division-image,.software-art{height:280px;position:relative;overflow:hidden}.division-image>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.division:hover .division-image>img{transform:scale(1.03)}.photo-tag{position:absolute;left:25px;bottom:20px;font-size:10px;background:#fff;color:var(--ink);padding:5px 9px;letter-spacing:.05em}.division-copy{padding:34px 36px}.division-copy .eyebrow{margin-bottom:17px;color:#405337}.division-copy h3{font-size:39px;position:relative}.division-copy h3>span{position:absolute;right:0;top:5px;font-size:28px}.division-copy p{max-width:440px;font-size:14px;margin-top:22px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.tags span{font-size:10px;padding:4px 10px;border:1px solid #dde3d8;border-radius:20px}.software-art{background:#1e2d24;display:flex;flex-direction:column;justify-content:center;padding:36px;gap:13px}.software-art>img{width:310px;height:80px;object-fit:contain;object-position:left;margin-bottom:8px}.art-line{display:flex;gap:10px;font-size:10px;letter-spacing:.12em;color:#d2dfcd}.art-line span{border:1px solid #445748;padding:7px 12px;border-radius:3px}.art-line.second{margin-left:22px}.software-art .photo-tag{background:transparent;color:#a6bba8;padding:0}.about{background:#edf1e9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:85px}.about h2{font-size:clamp(36px,4vw,58px)}.lead{font-size:20px;line-height:1.6;color:var(--ink)}.about-copy .text-link{margin-top:22px}.about-values{display:flex;flex-wrap:wrap;gap:15px;margin-top:30px;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.about-values span:before{content:'•';margin-right:8px;color:#456d2c}.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.editorial-grid figure>img{width:100%;height:430px;object-fit:cover;border-radius:4px}.editorial-grid figcaption{font-size:11px;margin-top:12px;color:#405337}.steps{margin-top:32px}.steps>div{display:flex;gap:25px;border-top:1px solid var(--line);padding:22px 0}.steps>div>span{font-size:12px;color:#405337}.steps h3{font-size:21px;letter-spacing:-.03em}.steps p{font-size:14px;margin-top:9px}.contact-section{background:var(--dark);color:white;padding:90px 0}.contact-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:100px;align-items:center}.contact-inner h2{font-size:clamp(54px,7vw,100px)}.contact-inner h2 span{color:var(--lime)}.contact-inner .eyebrow{color:#a5b5a8}.contact-inner p{color:#b7c4ba;max-width:370px;margin-bottom:25px}.contact-phone{display:block;font-size:23px;margin-top:26px;line-height:1.5;letter-spacing:-.02em}.subtle-link{display:block;font-size:13px;color:#adbcaf;margin-top:5px}footer{background:#0e1511;color:#bac5bd;padding:55px 0 20px;font-size:13px}.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:45px}.footer-wordmark{font-size:46px;font-weight:700;line-height:1;letter-spacing:-.06em;color:white}.footer-wordmark span{color:var(--lime)}.footer-top p{font-size:12px;color:#9caaa0;margin-top:15px}.footer-top>div>a:not(.footer-wordmark){display:block;margin-top:8px}.footer-top>div>a:hover{color:white}.footer-label{display:block;color:#fff;font-size:11px;font-weight:600;margin-bottom:18px}.footer-bottom{margin-top:50px;padding-top:20px;border-top:1px solid #29372b;display:flex;justify-content:space-between;gap:20px;font-size:10px}.footer-bottom>div{display:flex;gap:22px}.page-hero{padding:35px 0 55px}.breadcrumbs{font-size:11px;color:#405337;margin-bottom:48px;display:flex;gap:8px;flex-wrap:wrap}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.page-hero h1{font-size:clamp(47px,6.4vw,94px);max-width:800px}.wide-photo{height:420px;position:relative;overflow:hidden;border-radius:4px}.wide-photo img{height:100%;width:100%;object-fit:cover}.wide-photo figcaption{position:absolute;left:22px;bottom:20px;font-size:10px;background:#fff;padding:5px 10px}.service-row{display:grid;grid-template-columns:55px 1.2fr 1fr 50px;gap:25px;align-items:center;padding:28px 0;border-top:1px solid #d5dccf}.service-row:last-child{border-bottom:1px solid #d5dccf}.service-row h3{font-size:26px;letter-spacing:-.04em}.service-row p{font-size:13px}.row-number{font-size:11px;color:#405337}.circle{width:45px;height:45px;background:transparent;border:1px solid #d4dbcf;border-radius:50%;display:flex;justify-content:center;align-items:center;flex-shrink:0;font-size:23px;line-height:1;transition:background .2s}.service-row:hover .circle,.circle:hover{background:var(--lime);border-color:var(--lime)}.detail-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.detail-grid .button{margin-top:30px}.detail-grid .lead{margin-top:28px}.detail-grid p{max-width:540px}.large-checks{list-style:none;padding:0;margin:0}.large-checks li{font-size:20px;border-top:1px solid var(--line);padding:23px 0;display:flex;gap:20px}.large-checks li:before{content:'↗';color:#72924b}.related{background:#edf1e9}.software-hero{padding:35px 0 90px;background:var(--dark);color:#fff}.software-hero .breadcrumbs{color:#a0b2a4}.software-hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:90px;align-items:center}.caro-brand{height:76px;max-width:350px;object-fit:contain;object-position:left;margin-bottom:36px}.software-hero h1{font-size:clamp(47px,6vw,90px)}.software-hero h1 span{color:var(--lime)}.software-hero p{color:#b9c6bd;max-width:590px;margin-top:25px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.product-world{border:1px solid #3c513f;background:#203026;padding:38px 30px;box-shadow:14px 14px 0 #18231c;border-radius:4px}.world-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#bcc9be;border-bottom:1px solid #465e48;padding-bottom:18px}.world-head{font-size:54px;line-height:1.05;letter-spacing:-.06em;margin:30px 0}.world-head span{color:var(--lime)}.world-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.world-grid a{font-size:12px;background:#2c4131;padding:15px 12px;border:1px solid #425d41}.world-grid a:hover{color:var(--lime)}.world-foot{font-size:10px;color:#b7c8b7;padding-top:25px}.product-section{background:#f8f9f5}.filters{display:flex;flex-wrap:wrap;gap:7px;padding:0 0 30px}.filters button{padding:9px 19px;background:transparent;border:1px solid #d4dccf;border-radius:25px;color:#405337;font-size:12px}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-card{background:white;border:1px solid var(--line);border-radius:5px;padding:26px;display:flex;flex-direction:column;min-height:390px;scroll-margin-top:125px}.product-card[hidden]{display:none}.product-top{display:flex;justify-content:space-between;font-size:10px;color:#405337;margin-bottom:30px}.status{display:inline-flex;align-items:center;gap:7px;color:#405337}.status:before{content:'';width:5px;height:5px;border-radius:50%;background:#528a34}.status.dev{color:#405337}.status.dev:before{background:#a39a70}.product-logo{height:58px;display:flex;align-items:center;margin-bottom:22px}.product-logo>img{max-width:100%;height:58px;object-fit:contain;object-position:left}.text-product{display:flex;gap:9px;align-items:center;color:#506942}.text-product strong{font-size:24px;letter-spacing:-.02em;line-height:1}.text-product strong>span{display:block;font-size:clamp(12px,1vw,16px);font-weight:400;letter-spacing:.01em;margin-top:4px}.product-c{font-size:46px;font-weight:700;line-height:1;color:#76a745}.product-cat{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#405337;margin-bottom:10px}.product-card h3{font-size:24px;letter-spacing:-.04em;line-height:1.14;margin-bottom:16px}.product-card p{font-size:13px;line-height:1.75}.product-bottom{display:flex;justify-content:space-between;align-items:center;font-size:10px;margin-top:auto;padding-top:30px;color:#405337}.custom-dev{background:#e9eee3}.development-list>div{position:relative;padding:20px 0 25px 45px;border-top:1px solid #cdd7c3}.development-list>div>span{position:absolute;left:0;font-size:11px;color:#405337}.development-list h3{font-size:23px;letter-spacing:-.035em}.development-list p{font-size:14px;margin-top:13px}.legal{min-height:70vh}.legal-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:85px}.legal h1{font-size:clamp(35px,4vw,65px);overflow-wrap:anywhere}.legal .text-link{margin-top:30px}.legal article section{margin-bottom:35px}.legal article h2{font-size:25px;letter-spacing:-.03em;margin:25px 0 16px}.legal article h3{font-size:18px;letter-spacing:-.015em;margin:20px 0 10px}.legal p{font-size:14px}.legal a{text-decoration:underline;text-underline-offset:3px}.legal-note{background:#eef1e9;border-left:3px solid #aac97c;padding:20px;margin-top:20px}.legal-note p{margin-top:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{border:1px solid #ccd5c5;border-radius:6px;padding:46px;width:min(660px,calc(100% - 32px));max-height:90dvh;overflow-y:auto;background:var(--paper);color:var(--ink);box-shadow:0 30px 90px #0004}dialog::backdrop{background:#0c1713c9;backdrop-filter:blur(4px)}dialog h2{font-size:42px;margin-bottom:25px}dialog>p{font-size:14px}dialog .eyebrow{padding-right:32px}.dialog-close{position:absolute;right:18px;top:15px;font-size:29px;width:36px;height:36px;background:transparent;border:1px solid #ccd6c4;border-radius:50%;line-height:1}form{margin-top:25px}label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;margin-top:15px}input,select,textarea{width:100%;padding:11px 12px;background:white;border:1px solid #cdd5c5;border-radius:3px;color:var(--ink);font-size:15px;max-width:100%}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fine{font-size:11px!important;line-height:1.6;margin-top:17px;margin-bottom:15px}.fine a{text-decoration:underline}.dialog-logo{height:65px;margin-bottom:25px}.dialog-logo img{height:100%;max-width:100%;object-fit:contain;object-position:left}.check-list{padding-left:21px;margin-top:28px;font-size:14px}.check-list li{padding:6px 0}.check-list li::marker{color:#7d9a4d}.dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin-top:25px;font-size:12px}@media(min-width:1600px){.hero-copy h1{font-size:110px}.hero-image{height:600px}}@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.header nav{gap:19px;font-size:12px}.brand img{width:155px}.hero-grid{gap:35px}.hero-image{height:530px}.hero-copy h1{font-size:75px}.reference-logos{gap:35px}.section-heading{gap:50px}.about-grid,.editorial-grid,.software-hero-grid,.contact-inner,.detail-grid{gap:50px}.product-card{padding:22px}.division-copy h3{font-size:34px}.world-head{font-size:45px}.software-hero-grid{grid-template-columns:1.3fr 1fr}.hero-image figcaption span:last-child{display:none}}@media(max-width:900px){.header{height:82px}.wrap{width:calc(100% - 48px)}.menu-toggle{display:block;padding:10px 13px;border:1px solid #ccd4c4;border-radius:3px;background:transparent;font-size:12px}.menu-toggle span{margin-left:12px}.header nav{display:none;position:absolute;left:0;right:0;top:81px;background:var(--paper);border-bottom:1px solid var(--line);padding:20px 24px;box-shadow:0 15px 25px #0001;align-items:stretch;gap:4px;font-size:15px}.header nav.open{display:flex;flex-direction:column}.header nav .nav-contact{justify-content:space-between;margin-top:10px}.hero-copy h1{font-size:63px}.hero-image{height:490px;border-top-right-radius:65px}.hero-copy p{font-size:14px}.hero-grid{gap:25px;grid-template-columns:1.05fr 1fr}.section{padding:75px 0}.section-heading{gap:40px}.section-heading>p{font-size:14px}.reference-logos{gap:25px}.reference-logos img{max-height:45px}.division-image,.software-art{height:230px}.division-copy{padding:25px}.division-copy h3{font-size:31px}.software-art{padding:25px}.art-line{font-size:8px;gap:6px}.art-line span{padding:5px 7px}.about-grid,.editorial-grid,.detail-grid{gap:35px}.lead{font-size:17px}.editorial-grid figure>img{height:375px}.steps>div{gap:15px;padding:19px 0}.service-row{grid-template-columns:30px 1.2fr 1fr 45px;gap:15px}.service-row h3{font-size:21px}.product-grid{grid-template-columns:1fr 1fr}.software-hero-grid{grid-template-columns:1.4fr 1fr;gap:30px}.product-world{padding:25px 20px}.world-head{font-size:38px}.world-grid{grid-template-columns:1fr}.world-grid a{padding:9px 10px}.world-foot{font-size:9px}.software-hero h1{font-size:56px}.software-hero p{font-size:14px}.caro-brand{max-width:280px;height:62px}.legal-grid{gap:40px}.footer-bottom{flex-wrap:wrap}}@media(max-width:640px){.wrap{width:calc(100% - 40px)}.header{height:76px}.header nav{top:75px}.brand img{width:142px}.home-hero{padding-top:38px}.hero-grid{display:flex;flex-direction:column;gap:30px;align-items:stretch}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(52px,13.5vw,78px);line-height:1.02}.hero-copy p{font-size:15px;max-width:430px;margin:24px 0}.hero-image{height:340px;border-top-right-radius:60px}.hero-image>img{object-position:50% 40%}.hero-image figcaption{left:20px;bottom:20px}.hero-baseline{margin-top:30px;font-size:10px;gap:20px;padding:18px 0}.hero-baseline span:last-child{display:none}.references{padding:30px 0}.reference-head{display:block}.reference-head p{margin-top:5px;font-size:11px}.reference-logos{grid-template-columns:1fr 1fr;gap:28px 32px}.reference-logos img{max-height:42px}.reference-logos .crest{max-height:56px;grid-column:1 / -1;width:65px;justify-self:center}.section{padding:63px 0}.section-heading{display:block;margin-bottom:30px}.section-heading>p,.section-heading>div>p{margin-top:25px}.eyebrow{margin-bottom:18px;font-size:10px}.section-heading h2,h2{font-size:37px}.division-grid{grid-template-columns:1fr;gap:24px}.division-image,.software-art{height:240px}.division-copy{padding:28px}.division-copy h3{font-size:35px}.division-copy p{font-size:14px}.software-art>img{width:300px;max-width:100%}.art-line{font-size:9px}.art-line span{padding:6px 10px}.about-grid,.editorial-grid,.detail-grid,.contact-inner,.legal-grid{grid-template-columns:1fr;gap:35px}.about h2{font-size:37px}.about-copy .lead{font-size:18px}.about-values{gap:10px;font-size:9px}.editorial-grid figure>img{height:290px}.contact-section{padding:60px 0}.contact-inner h2{font-size:66px}.contact-inner p{font-size:15px;margin-bottom:25px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 24px}.footer-top>div:first-child{grid-column:1/-1}.footer-top>div>a:not(.footer-wordmark){font-size:12px}.footer-bottom{display:flex;flex-direction:column;gap:17px;margin-top:35px}.footer-bottom>div{gap:18px}.breadcrumbs{margin-bottom:32px;font-size:10px}.page-hero{padding:25px 0 40px}.page-hero h1{font-size:51px}.wide-photo{height:270px}.service-row{grid-template-columns:23px 1fr 40px;gap:12px;position:relative;padding:23px 0}.service-row h3{font-size:23px}.service-row p{grid-column:2;margin-top:0}.service-row .circle{grid-column:3;grid-row:1/3;width:40px;height:40px}.large-checks li{font-size:18px;padding:20px 0}.software-hero{padding:25px 0 55px}.software-hero-grid{grid-template-columns:1fr;gap:42px}.software-hero h1{font-size:clamp(44px,11vw,62px)}.software-hero p{font-size:15px}.caro-brand{height:66px;margin-bottom:30px;max-width:300px}.product-world{box-shadow:8px 8px 0 #18231c;padding:27px;max-width:500px}.world-head{font-size:46px}.world-grid{grid-template-columns:1fr 1fr}.world-grid a{font-size:11px;padding:13px 10px}.world-foot{font-size:10px}.actions{gap:10px}.actions .button{font-size:12px;gap:10px}.filters{gap:6px;padding-bottom:24px}.filters button{font-size:11px;padding:8px 14px}.product-grid{grid-template-columns:1fr;gap:18px}.product-card{min-height:365px;padding:28px}.product-logo{margin-bottom:24px}.product-card h3{font-size:27px}.product-card p{font-size:14px}.product-card .text-product strong>span{font-size:16px}.product-bottom{font-size:11px}.legal h1{font-size:43px}.legal article h2{font-size:23px}.legal-grid{gap:35px}dialog{padding:35px 24px;max-height:88dvh}dialog h2{font-size:35px}.form-row{grid-template-columns:1fr;gap:0}.dialog-bottom{align-items:start;flex-direction:column}.dialog-close{top:12px;right:12px}.fine{font-size:11px!important}.contact-phone{font-size:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}.product-logo.client-logos{height:auto;display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:20px}.client-logos figure{margin:0;min-width:0}.client-logos figcaption{font-size:9px;line-height:1.5;color:#405337;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}.product-logo.client-logos img{width:100%;height:52px;object-fit:contain;object-position:left}.dialog-logo.client-logos{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}.dialog-logo.client-logos img{width:100%;height:70px;object-fit:contain;object-position:left}@media(max-width:640px){.product-logo.client-logos{grid-template-columns:1fr 1fr;gap:16px}.product-logo.client-logos img{height:62px}.dialog-logo.client-logos{grid-template-columns:1fr;gap:15px}.dialog-logo.client-logos img{height:65px;max-width:330px}}html{scrollbar-gutter:stable}.gallery{position:relative;overflow:hidden;background:#111b16}.gallery-stage{position:absolute;inset:0}.gallery-stage .gallery-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .75s ease}.gallery-stage .gallery-slide.is-active{opacity:1}.gallery-caption{position:absolute;z-index:2;left:20px;right:20px;bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:15px;color:#fff;font-size:10px}.gallery-caption>[data-gallery-caption]{max-width:65%;background:#102017;padding:5px 9px}.gallery-controls{display:inline-flex;align-items:center;gap:6px;background:#102017;padding:5px 7px;border-radius:4px;flex-shrink:0}.gallery-controls button{border:1px solid #8ea293;color:#fff;background:#102017;border-radius:3px;width:30px;height:28px;padding:0;font-size:14px;line-height:1}.gallery-controls button:hover{background:#a6ff1a;color:#15200e;border-color:#a6ff1a}.gallery-controls [data-gallery-count]{color:#fff;background:#102017;min-width:34px;text-align:center;font-size:10px;white-space:nowrap}.hero-image.gallery .gallery-caption{left:20px;right:20px;bottom:20px;letter-spacing:0;text-transform:none}.hero-image.gallery .gallery-controls{display:inline-flex}.wide-photo.gallery .gallery-caption{background:transparent;padding:0;left:20px;right:20px;bottom:16px}.gallery .gallery-controls{display:inline-flex!important}.service-dialog{width:min(1020px,calc(100% - 40px));padding:0;max-height:90dvh}.service-dialog .dialog-close{background:var(--paper);z-index:5;right:18px;top:18px}.service-modal-heading{padding:40px 48px 30px}.service-modal-heading h2{font-size:clamp(32px,4.5vw,58px);max-width:850px;margin-bottom:20px;padding-right:25px}.service-modal-heading p{font-size:15px;max-width:800px}.media-gallery{height:clamp(240px,35vw,420px);margin:0 32px;border-radius:4px}.service-modal-details{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;padding:35px 48px 42px}.service-modal-details .eyebrow{margin-bottom:10px}.service-modal-details .check-list{margin:0;padding-left:20px}.service-modal-details p{font-size:14px;margin-bottom:20px}@media(max-width:640px){.gallery-caption{left:12px;right:12px;bottom:12px;align-items:flex-end;gap:8px}.gallery-caption>[data-gallery-caption]{font-size:9px;max-width:48%}.gallery-controls{gap:3px;padding:4px}.gallery-controls button{width:26px;height:27px}.hero-image.gallery .gallery-caption,.wide-photo.gallery .gallery-caption{left:12px;right:12px;bottom:12px}.hero-image.gallery .gallery-caption>[data-gallery-caption]{display:block}.service-dialog{width:calc(100% - 24px);max-height:90dvh}.service-modal-heading{padding:35px 24px 24px}.service-modal-heading h2{font-size:34px;padding-right:8px}.service-modal-heading p{font-size:14px}.media-gallery{margin:0 12px;height:260px}.service-modal-details{grid-template-columns:1fr;gap:25px;padding:28px 24px 32px}.service-modal-details .button{width:100%}.service-dialog .dialog-close{right:10px;top:10px}}@media(prefers-reduced-motion:reduce){.gallery-stage .gallery-slide{transition:none}}.caro-brand,.software-art>img{background:var(--paper);border-radius:4px;padding:10px 12px}.header a{touch-action:manipulation}.header{isolation:isolate}.header nav{z-index:21}.header .brand{position:relative;z-index:22}html[data-navigating] .header:after{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:3px;background:var(--lime);animation:navigation-feedback .8s ease-in-out infinite alternate;pointer-events:none}@keyframes navigation-feedback{from{opacity:.4}to{opacity:1}}html[data-navigating]{cursor:progress}input::placeholder,textarea::placeholder{color:#566253;opacity:1}@media(prefers-reduced-motion:reduce){html[data-navigating] .header:after{animation:none}}input,textarea,select{border-color:#7b886e}.menu-toggle{border-color:#7b886e}:root{--muted:#445248}h1 span,h2 span{color:#4b5f52}.division-copy .eyebrow{color:#3f5435}.editorial-grid figcaption,.steps>div>span{color:#485148}.hero-image.gallery:after{content:none}.gallery-caption>[data-gallery-caption]{color:#fff}.gallery-icon,.button-icon{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.gallery-controls button{display:inline-flex;align-items:center;justify-content:center}.gallery-controls button:hover{color:#15200e;background:#a6ff1a}