.kul-map-section{margin:0 0 56px;border:1px solid #d7bc8355;background:#303b47}
.kul-map-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px}
.kul-map-heading h2{margin:0;color:#d7bc83;font:30px/1.2 Georgia,serif;flex-shrink:0}
.kul-map-heading p{margin:0;max-width:450px;color:#d0d5dc;font:14px/1.6 Arial,sans-serif}
.kul-map-touch-hint{display:none}
#kul-temple-map{position:relative;height:560px;isolation:isolate;z-index:0;background:#e4e6df;font-family:Arial,sans-serif}
#kul-temple-map .leaflet-tile-pane{filter:saturate(.65)}
#kul-temple-map .leaflet-control-zoom{border:1px solid #d7bc8380;border-radius:0;box-shadow:0 3px 15px #242c3522}
#kul-temple-map .leaflet-control-zoom a{background:#242c35;color:#f2eadd;border-color:#d7bc8355;width:36px;height:36px;line-height:36px}
#kul-temple-map .leaflet-control-zoom a:hover{background:#303b47;color:#d7bc83}
#kul-temple-map .kul-map-reset{background:#242c35;color:#f2eadd;border:1px solid #d7bc8380;border-radius:0;padding:10px 14px;font:13px/1.3 Arial,sans-serif;cursor:pointer;box-shadow:0 3px 15px #242c3522}
#kul-temple-map .kul-map-reset:hover{color:#d7bc83}
#kul-temple-map .leaflet-control-attribution{background:#fffffff0;color:#333;font-size:10px}
#kul-temple-map .leaflet-control-attribution a{color:#235d71}
.kul-map-marker{background:transparent;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer}
.kul-map-marker>span{display:flex;justify-content:center;align-items:center;width:30px;height:34px;border:2px solid #d7bc83;background:#242c35;color:#ecd7a8;border-radius:16px 16px 16px 3px;box-shadow:0 3px 8px #0005;font:23px/1 Georgia,serif;transition:background .2s,box-shadow .2s}
.kul-map-marker:hover>span,.kul-map-marker:focus>span{background:#405469;box-shadow:0 0 0 4px #d7bc8355,0 3px 8px #0005}
.kul-map-cluster>span{border-radius:50%;width:34px;height:34px;font:bold 14px/1 Arial,sans-serif;background:#d7bc83;color:#242c35;border-color:#242c35}
#kul-temple-map .kul-map-preview{position:absolute;z-index:1100;top:16px;width:288px;max-width:calc(100% - 32px);max-height:calc(100% - 50px);overflow:auto;background:#242c35;color:#f2eadd;border:1px solid #d7bc83;box-shadow:0 10px 30px #1117}
#kul-temple-map .kul-map-close{position:absolute;z-index:2;right:5px;top:5px;width:28px;height:28px;background:#242c35dd;color:#f2eadd;border:0;border-radius:50%;font:22px/1 Arial,sans-serif;cursor:pointer;padding:0}
.kul-map-cards{display:grid;gap:1px}
#kul-temple-map .kul-map-card{display:block;color:#f2eadd;text-decoration:none}
#kul-temple-map .kul-map-card img{width:100%;height:155px;object-fit:cover;display:block;margin:0}
.kul-map-card-body{display:grid;gap:8px;padding:16px 18px 18px}
.kul-map-town{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:#d7bc83}
.kul-map-card strong{font:22px/1.2 Georgia,serif}
.kul-map-address{font-size:12px;color:#d0d5dc;line-height:1.4}
.kul-map-more{font-size:12px;color:#d7bc83;margin-top:2px}
#kul-temple-map .kul-map-card:hover strong{color:#d7bc83}
#kul-temple-map :focus-visible{outline:2px solid #d7bc83;outline-offset:3px}
.kul-map-loading{padding:30px;color:#242c35;font-size:15px}
.kul-map-tile-notice{position:absolute;z-index:500;bottom:24px;left:12px;right:12px;margin:0;padding:10px 14px;background:#242c35;color:#f2eadd;font-size:12px;pointer-events:none}
@media(max-width:760px){.kul-map-heading{display:block;padding:20px}.kul-map-heading h2{font-size:26px;margin-bottom:10px}.kul-map-heading p{font-size:12px}#kul-temple-map{height:460px}.kul-map-section{margin-bottom:32px}}
@media(hover:none){.kul-map-desktop-hint{display:none}.kul-map-touch-hint{display:block}}
@media(prefers-reduced-motion:reduce){.kul-map-marker>span{transition:none}}

@media(max-width:760px){.kul-map-desktop-hint{display:none}.kul-map-touch-hint{display:block}}
#kul-temple-map .kul-map-yandex-marker{position:absolute;left:-18px;top:-20px;width:36px;height:40px;min-width:0;margin:0;padding:0;border-radius:0;box-sizing:border-box;appearance:none}
#kul-temple-map.kul-map-yandex .kul-map-preview{max-height:calc(100% - 140px);width:min(288px,calc(100% - 24px));overscroll-behavior:contain}
#kul-temple-map .kul-map-yandex-reset{position:absolute;z-index:1000;left:12px;top:12px}
