.ksloc{--ksloc-navy:#11243f;--ksloc-green:#278522;--ksloc-text:#53627a;--ksloc-soft:#f3f7f1;--ksloc-line:#d5e0d1;display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,1.08fr);gap:54px;align-items:stretch;padding:46px 52px 52px;border-radius:12px;background:var(--ksloc-soft);color:var(--ksloc-navy);font-family:Arial,Helvetica,sans-serif;overflow:hidden}
.ksloc *{box-sizing:border-box}
.ksloc__content{display:flex;flex-direction:column;justify-content:center}
.ksloc__kicker{display:flex;align-items:center;gap:18px;margin:0 0 28px;color:var(--ksloc-green);font-size:13px;font-weight:800;letter-spacing:2px;text-transform:uppercase}
.ksloc__kicker i{display:block;width:42px;height:3px;margin:0;background:var(--ksloc-green)}
.ksloc h2{max-width:520px;margin:0 0 20px;color:#333;font-size:clamp(38px,3.4vw,50px);font-weight:800;line-height:1.05;letter-spacing:-2px}
.ksloc h2::before,.ksloc h2::after{content:none!important;display:none!important}
.ksloc h2 em{display:block;color:var(--ksloc-green);font-style:normal}
.ksloc__intro{max-width:540px;margin:0 0 26px;color:var(--ksloc-text);font-size:17px;line-height:1.65}
.ksloc__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ksloc__card{padding:18px;border:1px solid var(--ksloc-line);border-left:4px solid var(--ksloc-green);border-radius:10px;background:#fff}
.ksloc__tag{display:inline-block;margin-bottom:10px;color:var(--ksloc-green);font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}
.ksloc__card h3{margin:0 0 8px;color:var(--ksloc-navy);font-size:18px;line-height:1.2}
.ksloc__card address{margin:0 0 10px;color:var(--ksloc-text);font-size:14px;font-style:normal;line-height:1.55}
.ksloc__card p{margin:0;color:var(--ksloc-text);font-size:13px;line-height:1.45}
.ksloc__card p strong{color:var(--ksloc-navy)}
.ksloc__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.ksloc__button{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-width:0;padding:15px 44px 15px 20px;border-radius:8px;background:var(--ksloc-green);color:#fff!important;font-size:15px;font-weight:800;text-align:center;text-decoration:none!important;transition:transform .2s ease,background-color .2s ease}
.ksloc__button span{position:absolute;right:20px}
.ksloc__button--secondary{background:var(--ksloc-navy)}
.ksloc__button:hover,.ksloc__button:focus-visible{transform:translateY(-2px);background:#1f6f1b}
.ksloc__button--secondary:hover,.ksloc__button--secondary:focus-visible{background:#203a5e}
.ksloc__button:focus-visible,.ksloc__load-map:focus-visible,.ksloc__tab:focus-visible{outline:3px solid var(--ksloc-navy);outline-offset:3px}
.ksloc__map{min-height:620px;overflow:hidden;border:1px solid #cddbc9;border-radius:20px;background:#e9f0e5}
.ksloc__tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px;background:#fff;border-bottom:1px solid var(--ksloc-line)}
.ksloc__tab{padding:13px 14px;border:1px solid var(--ksloc-line);border-radius:8px;background:#fff;color:var(--ksloc-navy);font:inherit;font-size:14px;font-weight:800;cursor:pointer}
.ksloc__tab.is-active{border-color:var(--ksloc-green);background:var(--ksloc-green);color:#fff}
.ksloc__map-stage{display:flex;align-items:center;justify-content:center;min-height:550px;padding:32px;text-align:center}
.ksloc__map-placeholder{max-width:390px}
.ksloc__pin{display:flex;align-items:center;justify-content:center;width:54px;height:54px;margin:0 auto 18px;border-radius:50%;background:var(--ksloc-navy);color:#54bb2d;font-size:22px}
.ksloc__map-placeholder strong{display:block;margin-bottom:12px;font-size:23px}
.ksloc__map-placeholder p{margin:0 0 22px;color:var(--ksloc-text);font-size:14px;line-height:1.5}
.ksloc__load-map{padding:14px 22px;border:0;border-radius:8px;background:var(--ksloc-navy);color:#fff;font:inherit;font-size:15px;font-weight:800;cursor:pointer}
.ksloc__map-stage iframe{display:block;width:100%;height:550px;border:0}
@media(max-width:900px){.ksloc{grid-template-columns:1fr;padding:34px 24px;gap:30px}.ksloc__map{min-height:480px}.ksloc__map-stage{min-height:410px}.ksloc__map-stage iframe{height:410px}}
@media(max-width:600px){.ksloc h2{font-size:39px}.ksloc__cards,.ksloc__actions,.ksloc__tabs{grid-template-columns:1fr}.ksloc__button{width:100%}}
@media(prefers-reduced-motion:reduce){.ksloc__button{transition:none}.ksloc__button:hover,.ksloc__button:focus-visible{transform:none}}
