@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; src: local('Open Sans Regular'), local('OpenSans-Regular'), url('/node_modules/open-sans-fontface/fonts/Regular/OpenSans-Regular.woff2') format('woff2'), url('/node_modules/open-sans-fontface/fonts/Regular/OpenSans-Regular.woff') format('woff'); }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 600; src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'), url('/node_modules/open-sans-fontface/fonts/Semibold/OpenSans-Semibold.woff2') format('woff2'), url('/node_modules/open-sans-fontface/fonts/Semibold/OpenSans-Semibold.woff') format('woff'); }

html { font-size: 62.5%; }
body { background: #e9eaee; color: #333; font-family: "Open Sans", sans-serif; font-size: 1.4rem; margin: 0; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; }
a { color: #007aff; outline: none; text-decoration: none; }
a:hover { text-decoration: underline; }
input, button { border: none; border-radius: 7px; box-sizing: border-box; font-family: "Open Sans", sans-serif; font-size: 1.5rem; margin: 0; padding: 7px 14px; }
textarea { border: 1px solid #ccc; border-radius: 7px; box-sizing: border-box; font-family: "Open Sans",sans-serif; font-size: 1.5rem; padding: 7px 14px; resize: none; width: 100%; }
button { background: #007aff; color: #FFF; cursor: pointer; padding: 7px 14px; transition: all 0.3s; }
button:hover { box-shadow: 0 0 5px #007aff; }
button::-moz-focus-inner { padding: 0; border: 0; } /* Mozilla reset */
select { padding: 2px; }
::selection { background: #007aff; color: #FFF; }
::-moz-selection { background: #007aff; color: #FFF; }
.wrapper { margin: auto; max-width: 1300px; padding: 0 10px; position: relative; }
.content-wrapper { margin: auto; max-width: 1000px; min-height: 100%; overflow: auto; padding: 0 14px; }
.main-wrapper { max-width: 1000px; }
.horizontal-wrapper { padding-left: 21px; padding-top: 14px; padding-bottom: 14px; -webkit-overflow-scrolling: touch; }
.horizontal-wrapper h2 { color: #ff2d55; font-size: 2.9rem; margin: 0; }
.item-detail.page-print:hover { cursor: pointer; text-decoration: underline; }
#lightbox .lb-image { border: none; }
/* Trap for bots */
.input-website { display: none; }

.btn { background: #007aff; border-radius: 5px; color: #FFF; display: inline-block; font-size: 1.3rem; padding: 2px 5px; transition: all 0.2s; }
.btn:hover { box-shadow: 0 0 5px #007aff; text-decoration: none; }
.btn-blue { background: #1db6fc; }
.btn-blue:hover { box-shadow: 0 0 5px #1db6fc; }
.btn-orange { background: #ff9500; }
.btn-orange:hover { box-shadow: 0 0 5px #ff9500; }
.btn-red { background: #ff3b30; }
.btn-red:hover { box-shadow: 0 0 5px #ff3b30; }
.btn-green { background: #4cd964; }
.btn-green:hover { box-shadow: 0 0 5px #4cd964; }
.btn-gray { background: #888; }
.btn-gray:hover { box-shadow: 0 0 5px #888; }

.pagination { list-style: none; margin: 7px 0; padding: 0; text-align: center; font-weight: bold; }
.pagination li { display: inline-block; border: 1px solid #CCC; border-radius: 7px; margin: 0 7px; overflow: hidden; }
.pagination li a { display: block; padding: 4px 10px; text-decoration: none; }
.pagination li a:hover, .pagination li a.active { background: #007aff; color: #FFF; transition: all 0.3s; }

.no-content { -webkit-align-items: center; align-items: center; color: #666; display: -webkit-flex; display: flex; font-size: 3rem; height: 100%; margin: auto; -webkit-justify-content: center; justify-content: center; text-align: center; }
#content-main .no-content p { margin: 14px 0; text-align: center; }
.no-content i { color: #AAA; display: block; font-size: 10rem; margin-bottom: 7px; }
.no-content span { color: #888; display: block; font-size: 1.7rem; }

#header { background: #007aff; background: linear-gradient(45deg, #2190ff 7%, #443fc6 100%); box-shadow: 0 2px 6px #777; position: fixed; top: 0; width: 100%; z-index: 101; }
#header-top { font-size: 1.3rem; height: 33px; line-height: 3.3rem; position: relative; text-align: end; }
#logo { float: left; font-size: 2.5rem; line-height: 3rem; margin: 0; }
#logo a { color: #FFF; }
#logo a:hover { text-decoration: none; }
#logo span { font-size: 1.8rem; font-weight: normal; margin-left: 7px; }
#header-top ul { display: inline-block; font-size: 1.3rem; list-style: outside none; margin: 0; padding: 0; -webkit-overflow-scrolling: touch; }
#header-top li { float: left; padding: 0 7px; position: relative; z-index: 5; }
#header-top > li:first-child { padding-left: 0; }
#header-top > li:last-child { padding-right: 0; }
#header-top li > a { color: #FFF; transition: all 0.2s; }
#header-top li > div { background: #FFF; border-radius: 5px; box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); font-size: 1.4rem; line-height: normal; opacity: 0; overflow: hidden; position: absolute; right: 0; text-align: start; top: 30px; transition: all 0.2s; visibility: hidden; width: 250px; }
#header-top li:hover > div { opacity: 1; visibility: visible; }
#header-top li > div > a { color: #666; display: block; padding: 7px 0 7px 14px; transition: all 0.2s; }
#header-top li > div > a:hover { background: #1db6fc; color: #FFF; text-decoration: none; }
#header-top li > div > a i { width: 16px; text-align: center; margin-right: 7px; }
#header-top li:last-child { order: 0; }
#header-top .menu-top { background: #F45C43; background: linear-gradient(to left, #EB3349 , #F45C43); display: table; table-layout: fixed; text-align: center; width: 100%; }
#header-top .menu-top a { border-right: 1px solid #FFF; color: #FFF; display: table-cell; font-weight: bold; padding: 7px; text-decoration: none; transition: all 0.2s; }
#header-top .menu-top a:last-child { border: none; }
#header-top .menu-top a:hover { background: #1db6fc; color: #FFF; }
#header-top .menu-top i { display: block; font-size: 2.2rem; margin-bottom: 7px; }
#header-top #header-partner { color: #ffcc00; font-weight:bold; }
#header-bottom { line-height: 3rem; position: relative; text-align: center; }
#header-bottom > ul { display: table; list-style: outside none; margin: 0 196px 0 0; padding: 0; table-layout: fixed; width: calc(100% - 235px); }
#header-bottom > ul > li { display: table-cell; position: relative; }
#header-bottom > ul > li > a { border-bottom: 3px solid transparent; color: #FFF; display: block; font-size: 1.7rem; font-weight: bold; text-decoration: none; }
#header-bottom > ul > li > a i { display: none; color: #666; margin-bottom: 7px; font-size: 3rem; }
#header-bottom > ul > li > a:hover, #header-bottom > ul > li > a.active { border-color: #1db6fc; }
#header-bottom ul li ul { background: #FFF; border-radius: 0 0 7px 7px; box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); left: 0; list-style: none; line-height: normal; min-width: 100%; overflow: hidden; opacity: 0; padding: 0; position: absolute; text-align: start; transition: all 0.2s; visibility: hidden; white-space: nowrap; }
#header-bottom ul li:hover ul { opacity: 1; visibility: visible; }
#header-bottom ul ul a { color: #666; display: block; padding: 7px 14px; text-decoration: none; transition: all 0.2s; }
#header-bottom ul ul a:hover { background: #1db6fc; color: #FFF; }
#search-box { background: #FFF; border-radius: 25px; color: #666; line-height: normal; margin-top: 2px; padding: 0 7px; position: absolute; right: 0; top: 0; z-index: 1; }
#search-box i.fa-search { font-size: 1.9rem; margin-right: 2px; margin-top: 4px; }
#search-box i.fa-times-circle-o { color: #CCC; cursor: pointer; font-size: 1.9rem; margin-left: 2px; margin-top: 4px; visibility: hidden; }
#search-box input { background: none; color: #333; padding: 3px 0; transition: width 0.2s; vertical-align: top; width: 155px; }
#search-box input.focused { outline: none; width: 305px; }
#search-box input::-moz-placeholder { color: #333; opacity: 0.8; }
#search-box input:-ms-input-placeholder { color: #333; opacity: 0.8; }
#search-box input::-webkit-input-placeholder { color: #333; opacity: 0.8; }
#search-results { background: #FFF; border-radius: 7px; box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); display: none; max-height: 73vh; line-height: normal; overflow: auto; position: absolute; right: 0; text-align: start; top: 28px; width: 600px; z-index: 1; -webkit-overflow-scrolling: touch; }
#search-results h2 { font-size: 2rem; height: 50px; line-height: 50px; padding-left: 7px; margin: 0; text-transform: uppercase; }
.search-nothing { color: #777; display: block; font-size: 1.7rem; padding: 14px; text-align: center; }
#search-columns { display: flex; flex-direction: row; }
.search-column { width: 50%; }
.search-result { display: block; overflow: hidden; height: 50px; padding: 0 7px; transition: all 0.2s; }
.search-result:hover { background: #1db6fc; text-decoration: none; }
.search-result:hover h4, .search-result:hover span, .search-result:hover h4 b, .search-result:hover span b { color: #FFF; }
.search-result:first-child div { border-top-left-radius: 5px; }
.search-result-image { padding: 0; padding-right: 7px; }
.search-result-image > div { background-position: center center; background-size: cover; float: left; height: 50px; margin-right: 7px; width: 60px; }
.search-result h4 { color: #007aff; font-size: 1.4rem; margin: 0; overflow: hidden; padding-top: 4px; text-overflow: ellipsis; transition: all 0.2s; white-space: nowrap; }
.search-result h4 b, .search-result span b { color: #ff9500; transition: all 0.2s; }
.search-result span { color: #777; display: block; font-size: 1.2rem; overflow: hidden; text-overflow: ellipsis; transition: all 0.2s; white-space: nowrap; }
#search-cities { border-bottom: 1px solid #CCC; display: table; table-layout: fixed; width: 100%; }
.search-city { display: table-cell; padding-bottom: 5px; text-align: center; vertical-align: top; }
.search-city:hover { text-decoration: none; }
#search-results .search-city:hover h4 { color: #ff9500; }
.search-city img { height: 45px; margin-bottom: 3px; vertical-align: top; }
#search-buttons { overflow: hidden; }
#search-buttons a { background: #007aff; color: #FFF; display: inline-block; padding: 7px 14px; transition: all 0.3s; text-decoration: none; }
#search-buttons a:hover { box-shadow: 0 0 5px #007aff; }
#search-buttons a:first-child { border-top-right-radius: 5px; }
#search-buttons a:last-child, #search-buttons a:only-child { float: right; border-top-left-radius: 5px; border-top-right-radius: 0; }
#search-results .search-city > h4, #map-search-results .search-city > h4 { font-size: 1.3rem; padding: 0 4px; margin: 0; transition: all 0.3s; font-weight: normal; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#button-menu { color: #FFF; cursor: pointer; display: none; float: right; font-size: 1.6rem; line-height: normal; padding: 3px 7px; transition: all 0.3s; }
#button-menu2, #button-menu3 { color: #FFF; cursor: pointer; display: none; float: left; font-size: 1.4rem; line-height: normal; margin-left: 7px; margin-right: 7px; margin-top: 1px; padding: 6px; transition: all 0.3s; text-decoration: none; }
#button-menu:hover, #button-menu2:hover, #button-menu3:hover { background: #FFF; color: #007aff; }

#content { background-attachment: fixed; background-position: center center; background-size: cover; margin-top: 66px; }
#content.map { bottom: 0; left: 0; position: absolute; right: 0; top: 0; }
#content-sidebar { background: #FFF; bottom: 0; box-shadow: 0 2px 6px #999; box-sizing: border-box; color: #666; left: 0; max-height: 100%; overflow-x: hidden; overflow-y: auto; padding: 14px; position: absolute; top: 66px; width: 300px; z-index: 100; -webkit-overflow-scrolling: touch; }
#content-sidebar > h3:first-child { margin-top: 0; }
#content-sidebar h3 { color: #007aff; font-size: 2.5rem; margin: 21px 0 7px 0; }
#content-sidebar h3 a { color: #ff9500; float: right; font-size: 1.5rem; margin-top: 7px; }
#content-sidebar p a { font-weight: bold; }
#sidebar-contact { display: block; margin-top: 14px; text-align: center; }
#sidebar-back, #category-events, #sidebar-items { color: #ff9500; cursor: pointer; display: block; font-size: 1.9rem; margin-bottom: 7px; text-align: center; }
#sidebar-back:hover, #category-events:hover, #sidebar-items:hover { font-weight: bold; }
#sidebar-back i, #category-events i { margin-right: 5px; }
#sidebar-back { margin: 7px 0; }
#category-events, #sidebar-items { font-size: 1.8rem; margin-top: 7px; }
#sidebar-controls { border-bottom: 1px solid #DDD; display: table; margin-bottom: 7px; padding-bottom: 7px; table-layout: fixed; text-align: center; width: 100%; white-space: nowrap; }
#sidebar-controls > * { cursor: pointer; color: #666; display: table-cell; font-size: 1.3rem; }
#sidebar-controls > *:hover .fa-flag-o, #sidebar-controls > *:hover .fa-flag, #sidebar-controls .fa-flag, #sidebar-controls > .active .fa-flag { color: #ffcc00; }
#sidebar-controls > *:hover .fa-heart-o, #sidebar-controls > *:hover .fa-heart, #sidebar-controls .fa-heart, #sidebar-controls > .active .fa-heart { color: #ff2d55; }
#sidebar-controls > *:hover .fa-exclamation { color: #333; }
#sidebar-controls > *:hover i, #sidebar-controls > .active i { color: #007aff; }
#sidebar-controls i { font-size: 2.5rem; transition: all 0.2s; }
#sidebar-controls span { display: block; margin-top: 7px; }
.item-control:hover { text-decoration: none; }
.sidebar-detail { margin-bottom: 3px; }
.sidebar-detail i { display: inline-block; font-size: 2rem; margin-right: 14px; text-align: center; vertical-align: top; width: 20px; }
.sidebar-detail i.fa-refresh { margin-right: 0; position: absolute; right: 7px; color: #007aff; cursor: pointer; font-size: 1.7rem; margin-top: 2px; width: auto; }
.sidebar-detail a { color: #ff2d55; display: inline-block; max-width: calc(100% - 35px); font-weight: bold; overflow: hidden; text-overflow: ellipsis; vertical-align: top; white-space: nowrap; }
.sidebar-detail a b { color: #666; }
#unesco { color: #666; display: block; font-size: 1.5rem; margin: 0 0 14px; text-align: center; }
#unesco img { display: block; margin: auto; }
.forecast { color: #ff9500; display: inline-block; font-size: 2.6rem; margin-bottom: 7px; text-align: center; vertical-align: top; width: 33.333%; }
.forecast .day { color: #666; font-size: 1.4rem; font-weight: bold; }
.forecast .condition { color: #999; font-size: 1.3rem; font-style: italic; }
.forecast span { color: #999; font-size: 1.6rem; }
.segmented-control { border: 1px solid #007aff; border-radius: 7px; color: #007aff; display: table; font-size: 1.3rem; font-weight: bold; margin-bottom: 7px; overflow: hidden; table-layout: fixed; text-align: center; width: 100%; }
.segmented-control > * { cursor: pointer; display: table-cell; padding: 5px 0; transition: all 0.2s; }
.segmented-control > *:hover, .segmented-control > *.active { background: #007aff; color: #FFF; text-decoration: none; }
.sidebar-location { color: #666; display: table; padding: 2px 0 1px; text-align: start; width: 100%; }
.sidebar-location:hover { text-decoration: none; }
.sidebar-location:hover .location-name { color: #1db6fc; font-weight: bold; }
.sidebar-location:hover .location-distance { color: #1db6fc; }
.location-name { display: table-cell; max-width: 0; overflow: hidden; padding-right: 7px; text-overflow: ellipsis; transition: all 0.2s ease 0s; vertical-align: top; white-space: nowrap; }
.location-name i { color: #5856d6; }
.location-distance { color: #999; display: table-cell; text-align: end; transition: all 0.2s ease 0s; width: 55px; }
#items-filter { margin-bottom: 25px; }
#items-filter > label, #items-filter-primary > label { display: block; font-size: 1.6rem; margin: 7px 0; }
#items-filter > label input, #items-filter-primary > label input { float: right; margin-top: 7px; }
#items-filter label i { margin-right: 7px; text-align: center; width: 17px; }
#items-filter p { font-style: italic; margin: 0; }
#items-filter .box-radios { display: table; margin-bottom: 14px; width: 100%; }
#items-filter .box-radio { display: table-cell; }
#items-filter select { width: 100%; }
.sidebar-link { color: #666; display: block; font-size: 1.6rem; padding: 3px 0 3px 14px; transition: all 0.2s; }
.sidebar-link:hover, .sidebar-link.active, .sidebar-link:hover i, .sidebar-link.active i { color: #1db6fc; text-decoration: none; }
.sidebar-link:hover, .sidebar-link.active { font-weight: bold; }
.sidebar-link.align-left { padding-left: 0; }
.sidebar-link.align-left i { float: none; display: inline-block; width: 21px; text-align: center; margin-right: 7px; }
.sidebar-link i { float: right; font-weight: normal; margin-top: 4px; transition: all 0.2s; }
.sidebar-link span { color: #999; float: right; font-size: 1.5rem; }
#content-main { bottom: 0; left: 300px; overflow: auto; position: absolute; right: 0; top: 66px; -webkit-overflow-scrolling: touch; }
.content-information { color: #555; font-size: 1.5rem; line-height: 2.8rem; margin: 10px 0; text-align: start; }
.content-information.hours b { color: #5856d6; }
.content-information.updated { font-size: 1.3rem; margin-top: 0; }
.warning { background: #ff9500; color: #FFF; padding: 14px; font-weight: bold; border-radius: 7px; text-align: center; }
.register-information { color: #666; font-size: 1.2rem; margin: 7px 0; }
.content-list { line-height: 2.8rem; padding: 0 0 0 35px; text-align: start; }
.content-list div.info { color: #999; display: none; padding-left: 14px; }
#bottom-navigation { position: fixed; bottom: 0; left: 0; right: 0; display: none; table-layout: fixed; z-index: 101; background: #FFF; border-top: 1px solid #CCC; list-style: none; width: 100%; margin: 0; padding: 0; padding-bottom: env(safe-area-inset-bottom); }
#bottom-navigation li { display: table-cell; }
#bottom-navigation a { color: #666; display: block; padding: 7px 3px; font-size: 1.1rem; text-align: center; transition: all 0.2s; text-decoration: none; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
#bottom-navigation a:hover { color: #007aff; }
#bottom-navigation i { display: block; font-size: 1.8rem; margin-bottom: 2px; }
#bottom-navigation span { position: absolute; top: 4px; right: 4px; background: red; border-radius: 20px; font-weight: bold; padding: 0 4px; color: #FFF; }

.home-wrapper { display: table; table-layout: fixed; width: 100%; }
.home-wrapper .items-list { padding: 0; margin: 0 -10px; }
.home-wrapper .box { margin-top: 21px; }
.home-wrapper .box h2:first-of-type { color: #ff2d55; }
.home-wrapper .item { box-shadow: 0 7px 15px #333; }
.home-wrapper > div { display: table-cell; padding-left: 10px; vertical-align: top; width: 50%; }
.home-wrapper > div:first-child { padding-right: 10px; padding-left: 0; }
#home-box { background-image: url("/images/main-box.jpg"); background-size: cover; color: #FFF; min-height: 350px; position: relative; text-align: end; text-shadow: 0 0 3px #000; }
#home-box div { left: 14px; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); }
#home-box h1 { color: #FFF; font-weight: normal; margin: 0 0 7px; }
#home-box h1 b { font-size: 5.5rem; }
#home-box h1 span { display: inline-block; font-size: 3.3rem; margin-left: 14px; }
#home-box p { font-size: 2.3rem; font-weight: bold; margin: 0; }
.box-regions h2 { margin-top: 7px; }
.box-regions > a { display: inline-block; margin: 7px 14px 0 0; }

#items-map { display: none; height: calc(100vh - 66px); }
#items-switch { margin: 0; }
.items-list { box-sizing: border-box; display: -webkit-flex; display: flex; justify-content: center; -webkit-justify-content: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; padding: 14px; }
.items-list.horizontal-scroll { align-content: flex-start; max-height: 210px; flex-direction: column; overflow-y: auto; padding: 0; padding-bottom: 21px; margin-top: 21px; padding-left: 21px; margin-left: -21px; }
.items-list.horizontal-scroll .item { margin: 0; margin-right: 14px; }
.item { background-color: #FFF; background-position: center center; background-repeat: no-repeat; background-size: cover; border-radius: 7px; box-shadow: 0 7px 15px #777; display: inline-block; -webkit-flex-grow: 1; flex-grow: 1; height: 210px; line-height: normal; margin: 10px; max-width: 600px; min-width: 300px; overflow: hidden; position: relative; transition: all 0.2s; }
.item i.background-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 8rem; color: #333; }
.item:hover { transform: scale(1.04); }
.item-unesco { background: #FFF; border-bottom-left-radius: 7px; border-top-left-radius: 7px; height: 56px; padding: 7px; position: absolute; right: 0; top: 33%; z-index: 1; }
.item-top-content { background: rgba(0, 0, 0, 0) linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 100%); box-sizing: border-box; color: #ffcc00; font-size: 1.5rem; font-weight: 600; padding: 7px 7px 21px; position: absolute; text-align: center; top: 0; width: 100%; }
.item-top-content span { color: #DDD; display: block; font-size: 1.2rem; font-weight: normal; text-transform: uppercase; }
.item-fees, .item-fee, .item-open { float: left; }
.item-fee:first-child, .item-open:first-child { border-right: 1px solid #CCC; margin-right: 7px; min-width: 40px; padding-right: 7px; }
.item-fee:only-child { border: none; margin: 0; padding: 0; }
.item-opens { color: #4cd964; float: right; text-transform: uppercase; }
.item-infos { display: table; table-layout: fixed; white-space: nowrap; width: 100%; }
.item-info { display: table-cell; }
.item-content { background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 100%); bottom: 0; box-sizing: border-box; color: #ff9500; font-size: 1.3rem; padding: 28px 7px 7px; position: absolute; width: 100%; }
.item-content h3 { color: #FFF; font-size: 1.9rem; font-weight: 600; margin: 0; overflow: hidden; text-align: start; text-overflow: ellipsis; -webkit-line-clamp: 2; display: -webkit-box; -webkit-box-orient: vertical; margin-bottom: -3px; }
.item-content h3:nth-of-type(2) { color: #ff9500; font-size: 1.5rem; }
.item-rating i { color: #ffcc00; font-size: 1.4rem; margin-left: 2px; }
.item-bottom-content { display: flex; align-items: center; }
.item-location { font-weight: 600; flex: 1; line-height: 2.1rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.item-location i { margin-right: 7px; }
.item-attributes > * { margin-left: 7px; }
.item-distance { color: #4cd964; display: inline-block; font-weight: 600; margin-right: 7px; }
i.item-visit { color: #ffcc00; font-size: 2rem; }
i.item-visited { color: #ffcc00; font-size: 2rem; }
i.item-favorite { color: #ff2d55; font-size: 2rem; }
i.item-accessibility { color: #1db6fc; font-size: 2rem; }
.item-add { background: #F45C43; background: linear-gradient(to left, #EB3349 , #F45C43); color: #FFF; max-width: 100%; }
.item-add-content { font-size: 6.5rem; left: 0; position: absolute; right: 0; text-align: center; top: 50%; transform: translateY(-50%); }
.item-add-content p { font-size: 2.3rem; margin: 0; text-align: center; }

#item-header { left: 0; position: absolute; right: 0; z-index: 1; }
#item-header-content { background: rgba(0, 0, 0, 0) linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%); box-sizing: border-box; margin: auto; max-width: 1000px; padding: 14px; }
#item-header h1 { color: #FFF; margin: 0; font-size: 3.2rem; }
#item-header.full-width { border-radius: 0; margin-bottom: 21px; position: static; text-align: center; }
#item-header.full-width #item-header-content { background: #FFF; max-width: 100%; padding: 0; }
#item-header.full-width h1 { color: #333; }
#item-header.full-width .item-detail { color: #666; }
#item-header.full-width span { margin-top: 7px; padding: 1px 7px; }
#item-slider { box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); margin: auto; max-width: 1000px; }
#item-slider > div, #item-slider .slick-track { height: 550px; }
#item-slider .slider-item img { height: 100%; object-fit: cover; width: 100%; }
#item-slider i { color: #007aff; cursor: pointer; font-size: 7rem; position: absolute; text-shadow: 0 0 5px #000; top: 40%; left: 21px; padding: 0 14px; z-index: 1; }
#item-slider i:last-of-type { left: auto; right: 21px; }
#dummy-slider { height: 100px; }
.slider-author { bottom: 7px; color: rgba(255, 255, 255, 0.7); font-weight: bold; left: 7px; margin-left: 7px; position: absolute; }
.slick-slide { position: relative; }
.slick-dots { bottom: 0; box-sizing: border-box; list-style: none; margin: 0; padding: 0 7px 7px 0; position: absolute; text-align: end; width: 100%; }
.slick-dots li { background: #FFF; border-radius: 100%; cursor: pointer; display: inline-block; height: 11px; margin: 0 3px; transition: all 0.3s; width: 11px; }
.slick-dots li:hover, li.slick-active { background: #007aff; }
.slick-dots button { display: none; }
.item-detail { color: #FFF; display: inline-block; font-weight: bold; margin-right: 7px; margin-top: 7px; vertical-align: sub; }
.item-detail i { font-size: 1.9rem; font-weight: bold; vertical-align: middle; }
#content .item-detail.social-share { background: #3b5998; color: #FFF; border-radius: 7px; padding: 1px 7px; vertical-align: top; }
#content .item-detail.social-share i, #content .item-detail.page-print i { font-size: 1.4rem; margin-top: -3px; }
#content .item-detail.page-print { background: #666; color: #FFF; padding: 1px 7px; border-radius: 7px; vertical-align: top; }
#item-rating { cursor: pointer; }
#item-rating:hover { text-decoration: underline; }
#item-rating i { color: #ffcc00; margin-right: 2px; vertical-align: sub; }
#item-rating > div { display: inline-block; margin-right: 7px; vertical-align: sub; }
#item-interesting .items-list { padding: 0; }
.item-table { border-collapse: collapse; box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); border-radius: 7px; margin-bottom: 21px; overflow: hidden; width: 100%; }
.item-table th, .item-table td { background: #FFF; border: 1px solid #DDD; padding: 7px; text-align: center; }
.item-table th { background: #007aff; border: none; color: #FFF; }
.item-table th.special-day { background: #5856d6; }
.item-table td.closed { background: #EEE; color: #888; font-style: italic; }
.item-table td:last-child { border-right: none; }
.item-table td.highlight { background: #ff9500; border-bottom: none; border-top: none; color: #FFF; font-weight: bold; }
.item-table tr.actual-highlight td.actual { background: #4cd964; color: #fff; font-weight: bold; }
.item-table tr:not(.actual-highlight):hover td:not(.highlight) { background: #EEE; }
.item-table tr td:first-child { border-left: medium none; }
.item-table tr:last-child td { border-bottom: none; }
.item-table tr:nth-child(2) td { border-top: medium none; }
.item-table th.separator, .item-table td.separator { border-right: 1px solid #DDD; }
.item-hours-open { color: #27ae60; font-weight: bold; }
.item-hours-closed { color: #ff3b30; font-weight: bold; }
.item-prices-price b { color: #ff2d55; }
#item-events, #item-old-events { background: #FFF; border-radius: 7px; box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); overflow: hidden; }
#item-old-events { display: none; margin-bottom: 21px; }
.show-old-events { text-align: center; margin: 14px 0; }
.show-old-events a { background: #007aff; color: #FFF; cursor: pointer; padding: 7px 14px; transition: all 0.3s; border-radius: 7px; display: inline-block; text-decoration: none; }
.show-old-events a:hover { box-shadow: 0 0 5px #007aff; }
.item-event { border-bottom: 1px solid #999; box-sizing: border-box; display: table; width: 100%; }
.item-event:last-child { border: none; }
.item-event-left { display: table-cell; padding: 14px; }
.item-event-right { background: #EEE; border-left: 1px solid #CCC; display: table-cell; height: 100%; text-align: center; vertical-align: middle; width: 120px; }
.item-event img { float: right; margin-left: 7px; max-height: 120px; max-width: 120px; }
.item-event h3 { color: #007aff; font-size: 2.5rem; margin: 0 0 3px; text-align: start; }
.item-event .item-event-left div a { color: #ff9500; font-size: 1.4rem; font-weight: bold; }
.item-event-date { color: #777; }
.item-event-date span { background: #ff2d55; border-radius: 7px; color: #FFF; display: inline-block; font-weight: bold; margin-right: 7px; padding: 0 7px; vertical-align: middle; }
.item-event-date span.location { background: #5856d6; }
#item-events .item-event-facebook, #item-old-events .item-event-facebook { color: #3b5998; font-size: 2rem; line-height: 2.1rem; margin-right: 7px; vertical-align: top; }
.item-event p { margin-bottom: 0; margin-top: 7px; text-align: justify; }
.item-event-right.tickets-sell .item-event-fees { height: 33.333%; }
.item-event-right.tickets-sell .item-event-fees:last-child { background: #4cd964; border-top: 1px solid #CCC; line-height: 4.2rem; }
.item-event-right.tickets-sell .item-event-fees:last-child a { color: #FFF; display: block; font-size: 1.5rem; }
.item-event-fees { box-sizing: border-box; color: #555; display: table; font-size: 2rem; font-weight: bold; height: 50%; padding: 7px 0; width: 100%; }
.item-event-fees:first-child { border-bottom: 1px solid #CCC; }
.item-event-fees:only-child { border: none; }
.item-event-fees span { color: #888; display: block; font-size: 1.3rem; font-weight: normal; }
.item-event-fee { display: table-cell; vertical-align: middle; }
.item-event-ribbon { background: #ff3b30; bottom: 10px; box-shadow: 0 0 3px #000; color: #fff; font-weight: bold; position: absolute; right: -40px; text-align: center; transform: rotate(-45deg); width: 140px; }
.box-bike-park-details .box-column { vertical-align: middle; }
.box-bike-park-details img { max-width: 100%; max-height: 140px; display: block; margin-left: auto; margin-right: 0; border-radius: 7px; }
.gpx-download-button { background: #007aff; color: #FFF; padding: 7px 14px; transition: all 0.3s; margin-top: 7px; }
.gpx-download-button:hover { box-shadow: 0 0 5px #007aff; }
#map-cycle-waypoints { display: none; }
#map-cycle-route { height: 450px; margin: -14px -14px 0; }
#map-cycle-elevation { height: 150px; margin: 0 -14px -14px; width: calc(100% + 28px); }
#item-map, #item-navigation-map { border: none; height: 350px; vertical-align: top; width: 100%; }
#item-transports { display: table; width: 100%; }
.item-transport { display: inline-block; box-sizing: border-box; padding: 14px 7px; text-align: center; vertical-align: top; width: 50%; }
.item-transport:only-of-type { text-align: center; width: 100%; }
.item-transport:only-of-type p { text-align: center; }
.item-transport:first-of-type { padding-left: 0; }
.item-transport:last-of-type { padding-right: 0; }
.item-transport > i { color: #999; font-size: 3.5rem; margin: 0 7px; }
.item-transport h4 { color: #007aff; font-size: 2rem; margin: 7px 0 0; }
.item-transport p { margin-bottom: 0; margin-top: 7px; text-align: start; }
#form-buy-train-ticket { margin-top: 7px; }

#form-comment { margin: 14px auto; max-width: 500px; text-align: start; }
#form-comment label { display: block; font-weight: bold; }
#form-comment input[type="text"] { border: 1px solid #CCC; margin-bottom: 14px; width: 100%; }
#form-comment textarea { margin-bottom: 14px; }
#form-comment button { float: right; }
.entity-rating + div a.br-selected::after, .entity-rating + div a.br-active::after, #entity-rate + div a.br-selected::after, #entity-rate + div a.br-active::after { color: #ffcc00 !important; }
#comments { background: #FFF; border: 1px solid #CCC; border-radius: 7px; overflow: hidden; }
#comments > p { padding: 0 14px; text-align: center; }
.comment-warning { display: none; padding: 7px; border-radius: 7px; background: #ff9500; box-shadow: 0 0 7px #ff9500; margin-bottom: 7px; font-weight: bold; }
.comment { border-bottom: 1px solid #CCC; padding: 7px 14px; }
.comment > a { margin-left: 7px; }
.comment.response { background: #EEE; padding-left: 35px; }
.comment:last-child { border: none; }
.comment-author { color: #007aff; display: inline-block; font-size: 1.7rem; font-weight: bold; margin-right: 7px; }
.comment-author span { color: #666; font-size: 1.3rem; font-weight: normal; }
.comment-rating { color: #ffcc00; display: inline-block; font-size: 1.5rem; margin-right: 7px; }
.comment-time { color: #888; float: right; font-size: 1.4rem; margin-bottom: 7px; }
.comment-report { float: right; padding: 0 7px; margin-right: 7px; }
.comment-content { margin-top: 7px; }
.comment-images a { background-position: center; background-size: cover; border-radius: 7px; display: inline-block; height: 110px; margin-top: 14px; margin-right: 7px; vertical-align: top; width: 110px; }

.responsive-video { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.responsive-video iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#city-erb { float: right; max-height: 55px; max-width: 55px; }
#column-erb { text-align: center; }
#column-erb img { max-width: 100px; }
.region-districts { columns: 3; -moz-columns: 3; -webkit-columns: 3; padding-top: 7px; text-align: start; }
.region-districts a { display: block; font-weight: bold; margin-bottom: 7px; }
.region-districts span { color: #999; font-weight: normal; }

#event-poster { text-align: center; display: block; margin-bottom: 14px; }
#event-poster img { border-radius: 7px; max-width: 100%; max-height: 250px; vertical-align: top; }
#event-ended { color: #ff3b30; text-align: center; font-size: 3.5rem; margin: 0; font-weight: 600; }

#location-picker { float: right; }
#location-picker-wrapper { width: 90%; max-width: none; height: 90%; }
#location-picker-map { height: 100%; }

.fa.around-map { cursor: pointer; color: #5856d6; font-size: 1.8rem; vertical-align: middle; margin-left: 7px; }
#around-map-wrapper { width: 100%; max-width: none; height: 100%; }
#around-map-wrapper > div { display: flex; flex-direction: column; height: 100%; }
#around-map-wrapper h2 { margin-top: 0; margin-bottom: 14px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }
#around-map { flex: 1; height: 100%; margin-left: -14px; margin-right: -14px; margin-bottom: -14px; border-bottom-right-radius: 8px; border-bottom-left-radius: 8px; }

.box { background: #FFF; border-radius: 7px; box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); box-sizing: border-box; margin-bottom: 21px; margin-top: 0; overflow: hidden; padding: 14px; text-align: start; }
.box.no-padding { padding: 0; }
.box.box-items { margin-bottom: 7px; }
.box .fa-star { color: #ffcc00; }
.box h2, .content-wrapper > h2 { color: #666; font-size: 2.9rem; font-weight: normal; overflow: hidden; margin: 0; text-transform: uppercase; }
.content-wrapper > h2 { margin: 14px 0 7px; }
.content-wrapper > h2 span { float: right; font-size: 1.6rem; margin-top: 7px; text-transform: none; }
.box h2 a, .content-wrapper > h2 a { color: #ff9500; float: right; font-size: 1.7rem; margin-top: 7px; text-transform: none; }
.box > h3 { font-size: 2rem; font-weight: normal; margin: 7px 0; }
.box-columns-wrapper { display: table; margin-bottom: 14px; width: 100%; }
.box-columns-wrapper .box-column { display: table-cell; vertical-align: middle; }
.box-column { display: inline-block; vertical-align: top; width: 50%; }
.box ul:not(.content-list) { list-style: none; margin: 0 0 0 14px; padding: 0; }
.box ul:not(.content-list) li { margin-bottom: 2px; }
.box ul:not(.content-list) li:last-child { margin: 0; }
.box ul:not(.content-list) span.name { display: inline-block; font-weight: bold; vertical-align: middle; width: 150px; }
.box ul:not(.content-list) span.name2 { display: block; font-weight: bold; }
.box-navigation { background: #007aff; background: linear-gradient(0deg, #443fc6, #2190ff 130%); border-radius: 0 0 7px 7px; box-sizing: border-box; display: table; margin: 5px -14px -14px; overflow: hidden; table-layout: fixed; text-align: center; width: calc(100% + 28px); }
.box-navigation + .box-navigation { margin-top: 14px; }
.box-navigation a { color: #FFF; display: table-cell; padding: 7px 0; transition: all 0.2s; vertical-align: middle; }
.box-navigation a:last-child { border: none; }
.box-navigation a:hover, .box-navigation a.active { background: #1db6fc; color: #FFF; text-decoration: none; }
.box-navigation a.active { font-weight: bold; }
.box-navigation a span { background: #FFF; border-radius: 50px; color: #007aff; display: inline-block; font-weight: normal; margin-left: 7px; padding: 0 7px; }
.box-button { background: #007aff; border-radius: 7px; color: #FFF; display: inline-block; font-weight: bold; margin-right: 7px; margin-top: 14px; padding: 7px 14px; transition: all 0.2s; }
.box-button:hover { background: #1db6fc; text-decoration: none; }
.box-button2 { background: #ff9500; border-radius: 7px; color: #FFF; display: inline-block; font-size: 1.5rem; margin-left: 7px; padding: 7px 14px; transition: all 0.2s ease 0s; }
.box-button2:hover { box-shadow: 0 0 5px #ff9500; text-decoration: none; }
#box-report, #box-comment-report, #box-closed-permanent { display: none; overflow: visible; }
#box-closed-permanent { max-width: 100%; min-height: 100%; width: 100%; }
#box-closed-permanent > div { max-width: 1000px; margin: 0 auto; }

.page-form .form-row { line-height: 3.5rem; margin-bottom: 7px; }
.page-form form { display: block; margin: 21px auto auto; max-width: 365px; }
.page-form label:not(.special-label) { display: inline-block; font-size: 1.5rem; font-weight: bold; width: 145px; }
.page-form input { background: #FFF; border: 1px solid #CCC; width: 215px; }
.page-form button { font-weight: bold; margin-top: 7px; width: 100%; }

#page-rating label { font-weight: bold; }
#page-ratings { font-size: 3rem; font-weight: bold; width: 35%; margin: 14px auto 42px auto; text-align: center; }
#page-ratings .info { font-size: 1.9rem; text-align: left; }
#page-ratings input[type=radio] + label { border-radius: 100%; border: 3px solid transparent; color: #FFF; cursor: pointer; padding: 0 12px; text-decoration: none; transition: all 0.2s; }
#page-ratings input[type=radio] { display: none; }
#page-ratings input[type=radio]:checked + label, #page-ratings input[type=radio] + label:hover { box-shadow: 0 0px 10px #777; border: 3px solid #FFF; }

#around-me-loader { display: none; }
#around-me-link { float: left; color: #FFF; font-size: 25px; position: relative; transition: all 0.2s; padding-right: 7px; }
#around-me-link div { background: #ff2d55; box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); border-radius: 0 5px 5px 5px; opacity: 0; position: absolute; transition: all 0.2s; color: #FFF; font-size: 13px; left: 0; font-weight: bold; line-height: normal; bottom: -40px; padding: 7px 14px; white-space: nowrap; visibility: hidden; }
#around-me-link div i { margin-right: 7px; }
#around-me-link div:after { bottom: 100%; left: 7px; border: solid transparent; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; border-bottom-color: #ff2d55; border-width: 7px; margin-left: -7px; }
#around-me-link:hover, #around-me-link.active { color: #ff2d55; }
#around-me-link:hover div, #around-me-tip.active { opacity: 1; visibility: visible; }
.around-me-form { display: flex; flex-direction: row; flex-wrap: wrap; width: 100%; }
.around-me-form > div { display: flex; flex-direction: column; flex: 1; padding-right: 20px; }
.around-me-form > div:last-child { padding: 0; }
.around-me-form > div:last-child label:first-child { margin-top: 21px; }
.around-me-form > div:last-child label:last-child { margin-bottom: 0; }
.around-me-form input[type="checkbox"] { float: right; }
.around-me-form label > i { margin-right: 7px; }
#around-me-positioning, #around-me-positioning i { color: #007aff; }

#map-global { height: 100%; width: calc(100% - 250px); }
#map-global button, #items-map button, #item-navigation-map button { border-radius: inherit; }
#map-global.full-width { width: 100%; }
#map-autocomplete { position: absolute; left: 205px; top: 10px; background: #FFF; box-shadow: 0 7px 15px #777; border-radius: 7px; width: 260px; transition: all 0.2s; }
#map-autocomplete > i { margin-left: 7px; font-size: 1.9rem; color: #666; }
#map-autocomplete input { padding: 9px; width: 230px; }
#map-autocomplete ul { border-top: 1px solid #CCC; margin: 0; padding: 0; list-style: none; }
#map-search-results li { border-radius: 0; height: auto; padding: 5px 14px; cursor: pointer; transition: all 0.2s; font-weight: bold; }
#map-search-results li:hover, #map-search-results li:hover h4 { background: #1db6fc; color: #FFF; }
#map-search-results h4 { background: #FFF; margin: 0; font-size: 1.5rem; font-weight: normal; color: #007aff; overflow: hidden; padding-top: 0; white-space: nowrap; text-overflow: ellipsis; transition: all 0.2s; }
#map-search-results .search-results-separator { border-bottom: 1px solid #CCC; padding: 0; }
#map-filter { background: #FFF; bottom: 0; box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); box-sizing: border-box; overflow: auto; padding: 0 7px; position: absolute; right: 0; top: 0; width: 250px; -webkit-overflow-scrolling: touch; }
#map-filter h3 { color: #007aff; font-size: 2rem; margin: 7px 0; }
#map-filter h3 span { color: #ff9500; cursor: pointer; float: right; font-size: 1.3rem; font-weight: normal; margin-top: 7px; }
#map-filter h3 span:hover { text-decoration: underline; }
#map-filter input { margin-left: 7px; margin-right: 5px; }
#map-filter img { height: 25px; vertical-align: middle; }
#map-hide-filter, #map-show-filter { background: #007aff; border-radius: 7px; color: #FFF; cursor: pointer; display: none; font-weight: bold; margin: 7px auto auto; padding: 7px 14px; text-align: center; text-transform: uppercase; transition: all 0.2s; }
#map-hide-filter:hover, #map-show-filter:hover { background: #ff9500; }
#map-show-filter { box-shadow: 0 0 5px #666; position: fixed; right: 7px; top: 68px; }
.gm-style-iw-chr { position: absolute; right: 0; top: 0; }
.gm-style .gm-style-iw-c { padding-top: 12px !important; }
.map-tooltip { font-family: "Open Sans", sans-serif; min-width: 500px; }
.map-tooltip > a:first-child { background-position: center center; background-size: cover; float: left; height: 130px; width: 200px; }
.map-tooltip h3 { color: #007aff; font-size: 2.1rem; font-weight: normal; margin: 0; }
.map-tooltip span { color: #777; line-height: 3.5rem; }
.map-tooltip p { margin: 7px 0 0; }
.map-tooltip-content { font-size: 1.4rem; overflow: hidden; padding-left: 14px; }
.map-tooltip-controls { float: right; }
.map-tooltip-controls i { bottom: 0; position: relative; margin-left: 14px; right: 0; top: 3px; cursor: pointer; }
.map-tooltip-controls a { background: #007aff; border-radius: 7px; color: #FFF; display: inline-block; padding: 7px 14px; text-transform: uppercase; }
.map-route { color: #333; font-family: "Open Sans", sans-serif; font-weight: bold; }
.map-route b { font-size: 1.6rem; }
.map-route span { color: #27ae60; font-size: 1.4rem; }
#form-map-filter label { display: block; }
#map-hide-filter + label { margin: 7px 0; }
#form-map-filter label input { float: right; margin-top: 3px; }
#form-map-filter p { color: #666; font-size: 1.3rem; font-style: italic; margin: 0; }
#form-map-filter p a { font-weight: bold; }
#form-map-filter i { margin-right: 7px; vertical-align: middle; font-size: 1.8rem; }

.admin-table td { text-align: start; }
#admin-categories { text-align: center; }
.admin-category { background: #FFF; border: 1px solid #CCC; border-radius: 7px; display: inline-flex; align-items: center; justify-content: center; font-size: 1.6rem; height: 100px; margin: 7px; transition: all 0.2s; width: 184px; }
.admin-category:hover { box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.24); color: #ff9500; text-decoration: none; }
.admin-category i { display: block; margin-bottom: 7px; font-size: 25px; color: #5856d6; }
.admin-category img { display: block; margin: auto; margin-bottom: 7px; height: 35px; }
.admin-form label { display: block; font-weight: bold; margin-bottom: 7px; }
.admin-form label i { color: #666; font-size: 1.4rem; font-weight: normal; }
.admin-form input[type="text"], .admin-form input[type="number"], .admin-form input[type="file"], .admin-form input[type="email"], .admin-form textarea { background: #f9f9f9; border: 1px solid #CCC; margin-top: 7px; width: 100%; }
.admin-form input[type="checkbox"] { margin-left: 21px; }
.admin-form select { margin-bottom: 14px; min-width: 60px; }
.admin-form p { color: #666; font-weight: normal; margin: 7px 0 0; }
.admin-form > button { margin-top: 14px; }
.admin-form-column { box-sizing: border-box; display: inline-block; vertical-align: top; width: 50%; }
.admin-form-column:first-child { padding-right: 21px; }
#admin-gallery td:first-child { padding: 0; width: 180px; }
#admin-gallery input[type="text"] { border: 1px solid #CCC; width: 100%; }
#admin-gallery a { background-position: center center; background-size: cover; display: block; height: 120px; width: 180px; }
#admin-event-type { margin-top: 14px; }
.admin-image { display: inline-block; height: 160px; margin: 7px; position: relative; width: 228px; }
.admin-image a { background-position: center center; background-size: cover; display: inline-block; height: 100%; width: 100%; }
#city-select, .item-select { margin-bottom: 7px; width: 100%; }
#city-select + span .select2-container--default, #city-select + span .select2-selection--single, #content .item-select + span .select2-container--default, #content .item-select + span .select2-selection--single { background-color: #f9f9f9; border: 1px solid #aaa; border-radius: 4px; height: auto; padding: 7px 14px; }
#city-select + span .select2-selection__rendered, #content .item-select + span .select2-selection__rendered { color: #000; line-height: normal; font-weight: normal; font-size: 1.5rem; padding: 0; }
.select2-results__option--highlighted { background: #007aff !important; }
#content .select2-selection__arrow { top: 6px; }
#city-select-margin { margin-bottom: 7px; }
#chart-partner, #chart-stats, #chart-forecast { height: 300px; }

#user-info { margin-bottom: 14px; }
#user-info h2 { color: #ffcc00; margin-bottom: 7px; margin-top: 0; font-size: 2.3rem; text-align: center; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
#user-info a { color: #1db6fc; font-weight: bold; }

#newsletter { background: #1f1f1f; color: #FFF; padding: 21px 0 0; text-align: center; }
#newsletter h2 { font-size: 4rem; margin: 0 0 14px; }
#newsletter p { color: #BBB; font-size: 1.7rem; margin: 0 0 21px; }
.form-newsletter { display: table; margin: auto; }
.form-newsletter input:first-child { border: 1px solid #AAA; border-right: none !important; border-radius: 7px 0 0 7px; display: table-cell; max-width: 250px; vertical-align: middle; width: calc(100% - 100px); }
.form-newsletter button { border: 1px solid #007aff; border-radius: 0 7px 7px 0; display: table-cell; vertical-align: middle; width: 100px; }
.newsletter-msg { display: block; padding: 14px; }

#visits-sort {
	overflow: hidden;
}
#visits-sort h2 {
	display: inline-block;
}
#visits-sort h4 {
	margin: 0;
	display: inline-block;
}
#visits-sort > div {
	float: right;
	margin-right: 14px;
}
#visits-sort .segmented-control { max-width: 119px; display: inline-table; margin-left: 7px; }

#footer { background: #1f1f1f; color: #DDD; padding: 21px 0; }
#footer .wrapper:first-child { box-sizing: border-box; display: table; table-layout: fixed; width: 100%; }
.footer-col { box-sizing: border-box; display: table-cell; padding-right: 7px; vertical-align: top; }
.footer-col:last-child { padding-right: 0; }
#footer h2 { color: #FFF; font-size: 2.3rem; line-height: 3rem; margin: 0; }
#footer h2 span { font-size: 1.8rem; font-weight: normal; margin-left: 5px; }
#footer h3 { border-bottom: 1px solid #fff; color: #fff; display: inline-block; font-size: 1.6rem; margin: 0; padding: 0 14px 7px 0; }
#footer ul { list-style: outside none; margin: 7px 0 0 7px; padding: 0; }
#footer i { font-size: 1.8rem; margin-right: 7px; text-align: center; vertical-align: text-top; width: 19px; }
#footer a { color: #DDD; display: inline-block; padding: 3px 0; }
#footer p { margin: 7px 0; }

body .jquery-modal.blocker { z-index: 1000; }
body .jquery-modal .modal { padding: 14px; }
body .jquery-modal a.close-modal { background: #007aff; background-image: none; text-indent: 0; font-size: 2rem; border-radius: 100%; color: #FFF; text-align: center; }

.loader { margin: auto; overflow: hidden; text-align: center; }
.dot { animation: loader 1000ms ease infinite 0ms; border: 2px solid #007aff; border-radius: 50%; display: inline-block; height: 10px; margin: 0 7px; transform: scale(0); width: 10px; }
.dot:nth-child(2) { animation: loader 1000ms ease infinite 300ms; }
.dot:nth-child(3) { animation: loader 1000ms ease infinite 600ms; }

@keyframes loader { 50% { transform: scale(1); opacity: 1; } 100% { opacity: 0; } }
@keyframes bounce { 0%, 20%, 50%, 80%, 100% { transform: translateY(0); } 40% { transform: translateY(-25px); } 60% { transform: translateY(-15px); } }

@media only screen and (max-width: 1000px) {
	#content-sidebar { width: 270px; }
	#content-main { left: 270px; }
	.item { margin: 7px; }
	.items-list { padding: 7px; }
	.sidebar-link { padding-left: 7px; }
	#item-slider > div, #item-slider .slick-track { height: 400px; }
	#column-erb { width: 20%; }
	.admin-column-hide, .page-print { display: none; }
}

@media only screen and (max-width: 800px) {
	#content-sidebar { padding: 7px; width: 250px; }
	.sidebar-detail i { margin-right: 7px; }
	#items-filter label { font-size: 1.5rem; }
	#content-main { left: 250px; }
	.box h2, .content-wrapper > h2 { font-size: 2.3rem; }
	.box h2 a, .content-wrapper > h2 a, .box h2 span, .content-wrapper > h2 span { font-size: 1.6rem; margin-top: 7px; }
	#item-slider > div, #item-slider .slick-track { height: 300px; }
	.content-information { font-size: 1.4rem; line-height: 2.1rem; }
	.item-event-right { width: 80px; }
	#header-bottom > ul > li > a { font-size: 1.6rem; }
	.box-navigation a span { display: none; }
	#footer-wrapper { display: block; }
	.footer-col { display: block; margin-bottom: 14px; }
	.map-tooltip { min-width: auto; }
	.map-tooltip h3 { font-size: 1.9rem; }
	.map-tooltip p { margin: 0; }
	.map-tooltip-content { padding: 0; }
	.map-tooltip > a:first-child { display: none; }
}

@media only screen and (max-width: 750px) {
	#header-top ul { background: #1f1f1f; border-top-left-radius: 5px; bottom: 0; box-shadow: 0 0 10px #333; opacity: 0; overflow: auto; position: fixed; right: -270px; top: 32px; transition: all 0.2s; visibility: hidden; width: 270px; z-index: 5; }
	#header-top ul.visible { display: flex; flex-direction: column; opacity: 1; right: 0; visibility: visible; }
	#header-top li { float: none; font-size: 1.5rem; line-height: normal; padding: 7px 14px; text-align: start; order: 1; }
	#header-top li > a { display: block; font-size: 1.6rem; font-weight: bold; margin-bottom: 7px; }
	#header-top li > a i { display: none; }
	#header-top li > div { box-shadow: none; opacity: 1; position: static; visibility: visible; width: auto; }
	#header-top a { color: #FFF; }
	#button-menu { display: inline-block; }
	i.item-favorite { font-size: 2.4rem; }
	.box-column:first-child { margin-bottom: 21px; }
	.box-column { display: block; width: 100%; }
	.box-bike-park-details img { margin: auto; }
	#header-bottom > ul { table-layout: initial; }
	.region-districts { columns: 2; -moz-columns: 2; -webkit-columns: 2; }
	#map-autocomplete { left: 10px; top: 60px; }
	.slider-author { font-size: 1.2rem; }
}

@media only screen and (max-width: 650px) {
	#content .home-wrapper > div { display: block; padding: 0; width: 100%; }
	#home-box, #event-poster, .box-hide, #unesco { display: none; }
	#header .wrapper { padding-right: 0; }
	#header-bottom { text-align: start; }
	#content-sidebar { display: none; width: 100%; position: fixed; top: 66px; bottom: 0; left: 0; right: 0; }
	#content-main { left: 0; position: static; width: 100%; }
	#sidebar-back, #sidebar-forecast { margin-bottom: 56px; }
	#sidebar-forecast + #sidebar-back { margin-top: -56px; }
	#footer { padding-bottom: 49px; }
	#bottom-navigation { display: table; }
	#button-menu2, #button-menu3 { display: inline-block; }
	#header-bottom ul { background: #FFF; box-shadow: 0 4px 20px #333; display: none; left: -10px; margin: 0; position: absolute; right: 0; top: 33px; width: auto; }
	#header-bottom > ul > li { display: inline-block; width: 50%; }
	#header-bottom > ul > li:last-child { display: inline-block; }
	#header-bottom > ul > li > a { border: 1px solid #EEE; color: #007aff; padding: 14px 0; text-align: center; }
	#header-bottom > ul > li > a i { display: block; }
	#header-bottom ul li:hover ul { display: none; }
	.box-navigation a { border: none; display: inline-block; padding: 7px 10px; }
	#map-global { width: 100%; }
	#map-filter { position: fixed; right: -250px; top: 66px; transition: all 0.2s; }
	#map-filter.visible { right: 0; }
	#map-hide-filter, #map-show-filter { display: block; }
	#item-header.full-width { padding: 7px; }
	.around-me-form { display: block; }
	.around-me-form > div { padding: 0; }
	.around-me-form label > span:first-child { display: none; }
	.around-me-form > div:last-child label:first-child { margin-top: 7px; }
	.no-content { font-size: 2rem; }
	.no-content i { font-size: 6rem; }
	.no-content span { font-size: 1.5rem; }
}

@media only screen and (max-width: 600px) {
	#item-header h1 { font-size: 2.5rem; }
	.item { margin: 5px 0; }
	.item { height: 150px; }
	.item-unesco { height: 40px; padding: 4px; }
	.box { margin-bottom: 14px; }
	.item-event h3 { font-size: 1.7rem; }
	.home-wrapper .items-list { margin: 0; }
	#search-results { left: 0; width: auto; }
	#search-columns { flex-direction: column; }
	.search-column { width: 100%; }
	.search-city:nth-child(4), .search-city:nth-child(5) { display: none; }
	.horizontal-wrapper { padding-left: 14px; padding-top: 14px; padding-bottom: 14px; }
	.horizontal-wrapper h2 { font-size: 2.2rem; }
	.items-list.horizontal-scroll { padding-left: 14px; margin-left: -14px; }
	#around-map-wrapper h2 { font-size: 1.5rem; }
}

@media only screen and (max-width: 450px) {
	.box h2, .content-wrapper > h2 { font-size: 1.9rem; text-transform: none; }
	.box h2 a, .content-wrapper > h2 a { margin-top: 3px; }
	#search-box i.fa-search { float: left; margin-right: 0; }
	#search-box i.fa-times-circle-o { display: none; float: right; }
	#search-box input.focused { text-align: center; width: calc(100% - 40px); }
	#search-box input { font-size: 1.6rem; transition: none; width: 1px; }
	#item-header-content { padding: 7px; }
	#item-header h1 { font-size: 2.2rem; }
	#item-slider i { left: 0; font-size: 5rem; }
	#item-slider i:last-of-type { right: 0; }
	.slick-dots { margin: 0; }
	.slick-dots li { height: 7px; width: 7px; }
	.item-event-left { border: none; display: block; width: auto; }
	.item-event-right { border: none; display: table; table-layout: fixed; width: 100%; }
	.item-event-fees { border-top: 1px solid #CCC; display: table-cell; }
	.item-event-fees:first-child { border-right: 1px solid #CCC; border-bottom: none; }
	.item-event-fee { display: block; }
	#item-transports .content-information { display: none; }
	.region-districts { columns: 1; -moz-columns: 1; -webkit-columns: 1; }
	.admin-form-column { display: block; width: 100%; }
	.admin-form-column:first-child { padding: 0; }
	.admin-image { margin: 0 0 7px; width: 100% }
	.content-wrapper > h2 span { display: none; }
	#search-box.focused { left: 0; right: 10px; }
	.box-columns-wrapper, .box-columns-wrapper .box-column { display: block; }
	#column-erb { width: 100%; }
	#map-autocomplete { right: 10px; width: auto; }
	#event-ended { font-size: 2.4rem; }
	.table-column-hide { display: none; }
}

@media only screen and (max-width: 400px) {
	#item-slider > div, #item-slider .slick-track { height: 250px; }
	#item-map, #item-navigation-map { height: 250px; margin: 0 -14px -14px; width: calc(100% + 28px); }
	#map-cycle-route { height: 250px; }
	.content-wrapper { padding: 0 10px; }
	.item-table { border-radius: 0; margin-left: -10px; margin-right: -10px; width: calc(100% + 20px); }
	.item-table th, .item-table td { padding: 4px; }
	.page-form form { text-align: center; }
	.item-event-date a { display: none; }
}

@media only screen and (max-height: 470px) {
	#bottom-navigation { display: none; }
}

@media print {
	@page {
        margin: 0cm;
    }

	#header, #footer, #newsletter, #item-slider, #form-comment, #comments, #item-interesting,
		#item-transports, #sidebar-controls, h2 a, h3 a, .item-event img, .item-event-right,
		#city-erb, #items-box, .items-list, #sidebar-newsletter, #sidebar-back, .social-share, .page-print, .hide-print,
		.segmented-control, #item-rating, .hide-print, .fa.around-map, .coordinates-swap { display: none !important; }
	#content { position: static; }
	#content-sidebar { box-shadow: none; width: 250px; }
	#content-main { left: 240px; }
	#item-header { padding: 14px; position: relative; background: none; }
	#item-header h1 { font-size: 2.8rem; }
	.box h2, .content-wrapper > h2 { font-size: 2.3rem; }
	#content, .box { overflow: visible !important; }
}

@media (prefers-color-scheme: dark) {
	#header { background: #222; box-shadow: none; border-bottom: 1px solid #444; }
	#content-sidebar { background: #222; box-shadow: none; border-right: 1px solid #444; }
	#content { background-image: none !important; }
	.admin-form input[type="text"], .admin-form input[type="number"], .admin-form input[type="file"], .admin-form input[type="email"], .admin-form textarea, .page-form input, #admin-gallery input[type="text"], .form-newsletter input, .select2-search__field { color: #FFF; background: #111; border: 1px solid #666; }
	#city-select + span .select2-container--default, #city-select + span .select2-selection--single, #content .item-select + span .select2-container--default, #content .item-select + span .select2-selection--single, .select2-dropdown { background: #111 !important; }
	body { background: #111; color: #EEE; }
	.map-tooltip p { color: #444; }
	.item, .event { box-shadow: none; }
	.item-table td, #bottom-navigation { border-color: #444; }

	@media only screen and (max-width: 650px) {
		#header-bottom > ul > li > a { border-color: #444; }
	}

	.item-table tr:not(.actual-highlight):hover td:not(.highlight),
	#search-box,
	.box-navigation,
	.item-event-right,
	.item-table td.closed,
	#bottom-navigation,
	.comment.response,
	.select2-container--default .select2-results__option[aria-selected="true"] {
		background: #333 !important;
	}

	#comments,
	.box,
	#header-bottom ul,
	#header-bottom ul li ul,
	#header-top li > div,
	.item-table td,
	.admin-category,
	#search-results,
	#map-filter,
	body .jquery-modal .modal,
	#item-header.full-width #item-header-content,
	#item-events, #item-old-events {
		background: #222;
	}

	.box h2,
	#content-sidebar,
	.content-information,
	#sidebar-controls > *,
	.sidebar-location, .sidebar-link,
	.forecast .day,
	#search-box input,
	#search-results,
	.item-event-fees,
	#item-header.full-width h1 {
		color: #EEE;
	}

	#header-bottom ul li ul a,
	#header-top li > div > a,
	.search-result span,
	.admin-form p,
	#bottom-navigation a,
	.content-information.updated,
	#city-select + span .select2-selection__rendered, #content .item-select + span .select2-selection__rendered {
		color: #CCC;
	}
}
