:root{--ink:#16191d;--muted:#69717d;--line:#dce0e5;--brand:#c92c09;--brand-hover:#a82306;--brand-light:#ff987d;--brand-tint:#fff0eb;--paper:#f5f5f4;--dark:#14171b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{color:var(--ink);background:#fff;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,summary{touch-action:manipulation}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--brand);outline-offset:5px}.skip{color:#000;z-index:10;background:#fff;padding:14px;position:absolute;top:-100px;left:16px}.skip:focus{top:10px}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;height:94px;padding:0 5%;display:flex}.logo{letter-spacing:-1.5px;align-items:center;font-size:32px;font-weight:700;line-height:1;display:inline-flex}nav{gap:30px;font-size:14px;display:flex}nav a:hover{color:var(--brand)}.header-cta{white-space:nowrap;border:1px solid #aeb4be;border-radius:5px;padding:12px 20px;font-size:14px}.header-cta:hover{border-color:var(--brand);color:var(--brand)}.hero{background:var(--dark);color:#fff;padding:35px 5% 0;overflow:hidden}.hero-top{color:#b9bec7;justify-content:space-between;gap:20px;display:flex}.eyebrow{letter-spacing:.09em;text-transform:uppercase;font-size:13px;font-weight:500}.tiny-cross{color:var(--brand-light);vertical-align:-2px;margin-right:10px;font-size:23px}.hero-note{font-size:13px}.hero-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:15px;min-height:550px;display:grid}.hero h1{letter-spacing:-.055em;margin:45px 0 27px;font-size:clamp(42px,5.2vw,82px);font-weight:500;line-height:1.07}.hero h1 span{color:var(--brand-light)}.hero-copy p{color:#b9bec7;max-width:450px;margin-bottom:31px;font-size:17px;line-height:1.65}.button{cursor:pointer;border:0;border-radius:5px;justify-content:center;align-items:center;min-height:50px;padding:14px 25px;font-size:14px;font-weight:500;transition:background .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.primary{background:var(--brand);color:#fff}.primary:hover{background:var(--brand-hover)}.hero-art{place-items:center;min-height:440px;display:grid;position:relative}.hero-art img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.hero-bottom{color:#adb4bf;border-top:1px solid #343940;justify-content:space-between;align-items:center;gap:25px;margin-top:30px;padding:26px 0 30px;font-size:13px;display:flex}.hero-bottom a{color:#fff}.plus{color:var(--brand-light);margin-left:17px;font-size:22px}.section{padding:105px 5%}.section-intro{grid-template-columns:1fr 2fr;gap:35px;margin-bottom:55px;display:grid}.section-intro>.eyebrow{color:var(--muted);padding-top:14px}h2{letter-spacing:-.045em;margin:0 0 24px;font-size:clamp(34px,4vw,56px);font-weight:500;line-height:1.12}.muted{color:#737984}.section-intro p{max-width:540px;color:var(--muted);margin:0;font-size:17px}.expertise details{border-top:1px solid var(--line)}.expertise details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;align-items:center;gap:25px;min-height:91px;padding:23px 0;list-style:none;display:flex}summary::-webkit-details-marker{display:none}.row-number{color:var(--muted);flex-shrink:0;width:calc(33.333% - 18px);font-size:13px}h3{letter-spacing:-.025em;margin:0;font-size:24px;font-weight:500;line-height:1.25}.toggle{color:var(--muted);text-align:center;width:32px;margin-left:auto;font-size:25px;transition:transform .2s}details[open] .toggle{color:var(--brand);transform:rotate(45deg)}summary:hover h3{color:var(--brand)}.service-body{max-width:640px;color:var(--muted);margin-left:33.333%;padding:0 0 30px}.service-body p{margin:0 0 18px}.tag{border:1px solid var(--line);color:#4d5767;border-radius:4px;padding:5px 10px;font-size:12px;display:inline-block}footer{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:30px;margin:0 5%;padding:35px 0;font-size:13px;display:flex}footer .logo{color:var(--ink);font-size:26px}footer p{max-width:260px;margin-right:auto}footer>span{white-space:nowrap}@media (width>=1600px){header,.hero,.section{padding-left:max(5%,50vw - 720px);padding-right:max(5%,50vw - 720px)}}@media (width<=900px){header{gap:20px;height:80px}nav{gap:17px;font-size:12px}.header-cta,.hero-note{display:none}.hero-grid{grid-template-columns:1.2fr 1fr;min-height:490px}.hero h1{font-size:clamp(40px,6vw,64px)}.hero-art{min-height:320px}.hero-bottom>span:nth-child(2){display:none}.section{padding:75px 5%}h3{font-size:22px}}@media (width<=600px){header{flex-wrap:wrap;align-items:flex-start;gap:20px;height:auto;min-height:98px;padding:20px 6%}.logo{font-size:29px}nav{justify-content:space-between;gap:10px;width:100%;font-size:12px}nav a{padding:5px 0}.hero{padding:25px 6% 0}.hero-grid{grid-template-columns:1fr;gap:0}.hero h1{margin-top:30px;font-size:clamp(40px,10vw,60px)}.hero-copy p{font-size:16px}.hero-art{min-height:330px}.hero-top .eyebrow{font-size:11px}.hero-bottom{align-items:flex-start;margin-top:0;font-size:12px}.hero-bottom>span{max-width:145px}.hero-bottom>a{max-width:160px}.section{padding:65px 6%}.section-intro{grid-template-columns:1fr;gap:22px;margin-bottom:35px}.section-intro>.eyebrow{padding:0}.row-number{width:24px}summary{gap:15px;min-height:82px}h3{font-size:21px}.service-body{margin-left:39px}footer{flex-wrap:wrap;gap:15px;margin:0 6%}footer p{max-width:200px;font-size:12px}footer>span{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.hero-art{min-height:450px;margin-right:-3vw}.hero-art img{object-fit:cover;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 87%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 87%,#0000)}.clinic{background:var(--brand);color:#fff}.clinic-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:55px;display:flex}.pill{border:1px solid #f59e89;border-radius:30px;padding:8px 16px;font-size:12px}.clinic-grid{grid-template-columns:1.15fr 1fr;align-items:center;gap:10%;display:grid}.clinic h2{font-size:clamp(38px,4.2vw,63px)}.clinic h2>span{color:#fff3ef}.clinic-lead{margin:25px 0;font-size:20px}.white{color:var(--brand-hover);background:#fff}.white:hover{background:var(--brand-tint)}.clinic-panel{background:#a82306;border:1px solid #e87b62;border-radius:8px;padding:35px}.clinic-panel>.eyebrow{color:#fff3ef;font-size:12px}.protection-row{border-bottom:1px solid #d26950;gap:22px;padding:27px 0;display:flex}.level{color:#fff3ef;padding-top:4px;font-size:13px}.protection-row h3{font-size:23px}.protection-row p{color:#ffe5dd;margin:9px 0 0;font-size:14px;line-height:1.6}.panel-note{color:#fff3ef;padding-top:22px;font-size:12px}.clinic-steps{border-top:1px solid #e9856c;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:75px;padding-top:32px;display:grid}.clinic-steps article>span{color:#fff3ef;font-size:12px}.clinic-steps h3{margin:17px 0 10px;font-size:18px}.clinic-steps p{color:#ffebe6;margin:0;font-size:14px;line-height:1.65}.clinic-footer{justify-content:space-between;align-items:center;gap:30px;margin-top:35px;font-size:13px;display:flex}.clinic-footer p{color:#fff3ef;max-width:450px}.clinic-brief{border-bottom:1px solid #ffb8a6;padding:10px 0}.clinic-brief span{margin-left:16px;font-size:20px}.process{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:30px;padding-top:25px;display:grid}.process-index{color:var(--brand);font-size:13px}.process h3{margin:27px 0 17px;font-size:23px}.process p{color:var(--muted);min-height:92px;margin-bottom:25px;font-size:15px}.process-result{color:#485465;border-top:1px solid var(--line);padding-top:17px;font-size:12px;display:block}.about{background:var(--paper)}.about>.eyebrow{color:var(--muted)}.about>p{letter-spacing:-.035em;margin:38px 0 60px;font-size:clamp(30px,4.5vw,66px);line-height:1.18}.about>p>span{color:var(--brand)}.about-bottom{border-top:1px solid var(--line);padding-top:26px}.about-bottom p{color:#4e5968;max-width:600px;margin:0;font-size:16px}.brief{grid-template-columns:1fr 1fr;gap:11%;display:grid}.brief h2{margin-top:28px}.brief>div>p{max-width:390px;color:var(--muted)}legend,.field-label{color:#4c5665;margin-bottom:13px;font-size:14px}.field-label{margin-top:22px;display:block}.field-label>span{color:var(--muted);margin-left:8px;font-size:12px}.brief-form input,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #c9d0da;border-radius:5px;padding:14px 15px;font-size:16px;display:block}textarea{resize:vertical;min-height:105px}::placeholder{color:#77808d}.form-footer{align-items:center;gap:20px;margin-top:23px;display:flex}.form-status{color:var(--brand-hover);min-height:22px;font-size:14px}@media (width<=900px){.clinic-grid{gap:5%}.clinic-panel{padding:25px}.clinic-steps,.process{grid-template-columns:repeat(2,1fr);gap:30px}.process p{min-height:auto}.brief{gap:6%}.hero-art{min-height:400px}}@media (width<=600px){.hero-art{min-height:280px;margin:10px -5vw 0}.hero-art img{object-fit:contain}.clinic-head{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:30px}.clinic-grid{grid-template-columns:1fr;gap:38px}.clinic-panel{padding:25px}.clinic h2{font-size:41px}.clinic-steps{grid-template-columns:1fr 1fr;gap:30px 20px;margin-top:45px}.clinic-steps h3{font-size:18px}.clinic-steps p{font-size:14px}.clinic-footer{margin-top:26px;display:block}.clinic-brief{display:inline-block}.process{grid-template-columns:1fr;gap:30px}.process article{grid-template-columns:30px 1fr;gap:0 13px;display:grid}.process h3{margin:0 0 12px}.process-index{padding-top:5px}.process p,.process-result{grid-column:2;margin-top:0}.process p{margin-bottom:17px}.about>p{margin-bottom:40px;font-size:34px}.brief{grid-template-columns:1fr;gap:30px}.brief h2{font-size:42px}.form-footer{gap:15px}.hero-copy p{max-width:360px}}.logo{letter-spacing:normal;flex-shrink:0;line-height:0;display:inline-flex}.logo img{aspect-ratio:200/104.36;object-fit:contain;width:144px;height:auto;display:block}header{height:100px}footer .logo img{width:130px}@media (width<=900px){header{height:94px}}@media (width<=600px){header{gap:6px;height:auto;padding-top:10px;padding-bottom:14px}.logo img{width:136px}footer .logo img{width:120px}}.services-grid{--tile-gap:12px;gap:var(--tile-gap);height:calc(var(--rows,2) * 340px);contain:layout;background:0 0;border:1px solid #0000;border-radius:14px;flex-direction:column;padding:12px;display:flex;overflow:hidden}.services-row{gap:var(--tile-gap);flex:1 1 0;min-height:0;transition:flex-grow .44s cubic-bezier(.22,.68,.2,1);display:flex}.services-row.has-active{flex-grow:1.5}.service-tile{flex:1 1 0;min-width:0;min-height:0;transition:flex-grow .44s cubic-bezier(.22,.68,.2,1)}.service-tile.is-open{flex-grow:2.35}.service-surface{background:#f9f9f8;border:1px solid #e0e0dd;border-radius:7px;flex-direction:column;width:100%;height:100%;transition:background .28s,border-color .28s;display:flex;overflow:hidden}.service-surface h3{flex:1;min-height:0;margin:0}.service-trigger{text-align:left;width:100%;height:100%;color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;flex-direction:column;justify-content:space-between;gap:18px;padding:24px;display:flex}.service-trigger:focus-visible{outline:3px solid var(--brand);outline-offset:-5px}.tile-top{justify-content:flex-end;align-items:center;gap:12px;width:100%;display:flex}.tile-toggle{color:var(--brand);font-size:26px;font-weight:400;line-height:1;transition:transform .3s}.tile-title{letter-spacing:-.025em;overflow-wrap:break-word;font-size:clamp(20px,1.6vw,25px);font-weight:500;line-height:1.2;display:block}.service-copy{scrollbar-width:thin;scrollbar-color:#ffb9a7 transparent;flex-direction:column;flex:1;align-items:flex-start;min-height:0;padding:0 24px 24px;display:flex;overflow:auto}.service-copy[hidden]{display:none}.service-copy p{color:#fff3ef;margin:0 0 18px;font-size:16px;line-height:1.55}.tile-tag{color:#fff3ef;border-top:1px solid #eb8d77;padding-top:12px;font-size:12px;line-height:1.45;display:inline-block}.service-tile.is-open .service-surface{background:var(--brand);border-color:var(--brand)}.service-tile.is-open .service-surface h3{flex:none}.service-tile.is-open .service-trigger{color:#fff;gap:16px;padding-bottom:18px}.service-tile.is-open .tile-title{font-size:26px}.service-tile.is-open .tile-toggle{color:#fff3ef;transform:rotate(45deg)}.service-tile .tile-toggle{margin:-10px;padding:10px;display:inline-block}.service-surface{cursor:pointer}.service-tile.is-open .service-trigger:focus-visible{outline-color:#fff}.service-tile.is-open .service-copy{animation:.32s .14s both tile-copy-in}@keyframes tile-copy-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (width<=1099px){.services-grid{height:calc(var(--rows,3) * 327px)}.services-row.has-active{flex-grow:1.8}.service-tile.is-open{flex-grow:2}.service-trigger{padding:20px}.service-copy{padding:0 20px 20px}.tile-title{font-size:21px}.service-tile.is-open .tile-title{font-size:25px}}@media (width<=599px){.services-grid{--tile-gap:8px;border-radius:10px;height:1460px;padding:8px}.services-row.has-active{flex-grow:3.1}.service-trigger{padding:20px}.tile-title,.service-tile.is-open .tile-title{font-size:23px}.service-tile.is-open .service-trigger{padding-bottom:16px}.service-copy{padding:0 20px 20px}}@media (prefers-reduced-motion:reduce){.services-row,.service-tile,.service-surface,.tile-toggle{transition:none}.service-tile.is-open .service-copy{animation:none}}header{gap:24px;height:auto;min-height:100px;padding-top:10px;padding-bottom:10px}header nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 24px;font-size:.9375rem;font-weight:600;line-height:1.3;display:flex}header nav>a{white-space:nowrap;align-items:center;min-height:44px;display:inline-flex}header nav .header-cta{font-size:inherit;font-weight:inherit;margin-left:4px;display:inline-flex}@media (width<=1150px){header{flex-wrap:wrap;justify-content:flex-start;gap:6px 24px}header nav{flex:1;gap:6px 18px}header nav .header-cta{margin-left:0}}@media (width<=760px){header nav{flex-basis:100%;justify-content:flex-start;gap:4px 20px;width:100%}header nav .header-cta{padding:8px 12px}header .logo img{width:130px}}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.hero-secondary{color:#f2f2f2;border-bottom:1px solid #68707a;padding:10px 0;font-size:14px}.hero-secondary:hover{color:var(--brand-light)}.tile-detail{color:#fff;border-bottom:1px solid #ffb09b;align-self:flex-end;width:fit-content;margin-top:auto;padding:11px 0 2px;font-size:14px;display:block}.tile-detail:hover{border-color:#fff}.tile-detail:focus-visible{outline-color:#fff}.service-copy{padding-bottom:25px}.solutions{background:#f5f5f4}.solutions-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:24px;display:grid}.solution-feature,.solution-compact{background:#fff;border:1px solid #dededb;border-radius:8px;padding:38px}.solution-feature{background:#fff0eb;border-color:#ebc8bd;flex-direction:column;align-items:flex-start;display:flex}.solution-top{flex-direction:column;align-items:flex-start;gap:12px;width:100%;display:flex}.solution-top .eyebrow{color:#535d68;font-size:12px}.solution-feature h3{letter-spacing:-.04em;margin:60px 0 24px;font-size:clamp(38px,4vw,58px);line-height:1.06}.solution-feature>p{color:#525b66;max-width:380px;margin:0 0 24px;font-size:18px}.solution-chips{flex-wrap:wrap;gap:8px;margin-bottom:40px;display:flex}.solution-chips span{color:#7d3521;border:1px solid #dfb8ac;border-radius:3px;padding:6px 10px;font-size:12px}.solution-feature>.text-link{margin-top:auto}.solution-stack{gap:24px;display:grid}.solution-compact h3{margin:25px 0 16px;font-size:30px;line-height:1.15}.solution-compact p{color:var(--muted);max-width:430px;margin:0 0 20px;font-size:16px}.text-link{color:var(--brand-hover);border-bottom:1px solid #d9aaa0;padding:9px 0;font-size:14px;display:inline-block}.text-link:hover{border-color:var(--brand)}.solutions-note{color:var(--muted);text-align:right;margin:25px 0 0;font-size:14px}.solutions-note a{color:var(--brand-hover);text-underline-offset:4px;text-decoration:underline}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.project-card{border:1px solid var(--line);background:#f5f5f4;border-radius:7px;flex-direction:column;align-items:flex-start;padding:30px;display:flex}.sample-label{color:#6a4a3f;border:1px dashed #bda396;border-radius:3px;padding:5px 9px;font-size:12px;display:inline-block}.project-card h3{margin:32px 0 18px;font-size:26px}.project-card p{color:var(--muted);margin:0 0 25px;font-size:16px}.project-card .text-link{margin-top:auto}.project-card-main{flex-direction:column;flex:1;align-self:stretch;align-items:flex-start;display:flex;container-type:inline-size}.fit-host{container-type:inline-size}.fit-words{font-size:min(1em,calc(100cqi / (var(--letters) * .58)));display:block}.project-card.is-wide{grid-column:1/-1;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;padding:40px;display:grid}.project-card.is-wide h3{max-width:560px;font-size:clamp(28px,2.6vw,36px);line-height:1.15}.project-card.is-wide p{max-width:560px}.project-done ol{border-bottom:1px solid var(--line);margin:16px 0 0;padding:0;list-style:none}.project-done li{border-top:1px solid var(--line);color:var(--ink);grid-template-columns:40px minmax(0,1fr);align-items:baseline;padding:14px 0;font-size:17px;line-height:1.4;display:grid}.project-done li span{color:var(--brand);font-size:13px}@media (width<=900px){.project-card.is-wide{grid-template-columns:1fr;gap:30px;padding:25px}}.project-note{color:var(--muted);margin-top:22px;font-size:13px}.project-type{color:var(--brand);margin-top:16px;font-size:12px}.brief-contacts{border-top:1px solid var(--line);margin-top:36px;padding-top:22px}.brief-contacts>.eyebrow{color:var(--muted);font-size:12px}.brief-contacts p{color:var(--ink);margin:12px 0;font-size:18px}.brief-contacts small{max-width:360px;color:var(--muted);font-size:12px;display:block}.footer-link{white-space:nowrap;font-size:13px}.footer-link:hover{color:var(--brand)}.detail-hero{background:#f5f5f4;padding-top:35px;padding-bottom:80px}.breadcrumbs{color:var(--muted);flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:10px;margin-bottom:65px;font-size:12px}.breadcrumbs a:hover{color:var(--brand)}.detail-hero-grid{grid-template-columns:1.6fr 1fr;align-items:start;gap:8%;display:grid}.detail-hero .eyebrow{color:var(--brand-hover);font-size:12px}.detail-hero h1{letter-spacing:-.045em;margin:24px 0;font-size:clamp(38px,4.5vw,68px);font-weight:500;line-height:1.08}.detail-hero h1.has-label{margin-top:0}.title-label{letter-spacing:normal;margin-bottom:24px;font-size:16px;font-weight:400;line-height:1.55;display:block}.detail-lead{color:#5d6570;max-width:670px;margin-bottom:30px;font-size:18px;line-height:1.65}.detail-facts{border-top:2px solid var(--brand);padding-top:24px}.detail-facts>div+div{border-top:1px solid #d7d8d8;margin-top:28px;padding-top:25px}.detail-facts p{color:#4b5664;margin:14px 0 0;font-size:16px}.task-list{margin:0;padding:0;list-style:none}.task-list li{border-top:1px solid var(--line);grid-template-columns:1fr 2fr;gap:35px;padding:25px 0;display:grid}.task-list li:last-child{border-bottom:1px solid var(--line)}.task-list li>span{color:var(--brand);font-size:13px}.task-list p{letter-spacing:-.02em;max-width:700px;margin:0;font-size:23px;line-height:1.35}.detail-work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;display:grid}@media (width>=1101px){.detail-work-grid.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}}.detail-work-grid article{border-top:1px solid #c9cdd2;padding-top:24px}.detail-work-grid h3{margin:22px 0 17px;font-size:23px}.detail-work-grid p{color:var(--muted);margin:0;font-size:16px}.detail-output{background:var(--dark);color:#fff;grid-template-columns:1fr 2fr;gap:35px;display:grid}.detail-output>.eyebrow{color:var(--brand-light);padding-top:12px}.detail-output ul{margin:34px 0 0;padding:0;list-style:none}.detail-output li{color:#e4e7eb;border-top:1px solid #3d4148;padding:18px 0;font-size:18px}.detail-related{padding-top:65px;padding-bottom:65px}.detail-related>.eyebrow{color:var(--muted)}.related-links{flex-wrap:wrap;gap:16px;margin-top:24px;display:flex}.related-links a{border:1px solid var(--line);border-radius:5px;padding:16px 20px;font-size:18px}.related-links a:hover{color:var(--brand);border-color:var(--brand)}.detail-cta{background:var(--brand-tint);grid-template-columns:1fr 1fr;align-items:start;gap:8%;display:grid}.detail-cta-action .product-docs{margin-top:22px}.detail-cta h2{margin:24px 0}.detail-cta p{color:#6a544e;max-width:540px;font-size:16px}.detail-cta-action>p{margin:0;font-size:13px;line-height:1.65}.sample-banner{border-left:3px solid var(--brand);color:#744b3e;background:#fff0eb;max-width:800px;margin:0 0 35px;padding:14px 20px;font-size:14px}.detail-page footer{flex-wrap:wrap}.detail-page header .logo img{width:130px}@media (width<=1100px){header nav{gap:5px 14px}.detail-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.solutions-layout{gap:18px}.solution-feature,.solution-compact{padding:27px}.solution-stack{gap:18px}.project-card{padding:24px}.project-card h3{font-size:23px}.project-grid{gap:16px}}@media (width<=800px){.solutions-layout{grid-template-columns:1fr}.solution-feature h3{margin-top:35px}.solution-feature h3 br{display:none}.solution-chips{margin-bottom:27px}.solution-stack{grid-template-columns:1fr 1fr}.solution-compact h3{font-size:25px}.solution-compact h3 br{display:none}.project-grid{grid-template-columns:1fr}.project-card h3{margin-top:23px;font-size:27px}.detail-hero-grid{grid-template-columns:1fr;gap:45px}.detail-facts{grid-template-columns:1fr 1fr;gap:30px;display:grid}.detail-facts>div+div{border:0;margin:0;padding:0}.detail-hero h1{font-size:48px}.detail-cta{grid-template-columns:1fr;gap:22px}.detail-output{grid-template-columns:1fr;gap:25px}footer{flex-wrap:wrap}.footer-link{margin-right:12px}.breadcrumbs{margin-bottom:40px}}@media (width<=599px){.solution-stack{grid-template-columns:1fr}.solution-feature,.solution-compact{padding:25px}.solution-feature h3{font-size:40px}.solution-compact h3{font-size:28px}.solution-top .eyebrow{font-size:11px}.solutions-note{text-align:left;line-height:1.7}.solution-chips{gap:6px}.solution-chips span{font-size:11px}.hero-actions{gap:12px 20px}.project-card{padding:25px}.project-card h3{font-size:27px}.detail-hero{padding-top:25px;padding-bottom:50px}.detail-hero h1{font-size:38px}.detail-lead{font-size:17px}.detail-facts,.detail-work-grid{grid-template-columns:1fr;gap:28px}.detail-work-grid h3{margin-top:16px}.task-list li{grid-template-columns:30px 1fr;gap:14px;padding:22px 0}.task-list p{font-size:21px}.related-links{display:grid}.related-links a{font-size:17px}.detail-output li{font-size:16px}.detail-cta h2{font-size:36px}.breadcrumbs{gap:6px;font-size:12px}.detail-hero .eyebrow{font-size:11px}}.sample-result-note{color:#bbc2cc;margin-top:25px;font-size:13px;line-height:1.6}@media (width>=1100px){header nav{column-gap:17px}header{gap:20px}header .logo img{width:130px}header nav .header-cta{padding-left:15px;padding-right:15px}}.solution-feature,.solution-stack,.solution-compact{min-width:0}.solution-feature h3,.solution-compact h3{overflow-wrap:break-word}header nav a[aria-current],.brief-contacts a:hover{color:var(--brand)}.brief-contacts small a{color:var(--brand-hover);text-underline-offset:3px;text-decoration:underline}.contact-facts .contact-value{letter-spacing:-.02em;color:var(--ink);font-size:24px;line-height:1.3}.contact-facts a:hover{color:var(--brand)}.contact-facts .text-link{font-size:14px}.requisites-list{border-top:1px solid var(--line);margin:0}.requisites-list>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;gap:35px;padding:20px 0;display:grid}.requisites-list dt{color:var(--muted);padding-top:4px;font-size:13px}.requisites-list dd{letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin:0;font-size:20px;line-height:1.4}.contacts-route{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:stretch;gap:56px;display:grid}.route-info h2{margin:24px 0 22px}.route-address{max-width:440px;color:var(--ink);margin:0;font-size:18px;line-height:1.55}.route-pass{border-left:3px solid var(--brand);background:var(--brand-tint);margin-top:28px;padding:18px 22px}.route-pass h3{letter-spacing:0;color:var(--ink);margin:0 0 8px;font-size:15px;font-weight:600}.route-pass p{color:#5f4b45;margin:0;font-size:15px;line-height:1.55}.route-pass a{color:var(--ink);font-variant-numeric:tabular-nums;margin-top:12px;font-size:18px;display:inline-block}.route-pass a:hover{color:var(--brand)}.route-actions{flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:30px;display:flex}.route-map{background:#eef0f0;border-radius:8px;min-height:460px;position:relative;overflow:hidden}.route-map-cover{text-align:center;background-image:linear-gradient(#e0e3e5 1px,#0000 1px),linear-gradient(90deg,#e0e3e5 1px,#0000 1px);background-position:50%;background-size:44px 44px;place-content:center;justify-items:center;gap:18px;padding:28px;display:grid;position:absolute;inset:0}.route-map-cover p{max-width:400px;color:var(--muted);margin:0;font-size:14px;line-height:1.55}.route-pin{fill:none;width:44px;height:44px;stroke:var(--brand);stroke-width:1.6px;stroke-linejoin:round}.route-map-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 22px;display:flex}.route-map-show{color:var(--ink);background:#fff;border:1px solid #aeb4be;display:none}.js .route-map-show{display:inline-flex}.route-map-show:hover{border-color:var(--brand);color:var(--brand)}.route-map-frame{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.route-map-api{position:absolute;inset:0}.route-map-api:focus-visible{outline:3px solid var(--brand);outline-offset:-3px}.route-map-pin{align-items:flex-start;display:flex;position:absolute;transform:translate(-20px,-37px)}.route-map-pin svg{width:40px;height:40px;fill:var(--brand);stroke:#fff;stroke-width:1.3px;filter:drop-shadow(0 3px 4px #00000040);flex:none}.route-map-pin circle{fill:#fff;stroke:none}.route-map-pin span{color:var(--ink);white-space:nowrap;background:#fff;border-radius:6px;margin:5px 0 0 4px;padding:5px 10px;font-size:14px;font-weight:700;line-height:1.2;box-shadow:0 2px 8px #0000002e}@media (width<=900px){.contacts-route{grid-template-columns:1fr;gap:36px}.route-map{min-height:380px}}@media (width<=600px){.route-map{border-radius:6px;min-height:360px}.route-actions .button{width:100%}}.card-download{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:26px;display:flex}.card-download .button{gap:10px}.card-download svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.card-download span{color:var(--muted);font-size:13px}@media (width<=600px){.card-download .button{width:100%}}.requisites-list dd{align-items:flex-start;gap:8px;display:flex}.requisite-value{overflow-wrap:anywhere;min-width:0}.copy-button{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;margin:-4px 0;padding:0;transition:color .2s,background-color .2s;display:none;position:relative}.js .copy-button{display:grid}.copy-button svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.copy-button .icon-done,.copy-button.is-done .icon-copy{display:none}.copy-button.is-done .icon-done{display:block}.copy-button.is-done{color:var(--brand)}@media (hover:hover){.copy-button:hover{color:var(--brand);background:var(--paper)}}.copy-button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.copy-done{background:var(--ink);color:#fff;letter-spacing:0;white-space:nowrap;opacity:0;pointer-events:none;border-radius:4px;padding:5px 9px;font-size:12px;line-height:1.3;transition:opacity .2s,transform .2s;position:absolute;bottom:calc(100% + 4px);right:0;transform:translateY(4px)}.copy-button.is-done .copy-done{opacity:1;transform:none}keep-word{white-space:nowrap}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.not-found{min-height:52vh}.not-found .hero-actions{margin-top:8px}footer.site-footer{grid-template-columns:minmax(0,1.3fr) repeat(4,minmax(0,1fr));align-items:start;gap:36px 32px;margin:0 5%;padding:48px 0 30px;font-size:14px;line-height:1.45;display:grid}.site-footer .footer-brand p{max-width:240px;margin:18px 0 0;font-size:13px}.footer-col{align-content:start;gap:10px;display:grid}.footer-title{letter-spacing:.09em;text-transform:uppercase;color:#4c5665;margin-bottom:4px;font-size:12px}.footer-col a{width:fit-content;color:var(--ink)}.footer-col a:hover{color:var(--brand)}.footer-col address{color:var(--muted);font-style:normal}.footer-resident{justify-items:start;gap:12px;margin-top:28px;display:grid}.footer-resident .footer-title{margin:0}.footer-resident img{width:200px;max-width:100%;height:auto;display:block}.footer-legal{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;grid-column:1/-1;gap:8px 28px;padding-top:22px;font-size:12px;display:flex}@media (width>=1600px){footer.site-footer{margin-left:max(5%,50vw - 720px);margin-right:max(5%,50vw - 720px)}}@media (width<=1100px){footer.site-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer .footer-brand{grid-column:1/-1}}@media (width<=600px){footer.site-footer{grid-template-columns:1fr;gap:28px;margin:0 6%}.requisites-list>div{grid-template-columns:1fr;gap:4px}.requisites-list dd{font-size:18px}.contact-facts .contact-value{font-size:22px}.hero{padding-bottom:28px}}.facts-links{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.facts-links a{min-height:40px;color:var(--ink);background:#fff;border:1px solid #d7d8d8;border-radius:5px;align-items:center;padding:8px 14px;font-size:14px;line-height:1.3;transition:border-color .2s,color .2s;display:inline-flex}.facts-links a:hover{color:var(--brand);border-color:var(--brand)}.detail-actions{flex-wrap:wrap;align-items:center;gap:12px 14px;display:flex}.button.secondary{color:var(--ink);background:#fff;border:1px solid #aeb4be;gap:10px;padding:13px 24px}.button.secondary:hover{border-color:var(--brand);color:var(--brand)}.icon-download{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}html{scroll-padding-top:84px}header{z-index:50;background:#fff;min-height:84px;padding-top:8px;padding-bottom:8px;transition:box-shadow .3s;position:sticky;top:0}header.is-scrolled{box-shadow:0 8px 24px #14171b14}header .logo img,.detail-page header .logo img{width:120px}.skip{z-index:60}@media (width>=921px) and (width<=1150px){header{flex-wrap:nowrap;gap:20px}header nav{flex-wrap:nowrap;flex:none;column-gap:14px;font-size:14px}header nav .header-cta{padding:10px 14px}}.nav-toggle{display:none}@media (width<=920px){.js header{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:12px;min-height:0;padding-top:10px;padding-bottom:10px;position:sticky}.js .nav-toggle{width:48px;height:48px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;margin-right:-12px;padding:0;display:inline-flex}.nav-toggle-box{width:24px;height:16px;display:block;position:relative}.nav-toggle-box span{background:currentColor;border-radius:1px;width:100%;height:2px;transition:transform .4s cubic-bezier(.22,.68,.2,1),top .4s cubic-bezier(.22,.68,.2,1),opacity .25s;position:absolute;left:0}.nav-toggle-box span:first-child{top:0}.nav-toggle-box span:nth-child(2){top:7px}.nav-toggle-box span:nth-child(3){top:14px}.is-menu-open .nav-toggle-box span:first-child{top:7px;transform:rotate(45deg)}.is-menu-open .nav-toggle-box span:nth-child(2){opacity:0}.is-menu-open .nav-toggle-box span:nth-child(3){top:7px;transform:rotate(-45deg)}.js header nav{z-index:30;border-left:1px solid var(--line);border-bottom:1px solid var(--line);visibility:hidden;opacity:0;clip-path:inset(0 0 100%);background:#fff;border-bottom-left-radius:8px;flex-flow:column;flex:none;align-items:stretch;gap:0;width:50%;min-width:190px;padding:4px 20px 20px;font-size:17px;font-weight:500;transition:clip-path .3s,opacity .25s,transform .3s,visibility 0s linear .3s;display:flex;position:absolute;top:100%;left:auto;right:0;transform:translateY(-12px);box-shadow:-12px 24px 40px #14171b1f}.js header.is-menu-open nav{visibility:visible;opacity:1;clip-path:inset(0 0 -60px -60px);transition:clip-path .5s cubic-bezier(.22,.68,.2,1),opacity .35s,transform .5s cubic-bezier(.22,.68,.2,1),visibility;transform:none}.js header nav>a{border-bottom:1px solid var(--line);white-space:normal;opacity:0;min-height:52px;padding:0;transition:opacity .2s,transform .2s;transform:translateY(-8px)}.js header.is-menu-open nav>a{opacity:1;transition:opacity .35s,transform .45s cubic-bezier(.22,.68,.2,1);transform:none}.js header.is-menu-open nav>a:first-child{transition-delay:80ms}.js header.is-menu-open nav>a:nth-child(2){transition-delay:.12s}.js header.is-menu-open nav>a:nth-child(3){transition-delay:.16s}.js header.is-menu-open nav>a:nth-child(4){transition-delay:.2s}.js header.is-menu-open nav>a:nth-child(5){transition-delay:.24s}.js header.is-menu-open nav>a:nth-child(6){transition-delay:.28s}.js header.is-menu-open nav>a:nth-child(7){transition-delay:.32s}.js header nav .header-cta{background:var(--brand);color:#fff;white-space:nowrap;border:0;justify-content:center;min-height:48px;margin:18px 0 0;padding:12px 14px;font-size:15px}.js header nav .header-cta:hover{background:var(--brand-hover);color:#fff}}@media (prefers-reduced-motion:reduce){.nav-toggle-box span,.js header nav,.js header nav>a{transition:none!important}}@media (width<=599px){.services-grid.is-carousel{border:0;border-radius:0;height:auto;margin:0 -6.81818%;padding:0;overflow:visible}.is-carousel .services-row{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:none;gap:12px;padding:4px 11% 18px;position:relative;overflow-x:auto}.is-carousel .services-row::-webkit-scrollbar{display:none}.is-carousel .service-tile,.is-carousel .service-tile.is-open{height:var(--carousel-tile-h,460px);scroll-snap-align:center;scroll-snap-stop:always;flex:0 0 100%}.is-carousel .service-tile.is-open .tile-toggle{opacity:0}.is-carousel .tile-geo{height:48%;top:42%}.carousel-dots{justify-content:center;gap:2px;margin-top:-6px;display:flex}.carousel-dots button{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:24px;height:28px;padding:0;display:inline-flex}.carousel-dots button:before{content:"";background:#cfd3d8;border-radius:4px;width:7px;height:7px;transition:width .35s cubic-bezier(.22,.68,.2,1),background-color .35s;display:block}.carousel-dots button[aria-current=true]:before{background:var(--brand);width:20px}}.footer-toggle{display:none}.footer-links-inner{align-content:start;gap:10px;display:grid}@media (width<=600px){footer.site-footer{gap:0;padding-top:40px}.site-footer .footer-brand{padding-bottom:26px}.site-footer .footer-col{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:0}.site-footer .footer-col>.footer-title{letter-spacing:.08em;color:var(--ink);margin:0;padding:20px 0 8px;font-size:15px;font-weight:600}.site-footer .footer-col a{align-items:center;min-height:40px;font-size:17px;line-height:1.35;display:flex}.site-footer .footer-col:not(.footer-group){padding-bottom:20px}.site-footer .footer-col:not(.footer-group) a{font-size:18px}.site-footer .footer-col address{margin-top:6px;font-size:16px;line-height:1.5}.js .footer-group>.footer-title{display:none}.js .footer-toggle{width:100%;min-height:62px;color:var(--ink);font:inherit;letter-spacing:.08em;text-transform:uppercase;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:0;font-size:15px;font-weight:600;display:flex}.footer-plus{color:var(--brand);letter-spacing:0;flex:none;font-size:28px;font-weight:400;line-height:1;transition:transform .35s cubic-bezier(.22,.68,.2,1)}.footer-group.is-open .footer-plus{transform:rotate(45deg)}.js .footer-links{visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.22,.68,.2,1),visibility 0s linear .4s;display:grid}.js .footer-group.is-open .footer-links{visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .4s cubic-bezier(.22,.68,.2,1),visibility}.js .footer-links-inner{gap:2px;min-height:0;padding-bottom:0;transition:padding-bottom .4s cubic-bezier(.22,.68,.2,1);overflow:hidden}.js .footer-group.is-open .footer-links-inner{padding-bottom:16px}}.hero{isolation:isolate;position:relative}.hero-sphere{z-index:-1;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}@media (width<=600px){.hero-art{min-height:330px}}@media (width>=921px){.hero-art{align-self:stretch}}@media (width>=921px) and (prefers-reduced-motion:no-preference){.js .hero-stage:after{content:"";height:260px;display:block}.js .hero-stage>.hero{top:var(--hero-pin,84px);position:sticky}}.section .tiny-cross{color:var(--brand);line-height:0}.detail-output .tiny-cross{color:var(--brand-light)}header nav>a:not(.header-cta){color:var(--muted)}header nav>a:not(.header-cta):hover,header nav a[aria-current]{color:var(--brand)}.about-photo{aspect-ratio:1;background:#e4e6e8;border-radius:8px;margin:0 0 40px;overflow:hidden}.about-photo img{object-fit:cover;width:100%;height:100%;display:block}.about-photo{position:relative}.about-photo-details{opacity:0;transition:opacity .9s .15s;position:absolute;inset:0}.js .about.is-expanded .about-photo-details{opacity:1}.about-toggle{min-height:46px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #aeb4be;border-radius:5px;align-items:center;gap:12px;margin-top:30px;padding:11px 18px;font-size:14px;font-weight:500;transition:border-color .2s,color .2s;display:none}.js .about-toggle{display:inline-flex}.about-toggle:hover{border-color:var(--brand);color:var(--brand)}.about-toggle-icon{color:var(--brand);font-size:20px;line-height:0}.about-less .about-toggle-icon{transform:rotate(45deg)}.about-details{max-width:720px}.about-details:focus{outline:none}.about-lead{letter-spacing:-.01em;color:var(--ink);margin:0 0 16px;font-size:clamp(19px,1.7vw,23px);line-height:1.45}.about-details>p:not(.about-lead){color:#4e5968;margin:0 0 24px;font-size:16px;line-height:1.65}.about-facts{border-top:1px solid var(--line);margin:0;padding-top:16px;font-size:14px}.about-facts>div{grid-template-columns:110px minmax(0,1fr);gap:16px;padding:6px 0;display:grid}.about-facts dt{color:var(--muted)}.about-facts dd{color:var(--ink);margin:0}.about-facts a{color:var(--brand-hover);text-underline-offset:3px;text-decoration:underline}@media (width>=801px){.about{grid-template-rows:auto auto 1fr;grid-template-columns:38.75% 7% 8.5% 7% 38.75%;align-items:start;display:grid;container-type:inline-size}.about>.eyebrow{grid-column:1/-1;margin-bottom:38px}.about>p{grid-area:2/1/auto/4;margin-top:0;font-size:clamp(30px,3.7vw,56px)}.about-bottom{grid-area:3/1/auto/4;align-self:start}.about-photo{z-index:1;grid-area:2/5/4;margin:0;transition:transform 1.1s cubic-bezier(.37,0,.63,1);position:relative}.about-details{grid-column:1/-1}.js .about-details{grid-area:2/3/4/-1}.js .about.is-expanded .about-photo{transform:translate(calc(100% - 100cqw))}.js .about>p,.js .about-bottom,.js .about-details{transition:opacity .65s .45s,transform .9s cubic-bezier(.22,.68,.2,1) .45s,visibility}.js .about:not(.is-expanded) .about-details,.js .about.is-expanded>p,.js .about.is-expanded .about-bottom{opacity:0;visibility:hidden;transition:opacity .3s,transform .3s,visibility 0s linear .3s}.js .about:not(.is-expanded) .about-details{transform:translate(24px)}.js .about.is-expanded>p,.js .about.is-expanded .about-bottom{transform:translate(-24px)}}@media (width<=800px){.js .about:not(.is-expanded) .about-details,.js .about.is-expanded .about-bottom{display:none}.js .about.is-toggled .about-details,.js .about.is-toggled .about-bottom{animation:.6s cubic-bezier(.22,.68,.2,1) about-in}}@keyframes about-in{0%{opacity:0;transform:translateY(12px)}}@media (width<=600px){.about-facts>div{grid-template-columns:1fr;gap:2px}}.form-row{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.brief-form>.form-row:first-of-type .field-label{margin-top:0}@media (width<=600px){.form-row{grid-template-columns:1fr}.brief-form>.form-row:first-of-type>div+div .field-label{margin-top:22px}.form-footer{flex-wrap:wrap}.form-footer .button{white-space:nowrap}}.solutions-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px;margin:0 0 18px;display:none}.js .solutions-filters{display:grid}.filter-select{grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;display:grid;position:relative}.filter-label{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);cursor:default;font-size:12px}.filter-button{min-height:50px;color:var(--ink);cursor:pointer;user-select:none;background:#fff;border:1px solid #d6dbe1;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:12px 16px;font-size:15px;transition:border-color .2s,background-color .2s;display:flex}.filter-button:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2369717d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") 50%/18px no-repeat;flex:none;width:18px;height:18px;transition:transform .25s}.filter-button[aria-expanded=true]:after{transform:rotate(180deg)}.filter-button:hover,.filter-button[aria-expanded=true]{border-color:var(--brand)}.filter-button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.filter-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.filter-more{background:var(--brand);color:#fff;border-radius:12px;flex:none;margin:0 auto 0 -4px;padding:3px 8px;font-size:13px;font-weight:700;line-height:1.2}.filter-select.is-set .filter-button{border-color:var(--brand);background:var(--brand-tint)}.filter-menu{z-index:20;background:#fff;border:1px solid #d6dbe1;border-radius:8px;max-height:min(360px,60vh);margin:0;padding:6px;list-style:none;animation:.18s ease-out filter-menu-in;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 40px #14171b1f}@keyframes filter-menu-in{0%{opacity:0;transform:translateY(-4px)}}.filter-menu [role=option]{color:var(--ink);cursor:pointer;border-radius:4px;align-items:center;gap:12px;padding:10px 12px;font-size:15px;line-height:1.35;display:flex}.filter-menu [role=option][hidden]{display:none}.filter-menu [role=option].is-active{background:#f5f5f4}.filter-menu [role=option][aria-selected=true]{color:var(--brand-hover)}.filter-menu [role=option][aria-disabled=true]{color:#b4bac2;cursor:default}.filter-menu li[data-value=""]{box-shadow:0 1px 0 var(--line);border-radius:4px 4px 0 0;margin-bottom:5px}.filter-menu[aria-multiselectable=true] [role=option]:before{content:"";background:#fff 50%/12px no-repeat;border:1px solid #c4cad2;border-radius:4px;flex:none;width:18px;height:18px;transition:background-color .15s,border-color .15s}.filter-menu[aria-multiselectable=true] [role=option][aria-selected=true]:before{background-color:var(--brand);border-color:var(--brand);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}.filter-menu [role=option][aria-disabled=true]:before{border-color:#dfe3e8}.filter-option-label{flex:1;min-width:0}.filter-count{color:var(--muted);flex:none;font-size:12px}.filter-menu [aria-disabled=true] .filter-count{color:#c3c8cf}@media (prefers-reduced-motion:reduce){.filter-menu{animation:none}.filter-button:after{transition:none}}.solutions-status{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0 0 26px;font-size:13px;display:flex}.filter-reset{font:inherit;color:var(--brand-hover);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #d9aaa0;padding:0 0 2px;font-size:13px}.filter-reset:hover{color:var(--brand);border-color:var(--brand)}.solution-tiles{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;gap:18px;display:grid}.solution-tile{background:#f5f5f4;border:1px solid #e3e3e0;border-radius:8px;flex-direction:column;align-items:flex-start;min-height:320px;padding:32px;transition:border-color .25s,box-shadow .25s;display:flex;position:relative}.solution-tile[hidden]{display:none}.solution-tile:hover{border-color:#cdd2d8;box-shadow:0 14px 34px #14171b12}.solution-tile.is-featured{background:#fff0eb;border-color:#ebc8bd;grid-column:span 2}.solution-tile-top .eyebrow{color:#535d68;font-size:12px}.solution-tile h2{letter-spacing:-.03em;margin:22px 0 14px;font-size:clamp(24px,2vw,30px);font-weight:500;line-height:1.15}.solution-tile.is-featured h2{letter-spacing:-.035em;max-width:60%;margin:26px 0 16px;font-size:clamp(28px,2.6vw,40px);line-height:1.08}.solution-tile h2 a:after,.solution-feature>.text-link:after,.solution-compact>.text-link:after{content:"";z-index:1;border-radius:8px;position:absolute;inset:0}.solution-feature,.solution-compact{transition:border-color .25s,box-shadow .25s;position:relative}.solution-feature:hover{border-color:#e0a898;box-shadow:0 14px 34px #c92c091a}.solution-compact:hover{border-color:#cdd2d8;box-shadow:0 14px 34px #14171b12}.solution-feature:hover>.text-link,.solution-compact:hover>.text-link{border-color:var(--brand)}.solution-tile:hover h2 a{color:var(--brand)}.solution-tile p{color:#5d6570;max-width:520px;margin:0 0 24px;font-size:15px;line-height:1.6}.solution-tile.is-featured p{max-width:60%;font-size:17px}.solution-tile-tags{flex-wrap:wrap;gap:6px;margin:auto 0 0;padding:0;list-style:none;display:flex}.solution-tile-tags li{color:#4d5767;background:#fff9;border:1px solid #d9d9d5;border-radius:4px;padding:5px 9px;font-size:12px}.solution-tile-more{color:var(--brand-hover);border-bottom:1px solid #d9aaa0;margin-top:22px;padding-bottom:6px;font-size:14px}.solution-tile{isolation:isolate}.solution-geo{z-index:-1;opacity:.2;height:74%;top:50%;right:5%}.solution-tile:hover .solution-geo{opacity:.32}.solutions-empty{color:var(--muted);margin:10px 0 0;font-size:15px}.solutions-empty a{color:var(--brand-hover);text-underline-offset:3px;text-decoration:underline}@media (width<=1100px){.solution-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.js .solutions-filters{grid-template-columns:1fr}.solution-geo{display:none}.solution-tiles{grid-template-columns:1fr}.solution-tile.is-featured{grid-column:auto}.solution-tile{min-height:0;padding:26px}.solution-tile.is-featured h2{max-width:none;margin-top:28px}.solution-tile.is-featured p{max-width:none}}.solutions-more{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 30px;margin-top:25px;display:flex}.solutions-more .solutions-note{margin:0}.product-window{background:#fff;border-radius:12px;margin:0;overflow:hidden;box-shadow:0 30px 70px #14171b24,0 0 0 1px #14171b12}.product-window-bar{background:#eef0f2;border-bottom:1px solid #e1e4e8;align-items:center;gap:7px;height:30px;padding:0 14px;display:flex}.product-window-bar span{background:#cfd4da;border-radius:50%;width:10px;height:10px}.product-window img{aspect-ratio:16/10;object-fit:cover;object-position:left top;width:100%;height:auto;display:block}.product-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 34px;display:grid}.product-feature-grid article{border-top:1px solid var(--line);padding-top:24px}.product-feature-grid h3,.product-card h3{margin:0 0 12px;font-size:22px}.product-feature-grid h3:before{content:"+";color:var(--brand);margin-right:10px;font-weight:400}.product-feature-grid p,.product-card p{color:var(--muted);margin:0;font-size:16px}.product-card-example{border-top:1px solid #dcdcd8;margin-top:20px;padding-top:18px}.product-card-example span{letter-spacing:.09em;text-transform:uppercase;color:var(--brand-hover);margin-bottom:8px;font-size:12px;display:block}.product-card .product-card-example p{color:var(--ink);font-size:15px;line-height:1.55}.product-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}@media (width>=1101px){.product-card-grid:has(>:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}}.product-card{background:#f5f5f4;border:1px solid #e3e3e0;border-radius:8px;padding:30px}.block-paper .product-card{background:#fff}.product-card-label{letter-spacing:.09em;text-transform:uppercase;color:var(--brand-hover);margin-bottom:14px;font-size:12px;display:block}.product-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:34px;display:grid}.product-tech h3{letter-spacing:.09em;text-transform:uppercase;color:#aeb5bf;margin:0 0 16px;font-size:13px;font-weight:500}.detail-output .product-chips{flex-wrap:wrap;gap:8px;margin:0;display:flex}.detail-output .product-chips li{color:#e4e7eb;border:1px solid #3d4148;border-radius:5px;padding:8px 13px;font-size:14px}.product-specs{margin:0}.product-specs>div{border-top:1px solid #3d4148;grid-template-columns:140px minmax(0,1fr);gap:16px;padding:14px 0;display:grid}.product-specs dt{color:#aeb5bf;font-size:14px}.product-specs dd{color:#f1f3f5;margin:0;font-size:16px}.product-faq-list details{border-top:1px solid var(--line)}.product-faq-list details:last-child{border-bottom:1px solid var(--line)}.product-faq-list summary{min-height:76px;padding:20px 0}.product-faq-list h3{font-size:21px}.product-faq-list p{max-width:760px;color:var(--muted);margin:0 0 26px;font-size:16px}.product-docs{flex-wrap:wrap;gap:6px 24px;margin-top:6px;display:flex}.solution-tile-top{flex-direction:column;align-items:flex-start;gap:12px;width:100%;display:flex}.solution-badge{letter-spacing:.02em;white-space:nowrap;min-height:28px;color:var(--brand-hover);background:#fff;border:1px solid #ebc8bd;border-radius:14px;align-items:center;padding:4px 12px;font-size:12px;line-height:1.2;display:inline-flex}.solution-badge.is-registry{color:#1f6b45;background:#f1faf5;border-color:#b9dcc8}a.solution-badge:hover{border-color:currentColor}.solution-badges{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}@media (width<=1100px){.product-feature-grid,.product-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.product-feature-grid,.product-card-grid,.product-tech-grid{grid-template-columns:1fr}.product-specs>div{grid-template-columns:1fr;gap:4px}}.product-screens{overflow:hidden}.screens-carousel{--slide:min(68vw,1000px);margin:0 calc(50% - 50vw)}.screens-track{padding:12px calc((100% - var(--slide)) / 2) 10px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;gap:clamp(18px,2.4vw,36px);display:flex;position:relative;overflow-x:auto}.screens-track::-webkit-scrollbar{display:none}.screens-track:focus-visible{outline:3px solid var(--brand);outline-offset:-3px}.screens-slide{flex:0 0 var(--slide);scroll-snap-align:center;margin:0}.screens-slide figcaption{letter-spacing:-.01em;color:var(--ink);margin:22px 4px 0;font-size:clamp(17px,1.45vw,21px);font-weight:500;line-height:1.35}.js .screens-slide{transition:filter .5s,opacity .5s,transform .5s cubic-bezier(.22,.68,.2,1)}.js .screens-slide:not(.is-active){filter:blur(4px);opacity:.5;cursor:pointer;transform:scale(.94)}.screens-controls{justify-content:center;align-items:center;gap:22px;margin-top:30px;display:none}.js .screens-controls{display:flex}.screens-arrow{width:46px;height:46px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #d6dbe1;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:border-color .2s,color .2s,opacity .2s;display:inline-flex}.screens-arrow:hover{border-color:var(--brand);color:var(--brand)}.screens-arrow:disabled{opacity:.35;cursor:default;color:var(--ink);border-color:#d6dbe1}.screens-dots{align-items:center;display:flex}.screens-dots button{cursor:pointer;background:0 0;border:0;width:24px;height:24px;padding:0;transition:width .3s;position:relative}.screens-dots button:before{content:"";background:#cfd3d8;border-radius:5px;width:9px;height:9px;transition:width .3s,background .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.screens-dots button[aria-current=true]{width:38px}.screens-dots button[aria-current=true]:before{background:var(--brand);width:26px}@media (width<=700px){.screens-carousel{--slide:76vw}.screens-track{gap:14px}.screens-arrow{display:none}.js .screens-slide:not(.is-active){filter:blur(3px);transform:scale(.96)}}.block-white{background:#fff}.block-paper{background:#f5f5f4}.block-text .section-intro{margin-bottom:0}.block-text .section-intro p{max-width:680px}.block-text .section-intro p+p{margin-top:16px}.block-text-figure{margin:64px 0 0}.block-text-figure img{aspect-ratio:16/7;object-fit:cover;background:#7a8898;border-radius:8px;width:100%;height:auto;display:block}.block-text-figure figcaption{color:var(--muted);margin-top:12px;font-size:13px}@media (width<=599px){.block-text-figure{margin-top:40px}.block-text-figure img{aspect-ratio:4/3}}.docs-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.docs-list a{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 24px;padding:20px 0;display:grid}.docs-name{color:var(--ink);font-size:19px}.docs-note{color:var(--muted);grid-row:2;font-size:14px}.docs-action{color:var(--brand-hover);border-bottom:1px solid #d9aaa0;grid-area:1/2/3;padding-bottom:4px;font-size:14px}.docs-list a:hover .docs-name{color:var(--brand)}.legal-hero h1{max-width:980px;font-size:clamp(34px,3.6vw,56px)}.legal-hero .detail-lead{margin-bottom:22px}.legal-date{color:var(--muted);margin:0;font-size:13px}.legal{grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:start;gap:35px;display:grid}.legal-aside{position:sticky;top:124px}.legal-toc{display:block}.legal-aside .eyebrow{color:var(--muted);display:block}.legal-toc ol{border-top:1px solid var(--line);max-width:330px;margin:22px 0 0;padding:0;list-style:none}.legal-toc li{border-bottom:1px solid var(--line)}.legal-toc a{color:#4c5665;padding:11px 0;font-size:14px;line-height:1.4;transition:color .2s;display:block}.legal-toc a:hover{color:var(--brand)}.legal-text{color:#2b3036;max-width:760px;font-size:16px;line-height:1.7}.legal-text h2{letter-spacing:-.02em;border-top:1px solid var(--line);margin:56px 0 20px;padding-top:30px;font-size:clamp(24px,2.2vw,30px);line-height:1.25}.legal-text h2:first-child{border-top:0;margin-top:0;padding-top:0}.legal-text p{margin:0 0 14px}.legal-text ul,.legal-text ol{margin:0 0 18px;padding-left:22px}.legal-text li{margin:8px 0;padding-left:4px}.legal-text li::marker,.legal-text .legal-num{color:var(--brand)}.legal-text strong{color:var(--ink);font-weight:600}.legal-text a{color:var(--brand-hover);text-underline-offset:3px;text-decoration:underline 1px}.legal-text a:hover{color:var(--brand)}@media (width<=800px){.legal{grid-template-columns:1fr;gap:40px}.legal-aside{position:static}.legal-toc ol{max-width:none}}.cookie-notice{z-index:45;border:1px solid var(--line);opacity:0;background:#fff;border-radius:8px;flex-direction:column;gap:16px;width:min(500px,100% - 48px);padding:22px 24px;transition:opacity .5s,transform .8s cubic-bezier(.22,.68,.2,1);display:flex;position:fixed;bottom:24px;left:24px;transform:translateY(24px);box-shadow:0 20px 50px #14171b29}.cookie-notice.is-visible{opacity:1;transform:none}.cookie-notice[hidden]{display:none}.cookie-notice p{color:#4c5665;margin:0;font-size:14px;line-height:1.6}.cookie-notice p a{color:var(--brand-hover);text-underline-offset:3px;text-decoration:underline}.cookie-actions{gap:10px;display:flex}.cookie-actions .button{min-height:42px;padding:10px 22px}.cookie-decline{color:var(--ink);background:0 0;box-shadow:inset 0 0 0 1px #aeb4be}.cookie-decline:hover{color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}@media (width<=600px){.cookie-notice{width:calc(100% - 24px);padding:18px;bottom:12px;left:12px}.cookie-actions .button{flex:1}}.footer-docs{font-size:inherit;flex-wrap:wrap;gap:8px 28px;margin-left:auto;display:flex}.footer-docs a:hover,.footer-docs button:hover{color:var(--brand)}.footer-docs button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}@media (width<=600px){.footer-docs{flex-direction:column;align-items:flex-start;gap:10px;width:100%;margin:6px 0 0}.footer-docs button{padding:5px 0}}.form-consent{grid-template-columns:20px 1fr;gap:6px 12px;margin-top:24px;font-size:14px;line-height:1.5;display:grid}.brief-form .form-consent input{appearance:none;cursor:pointer;background:#fff;border:1px solid #c9d0da;border-radius:4px;place-content:center;width:20px;height:20px;margin:0;padding:0;transition:background .2s,border-color .2s;display:grid}.brief-form .form-consent input:before{content:"";border:0 solid #fff;border-width:0 0 2px 2px;width:10px;height:5px;transition:transform .2s;transform:translateY(-1px)rotate(-45deg)scale(0)}.brief-form .form-consent input:checked{background:var(--brand);border-color:var(--brand)}.brief-form .form-consent input:checked:before{transform:translateY(-1px)rotate(-45deg)scale(1)}.brief-form .form-consent input:user-invalid{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}.form-consent label{color:var(--ink);cursor:pointer}.form-consent p{color:var(--muted);text-wrap:balance;grid-column:2;margin:0;font-size:12px}.form-consent p a{white-space:nowrap}.form-consent a{color:var(--brand-hover);text-underline-offset:3px;text-decoration:underline 1px}.form-trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-status[data-state]{border-left:3px solid;margin:22px 0 0;padding:14px 17px;font-size:14px;line-height:1.55;animation:.6s cubic-bezier(.22,.68,.2,1) status-in}.form-status[data-state=info]{background:var(--paper);color:var(--ink);border-color:#aeb4be}.form-status[data-state=success]{color:#1d4a2e;background:#eef6f0;border-color:#2f7a4b}.form-status[data-state=error]{background:var(--brand-tint);border-color:var(--brand);color:var(--brand-hover)}.form-status a{color:inherit;text-underline-offset:3px;text-decoration:underline}@keyframes status-in{0%{opacity:0;transform:translateY(6px)}}.task-title{letter-spacing:-.02em;max-width:700px;color:var(--ink);grid-column:2;font-size:23px;font-weight:400;line-height:1.35}.task-list .task-text{max-width:700px;color:var(--muted);grid-column:2;margin:0;font-size:17px;line-height:1.6}@media (width>=901px){.task>span,.task-title{grid-area:1/1}.task-title{padding-left:52px}.task-list .task-text{grid-row:1}}@media (width<=900px){.task-list .task{row-gap:12px}}@media (width<=600px){.task-title{font-size:21px}.task-list .task-text{font-size:16px}}.detail-output .result-list{grid-column:1/-1;margin:0}.result-title{font-size:inherit;letter-spacing:0;color:inherit;margin:0;font-weight:400;line-height:1.45}.result-text{color:#b9bec7;max-width:700px;margin:0;font-size:16px;line-height:1.6}@media (width>=901px){.result-list li{grid-template-columns:1fr 2fr;gap:35px;display:grid}.result-plain{grid-column:2}}@media (width<=900px){.result-text{margin-top:8px}}@media (width<=599px){.result-text{font-size:15px}}.detail-hero.has-motion{isolation:isolate;position:relative;overflow:hidden}.hero-motion{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#00000040,#000 50%);mask-image:linear-gradient(90deg,#00000040,#000 50%)}.hero-motion path{fill:none;stroke:#16191d14;stroke-width:1px}.hero-motion path.accent{stroke:#c92c093d;stroke-dasharray:6 7}.service-surface{position:relative}.service-surface h3,.service-copy{z-index:1;position:relative}.tile-geo{z-index:0;aspect-ratio:1;width:auto;height:64%;color:var(--brand);opacity:.22;pointer-events:none;transition:opacity .3s;position:absolute;top:44%;right:0;transform:translateY(-50%)}:is(.tile-geo,.detail-geo) *{vector-effect:non-scaling-stroke}:is(.tile-geo,.detail-geo) :is(.t1,.t2,.t3,.td){fill:none;stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}:is(.tile-geo,.detail-geo) .t2{stroke-opacity:.6}:is(.tile-geo,.detail-geo) .t3{stroke-opacity:.32}:is(.tile-geo,.detail-geo) .td{stroke-width:2px;stroke-dasharray:0 6}:is(.tile-geo,.detail-geo) .tf{fill:currentColor;fill-opacity:.24;stroke:none}:is(.tile-geo,.detail-geo) .dot{fill:currentColor;stroke:none;fill-opacity:.7}.service-tile.is-open .tile-geo{opacity:0}@media (width<=599px){.tile-geo{height:52%;top:40%}}@media (prefers-reduced-motion:reduce){.tile-geo{transition:none}}.detail-hero-main{z-index:0;align-self:stretch;position:relative}.detail-geo{z-index:-1;aspect-ratio:1;width:clamp(300px,30vw,440px);height:auto;color:var(--brand);opacity:.16;pointer-events:none;position:absolute;bottom:-40px;right:-60px}@media (width<=800px){.detail-geo{display:none}}:root{--dash:repeating-linear-gradient(90deg,var(--brand) 0 4px,transparent 4px 8px)}.process,.about-bottom,.brief-contacts{border-top:1px solid;border-image:var(--dash) 1}.detail-facts{border-top:2px solid;border-image:var(--dash) 2}.solution-tile.is-custom{background:var(--brand);border-color:var(--brand);color:#fff}.solution-tile.is-custom:hover{border-color:var(--brand);box-shadow:0 14px 34px #c92c0938}.solution-tile.is-custom .solution-badge{border-color:#fff}.solution-tile.is-custom h2{color:#fff}.solution-tile.is-custom p{color:#fff3ef}.solution-tile.is-custom .button{color:var(--brand-hover);background:#fff;margin-top:auto}.solution-tile.is-custom .button:hover{background:#fff3ef}.solution-tile.is-custom.is-wide{grid-column:1/-1}
