
:root{--ink:#161514;--grey:#6F6D69;--mute:#A3A09B;--soft:#F3F2EF;--line:#E7E5E1;--pad:48px;--hd:72px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font:400 14px/1.65 'Manrope',system-ui,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit;background:none;border:0;border-radius:0}button{cursor:pointer;-webkit-tap-highlight-color:transparent}
[hidden]{display:none!important}
.lab{font-size:10.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--grey)}
.ul{border-bottom:1px solid currentColor;padding-bottom:1px}
.hd{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;height:var(--hd);padding:0 var(--pad);background:#fff;border-bottom:1px solid var(--line)}
.hd img{height:30px;width:auto}.hd nav{display:flex;gap:34px}
.hd a{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.hd .tel{font-size:13px;letter-spacing:.04em;text-transform:none;font-weight:400}
.wrap{max-width:1240px;margin:0 auto;padding:0 var(--pad)}
.top{padding-top:72px;padding-bottom:40px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end}
h1{font-weight:300;font-size:56px;line-height:1.05;letter-spacing:-.01em;margin-top:14px}
.lead{color:var(--grey);font-size:15px;max-width:440px}
.find{display:grid;gap:14px}
.geo{display:flex;align-items:center;justify-content:center;gap:12px;height:56px;background:var(--ink);color:#fff;font-size:11.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;width:100%}
.geo[disabled]{opacity:.6;cursor:wait}
.or{display:flex;align-items:center;gap:14px;color:var(--mute);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.or:before,.or:after{content:"";flex:1;height:1px;background:var(--line)}
.city{position:relative}
.city input{width:100%;height:56px;border:1px solid var(--ink);padding:0 150px 0 18px;font-size:15px;outline:0}
.city input::placeholder{color:var(--mute)}
.city button{position:absolute;right:0;top:0;height:56px;padding:0 22px;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;border-left:1px solid var(--ink)}
.sug{position:absolute;left:0;right:0;top:56px;background:#fff;border:1px solid var(--ink);border-top:0;z-index:50;max-height:260px;overflow:auto}
.sug button{display:block;width:100%;text-align:left;padding:12px 18px;font-size:14px;border-top:1px solid var(--line)}
.sug button:first-child{border-top:0}.sug button:hover,.sug button:focus{background:var(--soft)}
.sug small{color:var(--mute);margin-left:8px}
.msg{font-size:13px;color:var(--grey);min-height:20px}
/* результат */
.res{scroll-margin-top:var(--hd);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:8px}
.res .wrap{padding-top:36px;padding-bottom:40px}
.near{display:grid;grid-template-columns:1.1fr 1fr;gap:64px}
.big{font-weight:300;font-size:40px;line-height:1.1;margin:10px 0 6px}
.dist{font-size:13px;letter-spacing:.06em;color:var(--grey)}
.addr{font-size:17px;margin:18px 0 4px}.sn{color:var(--grey)}.kind .klg{height:16px;width:auto;display:inline-block;vertical-align:-3px;margin-right:9px}.kind{display:inline-block;margin-top:12px;font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--ink);padding:4px 10px}
.act{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.b1,.b2{display:inline-flex;align-items:center;justify-content:center;height:50px;padding:0 28px;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
.b1{background:var(--ink);color:#fff}.b2{border:1px solid var(--ink)}
.note{margin-top:20px;font-size:12.5px;color:var(--grey);max-width:460px}
.more .it{padding:14px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;cursor:pointer}
.more .it:first-of-type{border-top:0}.more .it b{font-weight:500;display:block}.more .it span{color:var(--grey);font-size:13px}
.more .it i{font-style:normal;white-space:nowrap;color:var(--grey);font-size:13px}.more .it:hover b{text-decoration:underline}
.far{background:var(--soft);padding:22px 24px;margin-bottom:26px;font-size:14px}
/* карта */
.mapw{padding-top:48px;padding-bottom:56px;scroll-margin-top:var(--hd)}
.mapw .head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px}
h2{font-weight:300;font-size:30px}
#map{height:560px;background:var(--soft)}.leg{display:flex;gap:28px;flex-wrap:wrap;margin:0 0 14px;font-size:12.5px;color:var(--grey)}.leg .dot{margin:0!important}
.leg span{display:flex;align-items:center;gap:10px;min-height:30px;line-height:1.2}.leg .dot{display:inline-block;flex:none}

.leaflet-tile-pane{filter:grayscale(1) contrast(.92) brightness(1.06)}.leaflet-container{font-family:inherit}
.leaflet-marker-icon.leaflet-interactive:after{content:'';position:absolute;left:50%;top:50%;width:44px;height:44px;transform:translate(-50%,-50%)}
.dot{width:14px;height:14px;border-radius:50%;background:#161514;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.dot.own{width:36px;height:36px;border:3px solid var(--ink);background:#fff url(https://delightful-strudel-3670c9.netlify.app/mark.png) no-repeat center 52%/22px auto;box-shadow:0 0 0 3px rgba(255,255,255,.95),0 4px 10px rgba(0,0,0,.3)}
.leg .dot.own{width:28px;height:28px;border-width:2.5px;background-size:16px auto;box-shadow:0 0 0 2px #fff,0 2px 5px rgba(0,0,0,.3)}
.dot.sel{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--ink),0 2px 8px rgba(0,0,0,.4)}
.you{width:14px;height:14px;border-radius:50%;background:#2E6BE6;border:3px solid #fff;box-shadow:0 0 0 1px #2E6BE6,0 0 0 10px rgba(46,107,230,.16)}
.leaflet-popup-content{font:400 13px/1.5 'Manrope';margin:12px 14px}.leaflet-popup-content b{font-weight:600}
.leaflet-popup-content-wrapper{border-radius:0;box-shadow:0 2px 14px rgba(0,0,0,.16)}.leaflet-popup-tip{border-radius:0}
/* список */
.list{padding-top:72px;padding-bottom:40px}
.own{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px}
.oc{position:relative;padding:38px 38px 34px;background:#fff;border:1px solid var(--line);
 box-shadow:0 1px 2px rgba(22,21,20,.04),0 12px 28px -16px rgba(22,21,20,.22),0 30px 60px -30px rgba(22,21,20,.22);
 transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.oc:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(22,21,20,.05),0 18px 34px -16px rgba(22,21,20,.28),0 40px 70px -30px rgba(22,21,20,.26)}
.oc:before{content:"";position:absolute;left:38px;top:0;width:44px;height:2px;background:var(--ink)}
.oc .lg{position:absolute;right:34px;top:30px;height:34px;width:auto}
.oc .lab{color:var(--grey)}.oc h3{font-weight:300;font-size:40px;line-height:1.08;margin:14px 0 14px;color:var(--ink)}
.oc p{color:var(--grey);font-size:15px}.oc .t{color:var(--ink);font-size:16px;font-weight:500;margin-top:4px}
.oc .oa{display:flex;gap:10px;margin-top:28px;flex-wrap:wrap}
.oc .oa a{display:inline-flex;align-items:center;height:48px;padding:0 24px;font-size:10.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--ink);color:var(--ink);background:#fff;transition:background .2s,color .2s}
.oc .oa a:hover{background:var(--soft)}
.oc .oa a:first-child{background:var(--ink);color:#fff}
.oc .oa a:first-child:hover{background:#2b2a28}
.idx{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 20px;margin-top:22px;align-items:start}
.ix{background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(22,21,20,.04),0 10px 22px -16px rgba(22,21,20,.3);transition:box-shadow .3s,border-color .3s,transform .3s}
.ix:hover{border-color:#cfccc6;transform:translateY(-2px);box-shadow:0 2px 4px rgba(22,21,20,.06),0 16px 28px -16px rgba(22,21,20,.36)}
.ix.open{border-color:var(--ink)}
.ix>button{display:flex;align-items:center;width:100%;gap:12px;padding:14px 18px;text-align:left;min-height:56px}
.ix .cn2{font-size:18px;font-weight:400}
.ix .ld{flex:1}
.ix .ct{min-width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:13px;background:var(--soft);color:var(--ink);font-size:12px;font-weight:600}
.ix .ar{color:var(--ink);transition:transform .25s;font-size:14px;width:12px;text-align:center}
.ix.open .ar{transform:rotate(90deg)}
.pn{display:none;padding:0 18px 16px}.ix.open .pn{display:block}
.ps{padding:12px 0 12px 14px;border-left:2px solid var(--ink);margin:4px 0 8px}
.ps b{display:block;font-weight:500;font-size:13.5px}.ps span.ad{display:block;color:var(--grey);font-size:13px;margin-top:1px}
.ps .pa{display:flex;gap:18px;margin-top:9px;font-size:10.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.ps .pa a,.ps .pa button{border-bottom:1px solid currentColor;padding-bottom:1px}
.ps .pa button{font:inherit;font-weight:500;letter-spacing:inherit;text-transform:inherit;color:inherit}
.cg{padding:20px 0;border-top:1px solid var(--line)}
.cg h3{font-weight:500;font-size:16px;margin-bottom:8px}.cg h3.cn{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:6px 0;margin-bottom:4px;min-height:44px}.cg h3.cn i{font-style:normal;color:var(--mute);transition:transform .2s,color .2s}.cg h3.cn:hover i{transform:translateX(4px);color:var(--ink)}.cg h3.cn:hover{text-decoration:underline}
.cg .s{padding:6px 0;font-size:13.5px;color:var(--grey);cursor:pointer}.cg .s b{display:block;font-weight:400;color:var(--ink)}
.cg .s:hover b{text-decoration:underline}
.cg .tag{display:inline-block;margin-left:8px;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);border:1px solid var(--ink);padding:1px 6px;vertical-align:2px}
.cta{background:var(--soft);padding:56px 0;margin-top:40px;text-align:left}
.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:40px}
.cta h2{max-width:560px}.cta p{color:var(--grey);margin-top:8px;max-width:520px}
footer{padding:32px 0;border-top:1px solid var(--line);font-size:12px;color:var(--grey)}footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
@media(max-width:900px){:root{--pad:20px;--hd:60px}
.hd nav{display:none}.hd img{height:26px}
.top{grid-template-columns:1fr;gap:28px;padding-top:40px;padding-bottom:24px}h1{font-size:38px}
.near{grid-template-columns:1fr;gap:32px}.big{font-size:32px}
#map{height:420px}.own{grid-template-columns:1fr;gap:18px}.idx{grid-template-columns:1fr;gap:10px}.oc{padding:30px 22px 26px}.oc:before{left:22px}.oc h3{font-size:32px}.oc .lg{height:28px;right:20px;top:24px}.oc .oa a{flex:1 1 auto;justify-content:center}
.cta .wrap{flex-direction:column;align-items:flex-start}.city input{padding-right:120px}.city button{padding:0 16px}
.act .b1,.act .b2{flex:1 1 100%}.cta .b1{width:100%}.mapw .head{flex-direction:column;gap:4px}.res .wrap{padding-top:28px}}
