:root{--text:#4a5565;--text-h:#0f1115;--bg:#eef0f2;--border:rgba(0,0,0,0.06);--sans:"Inter Variable",system-ui,"Segoe UI",Roboto,sans-serif}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;font-family:var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@supports (padding:env(safe-area-inset-bottom)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}a{color:inherit}@media (max-width:768px){body,html{overflow-x:hidden}}[class^=ymaps-][class*=placemark]{overflow:visible!important}.map-sport{position:relative;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:max-content;min-width:40px;max-width:40px;height:40px;padding:0;overflow:hidden;border-radius:999px;background:#50b848;border:2px solid #ffffff;box-shadow:0 2px 8px rgba(16,24,40,.22);color:#ffffff;cursor:pointer;transform:translate(-50%,-50%);transition:max-width .32s cubic-bezier(.32,.72,0,1),padding .32s cubic-bezier(.32,.72,0,1)}.map-sport--active{box-shadow:0 0 0 3px rgba(80,184,72,.45),0 2px 8px rgba(16,24,40,.22)}.map-sport--partner{width:58px;min-width:58px;max-width:58px;height:91px;overflow:visible;background:none;border:0;border-radius:0;box-shadow:none;transform:translate(-50%,-92%)}.map-sport--partner .map-sport__icon{position:relative;width:58px;height:91px;flex:0 0 58px;overflow:visible}.map-sport--partner .map-sport__name{display:none}.map-sport--partner.map-sport--active{box-shadow:none}.map-sport__mascot,.map-sport__mascot img{position:relative;display:block;width:58px;height:91px}.map-sport__mascot img{z-index:1;object-fit:contain;object-position:center bottom;pointer-events:none}.map-sport__mascot-stroke{position:absolute;z-index:0;inset:-8px;background:conic-gradient(from var(--mascot-angle,0deg),#b6ff4a 0deg,#fff36a 80deg,#ff8a1a 160deg,#3dff6a 240deg,#ffe14d 310deg,#b6ff4a 1turn);-webkit-mask-image:url(/clubs/rostov-don-mascot.png);mask-image:url(/clubs/rostov-don-mascot.png);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;transform:scale(1.09);transform-origin:center;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 4px #ffe14d);animation:partner-mascot-spin 1.2s linear infinite,partner-mascot-glow .9s ease-in-out infinite}@property --mascot-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes partner-mascot-spin{to{--mascot-angle:360deg}}@keyframes partner-mascot-glow{0%,to{filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 5px #7cff3b) drop-shadow(0 0 10px #ffe14d);transform:scale(1.08)}50%{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 8px #ff8a1a) drop-shadow(0 0 14px #3dff6a);transform:scale(1.14)}}@media (prefers-reduced-motion:reduce){.map-sport__mascot-stroke{animation:none;transform:scale(1.13)}}.map-sport__icon{display:flex;flex:0 0 22px;width:22px;height:22px;overflow:hidden;pointer-events:none;transition:flex-basis .32s cubic-bezier(.32,.72,0,1),width .32s cubic-bezier(.32,.72,0,1),opacity .18s ease}.map-sport__icon svg{display:block;width:22px;height:22px;flex-shrink:0}.map-sport__name{min-width:0;max-width:0;overflow:hidden;opacity:0;color:#ffffff;font-family:var(--sans);font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;transition:max-width .32s cubic-bezier(.32,.72,0,1),opacity .2s ease}@media (min-width:769px) and (hover:hover) and (pointer:fine){.map-sport--hover:not(.map-sport--partner){max-width:320px;padding:0 14px}.map-sport--hover:not(.map-sport--partner) .map-sport__icon{flex-basis:0;width:0;opacity:0}.map-sport--hover:not(.map-sport--partner) .map-sport__name{max-width:280px;opacity:1;transition:max-width .32s cubic-bezier(.32,.72,0,1),opacity .22s ease .08s}}.map-cluster{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:52px;padding:0 14px;border-radius:999px;background:#ffffff;color:#50b848;font-family:var(--sans);font-size:18px;font-weight:700;line-height:1;white-space:nowrap;box-shadow:0 3px 12px rgba(16,24,40,.24);border:3px solid #50b848;cursor:pointer;transform:translate(-50%,-50%)}.map-cluster--active{box-shadow:0 0 0 3px rgba(80,184,72,.45),0 3px 12px rgba(16,24,40,.24)}.map-user-dot{width:18px;height:18px;border-radius:50%;background:#50b848;border:3px solid #ffffff;box-shadow:0 0 0 6px rgba(255,225,74,.55),0 2px 8px rgba(16,24,40,.22);transform:translate(-50%,-50%)}