@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(data:font/woff2;base64,d09GMgABAAAAAAgUAAsAAAAAD3wAAAfGAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHCoGVgCBYgqYFJNnATYCJANoCzYABCAFBgcgG1AMUZRvUgXgiwTeNOnKQ6xMDw8qAp3/FSWTD4+b9n4QLWl76eilRlVlFuYOU1PozDQzTQMCWDXtf2B//f0fEC9yUmdKLUtx0Y6LEMCtwFPX9gxJfit57LBKq7RSHgn9v3NpmyEpZDchiaT5l/bukmZE1BFbQKFnDFA6AFR6Et2en43hyFgFcaAL9/F3IACU8IAXqLSMvDJoOrXs1QW2EAOAIGBqTcgXMgUSJXcW4bDEzMXzK/7HiNUpSETIFy/i0tsgiRd/PpZZCAHkLDIAEARKcSSizMiIbC/G+Vw/6MbXV/MSXsZb8Da8lg/iY/hqvjvfm+/Hz+S38Kcu+6j5mPax6uOwj3s/HwPx4hIRUYcpeWdLa4D+RX+ir9HX6f30PHomPYUeTNfTsQAt01zQHNKM0+Sr80DgB/DwgGxDolYDLWSWROqp8gE2ozDPYED03Vq8PXGHzAhFIibWGIUkUgOTJkah2pHswCLCjXPeM66+QRHDsgzz/vWrN64+um0/e3YjlNhXnxpWkoNP8Sh/5dELI+p7itpJzS3XFxRxSUxHMJ+nRhPGYR4QaQVPNWMx2csQP0+FwTWEVKEIEyDSxUqDc6TjVHbB87Qb48dacOKd1sObO3Roi20MkMFNvj2cIQfsiB7zwwBlqvYQYjt3UoEnrLtSYtwBchfo1AJ4N4SGZzWENNFJ2/e1+lX7ffIRh3XRbj4LmAIZDLGognSed5KO50v6/PToo/BH+9ByuyGp9ZWoVrCTE3J6ysOQnp0VPJU8NcZctp2UZkoIJwL6A+LlVNkUEvP37clNXCT/v6zJr1pnV+jxUavAOkgn76ZdnkskxlxDnyqEmKjgs2SGzdH5oqfA3Bb2anE0HVGZCLwJjMrqIMIEsVzA95Lt8LyvqQq6zk5iscR4ro6T07grue13h2e/AYEQUy1ggPQY+Iitmu175u2umOkIYcUlH0EuS2pV8bDIwOWFyIRaOLOEMSMUKfcsfd/O2L4mSMOQn54CDamy8wkG5/N0js2Q2QC/h77S+jFw8v2nUvfZ0pUScz+kKwlVrUOKHrRtlds/2JTfxEgYLFX+LI/FWmJCWm+ltqttjXknYIoXZovZAV4woXmw3W53Qzq35TRUXoCYl9CZB8ys2iIlYQihR8QjxJcz6JlFb9Zrw9pV/1awKs/W1SNwHFGutFyJU9lq+65sr456vq6uCjWeamvxUx6NJpoMt1teTBDnBNJ40gQup/H5/jI1nMPnx501G5vPlSt3jItQ6uLtyhY/LBq7YlLj6NEcw7XltHHSqhjPx4NN5hAVJhVZW5xKxlXR1JqOXSIbI/PiWnlB0sWgAkKgjtnPLEk4nbNqS303egjdrX5LFbN/9HLnb11Tun5LGcp5t9Asemd8puMUppGuQ1xHmhRx0naSSlEbMVPiEGT7McLCxULHZSTMbxbx0TbIoYQRtxFVStq1tcoz0gaNMS8YTl01VvZZzZJWHe7ORFMSpvthFW2Jns4KG+WrVnItuFS9Td+uXT986GujT53UPdz1LXA+pbmZY7hyLoibRzQiLU+Ar6VnIOxO7Z6S0n0Ug5w8SltPUV+ZmCpdI+EkQfwdxv0NUbjudJ0KYXFGr8i0hmh3h+T1Q3pcGeMaLfGbena6S5SJ9JhBPC+iZYaiWdYPrWcVGT4snqxUTvbO/m+dB61PWCEbLa6WiBVBKiS1g8FklxaReFNbBpq0p+QqrYdWJT+lBZS+l9RR7ZT3lDreo12U+hJemC5uazPcnj3n1bMLI3cvoKWBxzH3cM64KlWVbDM2NHTsDgtv1SttrmXeAfPxuexc84n9CSAobjZqcitlLwkn6cYTs2TaC+8xWRq6f26IPORoFVoaUZo2/qRRnJ9dlX3b5fTfi1O4TnJVhrw2u+FMlUiZAobczwE1aeVseg2g+2hGA+37hSbpOfaaUOJjffjMscGZP1rzurDQysrQdgzEmjAd3/qHoW9KY3tW/cH5fQr91+DtKr22+3ePwK6eCWVb19bUrlNlfGrVNbCHQavVy2/Jh3RMaBcf3y6h4xD5wlb/jSB6c5tdgzUXNYN3be6wyx7fTalOWu2RfCsv86ZCV9sQb5cprp9G3bK2OqxRjS5TWE6cZ82KX98RRN479cbi9W46e8cal+8fQFtcWGxk9jN8naIktpyVK+8pg/hHkftm+/hk+/LM/jAfVbw3JBUVGYsKkpZLOMmFsJX6p7QwnWbghTuD2MSl6E2X6u4UuPZN7+eWD2pj0vCpTPMT2Zj2nO1Uu6O9Vw5LpSUrex+1QyCVjJE9afYAL16tXo9Pptatx7Bjy+ewYxQ8OswpHzumZRM8MLkuZTPYpRmS6iAnq8C8QCu3K/FuPsx+pomfwcct/gp6CoYEiCQRL0z5L0lLTEjuJ5xAUcT436M9MWBdsp+kA8JJ8oPs8eE9oAhZIvxlplLJEUBW4DcxC4QDNmWzMA8pKVmBQcpNJkt87E3ESC5XUSCH69LI6ATaC76GBD2kS+W8g5Rf3UEA0pJ0szMTcxkIwDe0m5Q1tZGO+ypXUZiqbqyPSJa3Fr7YR40lZwHI4ZJPgH+Mc0EZF+GrbtcTxrpWJQkCkXEJGdxM+DcTwMDH4W8wFwT6KzLBb5qxjMS1OE2SWdN9MFf3YfENujkJiKsUIsQvAQAAAA==) format("woff2")}
@font-face{font-display:swap;font-family: Ubuntu; font-style: italic; font-weight: 400;  src:url("../fonts/bc53ecb709ff605b.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116}
@font-face{font-display:swap;font-family: Ubuntu; font-style: italic; font-weight: 400;  src:url("../fonts/1dcce4da73c22ee2.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-display:swap;font-family: Ubuntu; font-style: normal; font-weight: 300;  src:url("../fonts/737d2b0c499ab179.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116}
@font-face{font-display:swap;font-family: Ubuntu; font-style: normal; font-weight: 300;  src:url("../fonts/5500db0c53b58932.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-display:swap;font-family: Ubuntu; font-style: normal; font-weight: 400;  src:url("../fonts/e5df0005c0aa170e.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116}
@font-face{font-display:swap;font-family: Ubuntu; font-style: normal; font-weight: 400;  src:url("../fonts/814cf3dbea771efa.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-display:swap;font-family: Ubuntu; font-style: normal; font-weight: 500;  src:url("../fonts/588dfa0223514523.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116}
@font-face{font-display:swap;font-family: Ubuntu; font-style: normal; font-weight: 500;  src:url("../fonts/28fcde6a05993687.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-display:swap;font-family: Ubuntu; font-style: normal; font-weight: 700;  src:url("../fonts/25a04c740b0abca0.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116}
@font-face{font-display:swap;font-family: Ubuntu; font-style: normal; font-weight: 700;  src:url("../fonts/07e1d7b8b873cac0.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
html{ box-sizing: border-box; }
*, ::after, ::before{ box-sizing: inherit; }
.container{ width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }
@media (min-width: 576px){.container{ max-width: 540px; }}
@media (min-width: 768px){.container{ max-width: 720px; }}
@media (min-width: 992px){.container{ max-width: 960px; }}
@media (min-width: 1200px){.container{ max-width: 1140px; }}
@media (min-width: 576px){.container{ max-width: 540px; }}
@media (min-width: 768px){.container{ max-width: 720px; }}
@media (min-width: 992px){.container{ max-width: 960px; }}
@media (min-width: 1200px){.container{ max-width: 1140px; }}
.row{ display: flex; flex-wrap: wrap; margin-right: -15px; margin-left: -15px; }
.no-gutters{ margin-right: 0px; margin-left: 0px; }
.no-gutters > [class*="col-"]{ padding-right: 0px; padding-left: 0px; }
.col-12, .col-6, .col-lg-4, .col-lg-5, .col-lg-7, .col-md-12, .col-md-3, .col-md-4, .col-md-6{ position: relative; width: 100%; padding-right: 15px; padding-left: 15px; }
.col-6{ flex: 0 0 50%; max-width: 50%; }
.col-12{ flex: 0 0 100%; max-width: 100%; }
@media (min-width: 768px){.col-md-3{ flex: 0 0 25%; max-width: 25%; }
.col-md-4{ flex: 0 0 33.3333%; max-width: 33.3333%; }
.col-md-6{ flex: 0 0 50%; max-width: 50%; }
.col-md-12{ flex: 0 0 100%; max-width: 100%; }
.order-md-1{ order: 1; }
.order-md-2{ order: 2; }
.order-md-3{ order: 3; }}
@media (min-width: 992px){.col-lg-4{ flex: 0 0 33.3333%; max-width: 33.3333%; }
.col-lg-5{ flex: 0 0 41.6667%; max-width: 41.6667%; }
.col-lg-7{ flex: 0 0 58.3333%; max-width: 58.3333%; }
.order-lg-1{ order: 1; }
.order-lg-2{ order: 2; }
.order-lg-3{ order: 3; }}
.d-none{ display: none !important; }
.d-block{ display: block !important; }
.d-flex{ display: flex !important; }
@media (min-width: 768px){.d-md-none{ display: none !important; }
.d-md-inline{ display: inline !important; }
.d-md-inline-block{ display: inline-block !important; }
.d-md-block{ display: block !important; }}
@media (min-width: 1200px){.d-xl-none{ display: none !important; }
.d-xl-inline{ display: inline !important; }}
.justify-content-end{ justify-content: flex-end !important; }
.justify-content-between{ justify-content: space-between !important; }
.m-n1{ margin: -0.25rem !important; }
.mt-n1, .my-n1{ margin-top: -0.25rem !important; }
.mr-n1, .mx-n1{ margin-right: -0.25rem !important; }
.mb-n1, .my-n1{ margin-bottom: -0.25rem !important; }
.ml-n1, .mx-n1{ margin-left: -0.25rem !important; }
.m-n2{ margin: -0.5rem !important; }
.mt-n2, .my-n2{ margin-top: -0.5rem !important; }
.mr-n2, .mx-n2{ margin-right: -0.5rem !important; }
.mb-n2, .my-n2{ margin-bottom: -0.5rem !important; }
.ml-n2, .mx-n2{ margin-left: -0.5rem !important; }
.m-n3{ margin: -1rem !important; }
.mt-n3, .my-n3{ margin-top: -1rem !important; }
.mr-n3, .mx-n3{ margin-right: -1rem !important; }
.mb-n3, .my-n3{ margin-bottom: -1rem !important; }
.ml-n3, .mx-n3{ margin-left: -1rem !important; }
.m-n4{ margin: -1.5rem !important; }
.mt-n4, .my-n4{ margin-top: -1.5rem !important; }
.mr-n4, .mx-n4{ margin-right: -1.5rem !important; }
.mb-n4, .my-n4{ margin-bottom: -1.5rem !important; }
.ml-n4, .mx-n4{ margin-left: -1.5rem !important; }
.m-n5{ margin: -3rem !important; }
.mt-n5, .my-n5{ margin-top: -3rem !important; }
.mr-n5, .mx-n5{ margin-right: -3rem !important; }
.mb-n5, .my-n5{ margin-bottom: -3rem !important; }
.ml-n5, .mx-n5{ margin-left: -3rem !important; }
.m-auto{ margin: auto !important; }
.mt-auto, .my-auto{ margin-top: auto !important; }
.mr-auto, .mx-auto{ margin-right: auto !important; }
.mb-auto, .my-auto{ margin-bottom: auto !important; }
.ml-auto, .mx-auto{ margin-left: auto !important; }
@media (min-width: 576px){.m-sm-0{ margin: 0px !important; }
.mt-sm-0, .my-sm-0{ margin-top: 0px !important; }
.mr-sm-0, .mx-sm-0{ margin-right: 0px !important; }
.mb-sm-0, .my-sm-0{ margin-bottom: 0px !important; }
.ml-sm-0, .mx-sm-0{ margin-left: 0px !important; }
.m-sm-1{ margin: 0.25rem !important; }
.mt-sm-1, .my-sm-1{ margin-top: 0.25rem !important; }
.mr-sm-1, .mx-sm-1{ margin-right: 0.25rem !important; }
.mb-sm-1, .my-sm-1{ margin-bottom: 0.25rem !important; }
.ml-sm-1, .mx-sm-1{ margin-left: 0.25rem !important; }
.m-sm-2{ margin: 0.5rem !important; }
.mt-sm-2, .my-sm-2{ margin-top: 0.5rem !important; }
.mr-sm-2, .mx-sm-2{ margin-right: 0.5rem !important; }
.mb-sm-2, .my-sm-2{ margin-bottom: 0.5rem !important; }
.ml-sm-2, .mx-sm-2{ margin-left: 0.5rem !important; }
.m-sm-3{ margin: 1rem !important; }
.mt-sm-3, .my-sm-3{ margin-top: 1rem !important; }
.mr-sm-3, .mx-sm-3{ margin-right: 1rem !important; }
.mb-sm-3, .my-sm-3{ margin-bottom: 1rem !important; }
.ml-sm-3, .mx-sm-3{ margin-left: 1rem !important; }
.m-sm-4{ margin: 1.5rem !important; }
.mt-sm-4, .my-sm-4{ margin-top: 1.5rem !important; }
.mr-sm-4, .mx-sm-4{ margin-right: 1.5rem !important; }
.mb-sm-4, .my-sm-4{ margin-bottom: 1.5rem !important; }
.ml-sm-4, .mx-sm-4{ margin-left: 1.5rem !important; }
.m-sm-5{ margin: 3rem !important; }
.mt-sm-5, .my-sm-5{ margin-top: 3rem !important; }
.mr-sm-5, .mx-sm-5{ margin-right: 3rem !important; }
.mb-sm-5, .my-sm-5{ margin-bottom: 3rem !important; }
.ml-sm-5, .mx-sm-5{ margin-left: 3rem !important; }
.p-sm-0{ padding: 0px !important; }
.pt-sm-0, .py-sm-0{ padding-top: 0px !important; }
.pr-sm-0, .px-sm-0{ padding-right: 0px !important; }
.pb-sm-0, .py-sm-0{ padding-bottom: 0px !important; }
.pl-sm-0, .px-sm-0{ padding-left: 0px !important; }
.p-sm-1{ padding: 0.25rem !important; }
.pt-sm-1, .py-sm-1{ padding-top: 0.25rem !important; }
.pr-sm-1, .px-sm-1{ padding-right: 0.25rem !important; }
.pb-sm-1, .py-sm-1{ padding-bottom: 0.25rem !important; }
.pl-sm-1, .px-sm-1{ padding-left: 0.25rem !important; }
.p-sm-2{ padding: 0.5rem !important; }
.pt-sm-2, .py-sm-2{ padding-top: 0.5rem !important; }
.pr-sm-2, .px-sm-2{ padding-right: 0.5rem !important; }
.pb-sm-2, .py-sm-2{ padding-bottom: 0.5rem !important; }
.pl-sm-2, .px-sm-2{ padding-left: 0.5rem !important; }
.p-sm-3{ padding: 1rem !important; }
.pt-sm-3, .py-sm-3{ padding-top: 1rem !important; }
.pr-sm-3, .px-sm-3{ padding-right: 1rem !important; }
.pb-sm-3, .py-sm-3{ padding-bottom: 1rem !important; }
.pl-sm-3, .px-sm-3{ padding-left: 1rem !important; }
.p-sm-4{ padding: 1.5rem !important; }
.pt-sm-4, .py-sm-4{ padding-top: 1.5rem !important; }
.pr-sm-4, .px-sm-4{ padding-right: 1.5rem !important; }
.pb-sm-4, .py-sm-4{ padding-bottom: 1.5rem !important; }
.pl-sm-4, .px-sm-4{ padding-left: 1.5rem !important; }
.p-sm-5{ padding: 3rem !important; }
.pt-sm-5, .py-sm-5{ padding-top: 3rem !important; }
.pr-sm-5, .px-sm-5{ padding-right: 3rem !important; }
.pb-sm-5, .py-sm-5{ padding-bottom: 3rem !important; }
.pl-sm-5, .px-sm-5{ padding-left: 3rem !important; }
.m-sm-n1{ margin: -0.25rem !important; }
.mt-sm-n1, .my-sm-n1{ margin-top: -0.25rem !important; }
.mr-sm-n1, .mx-sm-n1{ margin-right: -0.25rem !important; }
.mb-sm-n1, .my-sm-n1{ margin-bottom: -0.25rem !important; }
.ml-sm-n1, .mx-sm-n1{ margin-left: -0.25rem !important; }
.m-sm-n2{ margin: -0.5rem !important; }
.mt-sm-n2, .my-sm-n2{ margin-top: -0.5rem !important; }
.mr-sm-n2, .mx-sm-n2{ margin-right: -0.5rem !important; }
.mb-sm-n2, .my-sm-n2{ margin-bottom: -0.5rem !important; }
.ml-sm-n2, .mx-sm-n2{ margin-left: -0.5rem !important; }
.m-sm-n3{ margin: -1rem !important; }
.mt-sm-n3, .my-sm-n3{ margin-top: -1rem !important; }
.mr-sm-n3, .mx-sm-n3{ margin-right: -1rem !important; }
.mb-sm-n3, .my-sm-n3{ margin-bottom: -1rem !important; }
.ml-sm-n3, .mx-sm-n3{ margin-left: -1rem !important; }
.m-sm-n4{ margin: -1.5rem !important; }
.mt-sm-n4, .my-sm-n4{ margin-top: -1.5rem !important; }
.mr-sm-n4, .mx-sm-n4{ margin-right: -1.5rem !important; }
.mb-sm-n4, .my-sm-n4{ margin-bottom: -1.5rem !important; }
.ml-sm-n4, .mx-sm-n4{ margin-left: -1.5rem !important; }
.m-sm-n5{ margin: -3rem !important; }
.mt-sm-n5, .my-sm-n5{ margin-top: -3rem !important; }
.mr-sm-n5, .mx-sm-n5{ margin-right: -3rem !important; }
.mb-sm-n5, .my-sm-n5{ margin-bottom: -3rem !important; }
.ml-sm-n5, .mx-sm-n5{ margin-left: -3rem !important; }
.m-sm-auto{ margin: auto !important; }
.mt-sm-auto, .my-sm-auto{ margin-top: auto !important; }
.mr-sm-auto, .mx-sm-auto{ margin-right: auto !important; }
.mb-sm-auto, .my-sm-auto{ margin-bottom: auto !important; }
.ml-sm-auto, .mx-sm-auto{ margin-left: auto !important; }}
@media (min-width: 768px){.m-md-0{ margin: 0px !important; }
.mt-md-0, .my-md-0{ margin-top: 0px !important; }
.mr-md-0, .mx-md-0{ margin-right: 0px !important; }
.mb-md-0, .my-md-0{ margin-bottom: 0px !important; }
.ml-md-0, .mx-md-0{ margin-left: 0px !important; }
.m-md-1{ margin: 0.25rem !important; }
.mt-md-1, .my-md-1{ margin-top: 0.25rem !important; }
.mr-md-1, .mx-md-1{ margin-right: 0.25rem !important; }
.mb-md-1, .my-md-1{ margin-bottom: 0.25rem !important; }
.ml-md-1, .mx-md-1{ margin-left: 0.25rem !important; }
.m-md-2{ margin: 0.5rem !important; }
.mt-md-2, .my-md-2{ margin-top: 0.5rem !important; }
.mr-md-2, .mx-md-2{ margin-right: 0.5rem !important; }
.mb-md-2, .my-md-2{ margin-bottom: 0.5rem !important; }
.ml-md-2, .mx-md-2{ margin-left: 0.5rem !important; }
.m-md-3{ margin: 1rem !important; }
.mt-md-3, .my-md-3{ margin-top: 1rem !important; }
.mr-md-3, .mx-md-3{ margin-right: 1rem !important; }
.mb-md-3, .my-md-3{ margin-bottom: 1rem !important; }
.ml-md-3, .mx-md-3{ margin-left: 1rem !important; }
.m-md-4{ margin: 1.5rem !important; }
.mt-md-4, .my-md-4{ margin-top: 1.5rem !important; }
.mr-md-4, .mx-md-4{ margin-right: 1.5rem !important; }
.mb-md-4, .my-md-4{ margin-bottom: 1.5rem !important; }
.ml-md-4, .mx-md-4{ margin-left: 1.5rem !important; }
.m-md-5{ margin: 3rem !important; }
.mt-md-5, .my-md-5{ margin-top: 3rem !important; }
.mr-md-5, .mx-md-5{ margin-right: 3rem !important; }
.mb-md-5, .my-md-5{ margin-bottom: 3rem !important; }
.ml-md-5, .mx-md-5{ margin-left: 3rem !important; }
.p-md-0{ padding: 0px !important; }
.pt-md-0, .py-md-0{ padding-top: 0px !important; }
.pr-md-0, .px-md-0{ padding-right: 0px !important; }
.pb-md-0, .py-md-0{ padding-bottom: 0px !important; }
.pl-md-0, .px-md-0{ padding-left: 0px !important; }
.p-md-1{ padding: 0.25rem !important; }
.pt-md-1, .py-md-1{ padding-top: 0.25rem !important; }
.pr-md-1, .px-md-1{ padding-right: 0.25rem !important; }
.pb-md-1, .py-md-1{ padding-bottom: 0.25rem !important; }
.pl-md-1, .px-md-1{ padding-left: 0.25rem !important; }
.p-md-2{ padding: 0.5rem !important; }
.pt-md-2, .py-md-2{ padding-top: 0.5rem !important; }
.pr-md-2, .px-md-2{ padding-right: 0.5rem !important; }
.pb-md-2, .py-md-2{ padding-bottom: 0.5rem !important; }
.pl-md-2, .px-md-2{ padding-left: 0.5rem !important; }
.p-md-3{ padding: 1rem !important; }
.pt-md-3, .py-md-3{ padding-top: 1rem !important; }
.pr-md-3, .px-md-3{ padding-right: 1rem !important; }
.pb-md-3, .py-md-3{ padding-bottom: 1rem !important; }
.pl-md-3, .px-md-3{ padding-left: 1rem !important; }
.p-md-4{ padding: 1.5rem !important; }
.pt-md-4, .py-md-4{ padding-top: 1.5rem !important; }
.pr-md-4, .px-md-4{ padding-right: 1.5rem !important; }
.pb-md-4, .py-md-4{ padding-bottom: 1.5rem !important; }
.pl-md-4, .px-md-4{ padding-left: 1.5rem !important; }
.p-md-5{ padding: 3rem !important; }
.pt-md-5, .py-md-5{ padding-top: 3rem !important; }
.pr-md-5, .px-md-5{ padding-right: 3rem !important; }
.pb-md-5, .py-md-5{ padding-bottom: 3rem !important; }
.pl-md-5, .px-md-5{ padding-left: 3rem !important; }
.m-md-n1{ margin: -0.25rem !important; }
.mt-md-n1, .my-md-n1{ margin-top: -0.25rem !important; }
.mr-md-n1, .mx-md-n1{ margin-right: -0.25rem !important; }
.mb-md-n1, .my-md-n1{ margin-bottom: -0.25rem !important; }
.ml-md-n1, .mx-md-n1{ margin-left: -0.25rem !important; }
.m-md-n2{ margin: -0.5rem !important; }
.mt-md-n2, .my-md-n2{ margin-top: -0.5rem !important; }
.mr-md-n2, .mx-md-n2{ margin-right: -0.5rem !important; }
.mb-md-n2, .my-md-n2{ margin-bottom: -0.5rem !important; }
.ml-md-n2, .mx-md-n2{ margin-left: -0.5rem !important; }
.m-md-n3{ margin: -1rem !important; }
.mt-md-n3, .my-md-n3{ margin-top: -1rem !important; }
.mr-md-n3, .mx-md-n3{ margin-right: -1rem !important; }
.mb-md-n3, .my-md-n3{ margin-bottom: -1rem !important; }
.ml-md-n3, .mx-md-n3{ margin-left: -1rem !important; }
.m-md-n4{ margin: -1.5rem !important; }
.mt-md-n4, .my-md-n4{ margin-top: -1.5rem !important; }
.mr-md-n4, .mx-md-n4{ margin-right: -1.5rem !important; }
.mb-md-n4, .my-md-n4{ margin-bottom: -1.5rem !important; }
.ml-md-n4, .mx-md-n4{ margin-left: -1.5rem !important; }
.m-md-n5{ margin: -3rem !important; }
.mt-md-n5, .my-md-n5{ margin-top: -3rem !important; }
.mr-md-n5, .mx-md-n5{ margin-right: -3rem !important; }
.mb-md-n5, .my-md-n5{ margin-bottom: -3rem !important; }
.ml-md-n5, .mx-md-n5{ margin-left: -3rem !important; }
.m-md-auto{ margin: auto !important; }
.mt-md-auto, .my-md-auto{ margin-top: auto !important; }
.mr-md-auto, .mx-md-auto{ margin-right: auto !important; }
.mb-md-auto, .my-md-auto{ margin-bottom: auto !important; }
.ml-md-auto, .mx-md-auto{ margin-left: auto !important; }}
@media (min-width: 992px){.m-lg-0{ margin: 0px !important; }
.mt-lg-0, .my-lg-0{ margin-top: 0px !important; }
.mr-lg-0, .mx-lg-0{ margin-right: 0px !important; }
.mb-lg-0, .my-lg-0{ margin-bottom: 0px !important; }
.ml-lg-0, .mx-lg-0{ margin-left: 0px !important; }
.m-lg-1{ margin: 0.25rem !important; }
.mt-lg-1, .my-lg-1{ margin-top: 0.25rem !important; }
.mr-lg-1, .mx-lg-1{ margin-right: 0.25rem !important; }
.mb-lg-1, .my-lg-1{ margin-bottom: 0.25rem !important; }
.ml-lg-1, .mx-lg-1{ margin-left: 0.25rem !important; }
.m-lg-2{ margin: 0.5rem !important; }
.mt-lg-2, .my-lg-2{ margin-top: 0.5rem !important; }
.mr-lg-2, .mx-lg-2{ margin-right: 0.5rem !important; }
.mb-lg-2, .my-lg-2{ margin-bottom: 0.5rem !important; }
.ml-lg-2, .mx-lg-2{ margin-left: 0.5rem !important; }
.m-lg-3{ margin: 1rem !important; }
.mt-lg-3, .my-lg-3{ margin-top: 1rem !important; }
.mr-lg-3, .mx-lg-3{ margin-right: 1rem !important; }
.mb-lg-3, .my-lg-3{ margin-bottom: 1rem !important; }
.ml-lg-3, .mx-lg-3{ margin-left: 1rem !important; }
.m-lg-4{ margin: 1.5rem !important; }
.mt-lg-4, .my-lg-4{ margin-top: 1.5rem !important; }
.mr-lg-4, .mx-lg-4{ margin-right: 1.5rem !important; }
.mb-lg-4, .my-lg-4{ margin-bottom: 1.5rem !important; }
.ml-lg-4, .mx-lg-4{ margin-left: 1.5rem !important; }
.m-lg-5{ margin: 3rem !important; }
.mt-lg-5, .my-lg-5{ margin-top: 3rem !important; }
.mr-lg-5, .mx-lg-5{ margin-right: 3rem !important; }
.mb-lg-5, .my-lg-5{ margin-bottom: 3rem !important; }
.ml-lg-5, .mx-lg-5{ margin-left: 3rem !important; }
.p-lg-0{ padding: 0px !important; }
.pt-lg-0, .py-lg-0{ padding-top: 0px !important; }
.pr-lg-0, .px-lg-0{ padding-right: 0px !important; }
.pb-lg-0, .py-lg-0{ padding-bottom: 0px !important; }
.pl-lg-0, .px-lg-0{ padding-left: 0px !important; }
.p-lg-1{ padding: 0.25rem !important; }
.pt-lg-1, .py-lg-1{ padding-top: 0.25rem !important; }
.pr-lg-1, .px-lg-1{ padding-right: 0.25rem !important; }
.pb-lg-1, .py-lg-1{ padding-bottom: 0.25rem !important; }
.pl-lg-1, .px-lg-1{ padding-left: 0.25rem !important; }
.p-lg-2{ padding: 0.5rem !important; }
.pt-lg-2, .py-lg-2{ padding-top: 0.5rem !important; }
.pr-lg-2, .px-lg-2{ padding-right: 0.5rem !important; }
.pb-lg-2, .py-lg-2{ padding-bottom: 0.5rem !important; }
.pl-lg-2, .px-lg-2{ padding-left: 0.5rem !important; }
.p-lg-3{ padding: 1rem !important; }
.pt-lg-3, .py-lg-3{ padding-top: 1rem !important; }
.pr-lg-3, .px-lg-3{ padding-right: 1rem !important; }
.pb-lg-3, .py-lg-3{ padding-bottom: 1rem !important; }
.pl-lg-3, .px-lg-3{ padding-left: 1rem !important; }
.p-lg-4{ padding: 1.5rem !important; }
.pt-lg-4, .py-lg-4{ padding-top: 1.5rem !important; }
.pr-lg-4, .px-lg-4{ padding-right: 1.5rem !important; }
.pb-lg-4, .py-lg-4{ padding-bottom: 1.5rem !important; }
.pl-lg-4, .px-lg-4{ padding-left: 1.5rem !important; }
.p-lg-5{ padding: 3rem !important; }
.pt-lg-5, .py-lg-5{ padding-top: 3rem !important; }
.pr-lg-5, .px-lg-5{ padding-right: 3rem !important; }
.pb-lg-5, .py-lg-5{ padding-bottom: 3rem !important; }
.pl-lg-5, .px-lg-5{ padding-left: 3rem !important; }
.m-lg-n1{ margin: -0.25rem !important; }
.mt-lg-n1, .my-lg-n1{ margin-top: -0.25rem !important; }
.mr-lg-n1, .mx-lg-n1{ margin-right: -0.25rem !important; }
.mb-lg-n1, .my-lg-n1{ margin-bottom: -0.25rem !important; }
.ml-lg-n1, .mx-lg-n1{ margin-left: -0.25rem !important; }
.m-lg-n2{ margin: -0.5rem !important; }
.mt-lg-n2, .my-lg-n2{ margin-top: -0.5rem !important; }
.mr-lg-n2, .mx-lg-n2{ margin-right: -0.5rem !important; }
.mb-lg-n2, .my-lg-n2{ margin-bottom: -0.5rem !important; }
.ml-lg-n2, .mx-lg-n2{ margin-left: -0.5rem !important; }
.m-lg-n3{ margin: -1rem !important; }
.mt-lg-n3, .my-lg-n3{ margin-top: -1rem !important; }
.mr-lg-n3, .mx-lg-n3{ margin-right: -1rem !important; }
.mb-lg-n3, .my-lg-n3{ margin-bottom: -1rem !important; }
.ml-lg-n3, .mx-lg-n3{ margin-left: -1rem !important; }
.m-lg-n4{ margin: -1.5rem !important; }
.mt-lg-n4, .my-lg-n4{ margin-top: -1.5rem !important; }
.mr-lg-n4, .mx-lg-n4{ margin-right: -1.5rem !important; }
.mb-lg-n4, .my-lg-n4{ margin-bottom: -1.5rem !important; }
.ml-lg-n4, .mx-lg-n4{ margin-left: -1.5rem !important; }
.m-lg-n5{ margin: -3rem !important; }
.mt-lg-n5, .my-lg-n5{ margin-top: -3rem !important; }
.mr-lg-n5, .mx-lg-n5{ margin-right: -3rem !important; }
.mb-lg-n5, .my-lg-n5{ margin-bottom: -3rem !important; }
.ml-lg-n5, .mx-lg-n5{ margin-left: -3rem !important; }
.m-lg-auto{ margin: auto !important; }
.mt-lg-auto, .my-lg-auto{ margin-top: auto !important; }
.mr-lg-auto, .mx-lg-auto{ margin-right: auto !important; }
.mb-lg-auto, .my-lg-auto{ margin-bottom: auto !important; }
.ml-lg-auto, .mx-lg-auto{ margin-left: auto !important; }}
@media (min-width: 1200px){.m-xl-0{ margin: 0px !important; }
.mt-xl-0, .my-xl-0{ margin-top: 0px !important; }
.mr-xl-0, .mx-xl-0{ margin-right: 0px !important; }
.mb-xl-0, .my-xl-0{ margin-bottom: 0px !important; }
.ml-xl-0, .mx-xl-0{ margin-left: 0px !important; }
.m-xl-1{ margin: 0.25rem !important; }
.mt-xl-1, .my-xl-1{ margin-top: 0.25rem !important; }
.mr-xl-1, .mx-xl-1{ margin-right: 0.25rem !important; }
.mb-xl-1, .my-xl-1{ margin-bottom: 0.25rem !important; }
.ml-xl-1, .mx-xl-1{ margin-left: 0.25rem !important; }
.m-xl-2{ margin: 0.5rem !important; }
.mt-xl-2, .my-xl-2{ margin-top: 0.5rem !important; }
.mr-xl-2, .mx-xl-2{ margin-right: 0.5rem !important; }
.mb-xl-2, .my-xl-2{ margin-bottom: 0.5rem !important; }
.ml-xl-2, .mx-xl-2{ margin-left: 0.5rem !important; }
.m-xl-3{ margin: 1rem !important; }
.mt-xl-3, .my-xl-3{ margin-top: 1rem !important; }
.mr-xl-3, .mx-xl-3{ margin-right: 1rem !important; }
.mb-xl-3, .my-xl-3{ margin-bottom: 1rem !important; }
.ml-xl-3, .mx-xl-3{ margin-left: 1rem !important; }
.m-xl-4{ margin: 1.5rem !important; }
.mt-xl-4, .my-xl-4{ margin-top: 1.5rem !important; }
.mr-xl-4, .mx-xl-4{ margin-right: 1.5rem !important; }
.mb-xl-4, .my-xl-4{ margin-bottom: 1.5rem !important; }
.ml-xl-4, .mx-xl-4{ margin-left: 1.5rem !important; }
.m-xl-5{ margin: 3rem !important; }
.mt-xl-5, .my-xl-5{ margin-top: 3rem !important; }
.mr-xl-5, .mx-xl-5{ margin-right: 3rem !important; }
.mb-xl-5, .my-xl-5{ margin-bottom: 3rem !important; }
.ml-xl-5, .mx-xl-5{ margin-left: 3rem !important; }
.p-xl-0{ padding: 0px !important; }
.pt-xl-0, .py-xl-0{ padding-top: 0px !important; }
.pr-xl-0, .px-xl-0{ padding-right: 0px !important; }
.pb-xl-0, .py-xl-0{ padding-bottom: 0px !important; }
.pl-xl-0, .px-xl-0{ padding-left: 0px !important; }
.p-xl-1{ padding: 0.25rem !important; }
.pt-xl-1, .py-xl-1{ padding-top: 0.25rem !important; }
.pr-xl-1, .px-xl-1{ padding-right: 0.25rem !important; }
.pb-xl-1, .py-xl-1{ padding-bottom: 0.25rem !important; }
.pl-xl-1, .px-xl-1{ padding-left: 0.25rem !important; }
.p-xl-2{ padding: 0.5rem !important; }
.pt-xl-2, .py-xl-2{ padding-top: 0.5rem !important; }
.pr-xl-2, .px-xl-2{ padding-right: 0.5rem !important; }
.pb-xl-2, .py-xl-2{ padding-bottom: 0.5rem !important; }
.pl-xl-2, .px-xl-2{ padding-left: 0.5rem !important; }
.p-xl-3{ padding: 1rem !important; }
.pt-xl-3, .py-xl-3{ padding-top: 1rem !important; }
.pr-xl-3, .px-xl-3{ padding-right: 1rem !important; }
.pb-xl-3, .py-xl-3{ padding-bottom: 1rem !important; }
.pl-xl-3, .px-xl-3{ padding-left: 1rem !important; }
.p-xl-4{ padding: 1.5rem !important; }
.pt-xl-4, .py-xl-4{ padding-top: 1.5rem !important; }
.pr-xl-4, .px-xl-4{ padding-right: 1.5rem !important; }
.pb-xl-4, .py-xl-4{ padding-bottom: 1.5rem !important; }
.pl-xl-4, .px-xl-4{ padding-left: 1.5rem !important; }
.p-xl-5{ padding: 3rem !important; }
.pt-xl-5, .py-xl-5{ padding-top: 3rem !important; }
.pr-xl-5, .px-xl-5{ padding-right: 3rem !important; }
.pb-xl-5, .py-xl-5{ padding-bottom: 3rem !important; }
.pl-xl-5, .px-xl-5{ padding-left: 3rem !important; }
.m-xl-n1{ margin: -0.25rem !important; }
.mt-xl-n1, .my-xl-n1{ margin-top: -0.25rem !important; }
.mr-xl-n1, .mx-xl-n1{ margin-right: -0.25rem !important; }
.mb-xl-n1, .my-xl-n1{ margin-bottom: -0.25rem !important; }
.ml-xl-n1, .mx-xl-n1{ margin-left: -0.25rem !important; }
.m-xl-n2{ margin: -0.5rem !important; }
.mt-xl-n2, .my-xl-n2{ margin-top: -0.5rem !important; }
.mr-xl-n2, .mx-xl-n2{ margin-right: -0.5rem !important; }
.mb-xl-n2, .my-xl-n2{ margin-bottom: -0.5rem !important; }
.ml-xl-n2, .mx-xl-n2{ margin-left: -0.5rem !important; }
.m-xl-n3{ margin: -1rem !important; }
.mt-xl-n3, .my-xl-n3{ margin-top: -1rem !important; }
.mr-xl-n3, .mx-xl-n3{ margin-right: -1rem !important; }
.mb-xl-n3, .my-xl-n3{ margin-bottom: -1rem !important; }
.ml-xl-n3, .mx-xl-n3{ margin-left: -1rem !important; }
.m-xl-n4{ margin: -1.5rem !important; }
.mt-xl-n4, .my-xl-n4{ margin-top: -1.5rem !important; }
.mr-xl-n4, .mx-xl-n4{ margin-right: -1.5rem !important; }
.mb-xl-n4, .my-xl-n4{ margin-bottom: -1.5rem !important; }
.ml-xl-n4, .mx-xl-n4{ margin-left: -1.5rem !important; }
.m-xl-n5{ margin: -3rem !important; }
.mt-xl-n5, .my-xl-n5{ margin-top: -3rem !important; }
.mr-xl-n5, .mx-xl-n5{ margin-right: -3rem !important; }
.mb-xl-n5, .my-xl-n5{ margin-bottom: -3rem !important; }
.ml-xl-n5, .mx-xl-n5{ margin-left: -3rem !important; }
.m-xl-auto{ margin: auto !important; }
.mt-xl-auto, .my-xl-auto{ margin-top: auto !important; }
.mr-xl-auto, .mx-xl-auto{ margin-right: auto !important; }
.mb-xl-auto, .my-xl-auto{ margin-bottom: auto !important; }
.ml-xl-auto, .mx-xl-auto{ margin-left: auto !important; }}
.fa, .fab, .fal, .far, .fas{ -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; }
@keyframes fa-spin { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(1turn); }
}
.fa-angle-down::before{ content: ""; }
.fa-angle-right::before{ content: ""; }
.fa-bars::before{ content: ""; }
.fa-camera::before{ content: ""; }
.fa-car::before{ content: ""; }
.fa-check::before{ content: ""; }
.fa-chevron-down::before{ content: ""; }
.fa-clock::before{ content: ""; }
.fa-comment::before{ content: ""; }
.fa-exclamation-triangle::before{ content: ""; }
.fa-female::before{ content: ""; }
.fa-filter::before{ content: ""; }
.fa-heart::before{ content: ""; }
.fa-home::before{ content: ""; }
.fa-list::before{ content: ""; }
.fa-map-marker-alt::before{ content: ""; }
.fa-phone::before{ content: ""; }
.fa-play-circle::before{ content: ""; }
.fa-question-circle::before{ content: ""; }
.fa-quote-right::before{ content: ""; }
.fa-ruble-sign::before{ content: ""; }
.fa-star::before{ content: ""; }
.fa-times::before{ content: ""; }
.fa-user::before{ content: ""; }
.fab{ font-family: "Font Awesome 5 Brands"; }
.far{ font-weight: 400; }
.fa, .far, .fas{ font-family: "Font Awesome 5 Free"; }
.fa, .fas{ font-weight: 900; }
body.compensate-for-scrollbar{ overflow: hidden; }
.fancybox-active{ height: auto; }
.fancybox-is-hidden{ left: -9999px; margin: 0px; top: -9999px; visibility: hidden; position: absolute !important; }
.fancybox-container{ backface-visibility: hidden; height: 100%; left: 0px; outline: none; position: fixed; -webkit-tap-highlight-color: transparent; top: 0px; touch-action: manipulation; transform: translateZ(0px); width: 100%; z-index: 99992; }
.fancybox-container *{ box-sizing: border-box; }
.fancybox-bg, .fancybox-inner, .fancybox-outer, .fancybox-stage{ inset: 0px; position: absolute; }
.fancybox-outer{ overflow-y: auto; }
.fancybox-bg{ background: rgb(30, 30, 30); opacity: 0; transition-duration: inherit; transition-property: opacity; transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71); }
.fancybox-is-open .fancybox-bg{ opacity: 0.87; transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1); }
.fancybox-caption, .fancybox-infobar, .fancybox-navigation .fancybox-button, .fancybox-toolbar{ direction: ltr; opacity: 0; position: absolute; transition: opacity 0.25s, visibility linear 0.25s; visibility: hidden; z-index: 99997; }
.fancybox-show-caption .fancybox-caption, .fancybox-show-infobar .fancybox-infobar, .fancybox-show-nav .fancybox-navigation .fancybox-button, .fancybox-show-toolbar .fancybox-toolbar{ opacity: 1; transition: opacity 0.25s, visibility; visibility: visible; }
.fancybox-infobar{ color: rgb(204, 204, 204); font-size: 13px; -webkit-font-smoothing: subpixel-antialiased; height: 44px; left: 0px; line-height: 44px; min-width: 44px; mix-blend-mode: difference; padding: 0px 10px; pointer-events: none; top: 0px; user-select: none; }
.fancybox-toolbar{ right: 0px; top: 0px; }
.fancybox-stage{ direction: ltr; overflow: visible; transform: translateZ(0px); z-index: 99994; }
.fancybox-is-open .fancybox-stage{ overflow: hidden; }
.fancybox-slide{ backface-visibility: hidden; display: none; height: 100%; left: 0px; outline: none; overflow: auto; padding: 44px 44px 0px; position: absolute; text-align: center; top: 0px; transition-property: transform, opacity, -webkit-transform; white-space: normal; width: 100%; z-index: 99994; }
.fancybox-slide::before{ content: ""; display: inline-block; font-size: 0px; height: 100%; vertical-align: middle; width: 0px; }
.fancybox-is-sliding .fancybox-slide, .fancybox-slide--current, .fancybox-slide--next, .fancybox-slide--previous{ display: block; }
.fancybox-slide--next{ z-index: 99995; }
.fancybox-slide--image{ padding: 44px 0px 0px; overflow: visible; }
.fancybox-slide--image::before{ display: none; }
.fancybox-slide--html{ padding: 6px 6px 0px; }
.fancybox-content{ background: rgb(255, 255, 255); display: inline-block; margin: 0px 0px 44px; max-width: 100%; overflow: auto; padding: 44px; position: relative; text-align: left; vertical-align: middle; }
.fancybox-slide--image .fancybox-content{ animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1); backface-visibility: hidden; background: 0px 0px / 100% 100% no-repeat; left: 0px; max-width: none; overflow: visible; padding: 0px; position: absolute; top: 0px; transform-origin: left top; transition-property: transform, opacity, -webkit-transform; user-select: none; z-index: 99995; }
.fancybox-slide--html .fancybox-content{ margin: 0px 0px 6px; }
.fancybox-can-zoomOut .fancybox-content{ cursor: zoom-out; }
.fancybox-can-zoomIn .fancybox-content{ cursor: zoom-in; }
.fancybox-can-pan .fancybox-content, .fancybox-can-swipe .fancybox-content{ cursor: grab; }
.fancybox-is-grabbing .fancybox-content{ cursor: grabbing; }
.fancybox-container [data-selectable="true"]{ cursor: text; }
.fancybox-image, .fancybox-spaceball{ background: 0px 0px; border: 0px; height: 100%; left: 0px; margin: 0px; max-height: none; max-width: none; padding: 0px; position: absolute; top: 0px; user-select: none; width: 100%; }
.fancybox-spaceball{ z-index: 1; }
.fancybox-slide--iframe .fancybox-content, .fancybox-slide--map .fancybox-content, .fancybox-slide--video .fancybox-content{ height: calc(100% - 44px); overflow: visible; padding: 0px; width: 100%; }
.fancybox-slide--video .fancybox-content{ background: rgb(0, 0, 0); }
.fancybox-slide--map .fancybox-content{ background: rgb(229, 227, 223); }
.fancybox-slide--iframe .fancybox-content{ background: rgb(255, 255, 255); }
.fancybox-iframe, .fancybox-video{ background: 0px 0px; border: 0px; display: block; height: 100%; margin: 0px; overflow: hidden; padding: 0px; vertical-align: top; width: 100%; }
.fancybox-error{ background: rgb(255, 255, 255); cursor: default; max-width: 400px; padding: 40px; width: 100%; }
.fancybox-error p{ color: rgb(68, 68, 68); font-size: 16px; line-height: 20px; margin: 0px; padding: 0px; }
.fancybox-button{ background: rgba(30, 30, 30, 0.6); border: 0px; border-radius: 0px; cursor: pointer; display: inline-block; height: 44px; margin: 0px; padding: 10px; transition: color 0.2s; vertical-align: top; width: 44px; }
.fancybox-button, .fancybox-button:link, .fancybox-button:visited{ color: rgb(204, 204, 204); }
.fancybox-button:hover{ color: rgb(255, 255, 255); }
.fancybox-button.disabled, .fancybox-button.disabled:hover, .fancybox-button[disabled], .fancybox-button[disabled]:hover{ color: rgb(136, 136, 136); cursor: default; }
.fancybox-button:focus{ outline: none; }
.fancybox-button.fancybox-focus{ outline: dotted 1px; }
.fancybox-button svg{ display: block; height: 100%; overflow: visible; position: relative; width: 100%; }
.fancybox-button svg path{ fill: currentcolor; stroke-width: 0; }
.fancybox-button--fsenter svg:nth-child(2), .fancybox-button--fsexit svg:nth-child(1), .fancybox-button--pause svg:nth-child(1), .fancybox-button--play svg:nth-child(2){ display: none; }
.fancybox-close-small{ background: 0px 0px; border: 0px; border-radius: 0px; color: rgb(204, 204, 204); cursor: pointer; opacity: 0.8; padding: 8px; position: absolute; right: -12px; top: -44px; z-index: 401; }
.fancybox-close-small:hover{ color: rgb(255, 255, 255); }
.fancybox-slide--html .fancybox-close-small{ color: currentcolor; padding: 10px; right: 0px; top: 0px; }
.fancybox-slide--html .fancybox-close-small:hover{ color: currentcolor; opacity: 1; }
.fancybox-is-scaling .fancybox-close-small, .fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small{ display: none; }
.fancybox-navigation .fancybox-button{ height: 38px; margin: 0px; opacity: 0; padding: 7px; position: absolute; top: calc(50% - 19px); width: 38px; }
.fancybox-show-nav .fancybox-navigation .fancybox-button{ transition: opacity 0.25s, visibility, color 0.25s; }
.fancybox-navigation .fancybox-button::after{ content: ""; height: 100px; left: -26px; position: absolute; top: -31px; width: 70px; }
.fancybox-navigation .fancybox-button--arrow_left{ left: 6px; }
.fancybox-navigation .fancybox-button--arrow_right{ right: 6px; }
.fancybox-caption{ bottom: 0px; color: rgb(255, 255, 255); font-size: 14px; font-weight: 400; left: 0px; line-height: 1.5; padding: 25px 44px; right: 0px; }
.fancybox-caption::before{ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAEtCAQAAABjBcL7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHRJREFUKM+Vk8EOgDAIQ0vj/3+xBw8qIZZueFnIKC90MCAI8DlrkHGeqqGIU6lVigrBtpCWqeRWoHDNqs0F7VNVBVxmHRlvoVqjaYkdnDIaivH2HqZ5+oZj3JUzWB+cOz4G48Bg+tsJ/tqu4dLC/4Xb+0GcF5BwBC0AA53qAAAAAElFTkSuQmCC"); background-repeat: repeat-x; background-size: contain; inset: -25px 0px 0px; content: ""; display: block; pointer-events: none; position: absolute; z-index: -1; }
.fancybox-caption::after{ border-bottom: 1px solid rgba(255, 255, 255, 0.3); content: ""; display: block; left: 44px; position: absolute; right: 44px; top: 0px; }
.fancybox-caption a, .fancybox-caption a:link, .fancybox-caption a:visited{ color: rgb(204, 204, 204); text-decoration: none; }
.fancybox-caption a:hover{ color: rgb(255, 255, 255); text-decoration: underline; }
.fancybox-loading{ animation: 0.8s linear 0s infinite normal none running a; background: 0px 0px; border-width: 6px; border-style: solid; border-color: rgb(255, 255, 255) rgba(99, 99, 99, 0.5) rgba(99, 99, 99, 0.5); border-image: none; border-radius: 100%; height: 60px; left: 50%; margin: -30px 0px 0px -30px; opacity: 0.6; padding: 0px; position: absolute; top: 50%; width: 60px; z-index: 99999; }
@-webkit-keyframes a { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(359deg); }
}
@keyframes a { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(359deg); }
}
.fancybox-animated{ transition-timing-function: cubic-bezier(0, 0, 0.25, 1); }
.fancybox-fx-slide.fancybox-slide--previous{ opacity: 0; transform: translate3d(-100%, 0px, 0px); }
.fancybox-fx-slide.fancybox-slide--next{ opacity: 0; transform: translate3d(100%, 0px, 0px); }
.fancybox-fx-slide.fancybox-slide--current{ opacity: 1; transform: translateZ(0px); }
.fancybox-fx-fade.fancybox-slide--next, .fancybox-fx-fade.fancybox-slide--previous{ opacity: 0; transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
.fancybox-fx-fade.fancybox-slide--current{ opacity: 1; }
.fancybox-fx-zoom-in-out.fancybox-slide--previous{ opacity: 0; transform: scale3d(1.5, 1.5, 1.5); }
.fancybox-fx-zoom-in-out.fancybox-slide--next{ opacity: 0; transform: scale3d(0.5, 0.5, 0.5); }
.fancybox-fx-zoom-in-out.fancybox-slide--current{ opacity: 1; transform: scaleX(1); }
.fancybox-fx-rotate.fancybox-slide--previous{ opacity: 0; transform: rotate(-1turn); }
.fancybox-fx-rotate.fancybox-slide--next{ opacity: 0; transform: rotate(1turn); }
.fancybox-fx-rotate.fancybox-slide--current{ opacity: 1; transform: rotate(0deg); }
.fancybox-fx-circular.fancybox-slide--previous{ opacity: 0; transform: scale3d(0, 0, 0) translate3d(-100%, 0px, 0px); }
.fancybox-fx-circular.fancybox-slide--next{ opacity: 0; transform: scale3d(0, 0, 0) translate3d(100%, 0px, 0px); }
.fancybox-fx-circular.fancybox-slide--current{ opacity: 1; transform: scaleX(1) translateZ(0px); }
.fancybox-fx-tube.fancybox-slide--previous{ transform: translate3d(-100%, 0px, 0px) scale(0.1) skew(-10deg); }
.fancybox-fx-tube.fancybox-slide--next{ transform: translate3d(100%, 0px, 0px) scale(0.1) skew(10deg); }
.fancybox-fx-tube.fancybox-slide--current{ transform: translateZ(0px) scale(1); }
@media (max-height: 576px){.fancybox-slide{ padding-left: 6px; padding-right: 6px; }
.fancybox-slide--image{ padding: 6px 0px 0px; }
.fancybox-slide--image .fancybox-content{ margin-bottom: 6px; }
.fancybox-slide--image .fancybox-close-small{ background: rgb(78, 78, 78); color: rgb(242, 244, 246); height: 36px; opacity: 1; padding: 6px; right: 0px; top: 0px; width: 36px; }}
.fancybox-share{ background: rgb(244, 244, 244); border-radius: 3px; max-width: 90%; padding: 30px; text-align: center; }
.fancybox-share h1{ color: rgb(34, 34, 34); font-size: 35px; font-weight: 700; margin: 0px 0px 20px; }
.fancybox-share p{ margin: 0px; padding: 0px; }
.fancybox-share__button{ border: 0px; border-radius: 3px; display: inline-block; font-size: 14px; font-weight: 700; line-height: 40px; margin: 0px 5px 10px; min-width: 130px; padding: 0px 15px; text-decoration: none; transition: 0.2s; user-select: none; white-space: nowrap; }
.fancybox-share__button:link, .fancybox-share__button:visited{ color: rgb(255, 255, 255); }
.fancybox-share__button:hover{ text-decoration: none; }
.fancybox-share__button--fb{ background: rgb(59, 89, 152); }
.fancybox-share__button--fb:hover{ background: rgb(52, 78, 134); }
.fancybox-share__button--pt{ background: rgb(189, 8, 29); }
.fancybox-share__button--pt:hover{ background: rgb(170, 7, 25); }
.fancybox-share__button--tw{ background: rgb(29, 161, 242); }
.fancybox-share__button--tw:hover{ background: rgb(13, 149, 232); }
.fancybox-share__button svg{ height: 25px; margin-right: 7px; position: relative; top: -1px; vertical-align: middle; width: 25px; }
.fancybox-share__button svg path{ fill: rgb(255, 255, 255); }
.fancybox-share__input{ background: 0px 0px; border-width: 0px 0px 1px; border-style: none none solid; border-color: currentcolor currentcolor rgb(215, 215, 215); border-image: none; border-radius: 0px; color: rgb(93, 91, 91); font-size: 14px; margin: 10px 0px 0px; outline: none; padding: 10px 15px; width: 100%; }
.fancybox-thumbs{ background: rgb(255, 255, 255); bottom: 0px; display: none; margin: 0px; padding: 2px 2px 4px; position: absolute; right: 0px; -webkit-tap-highlight-color: transparent; top: 0px; width: 212px; z-index: 99995; }
.fancybox-thumbs-x{ overflow: auto hidden; }
.fancybox-show-thumbs .fancybox-thumbs{ display: block; }
.fancybox-show-thumbs .fancybox-inner{ right: 212px; }
.fancybox-thumbs__list{ font-size: 0px; height: 100%; list-style: none; margin: 0px; overflow: hidden auto; padding: 0px; position: relative; white-space: nowrap; width: 100%; }
.fancybox-thumbs-x .fancybox-thumbs__list{ overflow: hidden; }
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar{ width: 7px; }
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track{ background: rgb(255, 255, 255); border-radius: 10px; box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 6px inset; }
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb{ background: rgb(42, 42, 42); border-radius: 10px; }
.fancybox-thumbs__list a{ backface-visibility: hidden; background-color: rgba(0, 0, 0, 0.1); background-position: 50% center; background-repeat: no-repeat; background-size: cover; cursor: pointer; float: left; height: 75px; margin: 2px; max-height: calc(100% - 8px); max-width: calc(50% - 4px); outline: none; overflow: hidden; padding: 0px; position: relative; -webkit-tap-highlight-color: transparent; width: 100px; }
.fancybox-thumbs__list a::before{ border: 4px solid rgb(78, 167, 249); inset: 0px; content: ""; opacity: 0; position: absolute; transition: 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94); z-index: 99991; }
.fancybox-thumbs__list a:focus::before{ opacity: 0.5; }
.fancybox-thumbs__list a.fancybox-thumbs-active::before{ opacity: 1; }
@media (max-width: 768px){.fancybox-thumbs{ width: 110px; }
.fancybox-show-thumbs .fancybox-inner{ right: 110px; }
.fancybox-thumbs__list a{ max-width: calc(100% - 10px); }}
*{ font-family: Ubuntu, sans-serif; outline: none; }
html, body{ color: rgb(55, 59, 65); background-color: rgb(243, 243, 245); margin: 0px; padding: 0px; font-size: 14px; line-height: 1.42857; font-weight: 400; }
a{ text-decoration: none; }
a{ text-decoration: none; }
a, a:hover, a:focus{ color: rgb(236, 23, 79); }
a:hover, a:focus{ text-decoration: underline; }
p{ margin-top: 14px; margin-bottom: 14px; }
.h2-title, .h3-title, h1, h2, h3{ font-weight: 300; }
h1{ font-size: 24px; color: rgb(236, 23, 79); margin: 23px 0px 18px; line-height: 1.27; }
.h2-title, h2{ font-size: 21px; margin: 20px 0px 8px; color: rgb(40, 35, 80); }
.h3-title, h3{ font-size: 18px; margin: 17px 0px 6px; color: rgb(40, 35, 80); }
.block{ margin-bottom: 30px; background-color: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 1px; border: 1px solid rgb(221, 221, 221); padding: 12px; overflow: hidden; }
.block p:last-child{ margin-bottom: 9px; }
.block h1:first-child, .block h2:first-child, .block h3:first-child{ margin-top: 0px; }
.breadcrumbs{ background: rgb(223, 223, 225); padding: 8px 0px; position: relative; z-index: 2; }
.breadcrumbs ul{ padding: 0px; margin: 0px; font-size: 12px; line-height: 15px; }
.breadcrumbs ul li{ list-style: none; display: inline-block; margin-right: 3px; }
.breadcrumbs ul .b-item{ color: rgb(40, 35, 79); }
.breadcrumbs ul .b-home::after{ content: ">"; display: inline-block; margin-left: 6px; }
.breadcrumbs ul .b-cat::after{ content: "|"; display: inline-block; margin-left: 6px; }
.breadcrumbs ul li:nth-last-child(2)::after{ content: ">"; }
.btn-primary{ display: inline-block; margin-bottom: 0px; font-size: 14px; font-weight: 400; text-align: center; white-space: nowrap; vertical-align: middle; touch-action: manipulation; cursor: pointer; user-select: none; border-radius: 0px; border-width: medium medium 3px; border-style: none none solid; border-color: currentcolor currentcolor rgb(197, 0, 52); border-image: none; background: rgb(236, 23, 79); transition: 0.3s; height: 35px; line-height: 35px; outline: none; color: rgb(255, 255, 255); padding: 0px 20px; }
.btn-primary:focus, .btn-primary:hover{ background: rgb(77, 54, 115); border-bottom: 3px solid rgb(40, 35, 80); outline: none; text-decoration: none; color: rgb(255, 255, 255); }
.important-information{ display: inline-block; padding: 2px 7px; background: rgb(40, 35, 79); color: rgb(255, 255, 255); border-radius: 3px; font-size: 13px; }
.important-information .fas{ margin-right: 6px; }
.telegram-modal-btn{ position: fixed; font-size: 27px; right: 15px; bottom: 55px; width: 44px; height: 44px; line-height: 44px; color: rgb(255, 255, 255); background: rgb(23, 156, 222); border-radius: 22px; z-index: 79; cursor: pointer; }
.telegram-modal-btn::before{ margin-left: 8px; }
.fancybox-content{ padding: 25px; }
.fancy-modal-box{ display: none; max-width: 600px !important; }
.fancy-modal-box .h2-title:first-child, .fancy-modal-box h2:first-child{ margin-top: 0px; }
.leaflet-pane{ z-index: 1 !important; }
.hd{ height: 60px; color: rgb(255, 255, 255); text-shadow: rgba(0, 0, 0, 0.1) 0px 1px 0px; background: rgb(40, 35, 80); }
.hd .container{ position: relative; }
.hd .container .logo{ display: inline-block; height: 60px; }
.hd .container .logo a{ display: inline-block; position: relative; z-index: 1; }
.hd .container .logo a::before{ content: ""; position: absolute; right: -30px; top: 0px; border-width: 60px 30px 30px; border-style: solid; border-color: rgb(248, 16, 77) transparent transparent; border-image: none; z-index: 1; }
.hd .container .logo a::after{ content: ""; position: absolute; width: 20000px; top: 0px; right: 0px; background: rgb(248, 16, 77); height: 60px; z-index: 1; }
.hd .container .logo img{ vertical-align: middle; position: relative; z-index: 2; max-height: 60px; }
.hd-user-link{ position: absolute; top: 0px; right: 60px; }
.hd-user-link a{ display: block; height: 60px; width: 40px; text-align: center; line-height: 65px; color: rgb(255, 255, 255); }
.hd-user-link .fas{ font-size: 17px; }
.menu-mobile{ position: fixed; top: 14px; right: 15px; color: rgb(255, 255, 255); height: 32px; width: 32px; text-align: center; line-height: 32px; font-size: 20px; background: rgb(236, 23, 79); border-radius: 3px; display: block; z-index: 100; }
@media (max-width: 767.98px){.header-menu-w{ position: fixed; inset: 0px; width: 100%; height: 100%; z-index: 110; overflow: scroll; background: rgb(243, 243, 245); display: none; }
#header-menu{ margin-top: 60px; }
.header-menu-title{ margin: 0px -15px; padding: 8px 15px; background: rgb(255, 255, 255); border-bottom: 1px solid rgb(243, 243, 245); color: rgb(40, 35, 80); position: relative; }
.header-menu-title .fas{ position: absolute; right: 24px; top: 12px; color: rgb(43, 38, 82); }
.header-menu-list ul{ background: rgb(255, 255, 255); margin: 0px -15px; padding: 15px 15px 15px 32px; border-bottom: 1px solid rgb(243, 243, 245); display: none; }
.header-menu-list ul li a{ padding: 3px 0px; display: inline-block; }
.header-menu-close{ position: fixed; top: 14px; right: 15px; color: rgb(255, 255, 255); height: 32px; width: 32px; text-align: center; line-height: 32px; font-size: 20px; background: rgb(236, 23, 79); border-radius: 3px; display: block; z-index: 100; }}
.ft{ padding: 20px 0px; background: rgb(223, 223, 225); margin-top: 40px; }
.ft .container{ position: relative; }
.ft .age-limit{ width: 35px; height: 35px; text-align: center; line-height: 32px; border-radius: 20px; background: rgb(248, 16, 77); color: rgb(255, 255, 255); font-size: 12px; position: absolute; right: 15px; bottom: 50%; margin-bottom: -18px; border: 2px solid rgb(197, 2, 52); }
.ft-copyright{ padding-right: 41px; }
@media (min-width: 768px){h1{ margin: 23px 0px 20px; }
.telegram-modal-btn{ font-size: 37px; right: 60px; bottom: 60px; width: 60px; height: 60px; line-height: 63px; border-radius: 30px; }
.telegram-modal-btn::before{ margin-left: 11px; }
.fancybox-content{ padding: 44px; }
.menu-mobile{ display: none; }
.hd-menu-link{ position: absolute; top: 0px; right: 50%; margin-right: -90px; width: 180px; }
.hd-menu-link a{ display: block; height: 60px; text-align: center; color: rgb(255, 255, 255); line-height: 60px; font-size: 14px; cursor: pointer; transition: 0.3s; }
.hd-menu-link a:hover{ text-decoration: none; background: rgb(57, 52, 99); }
.hd-menu-link a:focus{ text-decoration: none; }
.hd-menu-link a .mhide{ display: none; }
.hd-menu-link a .fas{ margin-right: 7px; font-size: 17px; }
.header-menu-md-close{ margin-top: 30px; }
.hd-user-link{ right: 10px; }
.hd-user-link a{ width: 70px; line-height: 60px; }
.hd-user-link .fas{ margin-right: 7px; }
.header-menu-w{ width: 100%; background: rgb(255, 255, 255); position: absolute; left: 0px; top: 60px; z-index: 3; padding-bottom: 30px; border-bottom: 1px solid rgb(223, 223, 225); display: none; }
.header-menu-title .fas{ display: none !important; }
.header-menu-title{ margin: 20px 0px 10px; font-weight: 700; }
.header-menu-list ul{ margin: 0px; padding: 0px 0px 0px 17px; display: block !important; height: initial !important; }}
@media (min-width: 992px){h1{ font-size: 34px; color: rgb(236, 23, 79); margin: 30px 0px 23px; }
.h2-title, h2{ font-size: 25px; margin: 24px 0px 10px; color: rgb(40, 35, 80); }
.h3-title, h3{ font-size: 21px; margin: 20px 0px 8px; color: rgb(40, 35, 80); }
.breadcrumbs{ padding: 12px 0px; }
.breadcrumbs ul{ font-size: 13px; line-height: 17px; }}
@media (min-width: 1200px){.block{ padding: 20px; }
.hd-user-link a{ width: 230px; }}
.ui-slider{ position: relative; text-align: left; }
.ui-slider .ui-slider-handle{ position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; touch-action: none; }
.ui-slider .ui-slider-range{ position: absolute; z-index: 1; font-size: 0.7em; display: block; border: 0px; background-position: 0px 0px; }
.ui-slider-horizontal{ height: 0.8em; }
.ui-slider-horizontal .ui-slider-handle{ top: -0.3em; margin-left: -0.6em; }
.ui-slider-horizontal .ui-slider-range{ top: 0px; height: 100%; }
.ui-widget{ font-family: "Trebuchet MS", Tahoma, Verdana, Arial, sans-serif; font-size: 1.1em; }
.ui-widget .ui-widget{ font-size: 1em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button{ font-family: "Trebuchet MS", Tahoma, Verdana, Arial, sans-serif; font-size: 1em; }
.ui-widget.ui-widget-content{ border: 1px solid rgb(204, 204, 204); }
.ui-widget-content{ border: 1px solid rgb(221, 221, 221); color: rgb(51, 51, 51); }
.ui-widget-content a{ color: rgb(51, 51, 51); }
.ui-widget-header{ border: 1px solid rgb(231, 143, 8); color: rgb(255, 255, 255); font-weight: 700; }
.ui-widget-header a{ color: rgb(255, 255, 255); }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default{ border: 1px solid rgb(204, 204, 204); font-weight: 700; color: rgb(28, 148, 196); }
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited{ color: rgb(28, 148, 196); text-decoration: none; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus{ border: 1px solid rgb(251, 203, 9); font-weight: 700; color: rgb(199, 116, 5); }
.ui-state-hover a, .ui-state-hover a:hover, .ui-state-hover a:link, .ui-state-hover a:visited, .ui-state-focus a, .ui-state-focus a:hover, .ui-state-focus a:link, .ui-state-focus a:visited{ color: rgb(199, 116, 5); text-decoration: none; }
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active{ border: 1px solid rgb(251, 216, 80); font-weight: 700; color: rgb(235, 143, 0); }
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited{ color: rgb(235, 143, 0); text-decoration: none; }
.ui-corner-all{ border-top-left-radius: 4px; }
.ui-corner-all{ border-top-right-radius: 4px; }
.ui-corner-all{ border-bottom-left-radius: 4px; }
.ui-corner-all{ border-bottom-right-radius: 4px; }
.item-p-row .col-12{ padding-bottom: 23px; }
.item-p{ background-color: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 1px; border: 1px solid rgb(221, 221, 221); padding: 12px; overflow: hidden; }
.item-p-h{ margin-top: -2px; margin-bottom: 11px; position: relative; }
.item-p-h-icons{ position: absolute; top: 1px; right: 0px; color: rgb(40, 35, 80); }
.item-p-r-count{ position: relative; font-size: 20px; display: block; float: left; line-height: 20px; height: 20px; }
.item-p-r-count span{ display: block; position: absolute; top: 0px; left: 0px; color: rgb(255, 255, 255); font-size: 9px; width: 100%; text-align: center; height: 20px; line-height: 19px; z-index: 2; }
.item-p-r-score{ background: rgb(255, 178, 55); color: rgb(255, 255, 255); padding: 0px 4px; border-radius: 3px; font-size: 12px; height: 20px; line-height: 20px; display: block; float: left; margin-left: 7px; }
.item-p-r-score .fas{ margin-right: 4px; }
.item-p-h-loc{ font-size: 18px; display: block; float: left; line-height: 20px; height: 20px; margin-right: 7px; }
.item-p-n{ height: 22px; overflow: hidden; margin-top: 0px; font-size: 14px; font-weight: 400; line-height: 22px; padding-right: 132px; width: 100%; display: block; }
.item-p-left{ width: 48%; float: left; max-width: 170px; }
.item-p-left a{ display: block; width: 100%; position: relative; line-height: 0; border-radius: 3px; overflow: hidden; }
.item-p-left img{ width: 100%; min-height: 100px; }
.item-p-left .important-information{ position: absolute; bottom: 0px; left: 0px; line-height: 18px; border-radius: 0px 3px; background: rgba(248, 16, 77, 0.8); }
.item-p-p-count{ position: absolute; top: 4px; right: 7px; color: rgb(255, 255, 255); font-size: 20px; line-height: 20px; opacity: 0.8; }
.item-p-p-count span{ background: rgb(255, 255, 255); position: absolute; top: 4px; left: 3px; color: rgb(197, 2, 52); font-size: 9px; line-height: 14px; text-align: center; width: 14px; height: 14px; font-weight: 600; }
.item-p-video i, .item-p-p-count i{ text-shadow: rgb(194, 194, 195) 0px 0px 1px; }
.item-p-video{ position: absolute; top: 4.5px; right: 33px; color: rgb(255, 255, 255); font-size: 19px; line-height: 19px; opacity: 0.8; }
.item-p-right{ width: 48%; float: right; }
.item-p-district{ width: 100%; display: block; margin-bottom: 3px; position: relative; padding-left: 19px; }
.item-p-district .fas{ width: 14px; text-align: center; margin-right: 5px; color: rgb(40, 35, 80); position: absolute; left: 0px; top: 0px; line-height: 20px; display: block; }
.item-p-phone{ width: 100%; display: block; margin-bottom: 8px; color: rgb(55, 59, 65); font-size: 14px; }
.item-p-phone .fas{ width: 14px; text-align: center; margin-right: 4px; color: rgb(40, 35, 80); }
.item-p-w-t{ display: inline-block; padding: 2px 7px; background: rgb(40, 35, 79); color: rgb(255, 255, 255); border-radius: 3px; font-size: 12px; margin-bottom: 10px; }
.item-p-w-c{ display: inline-block; padding: 2px 7px; color: rgb(255, 255, 255); border-radius: 3px; font-size: 12px; margin-bottom: 10px; background: rgb(0, 179, 91); }
.item-p-w-t .fas, .item-p-w-c .fas{ margin-right: 6px; }
.item-p-info{ margin-bottom: 7px; }
.item-p-info span{ margin: 0px 3px 6px 0px; background: rgb(255, 231, 236); color: rgb(55, 59, 64); display: inline-block; padding: 2px 7px; border-radius: 3px; font-size: 13px; }
.item-p-right ul{ margin: 0px; padding: 0px; }
.item-p-right ul li{ list-style: none; font-size: 13px; line-height: 18px; }
.item-p-right ul li:nth-child(2n+1){ background-color: rgb(243, 243, 245); }
.item-p-right ul li span:first-child{ width: 50%; display: inline-block; font-size: 12px; padding-left: 3px; }
.item-p-deck{ clear: both; width: 100%; overflow: hidden; }
.item-p-deck p{ padding: 4px 10px; font-size: 13px; background: rgb(234, 231, 255); color: rgb(39, 41, 43); margin: 10px 0px 0px !important; }
@media (max-width: 345px){.item-p-district{ margin-bottom: 2px; }
.item-p-phone{ font-size: 12px; margin-bottom: 7px; }
.item-p-w-c, .item-p-w-t{ margin-bottom: 7px; }
.item-p-info{ margin-bottom: 1px; }}
@media (min-width: 380px){.item-p-district{ margin-bottom: 5px; }
.item-p-phone{ margin-bottom: 10px; }
.item-p-w-c, .item-p-w-t{ margin-bottom: 12px; }
.item-p-info{ margin-bottom: 9px; }
.item-p-left a{ max-height: 230px; }
.item-p-left img{ margin-top: -5%; }}
.item-danger-prepay{ clear: both; position: relative; background: rgb(254, 245, 206); font-size: 14px; line-height: 17px; padding: 8px 10px 8px 50px; font-weight: 700; text-transform: uppercase; border: 1px solid rgb(55, 59, 65); margin: 0px 0px 10px !important; }
.item-danger-prepay .fa-question-circle{ cursor: pointer; }
.item-danger-prepay-cat{ margin-bottom: 23px !important; }
.item-danger-prepay .fas{ color: rgb(236, 24, 79); position: absolute; left: 13px; top: 12px; font-size: 24px; }
.scram_modal_notice_ol{ padding-left: 15px; font-size: 15px; }
.scram_modal_notice_ol li{ margin-bottom: 11px; }
.scram_modal_notice_ol li em{ display: inline-block; font-size: 14px; padding-left: 7px; border-left: 1px solid rgb(40, 35, 80); margin-left: 14px; }
@media (min-width: 576px){.item-p-right{ width: 55%; }}
@media (min-width: 768px){.item-p-row .col-12{ padding-bottom: 30px; }
.item-p{ max-width: 100%; height: 100%; }
.item-p-right{ width: 48%; }
.item-danger-prepay-cat{ margin-bottom: 30px !important; }
.item-danger-prepay{ padding-left: 10px; text-align: center; }
.item-danger-prepay br{ display: none; }
.item-danger-prepay .fas{ position: static; font-size: 14px; margin-right: 7px; }}
@media (min-width: 992px){.item-p-district{ margin-bottom: 2px; }
.item-p-phone{ font-size: 12px; margin-bottom: 7px; }
.item-p-w-c, .item-p-w-t{ margin-bottom: 7px; }
.item-p-info{ margin-bottom: 1px; }
.item-p-left a{ max-height: none; }
.item-p-left img{ margin-top: 0px; }}
@media (min-width: 1200px){.item-p-district{ margin-bottom: 5px; }
.item-p-phone{ margin-bottom: 10px; font-size: 14px; }
.item-p-w-c, .item-p-w-t{ margin-bottom: 12px; }
.item-p-info{ margin-bottom: 9px; }
.item-p-left a{ max-height: 230px; }
.item-p-left img{ margin-top: -3px; }}
#category-ajax-btn{ font-size: 14px; width: 100%; margin-bottom: 30px; }
#loader{ height: 1px; overflow: hidden; }
.loader-centered{ width: 280px; position: relative; left: 50%; margin-left: -140px; height: 40px; margin-top: 10px; margin-bottom: 30px; }
.loader-blob-1, .loader-blob-2{ width: 30px; height: 30px; position: absolute; background: rgb(236, 23, 79); border-radius: 50%; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.loader-blob-1{ left: 20%; animation: 2.5s ease 0s infinite normal none running osc-l; }
.loader-blob-2{ left: 80%; animation: 2.5s ease 0s infinite normal none running osc-r; background: rgb(40, 35, 80); }
@keyframes osc-l { 
  0% { left: 20%; }
  50% { left: 50%; }
  100% { left: 20%; }
}
@keyframes osc-r { 
  0% { left: 80%; }
  50% { left: 50%; }
  100% { left: 80%; }
}
.category-text ol, .category-text ul{ padding: 0px 0px 0px 40px; margin: 14px 0px; }
.category-text ul li{ list-style: none; position: relative; }
.category-text ul li::before{ -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; font-family: "Font Awesome 5 Free"; font-weight: 900; color: rgb(236, 23, 79); content: ""; top: 3px; left: -13px; font-size: 15px; position: absolute; }
.best_checkbox input[type="checkbox"]{ display: none; }
.best_checkbox label::before{ content: ""; display: inline-block; width: 18px; height: 18px; bottom: 1px; background-color: rgb(243, 243, 245); box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 1px 0px inset, rgba(255, 255, 255, 0.8) 0px 1px 0px 0px; border-radius: 3px; line-height: 17px; cursor: pointer; }
.best_checkbox input[type="checkbox"][type="checkbox"]:checked + label::before{ content: ""; font-size: 12px; color: rgb(236, 23, 79); line-height: 17px; text-align: center; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; font-family: "Font Awesome 5 Free"; font-weight: 900; }
.b_c_w_100 .best_checkbox{ width: 100%; }
.best_checkbox{ line-height: 19px; height: 20px; position: relative; padding-left: 18px; display: inline-block; margin-right: 20px; }
.best_checkbox label{ cursor: pointer; padding-left: 9px; }
.best_checkbox label::before{ position: absolute; top: 0px; left: 0px; }
.filter_slider, .ui-widget.ui-widget-content{ background: rgb(221, 221, 221); border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 3px; }
.ui-widget.ui-widget-content{ margin: 0px 9px; }
.ui-slider-horizontal .ui-slider-range{ background: rgb(236, 23, 79); }
.ui-widget-content .ui-state-default{ top: -3px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: rgb(40, 35, 80); outline: none; border-radius: 11px; }
.filter_slider_res{ margin-top: 10px; }
#filter_price input{ height: 32px; border: 1px solid rgb(221, 221, 221); width: 100px; padding: 0px 10px; outline: none; color: rgb(55, 59, 65); margin: 0px 10px; }
.filter_title{ margin: 20px 0px 10px; font-weight: 700; }
.dist_group_title{ font-weight: 700; margin: 0px; font-size: 13px; }
.filters_dropdown a.active_dropdown .fas{ color: rgb(255, 255, 255); }
.filters_dropdown a.active_dropdown .fas::before{ content: ""; }
#filter_check .fc_content, #filter_service .fc_content{ line-height: 26px; }
#filter_check .filter_title, #filter_service .filter_title{ line-height: 20px; }
#filter_check .best_checkbox, #filter_service .best_checkbox{ width: 100%; }
#filter_other, #filter_check{ padding-top: 20px; }
.filter_container label{ font-size: 13px; }
#filter_price .has-express{ margin-top: 17px; }
@media (max-width: 767.98px){.ft{ margin-bottom: 40px; }
.map-btn{ background-image: url("../img/46b2684816b71ff0.jpg"); background-position: center center; height: 40px; line-height: 35px; text-align: center; font-size: 15px; text-shadow: rgb(255, 255, 255) 0px 0px 1px; border-width: 1px medium medium; border-style: solid none none; border-color: rgb(221, 221, 221) currentcolor currentcolor; border-image: none; cursor: pointer; width: 100%; padding: 0px; position: fixed; bottom: 0px; left: 50%; margin-left: -50%; z-index: 3; text-transform: uppercase; font-weight: 500; }
.map-btn .fas{ color: rgb(248, 17, 77); margin-right: 10px; }
.filters{ position: fixed; top: 0px; left: 0px; max-height: 100%; overflow: hidden scroll; z-index: 90; width: 100%; display: none; background: rgb(255, 255, 255); }
.filters_active{ height: 100%; background: rgb(255, 255, 255); }
.filters_tabs{ padding: 10px 0px; background: rgb(223, 223, 225); overflow: hidden; width: 100%; }
.filters_checkboxes .best_checkbox label, .filters_dropdown a{ display: block; color: rgb(55, 59, 65); height: 29px; line-height: 29px; border-radius: 3px; text-decoration: none; transition: 0.3s; cursor: pointer; margin: 0px; width: 100%; padding: 0px 10px 0px 36px; background: rgb(223, 223, 225); position: relative; }
.filters_checkboxes .best_checkbox{ margin: 0px; padding: 0px; height: auto; }
.filters_dropdown a .fas{ font-size: 15px; position: relative; top: 2px; left: 5px; color: rgb(55, 59, 65); }
.filters_dd_count{ display: inline-block; height: 14px; width: 14px; line-height: 14px; font-size: 11px; text-align: center; background: rgb(236, 23, 79); color: rgb(255, 255, 255); border-radius: 7px; position: absolute; left: 14px; top: 7px; }
.filter_container{ display: none; padding-bottom: 75px; }
.filters_mobile_count{ display: inline-block; height: 14px; width: 14px; line-height: 14px; font-size: 11px; text-align: center; background: rgb(40, 35, 80); color: rgb(255, 255, 255); border-radius: 7px; position: absolute; right: -6px; top: -6px; }
.filters_dropdown a.active_dropdown{ background: rgb(40, 35, 80); color: rgb(255, 255, 255); }
.filters_checkboxes .best_checkbox label::before{ top: 4px; left: 10px; }
.filters_dropdown a.filters-show-menu{ color: rgb(255, 255, 255); height: 32px; line-height: 32px; background: rgb(236, 23, 79); border-radius: 3px; width: auto; padding: 0px 16px; margin-left: 36px; margin-top: 4px; margin-bottom: 9px; display: inline-block !important; }
.filters_dropdown a.filters-show-menu .fas{ color: rgb(255, 255, 255); }
.filter_container_btn{ position: fixed; left: 0px; bottom: 0px; padding: 20px 15px; width: 100%; background: rgb(255, 255, 255); z-index: 99; }
.filter_container_close{ margin-left: 15px; }
.checkbox_row{ line-height: 26px; }
.checkbox_row .best_checkbox{ width: 100%; }
#filter_other .fc_content{ line-height: 26px; }
#filter_other .filter_title{ line-height: 20px; }
#filter_other .best_checkbox{ width: 100%; }}
.block.category-first{ margin-bottom: 23px; }
.category-first p:first-child{ margin-top: 0px; }
.category-first p:last-child{ margin-bottom: 0px; }
.category_reviews_title{ font-weight: 500; text-transform: uppercase; }
.reviewsCategory{ padding-left: 10px; border-left: 1px solid rgb(255, 0, 74); }
.reviewsName{ font-weight: 500; }
@media (min-width: 768px){.block.category-first{ margin-bottom: 30px; }
.map-btn{ background-image: url("../img/46b2684816b71ff0.jpg"); background-position: center center; height: 50px; line-height: 46px; text-align: center; margin-bottom: 30px; font-size: 18px; text-shadow: rgb(255, 255, 255) 0px 0px 1px; border: 2px solid rgb(255, 255, 255); cursor: pointer; width: 100%; padding: 0px; }
.map-btn .fas{ color: rgb(248, 17, 77); margin-right: 10px; }
#category-ajax-btn{ width: 50%; margin-left: 25%; }
.filters-w{ height: 60px; }
.filters{ z-index: 2; position: absolute; width: 100%; top: 60px; left: 0px; height: 60px !important; display: block !important; }
.filters_fixed{ top: 0px; left: 0px; width: 100%; position: fixed; }
.filters_tabs{ height: 60px; background: rgb(223, 223, 225); overflow: hidden; }
.filters_dropdown, .filters_checkboxes{ display: block; float: left; }
.filters_container{ background: rgb(255, 255, 255); border-bottom: 1px solid rgb(223, 223, 225); }
.filter_container{ display: none; }
.fc_content{ max-height: calc(-195px + 100vh); overflow: hidden scroll; }
.filters_checkboxes .best_checkbox label, .filters_dropdown a{ display: block; float: left; background: rgb(255, 255, 255); color: rgb(55, 59, 65); height: 33px; line-height: 33px; border-radius: 3px; text-decoration: none; transition: 0.3s; cursor: pointer; position: relative; font-size: 11px; padding: 0px 8px; margin: 14px 4px 14px 0px; }
.filters_dd_count{ display: inline-block; text-align: center; background: rgb(236, 23, 79); color: rgb(255, 255, 255); border-radius: 7px; position: relative; top: -1px; height: 12px; width: 12px; line-height: 12px; left: -1px; font-size: 9px; }
.filters_dropdown a .fas{ font-size: 14px; position: relative; top: 2px; left: 4px; color: rgb(55, 59, 65); }
.filters_checkboxes .best_checkbox label::before{ position: absolute; top: 8px; left: 7px; }
.filters_checkboxes .best_checkbox label{ padding: 0px 6px 0px 30px; }
.filters_checkboxes .best_checkbox{ padding: 0px; margin: 0px; }
.filter_container_btn{ padding: 20px 0px; background: rgb(255, 255, 255); height: 75px; width: 100%; }
.filter_container_close{ margin-left: 15px; }
.checkbox_row{ line-height: 26px; }
.filters_dropdown a.active_dropdown{ color: rgb(255, 255, 255); background: rgb(236, 23, 79); }
.active_dropdown .filters_dd_count{ background: rgb(40, 35, 80); }}
@media (min-width: 992px){.filters_checkboxes .best_checkbox label, .filters_dropdown a{ font-size: 12px; padding: 0px 14px; margin: 14px 12px 14px 0px; }
.filters_dd_count{ height: 14px; width: 14px; line-height: 14px; left: -2px; font-size: 9px; }
.filters_checkboxes .best_checkbox label{ padding: 0px 13px 0px 36px; }
.filters_checkboxes .best_checkbox label::before{ left: 10px; }}
@media (min-width: 1200px){.filters_checkboxes .best_checkbox label, .filters_dropdown a{ font-size: 14px; padding: 0px 20px; margin: 14px 14px 14px 0px; }
.filters_dd_count{ height: 14px; width: 14px; line-height: 14px; font-size: 11px; left: -2px; }
.filters_dropdown a .fas{ font-size: 15px; left: 5px; }
.filters_checkboxes .best_checkbox label::before{ left: 10px; }
.filters_checkboxes .best_checkbox label{ padding: 0px 20px 0px 36px; }}
/* ---------------------------------------------------------------------------
 * Engine overrides, appended to every built stylesheet by tools/build_css.py.
 *
 * Two jobs, and nothing else belongs here:
 *   1. styling for markup the reference site did not have (the TOP badge, the
 *      missing-photo placeholder);
 *   2. the mobile and accessibility work the reference never did.
 *
 * Every rule either targets a class the reference does not use, or is scoped
 * to a media query / feature query the reference has no rules in — so the
 * desktop rendering that was verified element-by-element against the original
 * stays untouched.
 * ------------------------------------------------------------------------- */

/* ------------------------------------------------------- paid placement */

/* The TOP flag. Amber rather than the site's red, because red already means
   "verified" on this same photo and two red badges would read as one thing. */
/* No z-index here, deliberately.
 *
 * It had one, and the badge then painted over the open filter panel: the
 * panel sits at z-index 2 on desktop, so any positive value on the badge
 * wins the stacking comparison — while the anchor above it is
 * `position: relative; z-index: auto` and so opens no stacking context to
 * contain it. The card's own badges in the reference carry no z-index for
 * exactly this reason; being positioned is already enough to paint them
 * above the image next to them. */
.item-p-top {
    position: absolute;
    top: 0;
    right: 0;
    padding: 2px 8px 2px 10px;
    font-size: 11px;
    font-weight: 700;
    line-height: 16px;
    letter-spacing: 0.04em;
    color: #4a2d00;
    text-transform: uppercase;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.35);
    background: linear-gradient(135deg, #ffd479 0%, #fab142 55%, #e89a24 100%);
    border-radius: 0 3px 0 3px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.28);
    pointer-events: none;
}

/* the small notch that makes it read as a flag rather than a label */
.item-p-top::after {
    content: "";
    position: absolute;
    left: -6px;
    bottom: 0;
    border-style: solid;
    border-width: 0 6px 6px 0;
    border-color: transparent #c57f12 transparent transparent;
}

/* a promoted card is lifted just enough to be noticed in the grid */
.item-p.is-top {
    box-shadow: 0 0 0 1px rgba(250, 177, 66, 0.55), 0 2px 10px rgba(0, 0, 0, 0.07);
}

/* The reference puts the photo counter and the video marker in the top-right
 * corner of the picture, which is where the TOP flag now lives. Moving them
 * to the bottom-right is a change to the reference design, made on request:
 * the bottom-left corner is already the "Проверено" badge, so the two
 * counters and the flag each get a corner of their own. */
.item-p-p-count {
    top: auto;
    bottom: 4px;
    right: 7px;
}

.item-p-video {
    top: auto;
    bottom: 4.5px;
    right: 33px;
}

/* ------------------------------------------------- stated image dimensions */

/* The templates state width and height on every photo so the browser can
 * reserve the right box before the file arrives — without that, a catalog
 * reflows as images land, and that reflow is most of a failing CLS score.
 *
 * But those attributes are presentational hints for the `width` and `height`
 * properties. The site stylesheet sets `width: 100%` and says nothing about
 * height, so the hint wins over the initial `auto` and the picture renders at
 * its full intrinsic height — 800px inside a 153px column.
 *
 * `height: auto` hands height back to the aspect-ratio the attributes imply,
 * which is exactly what the reference markup had by default, having carried
 * no attributes at all.
 */
.item-p-left img,
#itemGallery img,
.lSPager img,
.lSGallery img {
    height: auto;
}

/* ------------------------------------------------------------- lightbox */

/* Our lightbox reuses fancybox's class names so the existing stylesheet
 * dresses it, but the picture itself gets a class of its own: fancybox sizes
 * .fancybox-image from script, and without that script it collapses to 0x0.
 * Sizing it against the viewport needs no measurement at all. */
.cl-lightbox-img {
    display: block;
    width: auto;
    height: auto;
    max-width: min(92vw, 1400px);
    max-height: 88vh;
    margin: 0 auto;
    border-radius: 2px;
}

/* The dialog box is laid out by script in fancybox too. These rules are what
 * make it stand on its own.
 *
 * Centring targets the current slide only: `.fancybox-slide` is display:none
 * until it becomes current, so turning the base class into a flex container
 * would reveal every slide at once. */
.fancybox-slide--current {
    display: flex;
    align-items: center;
    justify-content: center;
}

.fancybox-content {
    max-width: 94vw;
    max-height: 94vh;
    margin: 0;
    overflow: auto;
}

/* fancybox makes the content box absolute for an image slide and then places
 * it from script. Absolute children are out of flow, so the flex centring
 * above would never reach it; relative puts it back in. */
.fancybox-slide--current > .fancybox-content {
    position: relative;
    top: auto;
    left: auto;
}

.fancybox-slide--image .fancybox-content {
    padding: 0;
    background: transparent;
}

/* Gallery controls inside the lightbox. fancybox has its own arrow markup
 * driven by its script, so these are ours: big, fixed to the viewport edges
 * and out of the way of the picture. */
.cl-lb-prev,
.cl-lb-next {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    width: 52px;
    height: 72px;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: rgba(0, 0, 0, 0.42);
    color: #fff;
    font-size: 38px;
    line-height: 1;
    cursor: pointer;
    z-index: 99999;
}
.cl-lb-prev { left: 10px; }
.cl-lb-next { right: 10px; }
.cl-lb-prev:hover,
.cl-lb-next:hover { background: rgba(0, 0, 0, 0.68); }

.cl-lb-count {
    position: fixed;
    left: 50%;
    bottom: 16px;
    transform: translateX(-50%);
    padding: 4px 12px;
    border-radius: 12px;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    font-size: 13px;
    z-index: 99999;
}

@media (max-width: 600px) {
    .cl-lb-prev,
    .cl-lb-next { width: 44px; height: 60px; font-size: 30px; }
    .cl-lb-prev { left: 4px; }
    .cl-lb-next { right: 4px; }
}

/* fancybox positions its close button against a box its script sized; put it
 * in a corner of the viewport instead, where it is always reachable. */
.fancybox-close-small {
    position: fixed;
    top: 12px;
    right: 12px;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    cursor: pointer;
    z-index: 99999;
}
.fancybox-close-small:hover { background: rgba(0, 0, 0, 0.8); }

/* ------------------------------------------------------- the online chip */

/* The online filter sits on the bar itself rather than inside a panel, so it
 * gets a live green dot — the one filter whose answer changes minute to
 * minute deserves to look like it. */
.best_checkbox.quick-online label::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 6px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.22);
    vertical-align: middle;
}

.best_checkbox.quick-online input:checked + label {
    color: #15803d;
}

/* ----------------------------------------------------------- messengers */

/* Buttons under the phone number on a listing page. Which messengers exist,
 * what they are called, their colour and their link template are all one
 * setting, so adding another one is data entry rather than a deploy.
 *
 * The brand colour arrives as a custom property set inline from that setting;
 * the fallback is the site accent, so a messenger added without a colour
 * still looks deliberate. */
.item-messengers {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 10px 0 0;
}

.item-messenger {
    --mg: #f8104d;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    /* 40px tall: a comfortable target on a phone */
    min-height: 40px;
    padding: 0 14px;
    border-radius: 20px;
    background: var(--mg);
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.18);
    transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.item-messenger:hover,
.item-messenger:focus {
    color: #fff;
    text-decoration: none;
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.24);
}

.item-messenger:active { transform: translateY(0); }

.item-messenger img,
.item-messenger svg {
    width: 18px;
    height: 18px;
    flex: none;
    display: block;
}

.item-messenger-handle {
    opacity: 0.85;
    font-weight: 400;
}

@media (prefers-reduced-motion: reduce) {
    .item-messenger { transition: none; }
    .item-messenger:hover { transform: none; }
}

/* --------------------------------------------------------- placeholders */

.item-p-left img.no-photo,
.itemGallery img.no-photo {
    background: #ecebf1;
    object-fit: cover;
}

/* ------------------------------------------------- rendering efficiency */

/* `content-visibility: auto` on the cards was tried here and removed.
 *
 * It does cut rendering work on a 60-card grid, but an off-screen card then
 * reports its placeholder height (contain-intrinsic-size) instead of its real
 * one, and the two differ by a couple of pixels per card. Every card would
 * resize slightly as it scrolled into view — which is a layout shift on each
 * one, in exchange for faster paint. CLS is a scored metric and paint here is
 * not the bottleneck, so the trade goes the other way.
 *
 * The rendering win on this page comes from the lazy images and the stated
 * width/height instead, which cost nothing in stability.
 */

/* ------------------------------------------------------------- a11y */

/* The reference removes focus outlines and puts nothing back, which makes the
   filter bar unusable from a keyboard. :focus-visible only shows the ring to
   someone actually navigating by key, so pointer users see no change. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.best_checkbox input:focus-visible + label,
.ui-slider-handle:focus-visible {
    outline: 2px solid #f8104d;
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/* ------------------------------------------------------------- mobile */

@media (max-width: 767px) {
    /* Nothing may scroll sideways. A single overflowing element on a phone
       costs the whole layout score, and long phone numbers, long district
       names and the price table are all candidates. */
    html, body {
        overflow-x: hidden;
        max-width: 100%;
    }

    .item-p-phone,
    .item-p-district,
    .item-p-n {
        overflow-wrap: anywhere;
    }

    /* The source site's tap targets are 20-26px tall, well under the 24px
       minimum, so filter rows and menu links are easy to mis-tap. These are
       padding changes only: no colour, border or font is touched. */
    .best_checkbox label {
        min-height: 28px;
        padding-top: 3px;
        padding-bottom: 3px;
    }

    .header-menu-list ul li a {
        display: block;
        padding: 7px 0;
    }

    .filters_dropdown > a {
        min-height: 40px;
    }

    .item-scrollbar span {
        min-width: 44px;
        min-height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Keep the sticky bar clear of the last block instead of covering it. */
    .item-scrollbar ~ *,
    section.container {
        scroll-margin-top: 70px;
    }
    body {
        padding-bottom: env(safe-area-inset-bottom, 0);
    }

    /* The conditions table fits at 360px with two columns, but the number of
       columns is admin data and a third one would push it past the screen.
       The container scrolls, not the table: `display:block` on the table
       itself makes it shrink to its content and stop filling the block. */
    .block-item-price {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Drag the range handles without the page scrolling under the finger —
       what Touch Punch was patched in to fix on the original. */
    .filter_slider,
    .ui-slider {
        touch-action: none;
    }

    /* A long filter panel must not grow taller than the screen with its
       Apply button pushed out of reach. */
    .filter_container .fc_content {
        max-height: calc(100vh - 170px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* iOS zooms the page in when a focused field is under 16px. */
    input[type="text"],
    input[type="number"],
    input[type="email"],
    input[type="password"],
    input[type="tel"],
    select,
    textarea {
        font-size: 16px;
    }
}

/* The grid is one column below 576px in the reference; the gutter there is
   wider than the content needs on a 360px screen. */
@media (max-width: 374px) {
    .item-p-info span {
        font-size: 11px;
    }
}

