/* Homepage only: services and genuine workshop photographs, LT/RU/EN. */
.km-home-services,.km-home-work{min-width:0}
.km-home-section-intro{max-width:780px;margin:12px 0 24px;line-height:1.65}
.km-home-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.km-home-services .km-service-card{display:flex;flex-direction:column;min-width:0;padding:22px;border:1px solid #dce6ef;border-radius:18px;background:#f6f9fc;color:#18354e;text-decoration:none!important;box-shadow:none;transition:border-color .18s,background-color .18s}
.km-service-card .service-line-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;margin:0 0 15px;border-radius:12px;background:var(--service-icon-bg,#e9f0fc);color:var(--service-icon-color,#3861a2)}
.km-service-card .service-line-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.km-service-card h3{font-size:17px;line-height:1.4;margin:0 0 8px;color:#18354e}
.km-service-card p{font-size:13px;line-height:1.5;color:#536b80;margin:0 0 18px}
.km-service-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}
.km-service-card-bottom strong{font-size:23px;line-height:1.25;color:#244f83}
.km-service-card-bottom>span{font-size:23px;color:#3861a2}
.km-home-services .km-service-card:hover{border-color:#90adc9;background:#edf4fb}
.km-home-services-note{margin:22px 0 0;padding:18px 20px;border-left:3px solid #3861a2;background:#f4f8fc;border-radius:0 12px 12px 0}
.km-home-services-note p{font-size:14px;line-height:1.65;margin:0}
.km-home-services-note p+p{margin-top:6px}
.km-home-section-links{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:22px}
.km-home-section-links>a:not(.button){font-weight:650;color:#244f83;text-underline-offset:4px}
.km-home-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.km-home-work .km-work-card{display:flex;flex-direction:column;min-width:0;margin:0;overflow:hidden;border:1px solid #dce6ef;border-radius:18px;background:#fff;box-shadow:none}
.km-work-image{display:block;aspect-ratio:4/3;overflow:hidden;background:#e9f0f6}
.km-work-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.km-work-card figcaption{display:flex;flex:1;flex-direction:column;padding:20px}
.km-work-card h3{font-size:18px;line-height:1.4;margin:0 0 9px;color:#18354e}
.km-work-card p{font-size:14px;line-height:1.65;color:#536b80;margin:0 0 16px}
.km-work-card figcaption>a{margin-top:auto;font-size:14px;font-weight:650;color:#244f83;text-underline-offset:4px}
.km-home-services a:focus-visible,.km-home-work a:focus-visible{outline:3px solid #3861a2;outline-offset:4px}
@media(max-width:1100px){.km-home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.km-home-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.km-home-services-grid,.km-home-work-grid{grid-template-columns:minmax(0,1fr);gap:14px}.km-home-services .km-service-card{padding:20px}.km-service-card h3{font-size:17px}.km-home-section-intro{font-size:15px}.km-work-card figcaption{padding:18px}.km-home-services-note{padding:16px}.km-home-section-links{gap:16px}}

/* Light-section buttons: explicit contrast including inherited arrow colour. */
body main .km-home-section-links > a.button.ghost{color:#244f83!important;-webkit-text-fill-color:#244f83!important;background:#fff!important;border-color:#738ca9!important}
body main .km-home-section-links > a.button.ghost span{color:inherit!important;-webkit-text-fill-color:currentColor!important}
body main .km-home-section-links > a.button.ghost:is(:hover,:focus-visible,:active){color:#18354e!important;-webkit-text-fill-color:#18354e!important;background:#e8f0f8!important;border-color:#3861a2!important}

/* Clear hierarchy for homepage prices and service selection. */
html body main .km-home-services{scroll-margin-top:110px}
html body main .km-home-services>.eyebrow{display:inline-flex!important;padding:7px 13px!important;border:1px solid #d3dfec!important;border-radius:999px!important;background:#eaf0f8!important;color:#295586!important;font-size:12px!important;font-weight:750!important;letter-spacing:.07em!important;line-height:1.4!important;margin:0 0 14px!important}
html body main .km-home-services>h2{font-size:clamp(28px,3vw,42px)!important;line-height:1.18!important;letter-spacing:-.025em!important;font-weight:800!important;color:#18364f!important;margin:0!important;max-width:900px}
html body main .km-home-services>.km-home-section-intro{font-size:16px!important;line-height:1.6!important;color:#4b6278!important;margin:14px 0 28px!important}
html body main .km-home-services-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important}
html body main .km-home-services .km-service-card{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-width:0!important;padding:24px 22px 18px!important;border:1px solid #cedbea!important;border-radius:20px!important;background:#fff!important;color:#18364f!important;box-shadow:0 5px 18px #18365008!important;text-decoration:none!important;transform:none!important;transition:border-color .18s,background .18s,box-shadow .18s!important}
html body main .km-home-services .km-service-card::before,html body main .km-home-services .km-service-card::after{content:none!important;display:none!important}
html body main .km-home-services .service-line-icon{display:grid!important;place-items:center!important;width:52px!important;height:52px!important;min-width:52px!important;margin:0 0 19px!important;border-radius:15px!important;background:var(--service-icon-bg)!important;color:var(--service-icon-color)!important;border:1px solid #ffffff!important;box-shadow:0 3px 8px #173b5d08!important}
html body main .km-home-services .service-line-icon svg{display:block!important;width:28px!important;height:28px!important;stroke:currentColor!important;fill:none!important;stroke-width:1.8!important}
html body main .km-home-services .km-service-card h3{font-size:17px!important;line-height:1.4!important;letter-spacing:-.01em!important;font-weight:750!important;min-height:0!important;margin:0 0 8px!important;color:#18364f!important}
html body main .km-home-services .km-service-card>p{font-size:13px!important;line-height:1.5!important;color:#4b6278!important;margin:0 0 20px!important}
html body main .km-home-services .km-service-card-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-top:auto!important;padding-top:16px!important;border-top:1px solid #e0e8f1!important}
html body main .km-home-services .km-service-card-bottom strong{font-size:25px!important;line-height:1.25!important;letter-spacing:-.02em!important;font-weight:800!important;color:#244f83!important;font-variant-numeric:tabular-nums}
html body main .km-home-services .km-service-card-bottom>span{display:grid!important;place-items:center!important;flex:none!important;width:34px!important;height:34px!important;border-radius:50%!important;background:#edf3fc!important;color:#2959a0!important;font-size:21px!important}
html body main .km-home-services .km-service-card:is(:hover,:focus-visible){border-color:#527db5!important;background:#f0f5fc!important;box-shadow:0 8px 22px #18365014!important}
html body main .km-home-services .km-service-card:is(:hover,:focus-visible) .km-service-card-bottom>span{background:#2959a0!important;color:#fff!important}
html body main .km-home-services .km-service-card:focus-visible{outline:3px solid #527db5!important;outline-offset:4px!important}
html body main .km-home-services-note{margin:24px 0 0!important;padding:20px 24px!important;border:1px solid #cdddec!important;border-left:4px solid #3861a2!important;border-radius:16px!important;background:#edf3fa!important}
html body main .km-home-services-note p{font-size:14px!important;line-height:1.65!important;color:#405971!important;margin:0!important}
html body main .km-home-services-note p:first-child{color:#18364f!important}
html body main .km-home-services-note p+p{margin-top:7px!important}
html body main .km-home-services .km-home-section-links{gap:12px!important;margin-top:20px!important}
html body main .km-home-services .km-home-section-links>a{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:14px!important;min-height:46px!important;padding:11px 18px!important;border:1px solid #bdcfe3!important;border-radius:12px!important;background:#fff!important;color:#244f83!important;-webkit-text-fill-color:#244f83!important;font-size:14px!important;font-weight:750!important;text-decoration:none!important}
html body main .km-home-services .km-home-section-links>a:is(:hover,:focus-visible){background:#eaf1fb!important;border-color:#527db5!important}
@media(max-width:1100px){html body main .km-home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}html body main .km-home-services .km-service-card h3{min-height:0!important}}
@media(max-width:600px){html body main .km-home-services-grid{grid-template-columns:1fr!important;gap:14px!important}html body main .km-home-services .km-service-card{display:grid!important;grid-template-columns:46px minmax(0,1fr)!important;column-gap:14px!important;row-gap:6px!important;padding:20px!important}html body main .km-home-services .service-line-icon{grid-column:1;grid-row:1/3;width:46px!important;height:46px!important;min-width:46px!important;margin:0!important;border-radius:13px!important}html body main .km-home-services .km-service-card h3{grid-column:2;grid-row:1;min-height:0!important;margin:0!important}html body main .km-home-services .km-service-card>p{grid-column:2;grid-row:2;margin:0!important}html body main .km-home-services .km-service-card-bottom{grid-column:1/-1;grid-row:3;margin-top:10px!important;padding-top:14px!important}html body main .km-home-services-note{padding:18px!important}html body main .km-home-services>.km-home-section-intro{font-size:15px!important}}
@media(prefers-reduced-motion:reduce){html body main .km-home-services .km-service-card{transition:none!important}}
