.kmkl40{--kmkl-blue:#1166aa;--kmkl-dark:#102e4d;--kmkl-muted:#5e7184;--kmkl-bg:#f3f8fc;font-family:inherit;color:var(--kmkl-dark);line-height:1.55;overflow:hidden}.kmkl40 *{box-sizing:border-box}.kmkl40 .kmkl40-wrap{width:min(1160px,calc(100% - 40px));margin-inline:auto}.kmkl40 h1,.kmkl40 h2,.kmkl40 h3,.kmkl40 p{margin:0}.kmkl40 h1{font-size:clamp(36px,5.1vw,64px);letter-spacing:-.045em;line-height:1.08;font-weight:800}.kmkl40 h2{font-size:clamp(27px,3.3vw,40px);line-height:1.18;letter-spacing:-.03em;font-weight:750}.kmkl40 h3{font-size:19px;line-height:1.3;font-weight:750}.kmkl40 p{font-size:16px}.kmkl40-hero{background:linear-gradient(118deg,#06345d,#0a64aa 72%,#1683bf);color:#fff}.kmkl40-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:50px;align-items:center;padding-block:78px}.kmkl40-eyebrow{display:inline-flex;gap:9px;align-items:center;background:#ffffff1c;border:1px solid #ffffff42;border-radius:30px;padding:9px 15px;font-size:13px;font-weight:650;margin-bottom:24px}.kmkl40-dot{width:8px;height:8px;background:#9ee4e9;border-radius:50%}.kmkl40-lead{font-size:18px!important;max-width:570px;margin-top:22px!important;color:#e6f3ff}.kmkl40-tags{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 30px}.kmkl40-tags span{background:#ffffff1b;border:1px solid #ffffff3b;padding:8px 13px;border-radius:7px;font-size:13px}.kmkl40-btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;text-decoration:none!important;padding:15px 22px;border-radius:10px;font-size:15px;font-weight:750;transition:transform .2s,background .2s}.kmkl40-btn:hover{transform:translateY(-2px)}.kmkl40-btn svg{width:18px;height:18px}.kmkl40-btn-light{background:#fff;color:#0a5a9a!important}.kmkl40-hero-visual{min-height:345px;border-radius:22px;overflow:hidden;background:#ffffff1b;border:1px solid #ffffff30}.kmkl40-hero-visual img{width:100%;height:100%;min-height:345px;object-fit:cover;display:block}.kmkl40-illustration{height:100%;min-height:345px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;background:radial-gradient(circle at 70% 20%,#70c6e477,transparent 44%),linear-gradient(145deg,#1686c2,#0c4d88);isolation:isolate;padding:30px;text-align:center}.kmkl40-orbit{position:absolute;width:280px;height:280px;border:1px solid #ffffff50;border-radius:50%;box-shadow:0 0 0 40px #ffffff0b,0 0 0 80px #ffffff08;z-index:-1}.kmkl40-medical-cross{font-size:50px;line-height:1;color:#a4e7f6}.kmkl40-illustration-text{font-size:clamp(100px,14vw,180px);line-height:1;font-weight:800;letter-spacing:-.08em}.kmkl40-illustration-text span{color:#9de7ee}.kmkl40-illustration-sub{font-size:14px;max-width:240px;color:#e8f6ff}.kmkl40-section{padding-block:76px}.kmkl40-kicker{font-size:12px;letter-spacing:.13em;font-weight:800;color:#1776b8;margin-bottom:14px}.kmkl40-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.kmkl40-intro p{color:var(--kmkl-muted);margin-bottom:13px}.kmkl40-section-desc{color:var(--kmkl-muted);margin-top:12px!important}.kmkl40-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:30px}.kmkl40-card{background:#f5f9fc;border:1px solid #e0eaf2;border-radius:15px;padding:26px;min-width:0}.kmkl40-card-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#e1f1fb;color:#126bac;margin-bottom:19px}.kmkl40-card-icon svg{width:25px;height:25px}.kmkl40-card h3{margin-bottom:10px}.kmkl40-card p{font-size:14px;color:var(--kmkl-muted)}.kmkl40-highlight{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;background:#eaf5fb;border-radius:20px;padding:42px}.kmkl40-highlight p{color:var(--kmkl-muted);max-width:550px;margin-top:15px}.kmkl40-money{background:#fff;border-radius:15px;padding:23px 26px;max-width:280px;box-shadow:0 8px 28px #0a4b7a0c}.kmkl40-money strong{display:block;color:#0d6aaf;font-size:35px;line-height:1.1;white-space:nowrap}.kmkl40-money span{display:block;font-size:14px;font-weight:700;margin-top:10px}.kmkl40-money small{display:block;color:var(--kmkl-muted);font-size:12px;margin-top:7px}.kmkl40-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-top:30px}.kmkl40-steps>div{border-top:3px solid #1675b6;padding-top:18px;min-width:0}.kmkl40-steps span{display:block;font-size:30px;font-weight:800;color:#b1d6ed;margin-bottom:13px}.kmkl40-steps h3{margin-bottom:9px}.kmkl40-steps p{font-size:14px;color:var(--kmkl-muted)}.kmkl40-note{margin-top:30px;border:1px solid #d7e8f4;background:#f5faff;border-radius:13px;padding:20px 24px}.kmkl40-note strong{display:block;margin-bottom:6px}.kmkl40-note p{font-size:14px;color:var(--kmkl-muted)}.kmkl40-booking{display:grid;grid-template-columns:1fr auto;gap:38px;align-items:center;background:#103f6a;color:white;padding:42px;border-radius:20px;margin-bottom:78px}.kmkl40-booking .kmkl40-kicker{color:#9edbf6}.kmkl40-booking p{color:#dbeefa;max-width:600px;margin-top:14px}.kmkl40-booking .kmkl40-small-note{font-size:13px;color:#c3ddeb}.kmkl40-booking-action{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.kmkl40-booking-action span{font-size:13px;color:#c9e4f7}.kmkl40-phone{font-size:27px;font-weight:800;color:#fff!important;text-decoration:none!important;white-space:nowrap}.kmkl40-btn-primary{background:#fff;color:#0b5c9c!important;margin-top:5px}@media(max-width:850px){.kmkl40-hero-grid{grid-template-columns:1fr;padding-block:52px;gap:30px}.kmkl40-hero-visual,.kmkl40-illustration{min-height:270px}.kmkl40-intro{gap:26px}.kmkl40-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.kmkl40-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:30px}.kmkl40-booking{grid-template-columns:1fr}}@media(max-width:560px){.kmkl40 .kmkl40-wrap{width:min(100% - 28px,1160px)}.kmkl40-hero-grid{padding-block:42px}.kmkl40-lead{font-size:16px!important}.kmkl40-section{padding-block:48px}.kmkl40-intro,.kmkl40-highlight,.kmkl40-booking{grid-template-columns:1fr}.kmkl40-cards{grid-template-columns:1fr;gap:12px}.kmkl40-card{padding:21px}.kmkl40-highlight,.kmkl40-booking{padding:26px 20px}.kmkl40-money{max-width:none}.kmkl40-steps{gap:20px}.kmkl40-steps h3{font-size:16px}.kmkl40-steps p{font-size:13px}.kmkl40-booking{margin-bottom:48px}.kmkl40-phone{font-size:24px}}

/* v1.1: full-bleed hero and tighter vertical rhythm */
.kmkl40 .kmkl40-hero{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.kmkl40 .kmkl40-hero-grid{padding-block:34px;gap:38px}
.kmkl40 .kmkl40-eyebrow{margin-bottom:15px}
.kmkl40 .kmkl40-lead{margin-top:14px!important}
.kmkl40 .kmkl40-tags{margin:16px 0 20px}
.kmkl40 .kmkl40-hero-visual,.kmkl40 .kmkl40-hero-visual img,.kmkl40 .kmkl40-illustration{min-height:255px}
.kmkl40 .kmkl40-illustration{padding:20px}
.kmkl40 .kmkl40-illustration-text{font-size:clamp(90px,11vw,145px)}
.kmkl40 .kmkl40-orbit{width:220px;height:220px}
.kmkl40 .kmkl40-section{padding-block:34px}
.kmkl40 .kmkl40-intro{gap:45px}
.kmkl40 .kmkl40-cards,.kmkl40 .kmkl40-steps{margin-top:20px}
.kmkl40 .kmkl40-booking{margin-bottom:38px}
@media(max-width:850px){.kmkl40 .kmkl40-hero-grid{padding-block:30px;gap:22px}.kmkl40 .kmkl40-intro{gap:20px}}
@media(max-width:560px){.kmkl40 .kmkl40-hero-grid{padding-block:28px}.kmkl40 .kmkl40-section{padding-block:26px}.kmkl40 .kmkl40-hero-visual,.kmkl40 .kmkl40-hero-visual img,.kmkl40 .kmkl40-illustration{min-height:220px}.kmkl40 .kmkl40-booking{margin-bottom:28px}}

/* v1.2 — department-style edge-to-edge hero, no clipping by shortcode root */
.kmkl40{overflow:visible!important;max-width:none!important}
.kmkl40 .kmkl40-hero{position:relative;left:50%;width:100vw!important;max-width:100vw!important;margin-left:-50vw!important;margin-right:0!important;border-radius:0!important}
.kmkl40 .kmkl40-hero-grid{width:100%!important;max-width:none!important;margin:0!important;padding:36px clamp(24px,3.3vw,64px)!important;grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,70px);min-height:0!important}
.kmkl40 .kmkl40-hero h1{font-size:clamp(38px,4vw,56px)!important;line-height:1.09!important;max-width:680px}
.kmkl40 .kmkl40-hero-visual,.kmkl40 .kmkl40-hero-visual img,.kmkl40 .kmkl40-illustration{height:300px!important;min-height:0!important}
.kmkl40 .kmkl40-eyebrow{margin-bottom:12px!important}
.kmkl40 .kmkl40-lead{margin-top:14px!important;line-height:1.5!important}
.kmkl40 .kmkl40-tags{margin:16px 0 18px!important}
.kmkl40 .kmkl40-section{padding-block:26px!important}
.kmkl40 .kmkl40-intro{gap:42px!important}
.kmkl40 .kmkl40-cards{margin-top:20px!important}
@media(max-width:850px){.kmkl40 .kmkl40-hero-grid{grid-template-columns:1fr;padding:30px 22px!important;gap:22px}.kmkl40 .kmkl40-hero-visual,.kmkl40 .kmkl40-hero-visual img,.kmkl40 .kmkl40-illustration{height:230px!important}.kmkl40 .kmkl40-section{padding-block:22px!important}}
@media(max-width:560px){.kmkl40 .kmkl40-hero-grid{padding:26px 18px!important}.kmkl40 .kmkl40-hero h1{font-size:38px!important}.kmkl40 .kmkl40-hero-visual,.kmkl40 .kmkl40-hero-visual img,.kmkl40 .kmkl40-illustration{height:200px!important}}

/* v1.3 — compact desktop hero aligned below the navigation */
@media (min-width: 851px) {
 .kmkl40 .kmkl40-hero { margin-top: 8px!important; }
 .kmkl40 .kmkl40-hero-grid { padding: 20px clamp(24px,3.3vw,64px)!important; gap: 36px!important; }
 .kmkl40 .kmkl40-eyebrow { margin-bottom: 12px!important; padding: 6px 13px!important; }
 .kmkl40 .kmkl40-hero h1 { font-size: clamp(36px,3.5vw,50px)!important; line-height:1.08!important; }
 .kmkl40 .kmkl40-lead { margin-top: 12px!important; font-size:16px!important; line-height:1.45!important; }
 .kmkl40 .kmkl40-tags { margin: 14px 0 16px!important; gap:8px!important; }
 .kmkl40 .kmkl40-tags span { padding: 6px 11px!important; }
 .kmkl40 .kmkl40-btn { padding: 11px 19px!important; }
 .kmkl40 .kmkl40-hero-visual, .kmkl40 .kmkl40-hero-visual img, .kmkl40 .kmkl40-illustration { height: 245px!important; }
 .kmkl40 .kmkl40-illustration { padding:12px!important; }
 .kmkl40 .kmkl40-orbit { width:200px!important;height:200px!important;box-shadow:0 0 0 25px #ffffff0b,0 0 0 50px #ffffff08!important; }
 .kmkl40 .kmkl40-medical-cross { font-size:30px!important; }
 .kmkl40 .kmkl40-illustration-text { font-size:116px!important; }
 .kmkl40 .kmkl40-illustration-sub { font-size:12px!important; }
}
@media (max-width:850px) {
 .kmkl40 .kmkl40-hero { margin-top: 6px!important; }
 .kmkl40 .kmkl40-hero-grid { padding-block: 22px!important; }
}
