.hq-dev-route-cta-button{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:fit-content;padding:13px 18px;background:var(--hq-dark);color:var(--hq-bg);border-radius:2px;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px;font-weight:500;line-height:1.2;transition:background .2s ease,color .2s ease,transform .2s ease}.hq-dev-route-card:hover .hq-dev-route-cta-button{background:var(--hq-green);color:#fff}.hq-dev-route-card-dark .hq-dev-route-cta-button{background:var(--hq-bg);color:var(--hq-dark)}.hq-dev-route-card-dark:hover .hq-dev-route-cta-button{background:var(--hq-green-light);color:var(--hq-dark)}.hq-dev-route-card:hover .hq-dev-route-arrow{transform:translateX(4px)}:root{--hq-bg:#f5f3ee;--hq-white:#ffffff;--hq-dark:#15171b;--hq-text:#4a4e55;--hq-muted:#83878c;--hq-soft:#d8d3c7;--hq-soft-dark:#b7b2a6;--hq-border:#e1ddd3;--hq-green:#1f7a4d;--hq-green-light:#4fbe85;--hq-dark-text:#c7cad0;--hq-dark-muted:#9aa0a8;--hq-dark-border:rgba(255,255,255,0.14);--hq-dark-panel:rgba(255,255,255,0.05);--hq-max-width:1240px;--hq-narrow-width:900px;--hq-content-width:760px;--hq-side-padding:clamp(24px,5vw,48px);--hq-section-padding:clamp(60px,8vw,100px);--hq-radius:4px;--hq-radius-small:2px;--hq-speed:0.2s}.hq-page,.hq-page *,.hq-software-hero *,.hq-problem-section *,.hq-build-section *,.hq-proof-section *,.hq-ai-section *,.hq-agency-section *,.hq-sizing-section *,.hq-process-section *,.hq-tech-section *,.hq-projects-section *,.hq-fit-section *,.hq-final-cta *{box-sizing:border-box}.hq-page{width:100%;overflow-x:hidden;color:var(--hq-dark)}.hq-page a{text-decoration:none}.hq-page img{max-width:100%;height:auto}.hq-section{width:100%;padding:var(--hq-section-padding) 0;background:var(--hq-bg)}.hq-section-white{background:var(--hq-white)}.hq-section-dark{background:var(--hq-dark);color:var(--hq-bg)}.hq-section-bordered{border-top:1px solid var(--hq-border)}.hq-container{width:100%;max-width:var(--hq-max-width);margin:0 auto;padding-left:var(--hq-side-padding);padding-right:var(--hq-side-padding)}.hq-container-narrow{max-width:var(--hq-narrow-width)}.hq-container-centred{max-width:var(--hq-content-width);text-align:center}.hq-page h1,.hq-page h2,.hq-page h3,.hq-page p,.hq-page blockquote{padding:0}.hq-page h1{margin:0 0 24px!important;font-size:clamp(42px,5vw,68px);line-height:1.035;letter-spacing:-0.035em;font-weight:700;color:var(--hq-dark)}.hq-page h2{margin:0 0 18px!important;font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-0.025em;font-weight:700;color:var(--hq-dark)}.hq-page h3{margin:0 0 9px!important;font-weight:600;color:var(--hq-dark)}.hq-lead{max-width:680px;margin:0 0 38px!important;font-size:17px;line-height:1.68;color:var(--hq-text)}.hq-body-copy{font-size:17px;line-height:1.67;color:var(--hq-text)}.hq-body-copy p{margin:0 0 16px!important}.hq-body-copy p:last-child{margin-bottom:0!important}.hq-strong-copy{font-weight:600;color:var(--hq-dark)!important}.hq-mono{font-family:"IBM Plex Mono",Consolas,Monaco,monospace}.hq-microcopy{font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11.5px;line-height:1.55;letter-spacing:0.02em;color:var(--hq-muted)}.hq-section-dark h1,.hq-section-dark h2,.hq-section-dark h3,.hq-final-cta h2{color:var(--hq-bg)}.hq-section-dark .hq-body-copy,.hq-section-dark .hq-lead,.hq-final-cta p{color:var(--hq-dark-text)}.hq-two-col{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,0.92fr);gap:clamp(40px,6vw,72px);align-items:center}.hq-two-col-top{align-items:start}.hq-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 26px;border:0;border-radius:var(--hq-radius-small);background:var(--hq-dark);color:var(--hq-bg)!important;font-size:15px;line-height:1.2;font-weight:600;transition:background var(--hq-speed) ease,color var(--hq-speed) ease,transform var(--hq-speed) ease}.hq-button:hover{background:var(--hq-green);color:#fff!important;transform:translateY(-2px)}.hq-button-arrow{display:inline-block;transition:transform var(--hq-speed) ease}.hq-button:hover .hq-button-arrow{transform:translateX(4px)}.hq-button-light{background:var(--hq-bg);color:var(--hq-dark)!important}.hq-button-light:hover{background:var(--hq-green-light);color:var(--hq-dark)!important}.hq-software-hero{width:100%;background:var(--hq-bg);color:var(--hq-dark);overflow:hidden}.hq-software-hero-inner{max-width:var(--hq-max-width);margin:0 auto;padding:clamp(60px,8vw,105px)var(--hq-side-padding);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,0.92fr);gap:clamp(45px,6vw,80px);align-items:center}.hq-software-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:22px}.hq-software-eyebrow-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--hq-green);animation:hqPulseDot 2.4s ease-in-out infinite}.hq-software-eyebrow-text{font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px;font-weight:500;line-height:1.4;letter-spacing:0.09em;text-transform:uppercase;color:var(--hq-muted)}.hq-software-hero h1{max-width:690px}.hq-software-copy{max-width:570px}.hq-software-copy p{margin:0 0 14px!important;font-size:clamp(16px,1.25vw,18px);line-height:1.68;color:var(--hq-text)}.hq-software-cta-wrap{margin-top:32px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.hq-trace-panel{position:relative;padding:clamp(23px,3vw,34px);background:var(--hq-white);border:1px solid var(--hq-border);border-radius:var(--hq-radius);box-shadow:0 22px 55px rgba(21,23,27,0.045)}.hq-trace-heading{margin-bottom:25px;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11px;letter-spacing:0.09em;color:var(--hq-muted)}.hq-flow{display:flex;align-items:center;width:100%}.hq-flow-node{flex:0 0 auto;padding:7px 9px;background:var(--hq-bg);border:1px solid var(--hq-border);border-radius:var(--hq-radius-small);font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:10px;line-height:1;color:var(--hq-dark);white-space:nowrap}.hq-flow-node-active{border-color:rgba(31,122,77,0.45)}.hq-flow-line{position:relative;flex:1;min-width:10px;height:1px;background:var(--hq-border);overflow:hidden}.hq-flow-packet{position:absolute;left:-8px;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:var(--hq-green);animation:hqFlowPacket 3.1s linear infinite}.hq-flow-line:nth-of-type(4) .hq-flow-packet{animation-delay:.45s}.hq-flow-line:nth-of-type(6) .hq-flow-packet{animation-delay:.9s}.hq-flow-line:nth-of-type(8) .hq-flow-packet{animation-delay:1.35s}.hq-trace-status{margin-top:30px;padding-top:21px;border-top:1px solid var(--hq-border)}.hq-status-row{display:flex;justify-content:space-between;gap:30px;padding:5px 0;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px}.hq-status-label{color:var(--hq-muted)}.hq-status-value{color:var(--hq-dark);text-align:right}.hq-status-good{color:var(--hq-green)}.hq-status-cursor::after{content:"";display:inline-block;width:5px;height:12px;margin-left:4px;vertical-align:-2px;background:var(--hq-green);animation:hqBlink 1.2s steps(1) infinite}.hq-trace-corner{position:absolute;width:9px;height:9px;opacity:.7}.hq-trace-corner-tl{top:10px;left:10px;border-top:1px solid var(--hq-green);border-left:1px solid var(--hq-green)}.hq-trace-corner-br{right:10px;bottom:10px;border-right:1px solid var(--hq-green);border-bottom:1px solid var(--hq-green)}.hq-problem-section{width:100%;background:var(--hq-bg)}.hq-problem-inner{max-width:var(--hq-max-width);margin:0 auto;padding:var(--hq-section-padding)var(--hq-side-padding);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:clamp(40px,6vw,72px);align-items:center}.hq-problem-copy h2{max-width:680px}.hq-problem-intro{margin:0 0 22px!important;font-size:18px;line-height:1.6;color:var(--hq-text)}.hq-problem-copy p:not(.hq-problem-intro){max-width:640px;margin:0 0 15px!important;font-size:17px;line-height:1.67;color:var(--hq-text)}.hq-problem-copy .hq-problem-final{margin-bottom:0!important;font-weight:600;color:var(--hq-dark)}.hq-problem-rotator{position:relative;display:flex;align-items:center;min-height:62px;margin-bottom:30px;padding:18px 20px;overflow:hidden;background:var(--hq-white);border:1px solid var(--hq-border);border-left:3px solid var(--hq-green);border-radius:3px}.hq-problem-phrase{font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:clamp(13px,1.2vw,15px);line-height:1.55;color:var(--hq-dark);animation:hqPhraseIn .45s ease both}.hq-problem-quote-wrap{display:flex;align-items:center}.hq-problem-quote,.hq-dark-quote{position:relative;width:100%;margin:0;padding:clamp(32px,4vw,46px);background:var(--hq-dark);color:var(--hq-bg);border-radius:var(--hq-radius);font-size:clamp(22px,2.6vw,30px);line-height:1.38;letter-spacing:-0.018em;font-weight:600}.hq-problem-quote-accent{display:block;width:42px;height:2px;margin-bottom:24px;background:var(--hq-green)}.hq-grid{display:grid;gap:1px;background:var(--hq-border);border:1px solid var(--hq-border)}.hq-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.hq-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.hq-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.hq-card{background:var(--hq-white);padding:clamp(24px,3vw,30px);transition:transform var(--hq-speed) ease,box-shadow var(--hq-speed) ease}.hq-card:hover{position:relative;z-index:2;transform:translateY(-3px);box-shadow:0 14px 35pxrgba(21,23,27,.07)}.hq-card h3{font-size:18px}.hq-card p{margin:0 0 12px!important;font-size:14.5px;line-height:1.58;color:var(--hq-text)}.hq-card p:last-child{margin-bottom:0!important}.hq-card-meta{font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11.5px!important;line-height:1.75!important;color:var(--hq-muted)!important}.hq-build-section{width:100%;background:var(--hq-white)}.hq-build-inner{max-width:var(--hq-max-width);margin:0 auto;padding:var(--hq-section-padding)var(--hq-side-padding)}.hq-build-section h2{max-width:760px;margin-bottom:42px!important}.hq-build-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--hq-border);border:1px solid var(--hq-border)}.hq-build-card{background:var(--hq-white);padding:clamp(24px,3vw,30px);transition:transform var(--hq-speed) ease,box-shadow var(--hq-speed) ease}.hq-build-card:hover{position:relative;z-index:2;transform:translateY(-3px);box-shadow:0 14px 35pxrgba(21,23,27,.07)}.hq-build-card h3{font-size:19px}.hq-build-card>p{margin:0 0 13px!important;font-size:14.5px;line-height:1.58;color:var(--hq-text)}.hq-build-meta{font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11.5px!important;line-height:1.75!important;color:var(--hq-muted)!important}.hq-mini{height:58px;margin-bottom:20px}.hq-app-visual{display:flex;gap:6px}.hq-app-main{flex:1;display:flex;flex-direction:column;gap:5px;padding:7px;background:var(--hq-bg);border:1px solid var(--hq-border);border-radius:2px}.hq-app-line{height:5px;background:var(--hq-soft);border-radius:1px}.hq-app-line:nth-child(1){width:70%}.hq-app-line:nth-child(2){width:45%}.hq-app-line:nth-child(3){width:62%;background:var(--hq-green)}.hq-app-side{width:38px;background:var(--hq-bg);border:1px solid var(--hq-border);border-radius:2px}.hq-portal-visual,.hq-api-visual,.hq-legacy-visual{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:10px;color:var(--hq-muted)}.hq-mini-node,.hq-api-node,.hq-legacy-node,.hq-filter-chip{padding:6px 8px;border:1px solid var(--hq-border);border-radius:2px;white-space:nowrap}.hq-mini-node-active,.hq-api-core,.hq-legacy-api,.hq-filter-chip-active{border-color:var(--hq-green);color:var(--hq-green)}.hq-mini-arrow,.hq-api-arrow{color:var(--hq-soft)}.hq-crm-visual{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.hq-crm-step{text-align:center;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:9px;line-height:1.3;color:var(--hq-muted)}.hq-crm-bar{height:7px;margin-bottom:5px;background:var(--hq-border)}.hq-crm-step:last-child{color:var(--hq-green)}.hq-crm-step:last-child .hq-crm-bar{background:var(--hq-green)}.hq-product-visual{display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap}.hq-filter-chip{font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:10px}.hq-auto-visual{display:flex;align-items:center;gap:11px;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:10px;color:var(--hq-muted)}.hq-auto-day-active{color:var(--hq-green);font-weight:600}.hq-auto-day-active::after{content:"";display:inline-block;width:6px;height:6px;margin-left:5px;border-radius:50%;background:var(--hq-green);animation:hqPulseDot 1.8s ease-in-out infinite}.hq-chart-visual{display:flex;align-items:flex-end;gap:5px}.hq-chart-bar{flex:1;background:var(--hq-border);border-radius:2px 2px 0 0}.hq-chart-bar:nth-child(1){height:35%}.hq-chart-bar:nth-child(2){height:68%}.hq-chart-bar:nth-child(3){height:52%;background:var(--hq-green)}.hq-chart-bar:nth-child(4){height:84%}.hq-chart-bar:nth-child(5){height:58%}.hq-proof-section{width:100%;background:var(--hq-bg);overflow:hidden}.hq-proof-inner{max-width:var(--hq-max-width);margin:0 auto;padding:var(--hq-section-padding)var(--hq-side-padding)45px}.hq-proof-section h2{max-width:820px}.hq-proof-intro{max-width:720px;margin:0!important;font-size:17px;line-height:1.68;color:var(--hq-text)}.hq-proof-label-wrap{max-width:var(--hq-max-width);margin:0 auto;padding:0var(--hq-side-padding)20px}.hq-proof-label{margin:0!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11.5px;line-height:1.6;letter-spacing:.055em;text-transform:uppercase;color:var(--hq-muted)}.hq-client-marquee{position:relative;overflow:hidden;padding:15px 0 22px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.hq-client-track{display:flex;align-items:center;width:max-content;animation:hqClientScroll 34s linear infinite}.hq-client-marquee:hover .hq-client-track{animation-play-state:paused}.hq-client-item{display:flex;align-items:center;justify-content:center;min-width:max-content;padding:0clamp(30px,4vw,55px);font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:clamp(17px,1.7vw,21px);font-weight:500;color:#aaa69d!important;white-space:nowrap;opacity:.72;transition:opacity var(--hq-speed) ease,color var(--hq-speed) ease,transform var(--hq-speed) ease}.hq-client-item:hover{color:var(--hq-green)!important;opacity:1;transform:translateY(-2px)}.hq-client-item img{display:block;width:auto;height:38px;max-width:150px;object-fit:contain;filter:grayscale(1);opacity:.55;transition:filter var(--hq-speed) ease,opacity var(--hq-speed) ease}.hq-client-item:hover img{filter:grayscale(0);opacity:1}.hq-proof-trust{max-width:var(--hq-max-width);margin:28px auto 0;padding:0var(--hq-side-padding)var(--hq-section-padding)}.hq-proof-trust-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:24px;border-top:1px solid var(--hq-border)}.hq-proof-stat strong{display:block;margin-bottom:5px;font-size:clamp(20px,2vw,25px);line-height:1.2;color:var(--hq-dark)}.hq-proof-stat span{display:block;max-width:300px;font-size:13.5px;line-height:1.55;color:var(--hq-muted)}.hq-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.hq-case-card{display:block;padding:28px;background:var(--hq-white);border:1px solid var(--hq-border);border-radius:var(--hq-radius);color:var(--hq-dark)!important;transition:transform var(--hq-speed) ease,box-shadow var(--hq-speed) ease}.hq-case-card:hover{transform:translateY(-3px);box-shadow:0 14px 35pxrgba(21,23,27,.07)}.hq-case-type{margin:0 0 12px!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11px;letter-spacing:.06em;color:var(--hq-green)}.hq-case-card h3{font-size:19px}.hq-case-card>p:not(.hq-case-type){margin:0 0 20px!important;font-size:14.5px;line-height:1.55;color:var(--hq-text)}.hq-case-link{font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px;font-weight:500;color:var(--hq-dark)}.hq-case-arrow{display:inline-block;transition:transform var(--hq-speed) ease}.hq-case-card:hover .hq-case-arrow{transform:translateX(4px)}.hq-ai-section{width:100%;padding:var(--hq-section-padding) 0;background:var(--hq-dark);color:var(--hq-bg)}.hq-ai-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,64px);margin-bottom:56px}.hq-ai-section h2{max-width:760px;margin-bottom:32px!important;color:var(--hq-bg)}.hq-ai-copy p{margin:0 0 16px!important;font-size:17px;line-height:1.65;color:var(--hq-dark-text)}.hq-ai-copy p:last-child{margin-bottom:0!important}.hq-ai-quote{margin:0;padding:clamp(28px,3vw,36px);background:var(--hq-dark-panel);border:1px solid var(--hq-dark-border);border-radius:var(--hq-radius);color:var(--hq-bg);font-size:clamp(20px,2.2vw,25px);line-height:1.4;font-weight:600}.hq-timeline{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:16px;align-items:center}.hq-timeline-label{margin:0 0 8px!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px;color:var(--hq-green-light)}.hq-timeline-title{margin:0 0 8px!important;font-size:16px;font-weight:600;color:var(--hq-bg)}.hq-timeline-copy{margin:0!important;font-size:13.5px;line-height:1.55;color:var(--hq-dark-muted)}.hq-timeline-arrow{font-size:20px;color:var(--hq-text)}.hq-agency-section{width:100%;padding:var(--hq-section-padding) 0;background:var(--hq-bg)}.hq-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--hq-border);border:1px solid var(--hq-border)}.hq-compare-panel{padding:32px;background:var(--hq-white)}.hq-compare-panel-dark{background:var(--hq-dark);color:var(--hq-bg)}.hq-compare-panel h3{font-size:17px}.hq-compare-flow{margin:0 0 20px!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12.5px;letter-spacing:.03em;color:var(--hq-muted)}.hq-compare-panel-dark .hq-compare-flow{color:var(--hq-green-light)}.hq-compare-list{display:grid;gap:11px;margin:0;padding:0;list-style:none}.hq-compare-list li{position:relative;padding-left:18px;font-size:14.5px;line-height:1.5;color:var(--hq-text)}.hq-compare-panel-dark .hq-compare-list li{color:var(--hq-dark-text)}.hq-compare-list li::before{content:"–";position:absolute;left:0;color:var(--hq-soft-dark)}.hq-compare-panel-dark .hq-compare-list li::before{content:"+";color:var(--hq-green-light)}.hq-centred-quote{max-width:620px;margin:40pxauto0!important;text-align:center;font-size:clamp(18px,2vw,22px);line-height:1.45;font-weight:600;color:var(--hq-dark)}.hq-sizing-section{width:100%;padding:var(--hq-section-padding) 0;background:var(--hq-white)}.hq-scale-bars{display:flex;align-items:flex-end;gap:2px;height:120px;margin-bottom:14px}.hq-scale-bar{flex:1;background:var(--hq-bg);border:1px solid var(--hq-border);border-radius:2px 2px 0 0}.hq-scale-bar:nth-child(1){height:28%}.hq-scale-bar:nth-child(2){height:44%}.hq-scale-bar:nth-child(3){height:62%}.hq-scale-bar:nth-child(4){height:82%}.hq-scale-bar:nth-child(5){height:100%;background:var(--hq-green);border-color:var(--hq-green)}.hq-scale-labels{display:flex;gap:2px;text-align:center;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11px;letter-spacing:.03em;color:var(--hq-muted)}.hq-scale-labels span{flex:1}.hq-scale-labels span:last-child{color:var(--hq-green);font-weight:600}.hq-solution-list{max-width:820px;margin:40px 0 0!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px;line-height:1.9;color:var(--hq-muted)}.hq-process-section{width:100%;padding:var(--hq-section-padding) 0;background:var(--hq-bg)}.hq-process-grid{display:grid;grid-template-columns:repeat(5,1fr)}.hq-process-step{padding:18px16px16px0;border-top:2px solid var(--hq-border);transition:border-colorvar(--hq-speed)ease}.hq-process-step:hover{border-top-color:var(--hq-green)}.hq-process-number{margin:0 0 10px!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px;color:var(--hq-green)}.hq-process-step h3{font-size:16.5px}.hq-process-step p:last-child{margin:0!important;font-size:13.5px;line-height:1.55;color:var(--hq-text)}.hq-process-footnote{margin:40px 0 0!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:13px;line-height:1.6;color:var(--hq-muted)}.hq-tech-section{width:100%;padding:var(--hq-section-padding) 0;background:var(--hq-white)}.hq-tech-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--hq-border);border:1px solid var(--hq-border)}.hq-tech-column{padding:22px 18px;background:var(--hq-bg)}.hq-tech-heading{margin:0 0 14px!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11px;letter-spacing:.06em;color:var(--hq-muted)}.hq-tech-column ul{display:grid;gap:8px;margin:0;padding:0;list-style:none;font-size:14px;color:var(--hq-dark)}.hq-projects-section{width:100%;padding:var(--hq-section-padding) 0;background:var(--hq-bg)}.hq-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--hq-border);border:1px solid var(--hq-border)}.hq-project-card{padding:24px;background:var(--hq-white)}.hq-project-card h3{font-size:16px}.hq-project-card p{margin:0!important;font-size:14px;line-height:1.5;color:var(--hq-text)}.hq-fit-section{width:100%;padding:var(--hq-section-padding) 0;background:var(--hq-white)}.hq-fit-list{display:grid}.hq-fit-item{display:flex;gap:14px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--hq-border)}.hq-fit-check{font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:14px;color:var(--hq-soft-dark)}.hq-fit-text{font-size:15.5px;line-height:1.5;color:var(--hq-dark)}.hq-fit-item-final{margin-top:4px;padding:18px 16px;background:var(--hq-dark);border:0;border-radius:3px}.hq-fit-item-final .hq-fit-check{color:var(--hq-green-light)}.hq-fit-item-final .hq-fit-text{color:var(--hq-bg);font-weight:600}.hq-final-cta{width:100%;padding:clamp(70px,10vw,120px)0;background:var(--hq-dark);color:var(--hq-bg)}.hq-final-cta-inner{max-width:760px;margin:0 auto;padding:0var(--hq-side-padding);text-align:center}.hq-final-cta h2{margin-bottom:22px!important;font-size:clamp(32px,4.4vw,52px);line-height:1.08}.hq-final-cta p{margin:0 0 12px!important;font-size:17px;line-height:1.65}.hq-final-cta-actions{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:36px}@keyframes hqPulseDot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}@keyframes hqFlowPacket{from{left:-8px}to{left:calc(100% + 4px)}}@keyframes hqFlowPacketVertical{from{top:-6px}to{top:22px}}@keyframes hqPhraseIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes hqClientScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes hqBlink{0%,45%{opacity:1}46%,100%{opacity:0}}@media (max-width:980px){.hq-two-col,.hq-software-hero-inner,.hq-problem-inner,.hq-ai-grid{grid-template-columns:1fr}.hq-build-grid,.hq-compare-grid,.hq-tech-grid{grid-template-columns:1fr}.hq-case-grid{grid-template-columns:1fr}.hq-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hq-process-grid{grid-template-columns:1fr;gap:24px}.hq-timeline{grid-template-columns:1fr}.hq-timeline-arrow{transform:rotate(90deg);width:fit-content}.hq-proof-trust-inner{grid-template-columns:1fr;gap:22px}.hq-proof-stat{padding-bottom:22px;border-bottom:1px solid var(--hq-border)}.hq-proof-stat:last-child{padding-bottom:0;border-bottom:0}}@media (max-width:767px){:root{--hq-side-padding:22px;--hq-section-padding:55px}.hq-page h1,.hq-software-hero h1{font-size:clamp(38px,11vw,50px);line-height:1.04}.hq-page h2{font-size:clamp(32px,9vw,42px)}.hq-lead,.hq-body-copy,.hq-proof-intro,.hq-ai-copy p,.hq-final-cta p,.hq-problem-copy p:not(.hq-problem-intro),.hq-problem-intro{font-size:16px}.hq-software-hero-inner{padding:52pxvar(--hq-side-padding)55px;gap:42px}.hq-software-button,.hq-button.hq-mobile-full{width:100%}.hq-problem-inner{gap:34px}.hq-problem-rotator{min-height:76px;padding:16px 17px}.hq-problem-quote{padding:34px 26px;font-size:22px}.hq-build-section h2{margin-bottom:30px!important}.hq-build-card{padding:24px 20px}.hq-project-grid{grid-template-columns:1fr}.hq-client-item{padding:0 25px;font-size:16px}.hq-client-marquee{}.hq-scale-labels{font-size:8.5px;letter-spacing:0}.hq-solution-list{font-size:11px}.hq-flow{flex-direction:column;align-items:stretch}.hq-flow-node{text-align:center;padding:9px 10px}.hq-flow-line{flex:none;width:1px;height:18px;min-width:0;margin:0 auto}.hq-flow-packet{left:50%!important;top:-6px;margin:0 0 0 -2.5px;animation-name:hqFlowPacketVertical}.hq-status-row{font-size:11px}}@media (prefers-reduced-motion:reduce){.hq-software-eyebrow-dot,.hq-flow-packet,.hq-status-cursor::after,.hq-problem-phrase,.hq-auto-day-active::after,.hq-client-track{animation:none!important}.hq-client-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}.hq-dev-parent{--hq-bg:#f5f3ee;--hq-white:#ffffff;--hq-dark:#15171b;--hq-text:#4a4e55;--hq-muted:#83878c;--hq-border:#e1ddd3;--hq-green:#1f7a4d;--hq-green-light:#4fbe85}.hq-dev-parent-hero{width:100%;background:var(--hq-bg);overflow:hidden}.hq-dev-parent-hero-inner{max-width:1240px;margin:0 auto;padding:clamp(70px,10vw,125px) clamp(24px,5vw,48px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(400px,.95fr);gap:clamp(45px,7vw,90px);align-items:center}.hq-dev-parent-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:22px;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--hq-muted)}.hq-dev-parent-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--hq-green);animation:hqParentPulse 2.2s ease-in-out infinite}.hq-dev-parent-hero h1{max-width:720px;margin:0 0 25px!important;font-size:clamp(42px,5.2vw,70px);line-height:1.03;letter-spacing:-.035em;font-weight:700;color:var(--hq-dark)}.hq-dev-parent-copy{max-width:610px}.hq-dev-parent-copy p{margin:0 0 15px!important;font-size:clamp(16px,1.3vw,18px);line-height:1.7;color:var(--hq-text)}.hq-dev-parent-copy strong{color:var(--hq-dark)}.hq-dev-router{position:relative;padding:clamp(24px,3vw,34px);background:var(--hq-white);border:1px solid var(--hq-border);border-radius:4px;box-shadow:0 22px 55px rgba(21,23,27,.045)}.hq-dev-router-label{margin-bottom:26px;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11px;letter-spacing:.08em;color:var(--hq-muted)}.hq-dev-router-question{min-height:48px;margin-bottom:25px;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:clamp(14px,1.4vw,17px);line-height:1.5;color:var(--hq-dark)}.hq-dev-router-question::after{content:"";display:inline-block;width:6px;height:16px;margin-left:5px;vertical-align:-3px;background:var(--hq-green);animation:hqParentBlink 1s steps(1) infinite}.hq-dev-router-path{display:grid;gap:10px}.hq-dev-router-row{display:grid;grid-template-columns:105px 20px 1fr;gap:8px;align-items:center;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11px;line-height:1.4;opacity:.35;transition:opacity .35s ease,transform .35s ease}.hq-dev-router-row.is-active{opacity:1;transform:translateX(4px)}.hq-dev-router-source{padding:7px 8px;background:var(--hq-bg);border:1px solid var(--hq-border);border-radius:2px;text-align:center;color:var(--hq-muted)}.hq-dev-router-arrow{text-align:center;color:var(--hq-border)}.hq-dev-router-target{padding:7px 9px;border:1px solid var(--hq-border);border-radius:2px;color:var(--hq-dark)}.hq-dev-router-row.is-active .hq-dev-router-target{border-color:var(--hq-green);color:var(--hq-green)}.hq-dev-routes{width:100%;padding:clamp(65px,9vw,110px) 0;background:var(--hq-white)}.hq-dev-routes-inner{max-width:1240px;margin:0 auto;padding:0 clamp(24px,5vw,48px)}.hq-dev-routes-header{max-width:760px;margin-bottom:44px}.hq-dev-routes h2{margin:0 0 16px!important;font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.025em;color:var(--hq-dark)}.hq-dev-routes-intro{margin:0!important;font-size:17px;line-height:1.68;color:var(--hq-text)}.hq-dev-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--hq-border);border:1px solid var(--hq-border)}.hq-dev-route-card{position:relative;display:flex;flex-direction:column;min-height:410px;padding:clamp(28px,4vw,42px);background:var(--hq-white);color:var(--hq-dark)!important;text-decoration:none!important;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.hq-dev-route-card:hover{z-index:2;transform:translateY(-4px);box-shadow:0 18px 45px rgba(21,23,27,.08)}.hq-dev-route-card-dark{background:var(--hq-dark);color:var(--hq-bg)!important}.hq-dev-route-type{margin:0 0 24px!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11px;letter-spacing:.07em;color:var(--hq-green)}.hq-dev-route-card-dark .hq-dev-route-type{color:var(--hq-green-light)}.hq-dev-route-card h3{max-width:510px;margin:0 0 16px!important;font-size:clamp(25px,2.8vw,35px);line-height:1.12;letter-spacing:-.02em;color:var(--hq-dark)}.hq-dev-route-card-dark h3{color:var(--hq-bg)}.hq-dev-route-card>p:not(.hq-dev-route-type){max-width:520px;margin:0 0 20px!important;font-size:15.5px;line-height:1.65;color:var(--hq-text)}.hq-dev-route-card-dark>p:not(.hq-dev-route-type){color:#c7cad0}.hq-dev-route-examples{margin:4px 0 32px!important;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:11.5px!important;line-height:1.8!important;color:var(--hq-muted)!important}.hq-dev-route-card-dark .hq-dev-route-examples{color:#9aa0a8!important}.hq-dev-route-cta{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:12px;font-weight:500;color:var(--hq-dark)}.hq-dev-route-card-dark .hq-dev-route-cta{color:var(--hq-bg)}.hq-dev-route-arrow{display:inline-block;transition:transform .2s ease}.hq-dev-route-card:hover .hq-dev-route-arrow{transform:translateX(5px)}.hq-dev-route-visual{position:absolute;right:26px;top:28px;font-family:"IBM Plex Mono",Consolas,Monaco,monospace;font-size:10px;line-height:1.7;color:var(--hq-border);opacity:.75}.hq-dev-route-card-dark .hq-dev-route-visual{color:rgba(255,255,255,.14)}@media (max-width:980px){.hq-dev-parent-hero-inner,.hq-dev-route-grid{grid-template-columns:1fr}.hq-dev-router{max-width:760px}}@media (max-width:767px){.hq-dev-parent-hero-inner{padding:55px 22px 65px}.hq-dev-parent-hero h1{font-size:clamp(38px,11vw,50px)}.hq-dev-routes{padding:55px 0}.hq-dev-routes-inner{padding:0 22px}.hq-dev-route-card{min-height:360px;padding:28px 22px}.hq-dev-route-visual{display:none}.hq-dev-router-row{grid-template-columns:90px 14px 1fr;font-size:9.5px}}@media (prefers-reduced-motion:reduce){.hq-dev-parent-eyebrow::before,.hq-dev-router-question::after{animation:none}}@keyframes hqParentPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}@keyframes hqParentBlink{0%,50%{opacity:1}51%,100%{opacity:0}}html{scroll-behavior:smooth}.custom-blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin:20px 0}.blog-card{border:1px solid #eee;padding:15px;border-radius:8px;display:flex;flex-direction:column}.blog-thumb img{width:100%;height:auto;border-radius:5px;margin-bottom:15px}.blog-title{font-size:1.2rem;margin-bottom:10px}.blog-title a{color:#333;text-decoration:none}.blog-excerpt{font-size:0.95rem;color:#666;margin-bottom:20px}.read-more-btn{display:inline-block;background-color:#000;color:#fff!important;padding:10px 25px;text-align:center;text-decoration:none;border-radius:50px;font-weight:600;font-size:14px;transition:transform 0.2s,background-color 0.2s;align-self:flex-start;margin-top:auto}.read-more-btn:hover{background-color:#333;transform:translateY(-2px)}