
/* v26 Service Showcase: photo + digital illustration cards */
.kt26-service-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    color: inherit;
    background: #fff;
    border: 1px solid #e3ebf6;
    border-radius: 22px;
    box-shadow: 0 10px 30px rgba(17, 43, 82, .055);
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.kt26-service-card:hover,
.kt26-service-card:focus-visible {
    color: inherit;
    border-color: #b7cdfb;
    box-shadow: 0 20px 44px rgba(20, 66, 137, .14);
    transform: translateY(-6px);
}
.kt26-service-card:focus-visible { outline: 3px solid rgba(49, 91, 208, .28); outline-offset: 3px; }
.kt26-service-media {
    position: relative;
    isolation: isolate;
    height: 168px;
    overflow: hidden;
    background: linear-gradient(135deg, #10284d, #1f5fc5 65%, #61dce5);
}
.kt26-service-media::after {
    position: absolute;
    z-index: 1;
    inset: 0;
    content: '';
    pointer-events: none;
    background: linear-gradient(180deg, rgba(8, 25, 53, .06) 20%, rgba(8, 25, 53, .34) 100%);
}
.kt26-service-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .55s cubic-bezier(.2,.7,.2,1);
}
.kt26-service-card:hover .kt26-service-media img,
.kt26-service-card:focus-visible .kt26-service-media img { transform: scale(1.055); }
.kt26-service-type {
    position: absolute;
    z-index: 2;
    left: 15px;
    bottom: 13px;
    display: inline-flex;
    align-items: center;
    padding: .4rem .72rem;
    color: #fff;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 999px;
    background: rgba(12, 35, 73, .76);
    backdrop-filter: blur(8px);
    font-size: .68rem;
    font-weight: 750;
    letter-spacing: .015em;
}
.kt26-media-arrow {
    position: absolute;
    z-index: 2;
    top: 13px;
    right: 13px;
    display: inline-flex;
    width: 36px;
    height: 36px;
    align-items: center;
    justify-content: center;
    color: #fff;
    border: 1px solid rgba(255,255,255,.38);
    border-radius: 50%;
    background: rgba(12, 35, 73, .58);
    backdrop-filter: blur(8px);
}
.kt26-service-body { display: flex; flex: 1; flex-direction: column; padding: 1.2rem 1.25rem 1.15rem; }
.kt26-service-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: .75rem; margin-bottom: .55rem; }
.kt26-service-heading h3 { margin: 0; color: #172945; font-size: 1.08rem; font-weight: 850; letter-spacing: -.025em; line-height: 1.35; }
.kt26-service-count { flex: 0 0 auto; padding: .28rem .52rem; color: #315bd0; border-radius: 999px; background: #eff4ff; font-size: .67rem; font-weight: 750; white-space: nowrap; }
.kt26-service-body p { flex: 1; margin: 0 0 1rem; color: #64758d; font-size: .86rem; line-height: 1.65; }
.kt26-service-card-foot { display: flex; align-items: center; justify-content: space-between; gap: .6rem; padding-top: .85rem; border-top: 1px solid #edf1f7; }
.kt26-service-card-foot span { color: #8290a4; font-size: .72rem; }
.kt26-service-card-foot strong { color: #315bd0; font-size: .78rem; font-weight: 800; white-space: nowrap; }
@media (max-width: 575.98px) {
    .kt26-service-media { height: 176px; }
    .kt26-service-body { padding: 1.05rem; }
    .kt26-service-heading { flex-wrap: wrap; }
    .kt26-service-card-foot span { font-size: .68rem; }
}
@media (prefers-reduced-motion: reduce) {
    .kt26-service-card, .kt26-service-media img { transition: none !important; }
    .kt26-service-card:hover, .kt26-service-card:focus-visible { transform: none; }
}
