/* Case pages extend the established DEVSTONE colors, grid and Geist type. */
.case-page{background:#fbfcfe;color:#090f1e;overflow-x:clip}
.case-page .site-header{background:#fbfcfe;animation:none}
.case-page .main-nav a.is-current{color:var(--accent);position:relative}
.case-page .main-nav a.is-current:after{content:"";position:absolute;bottom:-37px;left:0;right:0;height:2px;background:var(--accent)}
.case-page main{--case-gutter:clamp(25px,5vw,94px);background:linear-gradient(90deg,transparent calc(25% - 1px),rgba(66,103,166,.035) 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),rgba(66,103,166,.035) 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),rgba(66,103,166,.035) 75%,transparent calc(75% + 1px)),#fbfcfe}
.case-page main>*{max-width:1920px;margin-left:auto;margin-right:auto}
.case-project-nav{height:58px;padding:0 var(--case-gutter);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dce5f2;font:600 11px var(--font-geist-mono),monospace;color:#7788ab}
.case-project-nav>span{display:flex;gap:26px}.case-project-nav a{transition:color .2s}.case-project-nav a:hover,.case-project-nav a:focus-visible{color:var(--accent)}
.case-hero{position:relative;display:grid;grid-template-columns:minmax(360px,.41fr) minmax(0,.59fr);min-height:690px;padding:58px var(--case-gutter) 60px;gap:clamp(20px,2vw,45px);border-bottom:1px solid #dce5f2;background:radial-gradient(circle at 76% 48%,rgba(229,240,255,.9),transparent 42%);overflow:hidden}
.case-hero-copy{position:relative;z-index:2;max-width:600px;align-self:center}
.case-hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;font:600 11px var(--font-geist-mono),monospace;letter-spacing:.055em;color:#7b8eb2}
.case-hero-meta>span:first-child:before{content:"";display:inline-block;width:2px;height:10px;margin-right:16px;background:var(--accent)}
.case-status{display:inline-flex;align-items:center;gap:8px;color:#263f68}.case-status i,.case-green-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#00c889;vertical-align:middle}
.case-hero h1{margin:20px 0 25px;font-size:clamp(64px,5.6vw,106px);line-height:.94;letter-spacing:-.085em;font-weight:850}
.case-hero h1 em{color:var(--accent);font-style:normal}.case-hero-copy>p{max-width:510px;margin:0;color:#6e7fa2;font-size:clamp(18px,1.5vw,24px);line-height:1.42;letter-spacing:-.024em}
.case-categories{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:37px;font:600 10px var(--font-geist-mono),monospace;letter-spacing:.065em;color:#667da8}.case-categories span+span:before{content:"/";margin-right:20px;color:#a8b7d3}
.case-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:34px}.case-primary,.case-cta-button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;background:var(--accent);color:white;border-radius:5px;padding:16px 21px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.case-primary:hover,.case-cta-button:hover{background:#045ce5;transform:translateY(-2px)}.case-primary span{font-size:20px;font-weight:300}.case-secondary{font-size:13px;text-decoration:underline;text-underline-offset:4px;color:#475c82;transition:color .2s}.case-secondary:hover{color:var(--accent)}
.case-hero-visual{position:relative;align-self:center;width:100%;height:min(33vw,535px);min-height:430px;perspective:1400px;--case-tilt-x:0deg;--case-tilt-y:0deg;--case-shift-x:0px;--case-shift-y:0px}
.case-hero-window{position:absolute;inset:4% 2% 17% 0;transform:perspective(1400px) rotateX(var(--case-tilt-x)) rotateY(var(--case-tilt-y)) translate(var(--case-shift-x),var(--case-shift-y));transition:transform .34s ease;filter:drop-shadow(0 14px 20px rgba(25,57,109,.08))}
.case-hero-window>.crm-window{height:100%}.case-hero-window .crm-sidebar{width:18%;min-width:123px}.case-hero-window .crm-content{padding:15px 15px 18px}.case-hero-window .crm-head h3{font-size:16px}.case-hero-window .crm-table{font-size:10px}.case-hero-window .crm-table td,.case-hero-window .crm-table th{padding:9px 5px}.case-hero-window .crm-filters{font-size:9px;gap:5px}.case-hero-window .crm-tabs{font-size:9px}
.case-float{position:absolute;bottom:1%;z-index:2;transform:translate(var(--case-float-x,0px),var(--case-float-y,0px));transition:transform .34s ease;box-shadow:0 10px 22px rgba(24,49,89,.09)}.case-float .crm-panel{height:100%;padding:12px}.case-float .crm-panel h4{font-size:10px}.case-float--route{left:5%;width:37%;height:35%}.case-float--vehicle{left:45%;width:24%;height:29%}.case-float--driver{left:71%;width:25%;height:29%}.case-float .crm-route-map{height:calc(100% - 36px)}.case-float .crm-inline-stats{font-size:8px;gap:6px}.case-float p{color:#7d8cad;font-size:10px;margin:7px 0}.case-float small{font-size:9px;color:#00a876}.case-float-rule{height:1px;background:#dce6f3;margin:12px 0}
.case-section{position:relative;padding:clamp(52px,5.3vw,96px) var(--case-gutter);border-bottom:1px solid #dce5f2}.case-section-grid{display:grid;grid-template-columns:minmax(230px,.34fr) minmax(0,.66fr);gap:clamp(36px,5vw,95px);align-items:start}.case-section-copy{max-width:490px}.case-eyebrow{display:block;color:var(--accent);font:700 11px var(--font-geist-mono),monospace;letter-spacing:.055em}.case-section-copy h2{margin:20px 0 16px;color:#0b1220;font-size:clamp(32px,3.1vw,55px);line-height:1.04;letter-spacing:-.065em;font-weight:800}.case-section-copy p{margin:0;color:#7788a9;font-size:clamp(15px,1vw,18px);line-height:1.5}.case-text-link{display:inline-flex;margin-top:32px;color:var(--accent);font-size:14px;font-weight:600;transition:transform .2s}.case-text-link:hover{transform:translateX(4px)}
.case-facts{margin:4px 0 0}.case-facts>div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid #dce5f2}.case-facts>div:first-child{border-top:1px solid #dce5f2}.case-facts dt{font:700 11px var(--font-geist-mono),monospace;color:#536a94}.case-facts dd{margin:0;color:#7385a8;font-size:15px}.case-green-dot{margin-left:10px}
.case-process{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;list-style:none;padding:20px 0 0;margin:0;counter-reset:stage}.case-process li{position:relative;min-width:0;padding:0 11px 0 0;border-top:1px solid #c8d9f5;transition:color .2s}.case-process li:before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;background:#126bff;border-radius:50%}.case-process li:not(:last-child):after{content:"→";position:absolute;top:-24px;right:10px;color:#8da9d8;transition:color .2s}.case-process li:hover,.case-process li:focus-within{color:var(--accent)}.case-process li:hover:after,.case-process li:focus-within:after{color:var(--accent)}.case-process-no{display:block;margin:11px 0 8px;color:var(--accent);font:700 12px var(--font-geist-mono),monospace}.case-process strong{display:block;font-size:clamp(11px,.85vw,14px);line-height:1.25;letter-spacing:-.025em}.case-process p{margin:11px 0 0;color:#8191b1;font-size:clamp(10px,.78vw,13px);line-height:1.35}.case-process li:hover p{color:#526e9f}
.case-system-map{position:relative;isolation:isolate;min-height:440px;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,1fr);gap:22px 25px;align-items:center}.case-solution-lines{position:absolute;z-index:-1;inset:0;width:100%;height:100%;overflow:visible}.case-solution-lines path{fill:none;stroke:#b4cefb;stroke-width:2;stroke-dasharray:5 4;opacity:.72;transition:stroke .22s,opacity .22s}.case-system-node{border:1px solid #dce7f5;background:#fbfcfe;min-height:83px;padding:15px 16px;text-align:left;color:#111b2f;box-shadow:0 7px 16px rgba(36,70,122,.035);cursor:pointer;position:relative;transition:border-color .22s,color .22s,opacity .22s}.case-system-node strong{display:block;font-size:15px;line-height:1.2}.case-system-node span{display:block;margin-top:5px;font-size:12px;line-height:1.28;color:#8293b3}.case-system-node[data-node=clients]{grid-area:1/1}.case-system-node[data-node=requests]{grid-area:1/2}.case-system-node[data-node=pricing]{grid-area:1/3}.case-system-node[data-node=transport]{grid-area:2/1}.case-system-node[data-node=trip]{grid-area:2/2}.case-system-node[data-node=drivers]{grid-area:2/3}.case-system-node[data-node=documents]{grid-area:3/1}.case-system-node[data-node=finance]{grid-area:3/3}.case-system-node.is-core{background:var(--accent);border-color:var(--accent);color:#fff}.case-system-node.is-core span{color:#d9e7ff}.case-system-map.has-selection .case-system-node:not(.is-active):not(.is-related){opacity:.46}.case-system-node.is-active:not(.is-core),.case-system-node.is-related:not(.is-core),.case-system-node:focus-visible{border-color:var(--accent);color:var(--accent)}.case-system-node.is-active span,.case-system-node.is-related span{color:#5a7aac}.case-system-map.has-selection .case-solution-lines path:not(.is-related){opacity:.15}.case-solution-lines path.is-related{stroke:var(--accent);opacity:1;stroke-width:2.5}
.case-product .case-section-grid{grid-template-columns:minmax(215px,.27fr) minmax(0,.73fr);gap:clamp(30px,3.3vw,64px)}.case-product-gallery{min-width:0}.case-gallery-top{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;border-bottom:1px solid #dce5f2}.case-gallery-tabs{display:flex;overflow:auto;scrollbar-width:none;gap:24px;min-width:0}.case-gallery-tabs::-webkit-scrollbar{display:none}.case-gallery-tabs button{flex:none;appearance:none;border:0;border-bottom:2px solid transparent;background:transparent;padding:0 0 13px;color:#8a9abb;font-size:13px;white-space:nowrap;cursor:pointer;transition:color .2s,border-color .2s}.case-gallery-tabs button:hover,.case-gallery-tabs button:focus-visible,.case-gallery-tabs button.is-active{color:var(--accent);border-bottom-color:var(--accent)}.case-gallery-controls{display:flex;align-items:center;gap:12px;padding-bottom:11px;white-space:nowrap}.case-gallery-count{font:700 10px var(--font-geist-mono),monospace;color:#8da3c4}.case-gallery-controls button{border:0;background:none;color:var(--accent);font-size:19px;cursor:pointer;padding:0 3px}.case-gallery-stage{position:relative;height:520px;margin-top:16px;border:1px solid #d6e3f6;box-shadow:0 14px 26px rgba(25,59,109,.055);overflow:hidden;background:white}.case-screen-panel{position:absolute;inset:0;visibility:hidden;opacity:0;transform:translateY(7px);pointer-events:none;transition:opacity .32s ease,transform .32s ease,visibility .32s}.case-screen-panel.is-active{visibility:visible;opacity:1;transform:none;pointer-events:auto;z-index:1}.case-screen-panel .crm-window{height:100%;border:0;border-radius:0}
.case-tech-chain{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px;list-style:none;padding:13px 0 0;margin:0}.case-tech-chain li{position:relative;min-width:0;border-bottom:1px solid #dce5f2;padding-bottom:13px}.case-tech-chain li:not(:last-child):after{content:"→";position:absolute;right:-17px;top:17px;color:#8da9d8}.case-tech-chain small{display:block;color:#8a9bbb;font:700 10px var(--font-geist-mono),monospace;letter-spacing:.05em}.case-tech-chain strong{display:block;margin-top:11px;font-size:clamp(15px,1vw,20px);letter-spacing:-.03em;white-space:nowrap}.case-result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:5px 0 0;padding:0}.case-result-grid li{min-width:0;padding:0 18px;border-left:1px solid #cdddf4}.case-result-grid li:first-child{padding-left:0;border-left:0}.case-result-grid span{display:block;color:var(--accent);font:700 12px var(--font-geist-mono),monospace}.case-result-grid strong{display:block;margin-top:10px;font-size:14px;line-height:1.25}.case-result-grid p{color:#8090af;font-size:13px;line-height:1.38;margin:9px 0 0}
.case-next{display:block;background:#071529;color:#fff;border-top:3px solid var(--accent);overflow:hidden;transition:background .25s}.case-next:hover{background:#0a1b35}.case-next-inner{min-height:315px;display:grid;grid-template-columns:minmax(170px,.2fr) minmax(265px,.31fr) minmax(0,.49fr);gap:35px;padding:35px var(--case-gutter) 0;position:relative;align-items:start}.case-next-label span,.case-next-copy>span{display:block;font:700 11px var(--font-geist-mono),monospace;letter-spacing:.08em;color:#8facdd}.case-next-label strong{display:block;margin-top:20px;font-size:17px}.case-next-label i{color:var(--accent);font-style:normal;margin-left:10px}.case-next-copy h2{margin:12px 0 8px;font-size:clamp(40px,3vw,60px);line-height:1;letter-spacing:-.07em}.case-next-copy p{max-width:400px;color:#b1c0d6;font-size:16px;line-height:1.4;margin:0 0 20px}.case-next-copy>strong{color:#3b91ff;font-size:14px}.case-next-preview{height:300px;border:1px solid #294368;background:#f9fbff;color:#0b1930;transform:rotate(-5deg) translateY(22px);transform-origin:center bottom;transition:transform .3s;box-shadow:0 14px 40px rgba(0,0,0,.15);overflow:hidden}.case-next:hover .case-next-preview{transform:rotate(-4deg) translateY(16px) scale(1.012)}.case-next-preview-top{height:42px;display:flex;justify-content:space-between;align-items:center;padding:0 18px;border-bottom:1px solid #dce5f2;font-size:9px}.case-next-preview-top span{font-weight:850;font-size:12px}.case-next-preview-top i{font-style:normal;color:#8b9cbc}.case-next-preview-body{height:calc(100% - 42px);position:relative;padding:38px 28px}.case-next-preview-body b{display:block;max-width:260px;font-size:28px;line-height:1.06;letter-spacing:-.06em}.case-next-preview-body span{display:block;margin-top:14px;color:#60799f;font-size:9px}.case-next-preview-art{position:absolute;right:0;bottom:0;width:42%;height:95%;background:repeating-linear-gradient(90deg,#aebbc7 0 4px,#dce5ea 5px 30px,#6e8196 31px 33px),linear-gradient(#c3d1dd,#70859a);clip-path:polygon(25% 0,100% 10%,100% 100%,0 100%);opacity:.75}
.case-final-cta{display:grid;grid-template-columns:1fr auto minmax(210px,.34fr);align-items:center;gap:40px;padding:55px var(--case-gutter);border-bottom:4px solid var(--accent)}.case-final-cta h2{margin:14px 0 12px;font-size:clamp(31px,2.7vw,48px);line-height:1.06;letter-spacing:-.065em}.case-final-cta p{margin:0;color:#7c8baa;font-size:16px;line-height:1.4}.case-cta-button{min-width:205px}.case-cta-editor{border-left:1px solid #dce5f2;padding-left:28px;font:700 11px var(--font-geist-mono),monospace}.case-cta-editor strong{display:block;margin-bottom:18px}.case-cta-editor span{display:block;color:#8ba0c1}.case-cta-editor b{display:block;margin-top:5px;color:var(--accent);font-weight:700}
.case-website-preview{align-self:center;min-height:445px;border:1px solid #cfdced;box-shadow:0 18px 42px rgba(31,59,97,.09);background:#f7fafd;overflow:hidden}.website-preview-top{height:58px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce5f2}.website-preview-top strong{font-size:20px;letter-spacing:-.07em}.website-preview-top span{color:#6c7c98;font-size:10px;letter-spacing:.12em}.website-preview-top small{background:#0a1a2b;color:#fff;padding:9px;font-size:9px}.website-preview-body{display:grid;grid-template-columns:1fr .85fr;min-height:388px}.website-preview-body>div:first-child{padding:55px 20px 40px 35px}.website-preview-body span{font:700 10px var(--font-geist-mono),monospace;color:#7891b4}.website-preview-body h2{font-size:clamp(31px,3.2vw,58px);letter-spacing:-.07em;line-height:1.04;margin:25px 0}.website-preview-body p{max-width:340px;color:#71819c;font-size:14px}.facade-visual{position:relative;overflow:hidden;background:#d8e3ed;transform:skewX(-9deg);margin-right:-35px}.facade-visual i{position:absolute;top:0;bottom:0;width:18%;border-left:2px solid rgba(21,46,72,.35);background:linear-gradient(100deg,rgba(255,255,255,.74),rgba(79,111,139,.31));transform:skewY(16deg)}.facade-visual i:nth-child(1){left:2%}.facade-visual i:nth-child(2){left:23%}.facade-visual i:nth-child(3){left:44%}.facade-visual i:nth-child(4){left:65%}.facade-visual i:nth-child(5){left:86%}
/* The CRM is an HTML demo, not an image or a functional business app. */
.crm-window{display:flex;min-width:0;background:#fff;border:1px solid #d6e3f5;border-radius:5px;overflow:hidden;box-shadow:0 8px 18px rgba(31,62,111,.035);font-family:var(--font-geist-sans),Arial,sans-serif;color:#14213a}
.crm-sidebar{width:20%;min-width:135px;background:#f5f9ff;border-right:1px solid #e0e9f7;padding:16px 9px}.crm-logo{display:block;font-size:12px;letter-spacing:-.04em;margin:0 7px 18px}.crm-logo span{font-size:8px;color:#8496b4}.crm-sidebar nav{display:grid;gap:4px}.crm-sidebar nav span{display:flex;align-items:center;gap:9px;padding:8px 7px;border-radius:3px;color:#5f7296;font-size:11px;line-height:1.15}.crm-sidebar nav span i{font:600 8px var(--font-geist-mono),monospace;color:#97acca;font-style:normal}.crm-sidebar nav span.is-active{background:#e3efff;color:#126bff;font-weight:700}.crm-sidebar nav span.is-active i{color:#126bff}
.crm-content{flex:1;min-width:0;padding:18px 20px 22px;overflow:hidden}.crm-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:43px}.crm-head small{display:block;color:#91a1bc;font:700 8px var(--font-geist-mono),monospace;letter-spacing:.08em}.crm-head h3{font-size:18px;letter-spacing:-.05em;margin:3px 0 0}.crm-demo-button{flex:none;display:inline-block;padding:8px 10px;background:#126bff;color:white;border-radius:3px;font-size:10px;font-weight:600}.crm-demo-mark{font:700 9px var(--font-geist-mono),monospace;color:#9cacbf}.crm-tabs{display:flex;gap:15px;overflow:auto;scrollbar-width:none;border-bottom:1px solid #e3eaf5;margin:13px 0 12px;color:#8493ae;font-size:10px;white-space:nowrap}.crm-tabs span{flex:none;padding:0 0 9px}.crm-tabs span.is-active{color:#126bff;border-bottom:2px solid #126bff;font-weight:700}.crm-filters{display:flex;gap:7px;margin-bottom:11px;color:#8b9bb7;font-size:10px;white-space:nowrap}.crm-filters span{display:block;min-width:0;border:1px solid #dfe8f5;border-radius:3px;padding:7px 8px}.crm-filter-search{flex:1;overflow:hidden;text-overflow:ellipsis}.crm-table-wrap{width:100%;overflow:auto;scrollbar-width:thin}.crm-table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:11px}.crm-table th,.crm-table td{padding:10px 7px;border-bottom:1px solid #e7edf6}.crm-table th{font-size:9px;color:#6e80a0;font-weight:700}.crm-table td{color:#526584}.crm-table .crm-row-id{color:#126bff;font-weight:700}.crm-badge{display:inline-block;padding:3px 7px;border-radius:3px;font-size:9px;font-weight:700;white-space:nowrap}.crm-badge--blue{color:#1370ea;background:#e6f1ff}.crm-badge--green{color:#009e6b;background:#dff8ee}.crm-badge--muted{color:#6d7f9d;background:#eef3fa}
.crm-panel{border:1px solid #dce7f5;border-radius:4px;padding:14px;background:white;min-width:0}.crm-panel h4{font-size:12px;letter-spacing:-.025em;margin:0 0 10px}.crm-field{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #edf2f9;font-size:10px}.crm-field:last-child{border:0}.crm-field span{color:#8798b4}.crm-field strong{font-weight:600;text-align:right;color:#31415e}.crm-route-map{height:155px;position:relative;background:linear-gradient(90deg,#f1f6f1,#e7f0e9);border:1px solid #d9e7ec;overflow:hidden}.crm-route-map svg{width:100%;height:100%;display:block}.route-map-grid{fill:none;stroke:#d6e4de;stroke-width:1}.route-map-road{fill:none;stroke:#c5d9ca;stroke-width:18;opacity:.7}.route-map-line{fill:none;stroke:#0874ff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.crm-route-map circle{fill:#126bff;stroke:white;stroke-width:3}.route-city{position:absolute;background:#fff;color:#34445f;padding:4px 6px;border-radius:3px;font-size:9px;font-weight:700;box-shadow:0 1px 4px #7899a644}.route-city--start{left:9%;top:56%}.route-city--end{right:8%;top:14%}.crm-inline-stats{display:flex;justify-content:space-between;gap:9px;padding-top:8px;color:#64799e;font-size:10px;white-space:nowrap}
.crm-trip-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(190px,1fr);gap:13px}.crm-trip-summary .crm-field{padding:7px 0}.crm-lower-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:13px}.crm-lower-panels .crm-panel{min-height:100px}.crm-request-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.crm-request-grid .crm-panel{min-height:235px}.crm-form-action{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e4ecf7;margin-top:16px;padding-top:16px;color:#8393ad;font-size:11px}.crm-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:17px 0}.crm-metrics>div{border:1px solid #dce7f5;padding:13px;min-width:0}.crm-metrics span{display:block;color:#8193b1;font:700 9px var(--font-geist-mono),monospace}.crm-metrics strong{display:block;margin-top:9px;font-size:21px;letter-spacing:-.05em}.crm-analytics-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(170px,1fr);gap:13px}.crm-chart{height:205px}.crm-chart svg{width:100%;height:170px}.chart-grid{fill:none;stroke:#e5edf7;stroke-width:1}.chart-line-main,.chart-line-secondary{fill:none;stroke:#126bff;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.chart-line-secondary{stroke:#49bea6;stroke-width:2}.crm-chart-axis{display:flex;justify-content:space-between;color:#8da0be;font-size:9px}.crm-status-list span{display:flex;justify-content:space-between;color:#627a9d;font-size:11px;margin:12px 0 5px}.crm-status-list i{display:block;height:6px;width:var(--bar);background:#126bff;border-radius:4px}.crm-analytics-note{margin-top:18px;color:#91a2bf;font:9px var(--font-geist-mono),monospace}
.case-page a:focus-visible,.case-page button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:1500px){.case-hero{min-height:635px}.case-hero h1{font-size:clamp(59px,5.55vw,86px)}.case-hero-visual{min-height:420px}.case-float--vehicle,.case-float--driver{height:28%}.case-section-copy h2{font-size:clamp(30px,3vw,46px)}.case-process strong{font-size:11px}}
@media(max-width:1200px){.case-hero{grid-template-columns:minmax(340px,.43fr) minmax(0,.57fr);min-height:600px}.case-hero h1{font-size:clamp(55px,5.2vw,70px)}.case-hero-copy>p{font-size:18px}.case-hero-visual{min-height:370px}.case-hero-window{inset:4% 0 16%}.case-float--route{width:38%}.case-float--driver{left:70%;width:28%}.case-section-grid{gap:35px}.case-product .case-section-grid{grid-template-columns:minmax(190px,.27fr) minmax(0,.73fr)}.case-system-map{gap:15px}.case-system-node{padding:11px;min-height:78px}.case-system-node strong{font-size:13px}.case-system-node span{font-size:11px}.crm-sidebar{min-width:105px}.crm-content{padding:14px}.case-gallery-stage{height:500px}.crm-table th,.crm-table td{padding:9px 5px}}
@media(max-width:1024px){.case-hero{display:block;padding-top:38px}.case-hero-copy{max-width:720px}.case-hero h1{font-size:clamp(60px,8vw,82px)}.case-hero-visual{height:500px;min-height:0;margin-top:25px}.case-hero-window{inset:2% 2% 15% 0}.case-float{bottom:0}.case-section-grid,.case-product .case-section-grid{grid-template-columns:1fr;gap:32px}.case-section-copy{max-width:700px}.case-section-copy h2{font-size:clamp(36px,5vw,56px)}.case-section-copy p{max-width:660px}.case-process{gap:8px}.case-system-map{max-width:820px}.case-gallery-stage{height:540px}.case-result-grid{gap:0}.case-result-grid li{padding:0 12px}.case-next-inner{grid-template-columns:minmax(150px,.25fr) minmax(220px,.35fr) minmax(0,.4fr);gap:20px}.case-final-cta{grid-template-columns:1fr auto}.case-cta-editor{display:none}}
@media(max-width:768px){.case-page .main-nav.open{display:flex}.case-page .site-header{z-index:15}.case-project-nav{height:auto;min-height:54px;gap:10px;padding-top:10px;padding-bottom:10px}.case-project-nav>span{gap:12px;font-size:9px}.case-project-nav>span a:first-child:not(:last-child){display:none}.case-hero{padding-bottom:48px}.case-hero h1{font-size:clamp(55px,11vw,78px)}.case-hero-visual{height:450px;margin-top:25px}.case-hero-window{inset:0 0 17%}.case-float--route{height:32%}.case-float--vehicle,.case-float--driver{height:27%}.case-section{padding-top:60px;padding-bottom:60px}.case-process{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 15px}.case-process li{min-height:85px}.case-process li:not(:last-child):after{display:none}.case-system-map{min-height:410px}.case-gallery-stage{height:490px}.case-next-inner{grid-template-columns:1fr 1fr;min-height:355px}.case-next-label{grid-column:1/-1}.case-next-preview{height:240px}.case-next-copy h2{font-size:38px}.case-final-cta{display:block}.case-cta-button{margin-top:24px}.crm-sidebar{min-width:92px}.crm-sidebar nav span{font-size:10px}}
@media(max-width:560px){.case-page main{--case-gutter:23px}.case-page .site-header{padding:0 23px}.case-project-nav{font-size:9px}.case-project-nav>span a{white-space:nowrap}.case-hero{padding-top:41px}.case-hero-meta{font-size:9px;gap:10px 14px}.case-hero h1{font-size:clamp(48px,11vw,61px);margin:22px 0}.case-hero-copy>p{font-size:17px}.case-categories{margin-top:27px;gap:8px 13px;font-size:9px}.case-categories span+span:before{margin-right:13px}.case-hero-actions{margin-top:25px;gap:16px}.case-primary{padding:13px 15px;font-size:13px}.case-hero-visual{height:440px;margin-top:28px;overflow:hidden}.case-hero-window{inset:0 -20% 24% 0}.case-hero-window .crm-window{border-radius:2px}.case-float--route{left:0;bottom:5%;width:56%;height:32%}.case-float--vehicle{left:59%;bottom:5%;width:41%;height:32%}.case-float--driver{display:none}.case-float .crm-panel{padding:8px}.case-float .crm-route-map{height:76px}.case-section-copy h2{font-size:clamp(36px,9vw,49px)}.case-section-copy p{font-size:15px}.case-facts>div{grid-template-columns:115px 1fr;gap:12px}.case-facts dt{font-size:10px}.case-facts dd{font-size:13px}.case-process{grid-template-columns:1fr;gap:0;padding:0 0 0 18px;border-left:1px solid #b9d0f5}.case-process li{border-top:0;min-height:0;padding:0 0 30px 18px}.case-process li:before{top:5px;left:-22px}.case-process-no{margin:0 0 5px}.case-process strong{font-size:15px}.case-process p{font-size:12px;margin-top:6px}.case-system-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;min-height:0;gap:10px}.case-solution-lines{display:none}.case-system-node{grid-area:auto!important;min-height:86px}.case-system-node.is-core{grid-column:1/-1;grid-row:1}.case-system-node strong{font-size:14px}.case-system-node span{font-size:11px}.case-gallery-top{align-items:center}.case-gallery-tabs{gap:18px}.case-gallery-tabs button{font-size:12px;padding-bottom:11px}.case-gallery-controls{gap:7px}.case-gallery-count{display:none}.case-gallery-stage{height:475px;margin-left:-23px;margin-right:-23px;border-left:0;border-right:0}.case-screen-panel .crm-window{display:block}.case-screen-panel .crm-sidebar{width:100%;height:38px;padding:0 10px;min-width:0;overflow:hidden;border-right:0;border-bottom:1px solid #e1eaf8;display:flex;align-items:center;gap:8px}.case-screen-panel .crm-logo{margin:0;font-size:10px;white-space:nowrap}.case-screen-panel .crm-logo span{display:none}.case-screen-panel .crm-sidebar nav{display:flex;gap:2px;overflow:hidden}.case-screen-panel .crm-sidebar nav span{display:none;font-size:9px;padding:6px}.case-screen-panel .crm-sidebar nav span:nth-child(-n+3){display:block}.case-screen-panel .crm-sidebar nav i{display:none}.case-screen-panel .crm-content{padding:11px}.case-screen-panel .crm-head h3{font-size:15px}.case-screen-panel .crm-head small{font-size:7px}.case-screen-panel .crm-demo-button{font-size:8px;padding:6px}.case-screen-panel .crm-tabs{gap:11px;font-size:9px}.crm-trip-grid{grid-template-columns:1fr}.crm-trip-grid .crm-route-map{height:122px}.crm-trip-summary{display:none}.crm-lower-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.crm-lower-panels .crm-panel:last-child{display:none}.crm-lower-panels .crm-panel{min-height:90px;padding:9px}.crm-lower-panels .crm-field{font-size:9px}.case-screen-panel .crm-table th:nth-child(n+4),.case-screen-panel .crm-table td:nth-child(n+4){display:none}.case-screen-panel .crm-table{font-size:10px}.case-screen-panel .crm-filters{gap:5px;font-size:9px}.case-screen-panel .crm-filters span:nth-child(n+3){display:none}.case-screen-panel .crm-request-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.case-screen-panel .crm-request-grid .crm-panel{min-height:0;padding:9px}.case-screen-panel .crm-request-grid .crm-panel:last-child{grid-column:1/-1}.case-screen-panel .crm-field{font-size:9px;padding:5px 0}.case-screen-panel .crm-form-action{font-size:9px}.case-screen-panel .crm-metrics{grid-template-columns:1fr 1fr;gap:7px;margin:9px 0}.case-screen-panel .crm-metrics>div{padding:8px}.case-screen-panel .crm-metrics strong{font-size:17px}.case-screen-panel .crm-analytics-grid{grid-template-columns:1fr}.case-screen-panel .crm-analytics-grid .crm-panel:last-child{display:none}.case-screen-panel .crm-chart{height:160px}.case-screen-panel .crm-chart svg{height:130px}.case-tech-chain{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.case-tech-chain li:not(:last-child):after{display:none}.case-tech-chain strong{font-size:15px}.case-result-grid{grid-template-columns:1fr 1fr;gap:25px 15px}.case-result-grid li{padding-left:12px!important;border-left:1px solid #cdddf4!important}.case-result-grid strong{font-size:12px}.case-result-grid p{font-size:11px}.case-next-inner{display:block;min-height:485px;padding-top:30px}.case-next-label strong{margin-top:8px}.case-next-copy{margin-top:27px}.case-next-copy h2{font-size:40px}.case-next-copy p{font-size:14px}.case-next-preview{height:210px;margin-top:18px;transform:rotate(-3deg) translateY(11px)}.case-next-preview-body{padding:20px}.case-next-preview-body b{font-size:20px;max-width:200px}.case-next:hover .case-next-preview{transform:rotate(-3deg) translateY(7px)}.case-final-cta h2{font-size:35px}.case-final-cta p{font-size:14px}.case-website-preview{min-height:335px}.website-preview-top{padding:0 12px}.website-preview-top span{display:none}.website-preview-body{min-height:290px}.website-preview-body>div:first-child{padding:35px 10px 20px 20px}.website-preview-body h2{font-size:28px}.website-preview-body p{font-size:11px}.facade-visual{margin-right:-20px}}
@media(prefers-reduced-motion:reduce){.case-page *, .case-page *:before,.case-page *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.case-hero-window,.case-float,.case-next-preview{transform:none!important}}

/* Case polishing keeps the established grid and section layout. */
.case-page main [id]{scroll-margin-top:110px}
.case-section-copy p,.case-facts dd,.case-process-description,.case-result-grid p,.case-final-cta p{color:#687b9e}
.case-hero-copy>p{color:#657899}
.case-section-copy h2{line-height:1.07}
.case-context{padding-block:clamp(65px,5.6vw,96px)}
.case-approach{padding-block:clamp(68px,5.8vw,102px)}
.case-solution,.case-product{padding-block:clamp(75px,6.2vw,112px)}
.case-technology{padding-block:clamp(60px,4.7vw,82px)}
.case-results{padding-block:clamp(64px,5.1vw,90px)}
.case-hero-window{filter:none}
.case-hero-window>.crm-window{box-shadow:0 18px 50px rgba(30,70,130,.065)}
.case-float{box-shadow:0 15px 36px rgba(30,70,130,.07)}
.case-gallery-stage{box-shadow:0 20px 50px rgba(30,70,130,.055);transition:transform .28s ease-out}
@media(min-width:1440px){.case-product .case-section-grid{grid-template-columns:minmax(215px,.25fr) minmax(0,.75fr);gap:clamp(24px,2.5vw,50px)}}
@media(pointer:fine){.case-product-gallery:hover .case-gallery-stage,.case-product-gallery:focus-within .case-gallery-stage{transform:translateY(-2px)}}

.case-process{position:relative;--process-line-length:0px}
.case-process:before{content:"";position:absolute;z-index:2;left:0;top:20px;width:var(--process-line-length);height:1px;background:var(--accent);pointer-events:none;transition:width .24s ease-out}
.case-process:after{content:"";position:absolute;z-index:3;left:0;top:18px;width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:0;pointer-events:none}
.case-process.is-signaling:after{animation:case-process-signal .48s ease-out 1}
@keyframes case-process-signal{0%{opacity:0;transform:translateX(0)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translateX(var(--process-line-length))}}
.case-process li:before{z-index:3;background:#b9ccec;transition:background .22s,box-shadow .22s}
.case-process li.is-active:before{background:var(--accent);box-shadow:0 0 0 4px rgba(18,107,255,.09)}
.case-process-step{display:block;width:100%;height:100%;padding:0 10px 0 0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}
.case-process-step strong{color:#23314c;transition:color .22s}
.case-process-step .case-process-no{color:#879dc1;transition:color .22s}
.case-process-description{display:block;margin:11px 0 0;font-size:clamp(10px,.78vw,13px);line-height:1.35;transition:color .22s}
.case-process li.is-active .case-process-no,.case-process li:hover .case-process-no,.case-process li:focus-within .case-process-no{color:var(--accent)}
.case-process li.is-active strong,.case-process li:hover strong,.case-process li:focus-within strong{color:#071329}
.case-process li.is-active .case-process-description,.case-process li:hover .case-process-description,.case-process li:focus-within .case-process-description{color:#4c648d}
.case-process li.is-active:after{color:var(--accent)}

.case-system-node{transition:border-color .22s,color .22s,opacity .22s}
.case-system-node.is-active:not(.is-core){background:#eef5ff}
.case-system-map.has-selection .case-system-node.is-core{opacity:1}
.case-system-map.has-selection .case-system-node.is-related:not(.is-active):not(.is-core){color:#173b70}

.case-tech-chain{position:relative;--tech-line-length:0px;padding-bottom:13px}
.case-tech-chain:before,.case-tech-chain:after{content:"";position:absolute;left:0;top:67px;height:1px;pointer-events:none}
.case-tech-chain:before{width:100%;background:#cbdaf0}
.case-tech-chain:after{width:var(--tech-line-length);background:var(--accent);transition:width .24s ease-out}
.case-tech-chain li{border:0;padding-bottom:22px}
.case-tech-step{display:block;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer}
.case-tech-step small{color:#7b8eaf;transition:color .22s}
.case-tech-step strong{color:#26334b;transition:color .22s}
.case-tech-chain li.is-active small,.case-tech-chain li.is-active strong,.case-tech-step:hover small,.case-tech-step:hover strong,.case-tech-step:focus-visible small,.case-tech-step:focus-visible strong{color:var(--accent)}
.case-technology.is-seen .case-tech-chain:not(.has-active):after{animation:case-tech-pipeline .82s ease-out 1}
@keyframes case-tech-pipeline{0%{width:0;opacity:0}20%{opacity:1}85%{width:100%;opacity:1}100%{width:100%;opacity:0}}

.case-result-grid{position:relative;padding-top:20px}
.case-result-grid:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:#c5d6ef;transform-origin:left center}
.case-result-grid span{font-size:15px}
.has-case-motion .case-results:not(.is-seen) .case-result-grid:before{transform:scaleX(0)}
.has-case-motion .case-results.is-seen .case-result-grid:before{animation:case-result-line .72s ease-out both}
.has-case-motion .case-results.is-seen .case-result-grid li{animation:case-result-appear .55s ease-out both;animation-delay:calc(.15s + var(--result-index,0) * .06s)}
.case-result-grid li:nth-child(2){--result-index:1}.case-result-grid li:nth-child(3){--result-index:2}.case-result-grid li:nth-child(4){--result-index:3}
@keyframes case-result-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes case-result-appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.case-next-copy>strong{transition:color .4s ease-out}
.case-next-copy>strong i{display:inline-block;font-style:normal;transition:transform .4s ease-out}
.case-next-preview{transition:transform .42s ease-out}
.case-next:hover .case-next-copy>strong,.case-next:focus-visible .case-next-copy>strong{color:#75b4ff}
.case-next:hover .case-next-copy>strong i,.case-next:focus-visible .case-next-copy>strong i{transform:translate(3px,-3px)}
.case-next:hover .case-next-preview,.case-next:focus-visible .case-next-preview{transform:rotate(-5.4deg) translateY(19px) scale(1.008)}
.case-cta-editor b:after{content:"▏";animation:case-cursor 2.8s steps(1,end) infinite}
@keyframes case-cursor{50%{opacity:.18}}

@media(max-width:1024px){.case-cta-editor{display:block;grid-column:1/-1;padding-top:14px}.case-final-cta{row-gap:20px}}
@media(max-width:768px){.case-context,.case-approach,.case-solution,.case-product,.case-technology,.case-results{padding-block:60px}.case-cta-editor{margin-top:25px}.case-cta-editor strong{margin-bottom:8px}}
@media(max-width:560px){
  .case-page main [id]{scroll-margin-top:76px}
  .case-process{border-left:1px solid #b9d0f5}
  .case-process:before{top:5px;left:-1px;width:1px;height:var(--process-line-length);transition:height .24s ease-out}
  .case-process:after{top:5px;left:-3px}
  .case-process.is-signaling:after{animation:case-process-signal-mobile .48s ease-out 1}
  .case-process-step{padding:0}
  .case-process-description{font-size:12px;margin-top:6px}
  .case-system-map{grid-template-columns:1fr;gap:8px}
  .case-system-node{min-height:66px;padding:10px 13px}
  .case-system-node.is-core{grid-column:auto;grid-row:auto}
  .case-gallery-count{display:block;font-size:9px}
  .case-gallery-controls{gap:4px}
  .case-technology{padding-block:45px}
  .case-tech-chain li{min-height:58px;padding-bottom:12px}
  .case-results{padding-block:48px}
  .case-tech-chain{display:block;padding:0 0 0 18px;border-left:1px solid #cbdaf0}
  .case-tech-chain:before{display:none}
  .case-tech-chain:after{top:0;left:-1px;width:1px;height:var(--tech-line-length);transition:height .24s ease-out}
  .case-tech-chain li{position:relative;min-height:67px;padding:0 0 18px 9px}
  .case-tech-chain li:before{content:"";position:absolute;left:-22px;top:5px;width:7px;height:7px;border:1px solid var(--accent);border-radius:50%;background:#fbfcfe}
  .case-tech-chain li.is-active:before{background:var(--accent)}
  .case-tech-chain li:not(:last-child):after{display:none}
  .case-tech-chain strong{margin-top:5px;font-size:17px}
  .case-technology.is-seen .case-tech-chain:not(.has-active):after{animation:case-tech-pipeline-mobile .82s ease-out 1}
  .case-result-grid{grid-template-columns:1fr;gap:18px;padding-top:16px}
  .case-result-grid li{padding:0 0 0 12px!important}
  .case-result-grid strong{font-size:14px}
  .case-result-grid p{font-size:13px}
  .case-next:hover .case-next-preview,.case-next:focus-visible .case-next-preview{transform:rotate(-3.4deg) translateY(8px) scale(1.005)}
  .case-cta-editor{display:block;padding-top:0}
}
@keyframes case-process-signal-mobile{0%{opacity:0;transform:translateY(0)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translateY(var(--process-line-length))}}
@keyframes case-tech-pipeline-mobile{0%{height:0;opacity:0}20%{opacity:1}85%{height:100%;opacity:1}100%{height:100%;opacity:0}}
@media(prefers-reduced-motion:reduce){.case-process.is-signaling:after,.case-technology.is-seen .case-tech-chain:not(.has-active):after,.case-cta-editor b:after{animation:none}}
