/* Services page: same typography and visual tokens as the Karin homepage. */
.karin-services{background:#fff;color:var(--kh-ink)}.karin-services .kh-header{background:transparent}.karin-services .kh-btn{border-radius:10px}.karin-services h1{font-size:48px!important}.karin-services h2{font-size:30px!important}.ks-section{padding:88px 0}.ks-kicker,.ks-section-head>span,.ks-section-head>div>span,.ks-contact-inner>div>span{display:flex;align-items:center;gap:10px;color:var(--kh-blue);font-size:11px;font-weight:700}.ks-kicker span{width:27px;height:1px;background:var(--kh-orange)}.ks-section-head{max-width:780px;margin-bottom:38px}.ks-section-head h2,.ks-contact h2{margin:9px 0 12px;color:var(--kh-ink);font-weight:800;line-height:1.6;letter-spacing:-.7px}.ks-section-head p{margin:0;color:var(--kh-muted);font-size:12.5px;line-height:2.1}.ks-section-head-split{display:flex;max-width:none;align-items:flex-end;justify-content:space-between;gap:70px}.ks-section-head-split>p{max-width:430px;margin-bottom:4px}
.ks-hero{position:relative;overflow:hidden;min-height:620px;padding:155px 0 78px;background:radial-gradient(circle at 12% 35%,rgba(21,123,221,.24),transparent 29%),linear-gradient(125deg,#06152b,#0a2a4d 64%,#0b3156);color:#fff}.ks-hero:after{content:"";position:absolute;left:-190px;bottom:-380px;width:700px;height:700px;border:1px solid rgba(90,171,238,.15);border-radius:50%;box-shadow:0 0 0 75px rgba(73,158,229,.025),0 0 0 150px rgba(73,158,229,.018)}.ks-hero-grid{position:absolute;inset:0;opacity:.09;background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(90deg,transparent,#000 34%,#000)}.ks-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);align-items:center;gap:72px}.ks-hero-copy{max-width:760px}.ks-hero h1{max-width:760px;margin:17px 0 18px;color:#fff;font-weight:800;line-height:1.5;letter-spacing:-1.4px}.ks-hero-copy>p{max-width:680px;margin:0;color:#b9cadb;font-size:14px;line-height:2.15}.ks-hero-copy .kh-btn{margin-top:26px}

.ks-hero-system{position:relative;height:330px;isolation:isolate}.ks-system-orbit{position:absolute;inset:22px 25px;border:1px solid rgba(94,174,239,.2);border-radius:50%;animation:ksOrbit 20s linear infinite}.ks-system-orbit:before,.ks-system-orbit:after{content:"";position:absolute;border:1px dashed rgba(94,174,239,.14);border-radius:50%}.ks-system-orbit:before{inset:32px}.ks-system-orbit:after{inset:70px}.ks-system-orbit i{position:absolute;width:7px;height:7px;border-radius:50%;background:#2698ed;box-shadow:0 0 16px #2698ed}.ks-system-orbit i:nth-child(1){top:12%;right:18%}.ks-system-orbit i:nth-child(2){bottom:18%;left:8%;background:var(--kh-orange);box-shadow:0 0 16px var(--kh-orange)}.ks-system-orbit i:nth-child(3){right:4%;bottom:33%}.ks-system-core{position:absolute;z-index:2;top:50%;right:50%;display:flex;width:132px;height:132px;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(105,190,255,.36);border-radius:50%;background:radial-gradient(circle,#123e68,#092542 70%);box-shadow:0 0 0 12px rgba(32,137,220,.05),0 18px 50px rgba(0,0,0,.28);transform:translate(50%,-50%);animation:ksPulse 4s ease-in-out infinite}.ks-system-core small{color:#5e84a7;font:600 7px/1 Arial,sans-serif}.ks-system-core strong{margin:9px 0 3px;color:#fff;font-size:13px}.ks-system-core span{color:#829bb2;font-size:8px}.ks-system-node{position:absolute;z-index:3;width:116px;padding:12px 13px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(7,27,51,.88);box-shadow:0 12px 30px rgba(0,0,0,.22);backdrop-filter:blur(8px);animation:ksFloat 4.5s ease-in-out infinite}.ks-system-node b{float:left;color:var(--kh-orange);font-size:8px}.ks-system-node strong,.ks-system-node small{display:block}.ks-system-node strong{color:#f5faff;font-size:12px}.ks-system-node small{margin-top:4px;color:#718da8;font-size:8px}.ks-node-problem{top:21px;right:4px}.ks-node-process{right:9px;bottom:18px;animation-delay:-1.5s}.ks-node-solution{top:88px;left:0;animation-delay:-3s}.ks-system-lines{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#2b91da;stroke-width:1;stroke-dasharray:5 7;opacity:.55}.ks-system-lines path{animation:ksDash 8s linear infinite}@keyframes ksOrbit{to{transform:rotate(360deg)}}@keyframes ksPulse{50%{box-shadow:0 0 0 19px rgba(32,137,220,.025),0 18px 58px rgba(0,0,0,.34)}}@keyframes ksFloat{50%{transform:translateY(-7px)}}@keyframes ksDash{to{stroke-dashoffset:-120}}
.ks-problems{position:relative;background:linear-gradient(180deg,#fff,#f4f8fc)}.ks-problems:before{content:"";position:absolute;top:0;right:0;width:36%;height:230px;background:radial-gradient(circle at top right,rgba(8,124,240,.08),transparent 68%);pointer-events:none}.ks-problem-head{position:relative}.ks-problem-head p{max-width:670px}.ks-problem-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0}.ks-problem-list article{position:relative;display:grid;grid-template-columns:38px 1fr;column-gap:14px;min-height:178px;padding:22px;border:1px solid #dfe8f0;border-radius:12px;overflow:hidden;background:#fff;transition:transform .25s,border-color .25s,box-shadow .25s}.ks-problem-list article:before{content:"";position:absolute;top:0;right:0;width:3px;height:100%;background:linear-gradient(var(--kh-blue),var(--kh-orange));transform:scaleY(0);transform-origin:top;transition:transform .3s}.ks-problem-list article:hover{transform:translateY(-3px);border-color:#cbddec;box-shadow:0 14px 35px rgba(16,54,88,.08)}.ks-problem-list article:hover:before{transform:scaleY(1)}.ks-problem-number{grid-row:1/4;display:grid;place-items:center;width:36px;height:36px;border-radius:9px;color:var(--kh-blue);background:#eaf5ff;font-size:10px;font-weight:700}.ks-problem-list h3{margin:0;color:#17334d;font-size:14px;line-height:1.8}.ks-problem-list p{margin:7px 0 13px;color:#6b7d8f;font-size:10.5px;line-height:1.95}.ks-problem-list article>span{align-self:end;color:#1683d6;font-size:10px;font-weight:700}.ks-problem-list article>span i{margin-right:5px;color:var(--kh-orange);font-size:13px;font-style:normal;transition:margin .2s}.ks-problem-list article:hover>span i{margin-right:9px}
.ks-examples{position:relative;overflow:hidden;background:#081c35;color:#fff}.ks-examples:before{content:"";position:absolute;inset:0;opacity:.08;background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(180deg,#000,transparent 65%)}.ks-examples>.kh-container{position:relative}.ks-examples .ks-section-head>div>span{color:#5bb5f3}.ks-examples .ks-section-head h2{color:#fff}.ks-examples .ks-section-head p{color:#91a8bd}.ks-project-list{display:grid;gap:18px;border:0}.ks-project{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);min-height:330px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(13,42,72,.78);transition:border-color .25s,transform .25s}.ks-project:hover{transform:translateY(-3px);border-color:rgba(91,181,243,.38)}.ks-project-image{display:block;min-height:330px;overflow:hidden;background:#f3f6f9}.ks-project-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}.ks-project:hover img{transform:scale(1.025)}.ks-project-content{padding:28px 30px}.ks-project-meta{display:flex;gap:18px;color:#7190ad;font-size:9px}.ks-project-meta span:first-child{color:#58aceb}.ks-project h3{margin:12px 0 20px;color:#fff;font-size:19px;line-height:1.75}.ks-project-flow{display:grid;grid-template-columns:1fr 25px 1fr;align-items:center;gap:13px;padding:15px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.ks-project-flow small{display:block;margin-bottom:6px;color:#5daee9;font-size:8px}.ks-project-flow p{margin:0;color:#a8b9c9;font-size:10.5px;line-height:1.95}.ks-project-flow>i{color:var(--kh-orange);font-size:17px;font-style:normal;text-align:center}.ks-project-link,.ks-all-projects{display:inline-flex;align-items:center;gap:8px;color:#71c1fa;font-size:10.5px;font-weight:700}.ks-project-link{margin-top:18px}.ks-project-link span,.ks-all-projects span{color:var(--kh-orange)}.ks-all-projects{margin-top:26px;padding-bottom:5px;border-bottom:1px solid rgba(113,193,250,.3)}
.ks-contact{padding:66px 0;background:#fff}.ks-contact-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.ks-contact-inner>div{max-width:760px}.ks-contact-inner>div>span{margin-bottom:7px}.ks-contact h2{margin:0}.ks-contact p{margin:8px 0 0;color:var(--kh-muted);font-size:11.5px;line-height:2}.ks-contact .kh-btn{flex:0 0 auto}
@media(max-width:980px){.ks-hero-inner{grid-template-columns:1fr;gap:38px}.ks-hero-system{width:min(100%,500px)}.ks-project{grid-template-columns:1fr}.ks-project-image{min-height:260px;max-height:340px}}
@media(max-width:720px){.karin-services h1{font-size:36px!important}.karin-services h2{font-size:28px!important}.ks-section{padding:66px 0}.ks-section-head{margin-bottom:29px}.ks-section-head-split{display:block}.ks-section-head-split>p{margin-top:11px}.ks-hero{min-height:auto;padding:124px 0 58px}.ks-hero-copy>p{font-size:12.5px}.ks-hero-system{height:300px;margin-top:3px}.ks-problem-list{grid-template-columns:1fr}.ks-problem-list article{min-height:160px}.ks-project-content{padding:23px 20px}.ks-project-flow{grid-template-columns:1fr}.ks-project-flow>i{transform:rotate(-90deg)}.ks-contact-inner{align-items:flex-start;flex-direction:column;gap:23px}.ks-contact .kh-btn{width:100%}}
@media(max-width:440px){.karin-services h1{font-size:31px!important}.ks-system-node{width:103px}.ks-node-solution{left:-4px}.ks-project-image{min-height:210px}.ks-project h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.ks-system-orbit,.ks-system-core,.ks-system-node,.ks-system-lines path{animation:none!important}.ks-problem-list article,.ks-problem-list article:before,.ks-project,.ks-project img{transition:none!important}}

/* Problem dossiers replace image-led portfolio cards on this page. */
.ks-project{grid-template-columns:165px minmax(0,1fr);min-height:350px}.ks-project-image{display:none}.ks-case-index{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:25px;border-left:1px solid rgba(255,255,255,.1);overflow:hidden;background:linear-gradient(160deg,rgba(31,128,205,.18),rgba(7,24,46,.3))}.ks-case-index:after{content:"";position:absolute;left:-55px;bottom:-55px;width:145px;height:145px;border:1px solid rgba(92,180,245,.2);border-radius:50%;box-shadow:0 0 0 24px rgba(92,180,245,.025)}.ks-case-index small{color:#557c9d;font:600 8px/1 Arial,sans-serif;letter-spacing:1px}.ks-case-index b{color:#fff;font-size:48px;font-weight:300;line-height:1}.ks-case-index span{position:relative;z-index:1;color:#71b7e9;font-size:9px;line-height:1.8}.ks-case-outcome{margin-top:13px;padding:12px 14px;border-right:2px solid var(--kh-orange);background:rgba(255,255,255,.035)}.ks-case-outcome small{display:block;margin-bottom:6px;color:#5daee9;font-size:8px}.ks-case-outcome p{margin:0;color:#a8b9c9;font-size:10.5px;line-height:1.95}.ks-project-link{margin-top:16px}
.ks-readiness{padding:76px 0;background:#f4f7fa}.ks-readiness-layout{display:grid;grid-template-columns:.75fr 1.25fr;align-items:start;gap:75px}.ks-readiness header>span{display:block;margin-bottom:8px;color:var(--kh-blue);font-size:10px;font-weight:700}.ks-readiness h2{margin:0 0 12px;color:var(--kh-ink);line-height:1.65}.ks-readiness header p{margin:0;color:var(--kh-muted);font-size:11.5px;line-height:2.1}.ks-readiness ul{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0;border-top:1px solid #cad7e2;border-right:1px solid #cad7e2;list-style:none}.ks-readiness li{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:10px;min-height:91px;padding:14px 17px;border-left:1px solid #cad7e2;border-bottom:1px solid #cad7e2;background:#fff}.ks-readiness li b{color:var(--kh-blue);font-size:9px}.ks-readiness li span{color:#40586e;font-size:10.5px;line-height:1.9}
@media(max-width:980px){.ks-readiness-layout{grid-template-columns:1fr;gap:35px}}
@media(max-width:720px){.ks-project{grid-template-columns:1fr}.ks-case-index{min-height:105px;flex-direction:row;align-items:center;border-left:0;border-bottom:1px solid rgba(255,255,255,.1)}.ks-case-index b{font-size:36px}.ks-readiness ul{grid-template-columns:1fr}}
/* Connector paths terminate cleanly at the node-card edges. */
.ks-system-lines{stroke-linecap:round;stroke-linejoin:round}
/* Readable, light case-study section. */
.ks-examples{background:#f3f7fb;color:var(--kh-ink)}
.ks-examples:before{opacity:.45;background-image:linear-gradient(rgba(19,74,122,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(19,74,122,.045) 1px,transparent 1px);mask-image:linear-gradient(180deg,#000,transparent 72%)}
.ks-examples .ks-section-head>div>span{color:var(--kh-blue)}
.ks-examples .ks-section-head h2{color:#102a43}
.ks-examples .ks-section-head p{color:#60758a;font-size:13px;line-height:2}
.ks-project-list{gap:24px}
.ks-project{border:1px solid #d7e2ec;background:#fff;box-shadow:0 12px 32px rgba(23,54,83,.07)}
.ks-project:hover{border-color:#a9cce8;box-shadow:0 18px 44px rgba(23,72,111,.11)}
.ks-case-index{border-left:1px solid #d7e5f0;background:linear-gradient(160deg,#eaf5ff,#f7fbff)}
.ks-case-index:after{border-color:rgba(24,132,214,.18);box-shadow:0 0 0 24px rgba(24,132,214,.035)}
.ks-case-index small{color:#6083a0;font-size:9px}
.ks-case-index b{color:#126fb5;font-size:52px;font-weight:500}
.ks-case-index span{color:#456d8d;font-size:10.5px;font-weight:700}
.ks-project-content{padding:32px 34px}
.ks-project-meta{gap:20px;color:#6b8195;font-size:10.5px}
.ks-project-meta span:first-child{color:#087cf0;font-weight:700}
.ks-project h3{margin:13px 0 22px;color:#102a43;font-size:23px;line-height:1.65}
.ks-project-flow{grid-template-columns:1fr 32px 1fr;gap:16px;padding:19px 0;border-color:#dfe8f0}
.ks-project-flow>div{min-height:116px;padding:17px 19px;border:1px solid #e0e8ef;border-radius:10px;background:#f8fafc}
.ks-project-flow small{margin-bottom:8px;color:#0873cb;font-size:10px;font-weight:700}
.ks-project-flow p{color:#40576c;font-size:12.5px;line-height:2.05}
.ks-project-flow>i{color:var(--kh-orange);font-size:20px}
.ks-case-outcome{margin-top:16px;padding:15px 17px;border-right:3px solid var(--kh-orange);border-radius:7px 0 0 7px;background:#fff7ef}
.ks-case-outcome small{margin-bottom:7px;color:#b85a11;font-size:10px;font-weight:700}
.ks-case-outcome p{color:#4c5f70;font-size:12.5px;line-height:2}
.ks-project-link,.ks-all-projects{color:#0873cb;font-size:12px}
.ks-project-link{margin-top:19px}
.ks-all-projects{border-bottom-color:rgba(8,115,203,.25)}
@media(max-width:720px){.ks-case-index{border-bottom-color:#d7e5f0}.ks-project-content{padding:25px 21px}.ks-project h3{font-size:20px}.ks-project-flow{grid-template-columns:1fr;gap:10px}.ks-project-flow>div{min-height:auto}.ks-project-flow>i{transform:rotate(-90deg)}}
/* Keep the case-number rail navy while the content remains light. */
.ks-case-index{border-left-color:#173a5d;background:linear-gradient(160deg,#12385d,#09233f)}
.ks-case-index:after{border-color:rgba(105,185,245,.24);box-shadow:0 0 0 24px rgba(105,185,245,.04)}
.ks-case-index small{color:#6f9fc4}.ks-case-index b{color:#fff}.ks-case-index span{color:#9bc9ea}
@media(max-width:720px){.ks-case-index{border-bottom-color:#173a5d}}
/* Explicit meaning and order for the orbital system. */
.ks-hero-system{margin-bottom:42px}
.ks-system-node{width:142px;padding:13px 14px}.ks-system-node strong{font-size:13px}.ks-system-node small{font-size:9.5px;line-height:1.65}.ks-system-node b{font-size:10px}
.ks-node-problem{right:-8px}.ks-node-process{right:-3px}.ks-node-solution{left:-14px}
.ks-system-sequence{position:absolute;right:50%;bottom:-47px;display:flex;width:max-content;align-items:center;gap:8px;padding:9px 12px;border:1px solid rgba(255,255,255,.14);border-radius:10px;color:#b9d1e5;background:rgba(5,22,42,.78);box-shadow:0 10px 25px rgba(0,0,0,.15);transform:translateX(50%);backdrop-filter:blur(7px)}
.ks-system-sequence span{font-size:10.5px;font-weight:700;white-space:nowrap}.ks-system-sequence b{margin-left:4px;color:var(--kh-orange);font-size:9px}.ks-system-sequence i{color:#4d91c5;font-style:normal}
/* Readability audit: meaningful copy never uses micro type. */
.ks-problem-list p,.ks-problem-list article>span{font-size:13px!important}.ks-problem-list h3{font-size:17px!important}
.ks-readiness header>span{font-size:12px}.ks-readiness header p{font-size:14px!important;color:#52697e}.ks-readiness li{grid-template-columns:38px 1fr;min-height:112px;padding:18px 20px}.ks-readiness li b{font-size:12px}.ks-readiness li span{color:#30495f;font-size:14px!important;line-height:2!important}
.ks-project-meta,.ks-project-flow small,.ks-case-outcome small,.ks-case-index span{font-size:12px!important}
@media(max-width:720px){.ks-hero-system{margin-bottom:96px}.ks-system-sequence{bottom:-92px;width:100%;flex-wrap:wrap;justify-content:center;gap:6px}.ks-system-sequence span{font-size:10px}.ks-system-node{width:126px}.ks-readiness li{min-height:96px}}

/* Service-page readability */
.ks-section-head p,.ks-hero-copy>p,.ks-problem-list p,.ks-problem-list article>span,.ks-project-flow p,.ks-case-outcome p,.ks-case-points li{font-size:14px!important;font-weight:500;line-height:2!important}
.ks-problem-list h3{font-size:18px!important}.ks-problem-list article>span{color:#176fae}.ks-project-meta,.ks-project-flow small,.ks-case-outcome small,.ks-case-index span{font-size:12px!important;font-weight:700}.ks-case-points{display:grid;gap:7px;margin:0;padding:0 19px 0 0;list-style:disc}.ks-case-points li{margin:0;color:#40576c}.ks-case-points li::marker{color:#f07b24}.ks-case-outcome .ks-case-points{padding-right:19px}.ks-project-flow>div{min-height:135px}

/* Compact, clearly scannable case-study bullets */
.ks-case-points{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px 9px;padding:0!important;list-style:none}.ks-case-points li{position:relative;width:auto;margin:0!important;padding:7px 22px 7px 11px;border:1px solid #d8e5ee;border-radius:999px;background:#fff;color:#304b62!important;font-size:13px!important;font-weight:700!important;line-height:1.55!important}.ks-case-points li:before{content:'';position:absolute;right:9px;top:50%;width:6px;height:6px;border-radius:50%;background:#f07b24;transform:translateY(-50%)}.ks-case-outcome .ks-case-points li{border-color:#f0d7c4;background:#fffaf6}.ks-project-flow>div{min-height:128px}

/* Final service copy scale */
.karin-services :where(p,li:not(.ks-case-points li)){font-size:16px!important;font-weight:500!important;line-height:2.05!important}.karin-services :where(.ks-project-meta,.ks-project-flow small,.ks-case-outcome small,.ks-case-index span,.ks-kicker,.ks-section-head>span,.ks-section-head>div>span){font-size:13px!important}.ks-case-points li{font-size:14px!important}
