@font-face{font-family:GetVoIP Grotesque;src:url(/fonts/GetVoIP-Grotesque.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:GetVoIP Grotesque;src:url(/fonts/GetVoIP-Grotesque-Italic.ttf) format("truetype");font-style:italic;font-weight:400;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Variable.ttf) format("truetype-variations");font-style:normal;font-weight:100 900;font-display:swap}:root{color-scheme:light;font-family:Montserrat,Arial,Helvetica,system-ui,sans-serif;color:#111;background:#f7f8f7;font-synthesis:none;text-rendering:optimizeLegibility;--brand: #d90000;--brand-strong: #a80000;--ink: #111111;--muted: #5b5d61;--canvas: #f7f8f7;--surface: #ffffff;--surface-soft: #eef1ef;--inverse: #f7f8f7;--dark: #0a0a0a;--line: #cfd5d1;--focus: #005fcc;--success: #176b3a;--error: #b42318;--warning: #7a4b00}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{min-width:320px;margin:0;color:var(--ink);overflow-wrap:anywhere;background:var(--canvas)}img{max-width:100%;height:auto}a,a:visited,a:hover,a:active,a:focus-visible{color:var(--brand-strong);font-weight:700;text-decoration:none}a:hover,a:active{color:var(--brand)}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}[data-fragment-focus]:focus{outline:none}h1,h2,h3,p{margin-top:0}h1{max-width:18ch;font-size:clamp(2.25rem,5vw,4rem);line-height:1.04;letter-spacing:-.045em}h2{font-size:clamp(2rem,3.7vw,2.75rem);line-height:1.08;letter-spacing:-.035em}h3{font-size:clamp(1.25rem,2vw,1.55rem);line-height:1.2}p,li,dd{line-height:1.65}section[id],article[id],h2[id],h3[id]{scroll-margin-top:112px}.container{width:min(1200px,calc(100% - 64px));margin-inline:auto}.narrow{max-width:760px}.section{padding:96px 0}.section.no-top{padding-top:24px}.tinted{background:var(--surface-soft)}.dark-section{color:var(--inverse);background:var(--dark)}.eyebrow{margin-bottom:14px;font:700 .78rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase}.lead{max-width:66ch;color:var(--muted);font-size:clamp(1.1rem,2vw,1.3rem);line-height:1.6}.hero .lead{color:#cfd5d1}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:12px 18px;color:#fff;background:var(--focus);border:2px solid var(--focus);border-radius:10px;transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{position:sticky;z-index:100;top:0;min-height:72px;background:#f7f8f7fa;border-bottom:1px solid var(--line)}.header-row{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink)}.brand-wordmark{font:400 1.02rem/1 GetVoIP Grotesque,Arial,Helvetica,system-ui,sans-serif;letter-spacing:0}.brand:hover,.brand:active{color:var(--ink)}.brand.inverse,.brand.inverse:hover,.brand.inverse:active{color:var(--inverse)}.brand-mark{width:40px;height:40px;flex:0 0 40px}.brand-mark svg{display:block;width:100%;height:100%}.brand-mark rect{fill:var(--brand)}.brand-chevron,.brand-cursor{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.brand-cursor{transform-box:fill-box;transform-origin:left center}.brand-cursor-run{animation:brand-cursor-shift .56s ease-in-out 1 both}.desktop-nav{display:flex;align-items:center;gap:22px}.desktop-nav>a:not(.button){min-height:44px;display:inline-flex;align-items:center;padding:0 6px;color:var(--ink);font-size:.94rem;font-weight:700;border-radius:8px}.desktop-nav>a:not(.button):hover,.desktop-nav>a:not(.button):active{color:var(--brand-strong);background:var(--surface-soft)}.desktop-nav a[aria-current=page]{color:var(--brand-strong);background:var(--surface-soft)}.menu-button{display:none;min-width:48px;min-height:48px;padding:10px 16px;color:var(--ink);background:transparent;border:2px solid var(--ink);border-radius:10px;font-weight:700}.menu-backdrop{position:fixed;z-index:200;inset:0;display:flex;justify-content:flex-end;background:#00000094}.menu-drawer{width:min(420px,100%);min-height:100%;padding:24px;background:var(--surface);box-shadow:-10px 0 35px #0003}.menu-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}.menu-heading button{min-height:44px;padding:8px 12px;background:var(--surface);border:2px solid var(--line);border-radius:10px}.menu-drawer nav{display:grid;gap:8px;padding-top:20px}.menu-drawer nav>a{display:flex;align-items:center;min-height:48px;padding:10px;color:var(--ink);border-radius:8px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:2px solid var(--ink);border-radius:10px;font-weight:800;line-height:1.2;text-align:center;cursor:pointer}.button.primary,.button.primary:visited{color:#fff;background:var(--brand);border-color:var(--brand)}.button.primary:hover,.button.primary:active{color:#fff;background:var(--brand-strong);border-color:var(--brand-strong)}.header-cta{position:relative;flex:0 0 194px;width:194px;min-width:194px;height:44px;min-height:44px;padding:0 16px;overflow:hidden;background:var(--brand);border-color:var(--brand);transform:none;transition:none;contain:layout paint}.header-cta-shade{position:absolute;inset:0;background:var(--brand-strong);opacity:0;transition:opacity .16s ease}.header-cta-label{position:relative;z-index:1;display:block;white-space:nowrap}.header-cta:hover,.header-cta:active{background:var(--brand);border-color:var(--brand);transform:none;box-shadow:none}.header-cta:hover .header-cta-shade,.header-cta:active .header-cta-shade{opacity:1}.button.secondary,.button.secondary:visited{color:var(--ink);background:transparent;border-color:var(--ink)}.button.secondary:hover,.button.secondary:active{color:#fff;background:var(--ink);border-color:var(--ink)}.button.compact{min-height:44px;padding:10px 16px}.button:disabled{cursor:wait;opacity:.68}.inverse-button,.inverse-button:visited{color:#fff;background:transparent;border-color:#cfd5d1}.inverse-button:hover,.inverse-button:active{color:#fff;background:#272727;border-color:#fff}.button-row{display:flex;flex-wrap:wrap;gap:12px}.hero .button-row{display:grid;grid-template-columns:repeat(2,220px);align-items:stretch}.hero .button-row .button{width:100%;min-width:0;height:48px;white-space:nowrap;transform:none}.hero .button-row .button:hover,.hero .button-row .button:active{transform:none}.text-link{display:inline-flex;align-items:center;min-height:44px;gap:8px;font-weight:800}.text-link:hover span[aria-hidden=true]{transform:translate(3px)}.text-link span[aria-hidden=true]{transition:transform .14s ease}.hero{overflow:hidden;color:var(--inverse);background:var(--dark)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);align-items:center;min-height:680px;gap:80px;padding-block:88px}.hero .eyebrow{color:var(--brand)}.hero h1{margin-bottom:28px}.hero .lead{max-width:62ch;margin-bottom:32px}.solution-map{width:100%;max-width:480px;padding:28px;color:var(--inverse);background:#111312;border:1px solid #3a3d3b;border-radius:16px}.map-label{margin-bottom:24px;color:#cfd5d1;font:700 .78rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase}.map-body{display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;align-items:start}.contour-geometry{overflow:visible}.contour-route{fill:none;stroke:#6e7773;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:contour-route-draw .92s ease-out 1 forwards}.contour-node circle{fill:#111312;stroke:#6e7773;stroke-width:2;transition:fill .42s ease,stroke .42s ease}.contour-node text{fill:#cfd5d1;font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.contour-stages{display:grid;grid-template-rows:repeat(4,80px);padding-top:34px}.contour-stage{min-height:0}.contour-stage h2{margin:0 0 4px;font-size:1rem;letter-spacing:0}.contour-stage p{margin:0;color:#cfd5d1;font-size:.9rem;line-height:1.4}.map-result{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;margin-top:18px;padding-top:18px;border-top:1px solid #3a3d3b}.map-result p{margin:0;color:#cfd5d1;font-size:.9rem;line-height:1.45}.result-mark{color:var(--brand);font:700 1.5rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.result-cursor{display:inline-block}.page-intro{padding:72px 0 64px}.page-intro h1{margin-bottom:24px}.page-intro.compact{padding:44px 0 36px}.page-intro.compact h1{margin-bottom:12px;font-size:clamp(2rem,4vw,3rem)}.page-intro.compact .lead{margin-bottom:0;font-size:clamp(1rem,1.7vw,1.16rem)}.breadcrumbs{padding-top:22px;font-size:.9rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.breadcrumbs li{display:inline-flex;gap:8px;color:var(--muted)}.breadcrumbs li:last-child{color:var(--muted)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:42px}.section-heading h2{max-width:19ch;margin-bottom:0}.section-heading .lead{margin:14px 0 0}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:16px}.card-index,.activity-code{display:inline-block;margin-bottom:28px;color:var(--brand-strong);font:700 .9rem ui-monospace,SFMono-Regular,Menlo,monospace}.service-card{min-height:310px;padding:0}.service-card:hover{border-color:var(--brand)}.service-card-link,.service-card-link:visited{display:flex;flex-direction:column;min-height:100%;padding:28px;color:var(--ink)}.service-card-link:hover,.service-card-link:active{color:var(--ink)}.service-card-link p{color:var(--muted)}.service-card-link strong{margin-top:auto;padding-top:20px;font-size:1.15rem}.service-card-action{display:inline-flex;align-items:center;gap:8px;margin-top:8px;color:var(--brand-strong);font-weight:800}.service-card-link:hover .service-card-action span[aria-hidden=true]{transform:translate(3px)}.service-card-link:focus-visible{outline-offset:-3px}.price-card-list{display:none}.price-card-list.compact{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.price-card{background:var(--surface);border:1px solid var(--line);border-radius:12px}.price-card-link,.price-card-link:visited{display:block;height:100%;padding:18px;color:var(--ink)}.price-card-link:hover,.price-card-link:active{color:var(--ink)}.price-card h3{margin-bottom:10px;font-size:1rem}.price-card p{margin:0;color:var(--muted)}.price-card .price,.price{color:var(--ink);font-size:1.25rem;font-weight:800}.fact-notice{margin:24px 0;padding:22px 24px;background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:10px}.fact-notice p{margin:8px 0 0}.fact-notice.warning{border-color:var(--warning);background:#fff8e8}.update-stamp{color:var(--muted);font-size:.9rem}.update-stamp span{color:var(--ink);font-weight:700}.approach-section{background:var(--canvas)}.approach-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:clamp(64px,9vw,128px);align-items:start}.approach-intro{position:sticky;top:120px}.approach-intro h2{max-width:14ch;overflow-wrap:normal}.approach-intro>p:not(.eyebrow){max-width:44ch;color:var(--muted)}.response-card{display:grid;width:fit-content;gap:4px;margin-top:36px;padding:20px 24px;color:#fff;background:var(--dark);border-radius:12px}.response-card strong{font-size:1.25rem}.response-card span{color:#aeb2ac;font-size:.78rem}.approach-steps{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.approach-steps li{position:relative;display:grid;grid-template-columns:64px 1fr;min-height:180px;gap:34px;padding:38px 0;border-bottom:1px solid var(--line)}.approach-indicator{position:absolute;top:38px;bottom:38px;left:-18px;width:3px;background:var(--brand);border-radius:999px;opacity:0;transform:scaleY(.35);transition:opacity .26s ease,transform .26s ease}.approach-number{color:var(--brand-strong);font:800 .8rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.approach-steps h3{font-size:1.65rem}.approach-steps p{max-width:47ch;margin-bottom:0;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.project-card{display:flex;flex-direction:column;min-height:260px;color:var(--ink)}.project-card h2{margin-bottom:22px;font-size:clamp(1.55rem,2.6vw,2rem)}.project-description{margin-bottom:auto;font-size:1.1rem;font-weight:700}.cta-section{padding:72px 0;color:#fff;background:var(--brand)}.cta-section .container{display:flex;align-items:center;justify-content:space-between;gap:32px}.cta-section h2{margin-bottom:10px}.cta-section p:last-child{max-width:58ch;margin-bottom:0;color:#fff}.cta-section .button.primary,.cta-section .button.primary:visited{color:var(--brand-strong);background:#fff;border-color:#fff}.cta-section .button.primary:hover,.cta-section .button.primary:active{color:#fff;background:var(--dark);border-color:var(--dark)}.anchor-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:48px}.anchor-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px}.anchor-nav a:hover,.anchor-nav a:active{color:var(--brand-strong);border-color:var(--brand)}.service-detail{padding:52px 0;border-top:1px solid var(--line)}.service-detail:last-child{border-bottom:1px solid var(--line)}.detail-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px}.detail-heading .card-index{grid-column:1;margin-bottom:14px}.detail-heading>div{grid-column:1}.detail-heading h2{margin-bottom:12px}.detail-heading p:not(.price){max-width:64ch;color:var(--muted)}.detail-heading .price{text-align:right;white-space:nowrap}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.detail-grid ul,.estimate-grid ul{padding-left:20px}.table-wrap{overflow:clip;background:var(--surface);border:1px solid var(--line);border-radius:16px}.price-table{width:100%;border-collapse:collapse}.price-table caption{padding:18px 22px;text-align:left;font-weight:800}.price-table th,.price-table td{padding:20px 22px;text-align:left;border-top:1px solid var(--line)}.price-table thead th{color:var(--muted);font-size:.84rem;text-transform:uppercase;letter-spacing:.06em}.price-table tbody td:last-child{font-weight:800;white-space:nowrap}.price-cell-label{display:none}.estimate-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:64px}.estimate-grid .card{position:relative;display:grid;grid-template-rows:minmax(9.25rem,auto) auto 1fr;align-content:start;overflow:hidden}.estimate-card-head{position:relative;z-index:1;min-height:9.25rem}.estimate-grid .card h2{max-width:calc(100% - 128px);min-height:0;margin-bottom:18px;font-size:clamp(1.12rem,1.7vw,1.35rem);line-height:1.28;letter-spacing:-.015em}.estimate-grid .card h2 a,.estimate-grid .card h2 a:visited{color:var(--ink)}.estimate-grid .card h2 a:hover,.estimate-grid .card h2 a:active{color:var(--brand-strong)}.estimate-grid .card>p{margin-bottom:8px}.estimate-grid .card ul{margin-top:0}.estimate-visual{position:absolute;z-index:0;top:10px;right:8px;width:164px;height:116px;overflow:visible;opacity:.86;pointer-events:none}.estimate-visual-glow{fill:#d900000f;transition:fill .28s ease,transform .28s ease;transform-box:fill-box;transform-origin:center}.estimate-visual-motion{fill:none;stroke:#59605c;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;transform-box:fill-box;transform-origin:center;transition:transform .32s cubic-bezier(.2,.8,.2,1)}.estimate-visual-grid{stroke:#a9b0ac;stroke-width:1.4}.estimate-visual-panel{fill:url(#estimate-gray-analysis);fill-opacity:.72;stroke:#6f7773}.estimate-visual-design .estimate-visual-panel{fill:url(#estimate-gray-design)}.estimate-visual-web .estimate-visual-panel{fill:url(#estimate-gray-web)}.estimate-visual-software .estimate-visual-panel{fill:url(#estimate-gray-software)}.estimate-visual-migration .estimate-visual-panel{fill:url(#estimate-gray-migration)}.estimate-visual-support .estimate-visual-panel{fill:url(#estimate-gray-support)}.estimate-visual-panel.back{fill-opacity:.42}.estimate-visual-fill{fill:#5b645f24;stroke:#7e8682}.estimate-visual-chip{fill:#d9000017;stroke:var(--brand)}.estimate-visual-dot{fill:var(--brand);stroke:#fff;stroke-width:2}.estimate-visual-dot.secondary{fill:#7e8682}.estimate-visual-accent{stroke:var(--brand);stroke-width:3;transform-box:fill-box;transform-origin:center;transition:transform .32s cubic-bezier(.2,.8,.2,1)}.estimate-card:hover .estimate-visual-motion,.estimate-card:focus-within .estimate-visual-motion{transform:translateY(-5px) rotate(-1.5deg) scale(1.025)}.estimate-card:hover .estimate-visual-accent,.estimate-card:focus-within .estimate-visual-accent{transform:translate(4px) rotate(2deg)}.estimate-card:hover .estimate-visual-glow,.estimate-card:focus-within .estimate-visual-glow{fill:#d900001a;transform:scale(1.08)}.company-layout,.legal-layout{display:grid;grid-template-columns:260px minmax(0,760px);gap:72px;align-items:start}.company-intro{max-width:none}.company-intro .lead{max-width:760px}.legal-page-intro .narrow{max-width:none}.legal-page-intro .page-intro h1{max-width:1100px}.company-subnav{position:sticky;z-index:90;top:72px;background:#f7f8f7fa;border-bottom:1px solid var(--line)}.company-subnav-track{display:flex;align-items:center;gap:8px;min-height:62px}.company-subnav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;color:var(--ink);border-radius:8px;white-space:nowrap}.company-subnav a:hover,.company-subnav a:active,.company-subnav a[aria-current=location]{color:var(--brand-strong);background:var(--surface-soft)}.company-content{max-width:988px}.company-content>section{scroll-margin-top:150px}.legal-toc-column{align-self:stretch;min-height:100%}.page-toc{position:sticky;top:96px;display:grid;max-height:calc(100vh - 120px);gap:4px;padding:18px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px}.page-toc strong{margin-bottom:8px}.page-toc a{display:flex;align-items:center;min-height:40px;padding:6px 8px;color:var(--ink);font-size:.9rem;border-left:3px solid transparent;border-radius:6px}.page-toc a:hover,.page-toc a:active,.page-toc a[aria-current=location]{color:var(--brand-strong);background:var(--surface-soft);border-left-color:var(--brand)}.company-content{min-width:0}.company-content>section{padding-bottom:72px}.company-content>section+section{padding-top:16px;border-top:1px solid var(--line)}.company-facts{margin:0;border-top:1px solid var(--line)}.company-facts div{display:grid;grid-template-columns:minmax(180px,.6fr) 1.4fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.company-facts dt{color:var(--muted)}.company-facts dd{margin:0;font-weight:700}.activity-list article{display:grid;grid-template-columns:84px 1fr;gap:24px;padding:28px 0;border-top:1px solid var(--line)}.activity-code{margin:0;font-size:1rem}.activity-list h3{font-size:1.05rem;line-height:1.55}.activity-list p{color:var(--muted)}.home-technologies{width:100%;padding:80px 0;overflow:hidden;background:var(--surface)}.home-technologies .container>p{max-width:72ch;color:var(--muted)}.technology-marquees{display:grid;gap:10px;width:100%;margin-top:32px}.technology-marquee{display:block;width:100%;max-width:100%;padding:10px 0;overflow:hidden;color:inherit;background:var(--surface);border-block:1px solid var(--line)}.technology-marquee:visited{color:inherit}.technology-marquee:hover,.technology-marquee:active{color:inherit;background:var(--surface-soft)}.technology-marquee:focus-visible{outline-offset:-3px}.technology-track{display:flex;width:max-content;will-change:transform}.technology-marquee.forward .technology-track{animation:technology-left-to-right 40s linear infinite}.technology-marquee.reverse .technology-track{animation:technology-right-to-left 40s linear infinite}.technology-marquee:hover .technology-track,.technology-marquee:focus-within .technology-track{animation-play-state:paused}.technology-list{display:flex;flex:0 0 auto;align-items:center;margin:0;padding:0;list-style:none}.technology-list li{display:inline-flex;align-items:center;gap:18px;padding-left:18px;color:#858a87;font-weight:500;white-space:nowrap}.technology-list li>span{color:#b7bcba}.technology-static-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:28px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.technology-static-list li{padding:12px 8px 12px 0;color:var(--muted);border-bottom:1px solid var(--line);font-weight:700}.contacts-layout{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:64px;align-items:start}.contact-info{padding-top:24px}.contact-info hr{margin:40px 0;border:0;border-top:1px solid var(--line)}.contact-map h2{margin-bottom:12px;font-size:clamp(1.35rem,2vw,1.75rem)}.contact-map>.hint{margin-top:12px}.contact-map-frame{display:block;width:100%;min-height:280px;margin-top:18px;border:1px solid var(--line);border-radius:12px}.email-link{display:inline-block;margin-bottom:12px;font-size:clamp(1.4rem,3vw,2rem);font-weight:800}.form-panel{width:100%;max-width:640px;padding:40px;background:var(--surface);border:1px solid var(--line);border-radius:18px}.form-heading{margin-bottom:32px}.form-heading h2{margin-bottom:12px}.field{display:grid;gap:8px;margin-bottom:24px}.field label,.consent-field label{font-weight:800}.required,.hint,.privacy-note{color:var(--muted);font-size:.86rem;font-weight:400}.field input,.field textarea{width:100%;min-height:50px;padding:12px 14px;color:var(--ink);background:#fff;border:1px solid #777a7d;border-radius:10px}.field textarea{min-height:170px;resize:none}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border:2px solid var(--error)}.hint,.field-error,.privacy-note{margin:0}.counter{text-align:right}.field-error{color:var(--error);font-weight:700}.consent-field{display:grid;grid-template-columns:28px 1fr;gap:12px;margin:6px 0 28px;padding:16px;border:1px solid var(--line);border-radius:10px}.consent-field.invalid{border:2px solid var(--error)}.consent-field input{width:24px;height:24px;margin:0;accent-color:var(--brand)}.consent-field .hint{margin-top:10px}.error-summary,.form-status{margin:0 0 24px;padding:18px;background:var(--surface);border:1px solid var(--error);border-left:5px solid var(--error);border-radius:10px}.error-summary ul{margin-bottom:0}.form-status.submitting{border-color:var(--focus)}.form-status.rate-limited,.form-status.stale-consent{border-color:var(--warning)}.form-status p:last-child{margin-bottom:0}.submit-button{width:100%}.privacy-note{margin-top:14px;text-align:center}.success-panel{border-left:6px solid var(--success)}.contact-dialog{position:relative;width:min(680px,calc(100% - 40px));max-width:680px;max-height:min(90vh,780px);margin:auto;padding:0;color:var(--ink);background:var(--surface);border:1px solid #2b2b2b;border-radius:18px;box-shadow:0 26px 76px #00000057;overflow:auto}.contact-dialog[open]{display:block}.contact-dialog::backdrop{background:#00000094}.contact-dialog-heading{padding:24px 72px 22px 28px;color:var(--ink);background:var(--surface);border-bottom:1px solid var(--line)}.contact-dialog-heading .eyebrow{margin-bottom:9px;color:var(--brand-strong);font-size:.68rem}.contact-dialog-heading h2{margin-bottom:0;font-size:clamp(1.55rem,3vw,1.85rem);letter-spacing:-.025em}.contact-dialog-heading p:last-child{max-width:56ch;margin:10px 0 0;color:var(--muted);font-size:.8rem;line-height:1.5}.contact-dialog .form-panel{max-width:none;padding:24px 28px 26px;border:0;border-radius:0}.contact-dialog .field{gap:6px;margin-bottom:14px}.contact-dialog .field label{font-size:.88rem}.contact-dialog .field input{min-height:44px;padding:10px 12px}.contact-dialog .field textarea{min-height:102px;padding:10px 12px;resize:none}.contact-dialog .hint,.contact-dialog .required,.contact-dialog .privacy-note{font-size:.76rem}.contact-dialog .consent-field{grid-template-columns:24px 1fr;gap:10px;margin:4px 0 16px;padding:12px}.contact-dialog .consent-field input{width:20px;height:20px}.contact-dialog .consent-field label{font-size:.8rem;line-height:1.4}.contact-dialog .consent-field .hint{margin-top:6px}.contact-dialog .privacy-note{display:none}.contact-dialog .field input:focus-visible,.contact-dialog .field textarea:focus-visible{outline:0;border-color:var(--ink);box-shadow:0 0 0 3px #1111111f}.contact-dialog .field input[aria-invalid=true]:focus-visible,.contact-dialog .field textarea[aria-invalid=true]:focus-visible{border-color:var(--error);box-shadow:0 0 0 3px #b4231824}.dialog-close{position:absolute;z-index:2;top:16px;right:18px;display:inline-grid;width:38px;min-width:38px;height:38px;place-items:center;padding:0;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:50%;font-size:1.2rem;line-height:1;box-shadow:0 6px 18px #00000029}.dialog-close:hover,.dialog-close:active{color:#fff;background:var(--brand);border-color:var(--brand)}.legal-section{padding-bottom:120px}.legal-article{max-width:760px;font-size:1rem;line-height:1.7}.legal-article h2{margin-top:56px;font-size:2rem}.legal-article h3{margin-top:40px}.legal-article p,.legal-article li{max-width:72ch}.revision-card{display:grid;grid-template-columns:160px 1fr;gap:10px 24px;margin-top:64px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.site-footer{padding:48px 0 20px;color:var(--inverse);background:var(--dark)}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .8fr 1fr;gap:48px}.footer-brand p{max-width:36ch;color:#cfd5d1}.site-footer a,.site-footer a:visited{color:var(--inverse)}.site-footer .footer-link{border-radius:4px;text-decoration:none;transition:color .14s ease}.site-footer .footer-link:visited{color:var(--inverse)}.site-footer .footer-link:hover,.site-footer .footer-link:active,.site-footer .footer-link:focus-visible{color:var(--brand);text-decoration:none}.site-footer .footer-link:focus-visible{outline-color:#fff}.site-footer nav,.footer-facts{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.site-footer nav strong,.footer-facts strong{margin-bottom:8px;color:#fff}.footer-facts span{color:#cfd5d1;line-height:1.5}.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:40px;padding-top:18px;color:#cfd5d1;border-top:1px solid #3a3d3b;font-size:.85rem}@keyframes brand-cursor-shift{0%,to{transform:translate(0)}50%{transform:translate(4px)}}@keyframes contour-route-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes result-mark-pulse{0%,to{opacity:1}50%{opacity:.58}}@keyframes result-cursor-shift{0%,to{transform:translate(0)}50%{transform:translate(4px)}}@keyframes technology-left-to-right{0%{transform:translate(-50%)}to{transform:translate(0)}}@keyframes technology-right-to-left{0%{transform:translate(0)}to{transform:translate(-50%)}}.solution-map[data-motion-step="0"] .contour-node-1 circle,.solution-map[data-motion-step="1"] .contour-node-2 circle,.solution-map[data-motion-step="2"] .contour-node-3 circle,.solution-map[data-motion-step="3"] .contour-node-4 circle{fill:var(--brand);stroke:var(--brand)}.solution-map[data-motion-step="4"] .result-mark{animation:result-mark-pulse .42s ease-in-out 1 both}.solution-map[data-motion-step="4"] .result-cursor{animation:result-cursor-shift .42s ease-in-out 1 both}.approach-steps[data-motion-step="0"]>li:nth-child(1) .approach-indicator,.approach-steps[data-motion-step="1"]>li:nth-child(2) .approach-indicator,.approach-steps[data-motion-step="2"]>li:nth-child(3) .approach-indicator{opacity:1;transform:scaleY(1)}.approach-steps[data-motion-step="0"]>li:nth-child(1) h3,.approach-steps[data-motion-step="1"]>li:nth-child(2) h3,.approach-steps[data-motion-step="2"]>li:nth-child(3) h3{color:var(--brand-strong)}@media(max-width:1100px){.desktop-nav{gap:10px}.desktop-nav>a:not(.button){font-size:.86rem}.card-grid{grid-template-columns:repeat(2,1fr)}.company-layout,.legal-layout{gap:40px}}@media(max-width:959px){.container{width:min(100% - 48px,1200px)}.header-row{flex-wrap:wrap;padding-block:12px}.desktop-nav{width:100%;flex-wrap:wrap;padding-bottom:12px}.js .desktop-nav{display:none}.js .menu-button{display:block}.hero-grid{grid-template-columns:1fr;min-height:auto;gap:40px}.solution-map{max-width:560px}.approach-grid{grid-template-columns:1fr;gap:48px}.approach-intro{position:static}.detail-heading{grid-template-columns:1fr}.detail-heading .price{grid-column:1;text-align:left}.detail-grid{grid-template-columns:1fr 1fr}.detail-grid>div:last-child{grid-column:1 / -1}.contacts-layout{grid-template-columns:1fr}.form-panel{max-width:none}.company-layout,.legal-layout{grid-template-columns:1fr}.company-intro{padding-left:0}.page-toc{position:static;display:flex;max-height:none;flex-wrap:wrap;overflow:visible}.page-toc strong{width:100%}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.container{width:calc(100% - 32px)}.section{padding:68px 0}.page-intro{padding:54px 0 40px}.page-intro.compact{padding:32px 0 28px}h1{font-size:clamp(2.25rem,12vw,2.75rem)}.site-header,.header-row{min-height:64px}.desktop-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.desktop-nav>a{min-height:44px;display:flex;align-items:center}.desktop-nav .button{grid-column:1 / -1}.hero-grid{padding-block:68px}.solution-map{padding:20px 16px}.map-body{gap:12px}.contour-stage h2{font-size:.94rem}.contour-stage p{font-size:.8rem}.section-heading{align-items:start;flex-direction:column;margin-bottom:28px}.card-grid,.project-grid,.estimate-grid,.price-card-list.compact{grid-template-columns:1fr}.estimate-grid .card{grid-template-rows:auto auto 1fr}.estimate-card-head{min-height:8.4rem}.estimate-grid .card h2{max-width:calc(100% - 108px)}.estimate-visual{top:8px;right:2px;width:136px;height:98px}.service-card{min-height:260px}.approach-steps li{grid-template-columns:40px 1fr;min-height:0;gap:16px;padding:28px 0}.approach-indicator{left:-10px}.approach-steps h3{font-size:1.35rem}.cta-section .container{align-items:stretch;flex-direction:column}.cta-section .button,.button-row .button{width:100%}.button-row{align-items:stretch;flex-direction:column}.hero .button-row{display:flex}.detail-heading,.detail-grid{grid-template-columns:1fr}.detail-grid>div:last-child{grid-column:auto}.table-wrap{overflow:visible;border:0;border-radius:0;background:transparent}.price-table,.price-table tbody,.price-table tr,.price-table th,.price-table td{display:block;width:100%}.price-table caption{padding:0 0 18px}.price-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.price-table tbody{display:grid;gap:12px}.price-table tbody tr{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.price-table th,.price-table td{padding:0;border:0}.price-table th{margin-bottom:10px}.price-table td{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding-top:8px;color:var(--muted)}.price-cell-label{display:block;color:var(--muted);font-size:.84rem;font-weight:700}.price-table tbody td:last-child{color:var(--ink);white-space:normal}.price-card-list{display:grid;grid-template-columns:1fr;gap:12px}.activity-list article{grid-template-columns:1fr;gap:8px}.company-facts div{grid-template-columns:1fr;gap:6px}.technology-static-list{grid-template-columns:repeat(2,minmax(0,1fr))}.contacts-layout{gap:28px}.form-panel{padding:24px 18px}.consent-field{padding:14px 10px}.revision-card,.footer-grid{grid-template-columns:1fr}.footer-bottom{align-items:flex-start;flex-direction:column}.company-subnav{top:64px}.company-subnav-track{width:100%;min-height:58px;padding-inline:16px;overflow-x:auto;scrollbar-width:none}.company-subnav-track::-webkit-scrollbar{display:none}.company-content>section{scroll-margin-top:132px}.contact-dialog{width:100%;max-height:min(92vh,780px);margin:auto 0 0;border-right:0;border-bottom:0;border-left:0;border-radius:18px 18px 0 0}.contact-dialog-heading{padding:22px 64px 18px 18px}.contact-dialog-heading h2{font-size:1.5rem}.contact-dialog .form-panel{padding:20px 18px 24px}}@media(prefers-reduced-motion:reduce){*,*:hover{scroll-behavior:auto!important;transition:none!important;animation:none!important}.contour-route{stroke-dashoffset:0}.contour-node circle{fill:#111312;stroke:#6e7773}.solution-map[data-motion-step] .result-mark{color:var(--brand)}.approach-steps[data-motion-step] .approach-indicator{opacity:0;transform:none}.brand-cursor,.result-cursor{transform:none}.technology-marquee{overflow:visible}.technology-track{width:auto;transform:none;animation:none;will-change:auto}.technology-list{flex-wrap:wrap;row-gap:8px}.technology-list[aria-hidden=true]{display:none}}@media(forced-colors:active){.button,.card,.form-panel,.fact-notice{border:1px solid CanvasText}}@media print{.site-header,.site-footer,.breadcrumbs,.page-toc,.company-subnav,.cta-section,.button,.contact-dialog{display:none!important}body{color:#000;background:#fff}.section,.page-intro{padding:20px 0}.legal-layout{display:block}.legal-article{max-width:none}a,a:visited,a:hover,a:active,a:focus-visible{color:#000;text-decoration:none}}
