body.single-komatek_service{

    background:var(--bg);

}


/* ==========================================================
HERO
========================================================== */

.ks-service-hero{

    background:#F6F8FC;

    padding:80px 20px 50px;

    text-align:center;

    position:relative;

}

.ks-hero-content{

    max-width:900px;

    margin:0 auto 50px;

}

.ks-hero-content h1{

    font-family:Manrope,sans-serif;

    font-size:44px;

    font-weight:800;

    line-height:1.05;

    letter-spacing:-2px;

    color:#21428F !important;

   padding-top:40px !important;

}


/* ==========================================================
IMAGE
========================================================== */
.ks-hero-image{

    max-width:1100px;
    margin:0 auto;
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 30px 80px rgba(15,23,42,.12);

}

.ks-hero-image img{

    width:100%;
    height:580px;          /* Adjust between 320px–420px */
    object-fit:cover;
    object-position:center center;
    display:block;
    transition:transform .6s ease;

}

.ks-hero-image:hover img{

    transform:scale(1.03);

}


/* ==========================================================
CONTENT
========================================================== */

.ks-service-content{

    margin-top:-70px;

    position:relative;

    z-index:10;

}

.ks-container{

    max-width:1050px;

    margin:auto;

    background:#fff;

    border-radius:22px;

    padding:70px;

    box-shadow:var(--shadow);

}


/* ==========================================================
TYPOGRAPHY
========================================================== */

.ks-container h2{

    font-family:Manrope,sans-serif;

    font-size:42px;

    color:var(--heading);

    margin:60px 0 25px;

    font-weight:800;

}

.ks-container h3{

    font-family:Manrope,sans-serif;

    font-size:30px;

    color:var(--heading);

    margin:45px 0 18px;

    font-weight:700;

}

.ks-container p{

    font-size:20px;

    line-height:1.9;

    color:var(--text);

    margin-bottom:28px;

}

.ks-container strong{

    color:var(--primary);

    font-weight:700;

}

.ks-container a{

    color:var(--secondary);

    text-decoration:none;

}

.ks-container a:hover{

    text-decoration:underline;

}


/* ==========================================================
LISTS
========================================================== */

.ks-container ul{

    margin:40px 0;

    padding:0;

    list-style:none;

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

}

.ks-container li{

    background:#F8FBFF;

    border:1px solid var(--border);

    border-radius:14px;

    padding:18px 20px 18px 58px;

    position:relative;

    transition:.35s;

    font-size:18px;

    color:#334155;

}

.ks-container li:hover{

    transform:translateY(-4px);

    border-color:#cfe1ff;

    box-shadow:0 15px 40px rgba(37,99,235,.08);

}

.ks-container li::before{

    content:"✓";

    position:absolute;

    left:20px;

    top:18px;

    width:24px;

    height:24px;

    border-radius:50%;

    background:linear-gradient(135deg,#2563EB,#0B2450);

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:12px;

    font-weight:700;

}


/* ==========================================================
IMAGES INSIDE CONTENT
========================================================== */

.ks-container img{

    width:100%;

    border-radius:18px;

    margin:45px 0;

}


/* ==========================================================
TABLES
========================================================== */

.ks-container table{

    width:100%;

    border-collapse:collapse;

    margin:40px 0;

}

.ks-container th{

    background:#0B2450;

    color:#fff;

    padding:18px;

}

.ks-container td{

    padding:18px;

    border:1px solid #E8EDF5;

}


/* ==========================================================
BLOCKQUOTE
========================================================== */

.ks-container blockquote{

    background:#0B2450;

    color:#fff;

    padding:40px;

    border-radius:18px;

    margin:50px 0;

    font-size:24px;

    line-height:1.7;

}


/* ==========================================================
RESPONSIVE
========================================================== */

@media(max-width:1024px){

.ks-hero-content h1{

font-size:48px;

}

.ks-container{

padding:45px;

}

.ks-container ul{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.ks-service-hero{

padding:60px 20px 30px;

}

.ks-hero-content{

margin-bottom:30px;

}

.ks-hero-content h1{

font-size:36px;

line-height:1.15;

letter-spacing:-1px;

}

.ks-service-content{

margin-top:-30px;

}

.ks-container{

padding:30px;

border-radius:18px;

}

.ks-container h2{

font-size:30px;

}

.ks-container h3{

font-size:24px;

}

.ks-container p{

font-size:17px;

line-height:1.8;

}

}


/* ==========================================================
CALL TO ACTION
========================================================== */

.ks-cta{

    max-width:1050px;

    margin:50px auto 100px;

    padding:0 20px;

}

.ks-cta-inner{

    background:linear-gradient(135deg,#0B2450 0%,#21428F 100%);

    border-radius:22px;

    padding:60px 70px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:40px;

    box-shadow:0 30px 60px rgba(11,36,80,.25);

    position:relative;

    overflow:hidden;

}

.ks-cta-inner::before{

    content:"";

    position:absolute;

    top:-80px;

    right:-80px;

    width:280px;

    height:280px;

    border-radius:50%;

    background:rgba(255,255,255,.06);

}

.ks-cta-copy{

    position:relative;

    z-index:2;

    max-width:620px;

}

.ks-cta-label{

    display:inline-block;

    color:#7FA8FF;

    font-weight:600;

    letter-spacing:2px;

    font-size:13px;

    margin-bottom:14px;

}

.ks-cta-copy h2{

    font-family:Manrope,sans-serif;

    font-size:32px;

    line-height:1.2;

    font-weight:800;

    color:#fff;

    margin:0 0 14px;

}

.ks-cta-copy p{

    font-size:17px;

    line-height:1.7;

    color:rgba(255,255,255,.82);

    margin:0;

}

.ks-cta-actions{

    position:relative;

    z-index:2;

    display:flex;

    flex-direction:column;

    align-items:flex-start;

    gap:14px;

    flex-shrink:0;

}

.ks-cta-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    background:#fff;

    color:#0B2450;

    font-weight:700;

    font-size:16px;

    padding:16px 28px;

    border-radius:12px;

    text-decoration:none;

    white-space:nowrap;

    transition:transform .3s ease,box-shadow .3s ease;

}

.ks-cta-btn:hover{

    transform:translateY(-3px);

    box-shadow:0 12px 24px rgba(0,0,0,.18);

    color:#0B2450;

    text-decoration:none;

}

.ks-cta-arrow{

    transition:transform .3s ease;

}

.ks-cta-btn:hover .ks-cta-arrow{

    transform:translateX(4px);

}

.ks-cta-phone{

    color:rgba(255,255,255,.85);

    font-weight:600;

    font-size:15px;

    text-decoration:none;

    letter-spacing:.3px;

}

.ks-cta-phone:hover{

    color:#fff;

    text-decoration:underline;

}

@media(max-width:900px){

.ks-cta-inner{

    flex-direction:column;

    align-items:flex-start;

    padding:45px 35px;

}

.ks-cta-actions{

    width:100%;

}

.ks-cta-btn{

    width:100%;

    justify-content:center;

}

}

@media(max-width:768px){

.ks-cta{

    margin:35px auto 60px;

}

.ks-cta-copy h2{

    font-size:26px;

}

}