/* =========================================================
   KUANTUM SERVIS V0.6 — CONTENT PRESERVATION + REAL PAGE DESIGN
   - Existing source-page copy/content is preserved where available.
   - Page headers are full-width site bands attached to the theme header.
   - Home restores the strong split service-request block below the banner.
   - Header/footer themselves remain theme-controlled.
========================================================= */

/* ---------- V2 page shell: remove the artificial gap under Enfold header ---------- */
body.ks-v2-page #main,
body.ks-v2-page .container_wrap_first,
body.ks-v2-page .template-page.content,
body.ks-v2-page .entry-content-wrapper{
    padding-top:0!important;
    margin-top:0!important;
}
body.ks-v2-page .container_wrap_first{border-top:0!important}

/* ---------- Real page heading band (not a card) ---------- */
.ks-page-band{
    position:relative;
    width:100vw;
    margin:0 0 56px calc(50% - 50vw)!important;
    overflow:hidden;
    border:0;
    border-radius:0 0 34px 34px;
    box-shadow:0 18px 44px rgba(3,34,65,.09);
}
.ks-page-band__inner{
    min-height:330px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:60px;
    padding-top:64px!important;
    padding-bottom:62px!important;
}
.ks-page-band__copy{max-width:1040px}
.ks-page-band .ks-eyebrow{margin-bottom:14px;font-weight:800;letter-spacing:2.6px}
.ks-page-band h1{
    max-width:1050px;
    margin:0!important;
    font-size:clamp(42px,4.7vw,72px)!important;
    line-height:.98!important;
    letter-spacing:-2px!important;
    font-weight:750!important;
}
.ks-page-band p{max-width:850px;margin:22px 0 0!important;font-size:16px;line-height:1.72}
.ks-page-band__mark{width:152px;display:grid;grid-template-columns:repeat(3,7px);gap:15px;opacity:.65;flex:0 0 auto}
.ks-page-band__mark span{width:7px;height:7px;border-radius:50%}

.ks-page-band--navy{background:linear-gradient(118deg,#062e58 0%,#084879 58%,#0d6ca7 100%)}
.ks-page-band--navy h1,.ks-page-band--navy p{color:#fff!important}
.ks-page-band--navy .ks-eyebrow{color:#7ed0ff!important}
.ks-page-band--navy .ks-page-band__mark span{background:#8dd8ff}

.ks-page-band--blue{background:linear-gradient(120deg,#0b5590 0%,#0b78c8 58%,#58b8df 100%)}
.ks-page-band--blue h1,.ks-page-band--blue p{color:#fff!important}
.ks-page-band--blue .ks-eyebrow{color:#d2f0ff!important}
.ks-page-band--blue .ks-page-band__mark span{background:#e2f6ff}

.ks-page-band--academy{background:linear-gradient(118deg,#072d55 0%,#0b5179 52%,#168a9c 100%)}
.ks-page-band--academy h1,.ks-page-band--academy p{color:#fff!important}
.ks-page-band--academy .ks-eyebrow{color:#9ae6ec!important}
.ks-page-band--academy .ks-page-band__mark span{background:#a9edf2}

.ks-page-band--mist{background:linear-gradient(110deg,#f5f1ea 0%,#f8fbfc 58%,#e5f3f7 100%);border-bottom:1px solid #dce7e9}
.ks-page-band--mist h1{color:#073665!important}
.ks-page-band--mist p{color:#536879!important}
.ks-page-band--mist .ks-eyebrow{color:#b24e31!important}
.ks-page-band--mist .ks-page-band__mark span{background:#0d74d8}

.ks-page-band--corporate{background:linear-gradient(118deg,#fff7f7 0%,#f7fbfe 55%,#eaf5fb 100%)}
.ks-page-band--corporate h1{color:#bf2348!important}
.ks-page-band--corporate p{color:#28455f!important}
.ks-page-band--corporate .ks-page-band__mark span{background:#bf2348}

/* ---------- Existing page content is content, not something to overwrite ---------- */
.ks-preserved-source{
    width:100%;
    margin:0;
    padding:0;
    background:#fff;
}
.ks-preserved-source .container{
    width:min(var(--ks-max),calc(100% - (var(--ks-gutter) * 2)))!important;
    max-width:none!important;
}
.ks-preserved-source img{height:auto}
.ks-preserved-source--service-detail,
.ks-preserved-source--corporate,
.ks-preserved-source--projects,
.ks-preserved-source--contact,
.ks-preserved-source--career,
.ks-preserved-source--feedback{
    padding-top:0!important;
}

/* ---------- HOME: old strong service block returns immediately below banner ---------- */
.ks-home-service-request{
    position:relative;
    z-index:4;
    padding:0 0 66px;
    margin-top:-2px;
    background:#fff;
}
.ks-home-service-request__grid{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(470px,.82fr);
    gap:70px;
    align-items:center;
    padding-top:58px!important;
}
.ks-home-service-request__copy{max-width:760px}
.ks-home-service-request__copy h2{
    margin:0!important;
    color:var(--ks-navy)!important;
    font-size:clamp(38px,3.15vw,55px)!important;
    line-height:1.06!important;
    letter-spacing:-1.4px!important;
    font-weight:650!important;
}
.ks-home-service-request__copy h2 strong{display:block;color:var(--ks-navy);font-weight:750}
.ks-home-service-request__copy>p{max-width:680px;margin:20px 0 0!important;color:var(--ks-text);font-size:15px;line-height:1.72}
.ks-home-service-request__features{display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px;border-top:1px solid #dce6ee;border-bottom:1px solid #dce6ee}
.ks-home-service-request__features>div{position:relative;padding:20px 18px 20px 44px;border-right:1px solid #e0e8ef}
.ks-home-service-request__features>div:first-child{padding-left:40px}
.ks-home-service-request__features>div:last-child{border-right:0}
.ks-home-service-request__features span{position:absolute;left:12px;top:22px;color:#0b72d0;font-size:21px;line-height:1}
.ks-home-service-request__features strong{display:block;color:#073665;font-size:11px;letter-spacing:.5px}
.ks-home-service-request__features small{display:block;margin-top:4px;color:#80909e;font-size:10px}
.ks-home-service-request__link{width:290px;min-height:52px;margin-top:28px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border:1px solid #073665;border-radius:10px;color:#073665!important;text-decoration:none!important;font-size:11px;font-weight:800;letter-spacing:.4px;transition:.2s ease}
.ks-home-service-request__link:hover{background:#073665;color:#fff!important}

.ks-home-service-request__form-card{padding:32px;border:1px solid #dbe6ed;border-radius:18px;background:#fff;box-shadow:0 24px 60px rgba(7,54,101,.10)}
.ks-form-topline{display:flex;align-items:flex-end;gap:18px}
.ks-form-topline>div{flex:0 0 auto}
.ks-form-topline>span{height:1px;flex:1;margin-bottom:7px;background:#9eb0bf}
.ks-form-topline small{display:block;margin-bottom:6px;color:#0d74d8;font-size:9px;font-weight:800;letter-spacing:1.8px}
.ks-form-topline h3{margin:0!important;color:#073665!important;font-size:23px!important;line-height:1.2!important}
.ks-home-service-request__form-card>p{margin:11px 0 20px!important;color:#7b8b98;font-size:11px;line-height:1.5}
.ks-service-form--home{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.ks-service-form--home .ks-form-grid{gap:13px 14px}
.ks-service-form--home .ks-form-grid input,
.ks-service-form--home .ks-form-grid select,
.ks-service-form--home .ks-form-grid textarea{min-height:45px;border-radius:8px!important;background:#fff!important}
.ks-home-service-request__form-bottom{display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:16px;align-items:center;margin-top:14px}
.ks-submit--home{height:50px;padding:0 17px!important;display:flex;align-items:center;justify-content:space-between;border:1px solid #073665!important;border-radius:9px!important;background:#073665!important;color:#fff!important;cursor:pointer}
.ks-submit--home span,.ks-submit--home b{color:#fff!important}

/* Home quick nav now follows the service block instead of overlapping the hero */
.ks-home-service-request + .ks-quick{margin-top:0!important;padding-top:0!important}
.ks-home-service-request + .ks-quick .ks-quick__grid{box-shadow:0 12px 30px rgba(7,54,101,.065)}

/* ---------- Vary section surfaces: stop the pale-blue monotony ---------- */
.ks-services{background:#fff!important}
.ks-brands{background:linear-gradient(180deg,#faf7f2 0%,#f8fafb 100%)!important;border-color:#eee6dc!important}
.ks-quick-finder{background:linear-gradient(115deg,#073665 0%,#0b527f 100%)!important;border:0!important}
.ks-quick-finder h2,.ks-quick-finder p,.ks-quick-finder .ks-eyebrow{color:#fff!important}
.ks-quick-finder__form select{background:#fff!important}
.ks-academy{background:linear-gradient(180deg,#f6fafb 0%,#edf6f7 100%)!important}
.ks-faq{background:#f7f4ef!important;border-color:#ece5dc!important}

/* contact CTA remains a component, but not an oversized blue slab */
.ks-contact-cta__inner{border-radius:18px!important;background:linear-gradient(115deg,#073665 0%,#0a5585 100%)!important;box-shadow:0 18px 44px rgba(7,54,101,.12)!important}

/* ---------- Mobile ---------- */
@media(max-width:980px){
    .ks-page-band__inner{min-height:280px;padding-top:50px!important;padding-bottom:48px!important}
    .ks-page-band__mark{display:none}
    .ks-home-service-request__grid{grid-template-columns:1fr;gap:36px;padding-top:44px!important}
    .ks-home-service-request__copy{max-width:none}
    .ks-home-service-request__form-card{max-width:none}
}
@media(max-width:767px){
    .ks-page-band{margin-bottom:36px!important;border-radius:0 0 22px 22px}
    .ks-page-band__inner{min-height:230px;padding-top:38px!important;padding-bottom:38px!important}
    .ks-page-band h1{font-size:clamp(34px,10vw,48px)!important;letter-spacing:-1px!important}
    .ks-page-band p{font-size:14px;margin-top:16px!important}
    .ks-home-service-request{padding-bottom:48px}
    .ks-home-service-request__grid{padding-top:36px!important}
    .ks-home-service-request__copy h2{font-size:35px!important}
    .ks-home-service-request__features{grid-template-columns:1fr;border-bottom:0}
    .ks-home-service-request__features>div{border-right:0;border-bottom:1px solid #e0e8ef;padding-left:42px!important}
    .ks-home-service-request__link{width:100%}
    .ks-home-service-request__form-card{padding:24px 20px;border-radius:14px}
    .ks-home-service-request__form-bottom{grid-template-columns:1fr}
    .ks-submit--home{width:100%}
}
