/* =========================================================
   KUANTUM SERVIS v0.12.0 — FINAL POLISH
   - Retire duplicate contact CTA everywhere
   - Stronger full-width footer + phone CTA + no white tail
   - Modern project detail composition
   - Modern service/training detail composition while preserving copy
   - Small home hero offset fix
========================================================= */

/* Duplicate support card is retired; footer now owns this action. */
.ks-contact-cta{display:none!important}

/* Home hero: only a small downward correction under the fixed header. */
body.home .ks-banner__inner,
body.blog .ks-banner__inner{
    padding-top:calc(var(--ks-header-safe-home) + var(--ks-adminbar-safe) + 34px)!important;
}

/* ---------- Modern service / training details ---------- */
.ks-detail-lead{padding:58px 0 28px;background:#fff}
.ks-detail-lead__grid{
    display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:46px;align-items:center;
    padding:28px;border:1px solid #e1ebf2;border-radius:28px;background:linear-gradient(135deg,#f7fbfe 0%,#fff 68%);
    box-shadow:0 22px 64px rgba(5,48,90,.08)
}
.ks-detail-lead__grid.is-no-image{grid-template-columns:1fr}
.ks-detail-lead__media{min-height:430px;border-radius:22px;overflow:hidden;background:#eaf2f7}
.ks-detail-lead__media img{width:100%;height:100%;min-height:430px;object-fit:cover;display:block}
.ks-detail-lead__copy{padding:20px 24px 20px 6px}
.ks-detail-lead__copy h2,.ks-detail-flow__section h2{margin:9px 0 18px!important;color:#073665!important;font-size:clamp(30px,2.6vw,44px)!important;line-height:1.08!important;letter-spacing:-1px!important}
.ks-detail-lead__copy p,.ks-detail-flow__section p{max-width:820px;margin:0 0 15px!important;color:#5b7182!important;font-size:15px!important;line-height:1.86!important}
.ks-detail-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin-top:22px}
.ks-detail-points>div{display:flex;align-items:flex-start;gap:10px;padding:14px 15px;border:1px solid #dfe9f1;border-radius:13px;background:#fff;color:#244966;font-size:12px;line-height:1.55;box-shadow:0 8px 24px rgba(7,54,101,.04)}
.ks-detail-points span{flex:0 0 22px;width:22px;height:22px;border-radius:999px;background:#e8f4ff;color:#0875d8;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900}
.ks-detail-flow{padding:22px 0 40px;background:#fff}
.ks-detail-flow>.ks-container{display:grid;gap:18px}
.ks-detail-flow__section{padding:34px 38px;border:1px solid #e2ebf2;border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(5,48,90,.045)}
.ks-detail-flow__section.is-soft{background:#f5f9fc}
.ks-detail-flow__section .ks-eyebrow{margin-bottom:7px}
.ks-detail-gallery{padding:18px 0 70px;background:#fff}
.ks-detail-gallery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.ks-detail-gallery__grid img{width:100%;height:250px;object-fit:cover;border-radius:18px;box-shadow:0 12px 34px rgba(5,48,90,.08)}

/* ---------- Modern project details ---------- */
.ks-project-detail{padding:58px 0 76px;background:linear-gradient(180deg,#fff 0%,#f7fafc 100%)}
.ks-project-detail__hero{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:38px;align-items:stretch;padding:26px;border:1px solid #dfe9f1;border-radius:28px;background:#fff;box-shadow:0 22px 64px rgba(5,48,90,.08)}
.ks-project-detail__hero.is-no-image{grid-template-columns:1fr}
.ks-project-detail__media{min-height:470px;border-radius:22px;overflow:hidden;background:#edf3f7}
.ks-project-detail__media img{width:100%;height:100%;min-height:470px;object-fit:cover;display:block}
.ks-project-detail__copy{padding:42px 30px 34px 14px;align-self:center}
.ks-project-detail__copy h2{margin:10px 0 18px!important;color:#073665!important;font-size:clamp(32px,2.8vw,48px)!important;line-height:1.08!important;letter-spacing:-1.1px!important}
.ks-project-detail__copy p,.ks-project-detail__text p{margin:0 0 15px!important;color:#5d7384!important;font-size:15px!important;line-height:1.85!important}
.ks-project-detail__process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 0}
.ks-project-detail__process article{padding:24px 22px;border:1px solid #dfe9f1;border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(5,48,90,.04)}
.ks-project-detail__process span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-bottom:16px;border-radius:999px;background:#073665;color:#fff;font-size:10px;font-weight:800}
.ks-project-detail__process strong{display:block;margin-bottom:8px;color:#073665;font-size:17px;line-height:1.35}
.ks-project-detail__process p{margin:0!important;color:#718493!important;font-size:12px!important;line-height:1.7!important}
.ks-project-detail__text{max-width:980px;margin:24px auto 0;padding:32px 36px;border-radius:20px;background:#eef6fb}
.ks-project-detail__gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:220px;gap:14px;margin-top:22px}
.ks-project-detail__gallery img{width:100%;height:100%;object-fit:cover;border-radius:18px;box-shadow:0 12px 34px rgba(5,48,90,.07)}
.ks-project-detail__gallery img:first-child{grid-row:span 2}

/* ---------- Footer: more charismatic, full-width and visually finished ---------- */
.ks-footer-v2{
    padding:48px 0 0!important;
    margin-bottom:0!important;
    background:#fff!important;
}
.ks-footer-v2__cta-wrap{margin-bottom:46px!important}
.ks-footer-v2__cta{
    grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr)!important;
    padding:42px 46px!important;
    border-radius:30px!important;
    background:
        radial-gradient(circle at 89% 16%,rgba(120,211,255,.24),transparent 28%),
        linear-gradient(118deg,#082e59 0%,#0a4d7c 58%,#0c86b5 100%)!important;
    box-shadow:0 26px 68px rgba(5,48,90,.18)!important;
    overflow:hidden;
}
.ks-footer-v2__cta-side{display:grid;gap:12px;justify-items:end}
.ks-footer-v2__cta-phone{display:grid;grid-template-columns:1fr auto;grid-template-areas:"small arrow" "strong arrow";align-items:center;width:min(360px,100%);padding:14px 16px 14px 18px;border:1px solid rgba(255,255,255,.25);border-radius:14px;background:rgba(255,255,255,.10);color:#fff!important;text-decoration:none!important;backdrop-filter:blur(8px)}
.ks-footer-v2__cta-phone small{grid-area:small;color:#91dbff;font-size:9px;font-weight:800;letter-spacing:1.4px}
.ks-footer-v2__cta-phone strong{grid-area:strong;margin-top:2px;color:#fff;font-size:20px;letter-spacing:.2px}
.ks-footer-v2__cta-phone span{grid-area:arrow;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:#fff;color:#073665;font-size:20px}
.ks-footer-v2__cta-actions{width:100%;justify-content:flex-end!important}
.ks-footer-v2__body{
    background:
        radial-gradient(circle at 82% 5%,rgba(24,104,155,.22),transparent 24%),
        linear-gradient(180deg,#061f3d 0%,#04182f 100%)!important;
    border-top:1px solid rgba(255,255,255,.04);
}
.ks-footer-v2__body:before{content:"";display:block;height:4px;background:linear-gradient(90deg,#0b6ec7 0%,#5dc7ff 48%,#0b6ec7 100%);opacity:.75}
.ks-footer-v2__main{padding:58px 0 50px!important}
.ks-footer-v2__brand{position:relative;padding-right:38px!important}
.ks-footer-v2__wordmark{font-size:31px!important;letter-spacing:5px!important;text-shadow:0 8px 30px rgba(0,0,0,.16)}
.ks-footer-v2__trust{margin-top:4px;padding:9px 14px!important;background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.15)!important}
.ks-footer-v2__col{position:relative;padding:8px 0 0 20px!important;border-left:1px solid rgba(255,255,255,.08)}
.ks-footer-v2__col>strong{color:#6ecbff!important;letter-spacing:1.8px!important}
.ks-footer-v2__col a{transition:color .18s ease,transform .18s ease}
.ks-footer-v2__col a:hover{transform:translateX(3px)}
.ks-footer-v2__contact{padding:18px!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:16px;background:rgba(255,255,255,.035)}
.ks-footer-v2__bottom{background:#031428!important}
.ks-footer-v2__bottom-inner{min-height:68px!important;color:#6f899f!important}

/* Absolutely no white tail below the footer page / footer component. */
body.page-footer,
body.page-footer #wrap_all,
body.page-footer #main,
body.page-footer .main_color,
body.page-id-footer,
body.page-id-footer #wrap_all,
body.page-id-footer #main,
body.page-id-footer .main_color{background:#031428!important}
body.page-footer .ks-footer-v2,
body.page-id-footer .ks-footer-v2{background:#fff!important}
body.page-footer #main:after,
body.page-id-footer #main:after{content:"";display:block;height:120px;background:#031428}

@media(max-width:1100px){
    .ks-detail-lead__grid,.ks-project-detail__hero{grid-template-columns:1fr}
    .ks-detail-lead__media,.ks-detail-lead__media img,.ks-project-detail__media,.ks-project-detail__media img{min-height:380px}
    .ks-detail-lead__copy,.ks-project-detail__copy{padding:18px 10px 12px}
    .ks-project-detail__process{grid-template-columns:1fr 1fr}
    .ks-footer-v2__cta{grid-template-columns:1fr!important}
    .ks-footer-v2__cta-side{justify-items:start}
    .ks-footer-v2__cta-actions{justify-content:flex-start!important}
}
@media(max-width:767px){
    body.home .ks-banner__inner,body.blog .ks-banner__inner{padding-top:calc(76px + var(--ks-adminbar-safe))!important}
    .ks-detail-lead{padding:34px 0 16px}
    .ks-detail-lead__grid,.ks-project-detail__hero{padding:16px;border-radius:20px;gap:20px}
    .ks-detail-lead__media,.ks-detail-lead__media img,.ks-project-detail__media,.ks-project-detail__media img{min-height:280px;border-radius:16px}
    .ks-detail-points{grid-template-columns:1fr}
    .ks-detail-flow__section{padding:24px 20px;border-radius:17px}
    .ks-detail-gallery__grid{grid-template-columns:1fr 1fr}
    .ks-detail-gallery__grid img{height:190px}
    .ks-project-detail{padding:36px 0 54px}
    .ks-project-detail__copy{padding:12px 4px}
    .ks-project-detail__process{grid-template-columns:1fr}
    .ks-project-detail__text{padding:24px 20px}
    .ks-project-detail__gallery{grid-template-columns:1fr 1fr;grid-auto-rows:180px}
    .ks-project-detail__gallery img:first-child{grid-row:auto;grid-column:1/-1;height:240px}
    .ks-footer-v2{padding-top:34px!important}
    .ks-footer-v2__cta-wrap{margin-bottom:32px!important}
    .ks-footer-v2__cta{padding:30px 22px!important;border-radius:22px!important}
    .ks-footer-v2__cta-side{width:100%}
    .ks-footer-v2__cta-phone{width:100%}
    .ks-footer-v2__cta-actions{width:100%}
    .ks-footer-v2__cta-actions .ks-btn{flex:1 1 100%;justify-content:space-between}
    .ks-footer-v2__col{padding-left:0!important;border-left:0!important}
    .ks-footer-v2__contact{padding:18px!important;border:1px solid rgba(255,255,255,.09)!important}
    body.page-footer #main:after,body.page-id-footer #main:after{height:64px}
}
