/* V15: signature hover on white cards (A pain points, B tailor-made, C partner groups, E qualities, F partner types, H segments) */
.kvh{position:relative;overflow:hidden;isolation:isolate;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .45s}
.kvh>.kvglow{position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .45s;pointer-events:none;
 background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(111,168,214,.35),transparent 45%),linear-gradient(150deg,#0C1E3C 0%,#12305A 55%,#1F5A94 100%)}
.kvh>.bar{position:absolute;left:0;right:0;top:0;height:3px;z-index:2;background:linear-gradient(90deg,#6FA8D6,#fff);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.2,.8,.2,1);pointer-events:none}
[dir=rtl] .kvh>.bar{transform-origin:right}
.kvh b,.kvh h4,.kvh span,.kvh p,.kvh small,.kvh .i{transition:color .45s,background .45s}
@media (hover:hover){
.kvh:hover{transform:translateY(-8px);border-color:transparent!important;box-shadow:0 26px 50px -18px rgba(12,30,60,.55)!important}
.kvh:hover>.kvglow{opacity:1}.kvh:hover>.bar{transform:scaleX(1)}
.kvh:hover b,.kvh:hover h4{color:#fff!important}
.kvh:hover span,.kvh:hover p{color:#D7E3F1!important}
.kvh:hover small,.kvh:hover .tl2{color:#9CC4EA!important}
.kvh:hover .i{color:#fff!important}
.kvh:hover .mkw,.kvh:hover .mkw small{color:inherit!important}
.tailor>.kvh:hover .mix span{background:#fff!important;color:#0C1E3C!important}
.ptypes>.kvh:hover{background:transparent}
/* pain points: challenge turns navy against the pale KORVEX fix; number lights up */
.pain>.kvh:hover{transform:translateY(-4px)}
.pain>.kvh .n{transition:background .45s,color .45s}
.pain>.kvh:hover .n{background:#1F5A94;color:#fff}
.pain>.kvh:hover .p small{color:#F4B6B6!important}
.pain>.kvh:hover .p{color:#D7E3F1}
.pain>.kvh:hover .f span,.pain>.kvh:hover .f p{color:var(--steel)!important}
.pain>.kvh:hover .f small{color:var(--cobalt)!important}
.pain>.kvh .f{position:relative;z-index:1}
/* J contact office cards: light lift, readable */
.oc{position:relative;overflow:hidden}
.oc:hover{background:#EEF4FB;border-color:#BFD5EC;transform:translateY(-6px);box-shadow:0 22px 44px -20px rgba(12,30,60,.45)}
.oc:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#0B1D3A,#1F5A94,#6FA8D6);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.oc:hover:before{transform:scaleX(1)}
}
.pain>.kvh .f{color:inherit}
/* V15: best-fit services ranked list (industry pages) */
.prank>.kvh:hover{transform:translateX(6px)}
[dir=rtl] .prank>.kvh:hover{transform:translateX(-6px)}
.prank>.kvh .r{transition:background .45s,color .45s}
.prank>.kvh:hover .r{background:#fff!important;color:#0C1E3C!important}
.prank>.kvh:hover .ar{color:#fff!important}
/* V15: careers job rows, light-blue lift like the office cards */
.job{position:relative;overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,background .45s,border-color .45s}
.job:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#0B1D3A,#1F5A94,#6FA8D6);transform:scaleY(0);transform-origin:top;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
[dir=rtl] .job:before{left:auto;right:0}
@media (hover:hover){.job:hover{background:#EEF4FB;border-color:#BFD5EC;transform:translateY(-3px);box-shadow:0 18px 36px -20px rgba(12,30,60,.45)}.job:hover:before{transform:scaleY(1)}}
/* V15: FAQ, one open at a time, open item highlighted */
.faq details{transition:box-shadow .35s,border-color .35s,background .35s;overflow:hidden}
.faq summary{transition:color .3s,background .3s}
.faq details[open]{border-color:transparent;background:#fff;box-shadow:0 22px 44px -22px rgba(12,30,60,.45)}
.faq details[open]>summary{margin:0 -24px;padding-left:24px;padding-right:54px;color:#fff;background:linear-gradient(135deg,#0C1E3C,#12305A 60%,#1F5A94)}
[dir=rtl] .faq details[open]>summary{padding-right:24px;padding-left:54px}
.faq details[open]>summary:after{color:#fff;right:24px}
[dir=rtl] .faq details[open]>summary:after{right:auto;left:24px}
.faq details[open]>p{padding-top:18px;animation:kvfaq .45s ease both;border-inline-start:3px solid #6FA8D6;padding-inline-start:16px;margin-inline-start:-4px}
.faq summary:hover{color:var(--cobalt)}
.faq details[open]>summary:hover{color:#fff}
@keyframes kvfaq{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.kvh,.kvh *,.faq *{transition:none!important;animation:none!important}}
