@charset 'UTF-8';
@font-face { font-family: 'SuisseIntl'; font-weight: 500; font-style: normal; src: url('./fonts/SuisseIntl-Book-WebM.eot'); src: url('./fonts/SuisseIntl-Book-WebM.eot?#iefix') format('embedded-opentype'), url('./fonts/SuisseIntl-Book-WebM.woff2') format('woff2'), url('./fonts/SuisseIntl-Book-WebM.woff') format('woff'), url('./fonts/SuisseIntl-Book-WebM.ttf') format('truetype'); } 
@font-face { font-family: 'SuisseIntl'; font-weight: 400; font-style: normal; src: url('./fonts/SuisseIntl-Regular-WebM.eot'); src: url('./fonts/SuisseIntl-Regular-WebM.eot?#iefix') format('embedded-opentype'), url('./fonts/SuisseIntl-Regular-WebM.woff2') format('woff2'), url('./fonts/SuisseIntl-Regular-WebM.woff') format('woff'), url('./fonts/SuisseIntl-Regular-WebM.ttf') format('truetype'); }
@font-face { font-family: 'TheWNYC'; font-weight: 700; font-style: normal; src: url('./fonts/TheWNYC-Regular-WebXL.eot'); src: url('./fonts/TheWNYC-Regular-WebXL.eot?#iefix') format('embedded-opentype'), url('./fonts/TheWNYC-Regular-WebXL.woff2') format('woff2'), url('./fonts/TheWNYC-Regular-WebXL.woff') format('woff'), url('./fonts/TheWNYC-Regular-WebXL.ttf') format('truetype'); }

/**
 * © 2019-2021 Higi Bigler (nullnulleins.ch). All rights reserved.
 */
* { margin: 0; padding: 0; }
html, body { height: 100%; }
/*          italic small-caps bold */
body { font: normal normal normal 1.25em/1.25 'SuisseIntl', Arial, Helvetica, sans-serif; margin: 0; padding: 0; -webkit-text-size-adjust: none; background-color: #FFF; letter-spacing: 0; overflow-y: scroll; }


/**/
#logo span, hr, .bg0, .bg0hover:hover, #closebutton:before, #closebutton:after, span.gvideoembed:before, .day.active, .day.visible, label.checkbox input[type=checkbox]:checked + span, main form input.radio:checked + span:after { background-color: var(--c0); }
.bg0trans { background-color: var(--c0a); }
body, .fg0, .searchresults ol li { color: var(--c0); border-color: var(--c0); }
#logo span span, .bg1, .slider li a:hover:after, .slider li a.active:after, article table.prices td.price, main form a.imagebutton, main form li.formerrors, main form .qq-uploader-selector.qq-uploader button.button { background-color: var(--c1); }
.b0, label.checkbox input[type=checkbox]:checked + span, a.boxedlink:hover { border-color: var(--c0); }
.b1 { border-color: var(--c1); }
span.gvideoembed:after { border-left-color: var(--c1); }
.fg1, main form li.error label { color: var(--c1); border-color: var(--c1); }
#mzf { fill: var(--c0); }
#buildingmap rect, #buildingmap polygon, #buildingmap path, #cursor rect { fill: var(--c1); }
#buildingmap polygon.bg0trans { fill: var(--c0a); }
main form .formfoot.submitting { background: linear-gradient(90deg, var(--c0) 4px, transparent 2px); background-size: 10px 3px; background-repeat: repeat; }

/* */
#header .header, #homenavigation, #subnavigation, h3, .marquee h2, .smalltitle h1, .smalltitle h2, #agendalist h2, #sharingiscaringlists h2,
.marquee > div span, .teaserfooter a, .infinitescroll.loader a, div.date span,
.teaserscroller article.noimage .description, .tabrider a, #tenantlists > article, .indexlist,
.event.status span.status span, .slide.status span.status span,
form fieldset legend, #sharingiscaringsearch input { font-size: 150%; line-height: 1.133333333333333; letter-spacing: .0175em; font-weight: 500; }
form fieldset.componentwrapper legend { font-size: 100%; }
.indexlist, #tenantlists > article { font-weight: 400; }
#tenantshortlist { font-size: 66.66666666666667%; line-height: 1.25; }

#agendalist h2, .marquee h2, .smalltitle h1, .smalltitle h2, #sharingiscaringlists h2 { font-family: 'SuisseIntl', Arial, Helvetica, sans-serif; text-align: left; }
.smalltitle { padding: .75em 1em .8em 1em; border-bottom-width: 3px; border-bottom-style: solid; margin: 0; }
.smalltitle h1, .smalltitle h2 { margin: 0; }
.marquee h2 { text-align: center; }
#navigation, .imageheader q, h1, h2 { font-family: 'TheWNYC'; font-size: 425%; font-size: 600%; text-align: center; }
.imageheader q { line-height: 1; margin: 0 0 .15em; }
h1, h2 { text-align: center; line-height: 1; }
section > .h1wrapper:first-child { margin-left: 1em; margin-right: .5em; }
section > .h1wrapper:first-child h2 { text-align: left; }

/* structure */
#container { max-width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; min-height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; background-color: #FFF; }
header, footer { -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; }

footer { padding: 1.2em 1em; position: relative; }
footer > div { display: table; width: 100%; }
footer > div > div { display: table-cell; }
footer > div > div:first-child { padding-right: .5em; }
footer > div > div:last-child { padding-left: .5em; }

main { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; }

header > div { padding: 1.1em; border-bottom: 3px solid transparent; }
#header { height: 5.75em; box-sizing: border-box; background-color: #FFF; position: relative; z-index: 5; }
#header .header { text-align: center; margin: 0 2.75em; white-space: nowrap; }
#header .header a { display: inline-block; }
#header .header a:hover { font-style: normal; }
#header .header div:last-child { display: none; }
#header .header div span { display: inline-block; }

#logo { position: fixed; left: 1em; top: 1.2em; z-index: 4; transition: transform .35s, left .35s, top .35s; transform-origin: 0; }
#logo div { display: block; border-radius: 50%; width: 3.125em; height: 3.125em; position: relative; }
#logo a div { animation-name: rotator; animation-duration: 50s; animation-iteration-count: infinite; animation-timing-function: linear; transform-origin: 50%; }
body.smallerlogo #logo { transform: scale(.666) translateY(-1.35em); top: 1em; }

#hamburger { position: absolute; display: block;  top: 1.4em; left: 1.4em; width: 2.725em; height: 2.725em; padding: .8em .5em; box-sizing: border-box; display: flex; }
#hamburger span { border: none; border-bottom-width: 3px; border-top-width: 3px; border-top-style: solid; border-bottom-style: solid; display: block; position: relative; flex-grow: 1; }
#hamburger span:before { display: block; content: ''; border-top-width: 3px; border-top-style: solid; position: absolute; left: 0; top: calc(50% - 1px); width: 100%; }

nav { position: fixed; top: 0; left: 0; right: 0; bottom: 0; text-align: center; display: none; z-index: 4; box-sizing: border-box; z-index: 5; }
body.shownavigation nav { display: block; }
nav > div { height: 100%; overflow: auto; }
nav > div > div { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; min-height: 100%; }
#navigation { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-bottom: .25em; }
#navigation ul ul { display: none; }
#closebutton { position: fixed; top: 1.4em; left: 1.4em; width: 2.725em; height: 2.725em; display: block; z-index: 2; }
#closebutton:before, #closebutton:after { content: ''; width: 1.8em; height: 3px; display: block; transform: rotate(45deg); transform-origin: 1.5px 0; position: absolute; top: .75em; left: .75em; }
#closebutton:after { transform: rotate(-45deg); transform-origin: calc(3em + 1.5px) 1.3625em; top: -0.625em; }

#navigation .searchform { display: none; padding: .25em; }
#navigation .searchform li:last-child { display: none; }
#navigation .searchform input { font-size: inherit; font-family: inherit; line-height: inherit; border: none; width: 100%; box-sizing: border-box; text-align: center; color: inherit; background-color: transparent; border-bottom-style: solid; border-bottom-width: 3px; }
body.searchform #navigation > ul /*, body.searchform #homenavigation a*/ { display: none; }
body.searchform #navigation .searchform { display: block; }
input[type="search"] { -webkit-appearance: none; border-radius: 0; outline: none; }

nav a, .nav a { text-decoration: none; }
nav a.active, .nav a.active, nav a:hover, .nav a:hover { text-decoration: none; font-style: normal; }

nav a span, .nav a span { -webkit-transition: transform .15s; transition: transform .15s; display: inline-block; -webkit-backface-visibility: hidden; -webkit-transform: translateZ(0) scale(1.0, 1.0); transform: translateZ(0); font-smoothing: antialiased !important; }
nav a.active span, nav a.activesparent span, .nav a.active span, nav a:hover span, .nav a:hover span { -webkit-transform: translateZ(0) scale(1.0, 1.0) skew(-15deg); transform: translateZ(0) skew(-15deg); font-style: normal; }

#homenavigation, #subnavigation { padding: 1.45em 1em .85em; }
#subnavigation li { margin: 0 .375em; }

#subnavigation ul, #subnavigation li { display: inline-block; }
#languageselector { display: inline-block; margin: 0 .375em; }
#languageselector li { text-transform: capitalize; margin: 0; }
#languageselector li:before { content: '/'; margin: 0 .125em; }
#languageselector li:first-child:before { content: ''; display: none; }

#anchornavigation { box-sizing: border-box; padding: 0; position: -webkit-sticky; position: sticky; top: 0; background-color: #FFF; margin: 0 0 -3px; z-index: 2; }

#footernavigation { padding: 1.2em 0 0; }
#footernavigation li { display: inline-block; }
#footernavigation li:before { content: ' |'; margin: 0 .3em; }
#footernavigation li:first-child:before { content: ''; display: none; }

.nav ul { list-style: none; }

#content { }
.fgw { color: #FFF; }
h1, h2 { margin: .3em 0; }
h3 { margin: 1.6666em 0 .8333em; }
article > div:first-child h3:first-child, article > a > div:first-child h3:first-child, h3 + h3 { margin-top: .7em; }
p { margin: 1.25em 0; }
footer p { margin: 0; }
div.h1wrapper { padding: .2em 0 .05em; }
strong, b { font-weight: 500; }
sup, sub { vertical-align: text-top; font-size: 75%; }
sub { vertical-align: text-bottom; }
hr { height: 3px; margin: 1.25em 0; padding: 0; width: 2.5em; background-color: #000; border: none; }

a { text-decoration: underline; color: inherit; }
a:hover { text-decoration: none; /*font-style: italic;*/ }
a img { border: none; }

main ul, #ckeditorarea ul { list-style: disc; padding-left: 1em; }
main li, #ckeditorarea li { position: relative; padding-left: .25em; margin: 1.25em 0; }

/* home */
#topnews { border-bottom-width: 3px; border-bottom-style: solid; }

/* imageslider */
.slider { position: relative; width: 100%; }
.slider .sliderscroller { overflow-x: scroll; scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; -ms-scroll-snap-type: mandatory; scroll-snap-type: mandatory; -ms-scroll-snap-points-x: repeat(100%); scroll-snap-points-x: repeat(100%); -ms-scroll-snap-type: x mandatory; scroll-snap-type: x mandatory; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; scroll-behavior: smooth; }
.slider .sliderscroller::-webkit-scrollbar { width: 0 !important; height: 0 !important; }
.slider .sliderscroller .slide { width: 100%; min-width: 100%; scroll-snap-align: start; }
.slider ol { position: absolute; bottom: 0; left: 0; right: 0; text-align: center; padding: .5em; }
.slider ol li { display: inline-block; margin: 0; padding: 0; }
.slider ol li a { padding: .2em; display: block; }
.slider ol li a:after { content: ''; display: block; width: .5em; height: .5em; background-color: #FFF; border-radius: 50%; /*border: 1px solid #FFF;*/ }

.slider .slideinner { transition: .5s transform; transform: translateX(0em); }
.slider.preview.prev .slideinner { transform: translateX(4em); }
.slider.preview.next .slideinner { transform: translateX(-4em); }

/* imageslider click-area */
.slider a.navigation { width: 4em; position: absolute; top: 0; bottom: 0; transition: .5s opacity; opacity: 0; /*opacity: .5; outline: 1px solid yellow; background-color: rgba(255,0,0,.5) !important;*/ }
.slider.headerimage a.navigation { width: 12vw; }
.slider a.navigation.prev { left: 0; background: -moz-linear-gradient(left, rgba(255,255,255,0.15) 0%, rgba(255,255,255,0) 100%); background: -webkit-linear-gradient(left, rgba(255,255,255,0.15) 0%,rgba(255,255,255,0) 100%); background: linear-gradient(to right, rgba(255,255,255,0.15) 0%,rgba(255,255,255,0) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#66ffffff', endColorstr='#00ffffff',GradientType=1 ); cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 146.36 121.7" height="36" width="48" fill="black"><path d="M313.53,285.27l12.52,12.91L287.5,336.53H399.42v19H287.11l38.94,38.55L313.53,407l-60.46-60.85Z" transform="translate(-253.07 -285.27)"/></svg>') 0 0, w-resize; }
.slider a.navigation.next { right: 0; background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.15) 100%); background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,0.15) 100%); background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,0.15) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#66ffffff',GradientType=1 ); cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 146.36 121.7" height="36" width="48" fill="black"><path d="M339,407l-12.52-12.91L365,355.71H253.07v-19H365.38l-38.94-38.55L339,285.27l60.46,60.85Z" transform="translate(-253.07 -285.27)"/></svg>') 32 0, e-resize; }
.slider a.navigation:hover { opacity: 1; }
.slider a.navigation.hidden { display: none; }
.slider.first a.navigation.prev { display: none; }
.slider.last a.navigation.next { display: none; }
.slider.first a.navigation.next, .slider.last a.navigation.prev { width: 8em; }

/* image in the slider */
.imageheader { background-color: #EFEFEF; }
.imageheader .figurewrapper { }
.imageheader figure { height: 50vw; max-height: 75vh; min-height: 20em; position: relative; overflow: hidden; }
.imageheader figcaption { position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; color: #FFF; }
.imageheader figcaption > span { padding: 1em 2em 0; display: block; text-align: center; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; }
.imageheader figcaption > span.title { -webkit-box-flex: 2; -ms-flex-positive: 2; flex-grow: 2; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; text-align: center; }
.imageheader figcaption > span:last-child { -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; padding-bottom: 2.25em; }
.imageheader figcaption span.subtitle { max-width: 38em; margin: 0 auto; }
.imageheader img { width: 100%; height: auto; }
.imageheader .imagewrapper { background-size: cover; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-position: center; }
.imageheader .imagewrapper img { display: none; }
.imageheader q:before, .imageheader q:after { content: ''; display: none; }
.imageheader a:hover { font-style: normal; }
.imageheader figure div.imagewrapper:after { content: ''; background-image: inherit; background-position: inherit; background-size: inherit; display: block; top: 0; left: 0; right: 0; bottom: 0; position: absolute; filter: url('#duotone'); }

/* filter */
#duotonefilter { display: block; position: absolute; left: -987654321px; top: 0; }

/* agenda */
body.agenda .h1wrapper { border-bottom-width: 3px; border-bottom-style: solid; margin: 0; }
#agendalist { padding: 0 0 1em; }
#agendalist .dategroup { position: relative; /*border-top-width: 3px; border-top-style: solid;*/ border-bottom-width: 3px; border-bottom-style: solid; }
#agendalist .dategroup:last-child, #agendalist article:last-child, #agendalist .lastvisible { border-bottom: none; }
#agendalist .dategroup > div.date { padding: 1em 0 1em 1em; position: -webkit-sticky; position: sticky; top: calc(7.25em - 3px); white-space: nowrap; width: 9.5em; box-sizing: border-box; float: left; clear: both; z-index: 1; }
#agendalist .dategroup[style*="overflow"] { min-height: 0; }
#agendalist .dategroup[style*="overflow"] > div.date { top: -3px; }
#agendalist .dategroup > div.date br { display: none; }
#agendalist article { margin-left: 9.5em; border-bottom-width: 3px; border-bottom-style: solid; /* border-top-width: 3px; border-top-style: solid; margin-bottom: -3px; /* position: relative;*/ }
#agendalist div.date + article { border-top: none; }

#agendalist article > div { padding: 1em 0 1em; }
#agendalist article > div.time { white-space: nowrap; }
article.event span.venues, .event span.categories { display: block; }
#agendalist div.row h2 { margin: 0; overflow: hidden; }

#agendalist div.row > a { display: -webkit-box; display: -ms-flexbox; display: flex; text-decoration: none; }
#agendalist div.row > a:hover { font-style: normal; }
#agendalist div.details > div.row { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }
#agendalist div.row div.title, #agendalist div.row div.type, #agendalist div.row div.text, #agendalist div.row div.time { width: calc(50% - 4.75em); -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; -ms-flex-negative: 0; flex-shrink: 0; box-sizing: border-box; }
#agendalist div.row div.type, #agendalist div.row div.title, #agendalist div.row div.text { padding-right: .5em; }
#agendalist div.row div.type, #agendalist div.row div.image { padding-left: .5em; }
#agendalist div.row div.image { width: calc(50% + 4.75em); padding-right: 0; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; -ms-flex-negative: 0; flex-shrink: 0; }
#agendalist div.row div.time { width: 9.5em; padding-right: .5em; }

#agendalist div.details { display: none; padding: 0; position: relative; }
#agendalist div.details.initial { display: block; }
#agendalist div.text { padding-right: 1em; -webkit-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; -ms-flex-negative: 0; flex-shrink: 0; }
#agendalist div.text a { word-break: break-word; }
#agendalist div.text *:first-child { margin-top: 0; }

a .italicize span { transition: -webkit-transform .15s; transition: transform .15s; display: inline-block; font-smoothing: antialiased !important; -webkit-backface-visibility: hidden; -webkit-transform: translateZ(0) scale(1.0, 1.0); transform: translateZ(0); z-index: 0; word-break: break-word; }
.teaserscroller article.noimage .description { word-break: break-word; }
a:hover .italicize span { -webkit-transform: translateZ(0) scale(1.0, 1.0) skew(-15deg); transform: translateZ(0) skew(-15deg); font-style: normal; }

#agendafilter { position: -webkit-sticky; position: sticky; top: 0; height: 7.25em; padding: 1em 0em .5em 0; box-sizing: border-box; border-bottom-width: 3px; border-bottom-style: solid; background-color: #FFF; text-align: left; z-index: 2; }
#agendafilter > div { /*font-size: 90%;*/ white-space: nowrap; }
#agendafilter ul { overflow: hidden; overflow-x: scroll; scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; scroll-behavior: smooth; /*outline: 1px solid yellow;*/ }
#agendafilter ul::-webkit-scrollbar { width: 0 !important; height: 0 !important; }

.eventcalendar ul { list-style: none; padding: 0 0 0 9.5em; margin: 0 0 0 -.5em; box-sizing: border-box; }
.eventcalendar div ul { padding: .5em 0 .5em 9.5em; box-sizing: border-box; }
.eventcalendar li { display: inline-block; padding: 0; margin: 0 0 0 .5em; }
.eventcalendar li:last-child { margin-right: .5em; }
.eventcalendar a { text-decoration: none; opacity: .35; }
.eventcalendar a.noevent { color: #EFEFEF; }
.eventcalendar li.active a.active, .eventcalendar a:hover { opacity: 1; font-style: normal; }
.eventcalendar > div { display: none; margin: 0; min-height: 2.5em; }
.eventcalendar > div.active { display: block; }
.eventcalendar div li { margin-left: .5em; }
.eventcalendar div .day { display: block; border-width: 2px; border-style: solid; border-radius: 50%; width: 1.125em; text-align: center; line-height: 1; height: 1.125em; opacity: 1; }
.eventcalendar div span.day { color: #EEE; border-color: #EEE; }
.eventcalendar div span.day.bg0trans { color: #FFF; background-color: #EEE; }
.eventcalendar div a.day:hover { color: #FFF; }
.eventcalendar div a.day.past { /*color: #CCC; border-color: #CCC;*/ opacity: .35; }
.eventcalendar div a.day.past:hover, .eventcalendar div a.day.past.active { opacity: 1; }
.eventcalendar div .day span { font-size: 75%; }
.eventcalendar div .day.active, .eventcalendar div .day.visible { margin: -3px; border-width: 5px; color: #FFF; }

section.pastevent { padding-top: .825em; }

.event.status div.row, .slide.status .slideinner { position: relative; }
.event.status span.status, .slide.status span.status { background-color: var(--c1); color: var(--c0); position: absolute; top: 0; left: 0; right: 0; z-index: 1; text-align: center; }
.event.status span.status span, .slide.status span.status span { padding: .25em; display: block; }
.event.status span.status { left: calc(50% - 4.25em); width: auto; bottom: 0; display: flex; justify-content: center; flex-direction: column; z-index: 0; }
.slide.noimage.status span.status { position: static; display: block; }

ul.checkboxlist { list-style: none; padding: 0; margin: 0 0 0 -.5em; }
#agendafilter ul.checkboxlist { padding-left: 9.5em; }
ul.checkboxlist li { padding: 0; margin: .125em 0 .5em 0; display: inline-block; padding: 0 0 .15em; }
#tenantlist ul.checkboxlist li, #sharingiscaringlist ul.checkboxlist li { margin: 0; }
#tenantlist ul.checkboxlist label.checkbox { margin-right: .25em; }
#tenantlist ul.checkboxlist label.checkbox span, #tenantlist ul.checkboxlist label.checkbox span::after,
#branchfilter ul.checkboxlist label.checkbox span, #branchfilter ul.checkboxlist label.checkbox span::after { padding: .075em .35em; }

ul.checkboxlist label.checkbox { display: block; margin: 0 .5em 0 0; position: relative; overflow: hidden; }
ul.checkboxlist label.checkbox span, ul.checkboxlist label.checkbox span:after { border-radius: .8em; padding: .125em .5em; margin: 2px; display: block; position: relative; }
ul.checkboxlist label.checkbox:hover span { border-width: 2px; border-style: solid; margin: 0; }
ul.checkboxlist label.checkbox input[type=checkbox] { position: absolute; left: 0; top: -1.5em; }
ul.checkboxlist label.checkbox input[type=checkbox]:checked + span { color: #FFF; border-width: 2px; border-style: solid; margin: 0; }
ul.checkboxlist label.checkbox input[type=checkbox]:checked + span:hover:after { display: block; }

#tenantlist ul.checkboxlist label.checkbox span, #tenantlists ul.checkboxlist label.checkbox span:after,
#sharingiscaringlist ul.checkboxlist label.checkbox span, #sharingiscaringlist ul.checkboxlist label.checkbox span:after { margin: 3px; }
#tenantlist ul.checkboxlist label.checkbox:hover span,
#sharingiscaringlist ul.checkboxlist label.checkbox:hover span { border-width: 3px; margin: 0; }
#tenantlist ul.checkboxlist label.checkbox input[type=checkbox]:checked + span,
#sharingiscaringlist ul.checkboxlist label.checkbox input[type=checkbox]:checked + span { border-width: 3px; margin: 0; }

section.anchor { border-top-width: 3px; border-top-style: solid; min-height: 50vh; padding: 0 0 1em; }
section.anchor:last-child { min-height: 85vh; }

/* pinboard */
#pinboard > div.fg0 { border-top-width: 3px; border-top-style: solid; }
#pinboard div.slideinner > div:first-child { width: 100%; }

/* sharingiscaring */
body.sharingiscaring { background-color: var(--c0); color: var(--c1) }
body.sharingiscaring main .fg0, body.sharingiscaring header div.fg0 { color: var(--c1); border-color: var(--c1); }
body.sharingiscaring .teaserscroller article { background-color: var(--c0); }
body.sharingiscaring main .border0 { border-color: var(--c1); }
body.sharingiscaring main .border1 { border-color: var(--c0); }
body.sharingiscaring #header, body.sharingiscaring #container { background-color: var(--c0); }
body.sharingiscaring label.checkbox input[type="checkbox"]:checked + span { border-color: var(--c1); background-color: var(--c1); }
body.sharingiscaring ul.checkboxlist label.checkbox input[type="checkbox"]:checked + span { color: var(--c0); }

#sharingiscaring { border-top-width: 3px; border-top-style: solid; margin-top: -3px; }
#sharingiscaring .description { margin-bottom: 1em; }

#sharingiscaringlist.searching .tabrider:after { content: ''; border-bottom: 3px dashed var(--c0); position: absolute; bottom: 0; height: 0; right: 0; width: 200%; animation: search 15s infinite; animation-timing-function: linear; }
#sharingiscaringlist.searching #sharingiscaringlists article { display: none; }
@keyframes search {
	from { transform: translateX(0); }
	to { transform: translateX(50%); }
}

.noresult > .row { padding: 1em !important; }

#sharingiscaringlist { min-height: calc(100vh + 4em); }
#sharingiscaringlist .h1wrapper { border-bottom-width: 3px; border-bottom-style: solid; margin: 0; }
#sharingiscaringlist .row h2 { margin: 0; }
#sharingiscaringlistheader { position: -webkit-sticky; position: sticky; top: 0; padding: 0; box-sizing: border-box; margin-bottom: -4px; background-color: var(--c0); text-align: left; z-index: 2; overflow: hidden; }
#sharingiscaringlist .shortlist .row { padding: 1em 0; }
#sharingiscaringlist .shortlist .row > a { display: flex; }
#sharingiscaringlist .shortlist .title { width: 50%; }
#sharingiscaringlist .shortlist .row > a div:not(.title) { padding-right: 1em; }
#sharingiscaringlist .shortlist .details { display: none; }
#sharingiscaringlist .shortlist .details a { text-decoration: underline; }
#sharingiscaringlist .shortlist .details a:hover { text-decoration: none; }
#sharingiscaringlist .shortlist .details .row { padding: 0; }
#sharingiscaringlist .shortlist .details .text { padding: 0 1em; width: 50%; overflow: visible; }
#sharingiscaringlist .shortlist .details .text *:first-child { margin-top: 0; }
#sharingiscaringlist .shortlist .details div.row { display: -webkit-box; display: -ms-flexbox; display: flex; /*min-height: 40em;*/ -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: nowrap; flex-wrap: nowrap; }
#sharingiscaringlist .shortlist div img { height: 40em; max-height: 60vh; width: auto; }
p.sharingiscaring { margin: 2.5em 0 0; }

/* tenants */
#tenantlistheader { position: -webkit-sticky; position: sticky; top: 0; background-color: #FFF; margin: 0 0 0; z-index: 1; }
.tabrider { padding: .5em 0 .55em; margin: 0; white-space: nowrap; border-bottom-width: 3px; border-bottom-style: solid; overflow-x: scroll; scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; scroll-behavior: smooth; }

#subanchornavigation { position: sticky; top: 6.65em; z-index: 1; background-color: #FFF; margin-bottom: -1.15em; }
#subanchornavigation .tabrider { margin-bottom: -3px; border-top: 3px; border-top-style: solid; }
#subanchornavigation + section { margin-top: .95em; }

.tabrider::-webkit-scrollbar { width: 0 !important; height: 0 !important; }
.tabrider ul { list-style: none; margin: 0; padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: nowrap; flex-wrap: nowrap; }
.tabrider li { display: block; margin: 0; padding: .25em 1em; -webkit-box-flex: 2; -ms-flex-positive: 2; flex-grow: 2; }
.tabrider a { text-decoration: none; opacity: .35; }
.tabrider a.active, .tabrider li.active > a, .tabrider a:hover { opacity: 1; font-style: normal; }
.tabrider a.loading.active, .tabrider li.loading.active > a, .tabrider a.loading:hover { -webkit-animation-name: fadeInOut; -webkit-animation-duration: 1s; animation-name: fadeInOut; animation-duration: 1s; animation-iteration-count: infinite; animation-timing-function: linear; }
@-webkit-keyframes fadeInOut { 
  0% { opacity: 1; }
  50% { opacity: .2; }
  100% { opacity: 1; }
}
@keyframes fadeIn {
  0% { opacity: 1; }
  50% { opacity: .2; }
  100% { opacity: 1; }
}

.shortlist article { border-top-width: 3px; border-top-style: solid; padding: 0; margin: 0; position: relative; }
#tenantshortlist article, #sharingiscaringlists .details { overflow-x: scroll; overflow-y: hidden; scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; scroll-behavior: smooth; }
.shortlist article:first-child { border-top: none; }
/*#tenantshortlist article:last-child { border-bottom-width: 3px; border-bottom-style: solid; }*/
.shortlist article::-webkit-scrollbar, #sharingiscaringlists .details::-webkit-scrollbar { width: 0 !important; height: 0 !important; }

.shortlist article > a > div { display: -webkit-box; display: -ms-flexbox; display: flex; min-height: 20em; height: 20em; max-height: 20em; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: nowrap; flex-wrap: nowrap; }
.shortlist a { text-decoration: none; }
.shortlist div.title { width: calc(33.33333% - 2.66666em); padding: 0 1em; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; -ms-flex-negative: 0; flex-shrink: 0; }
.shortlist div.text { width: 25em; max-width: 95vw; padding: 0 1em 2em 0; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; -ms-flex-negative: 0; flex-shrink: 0; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; }
.shortlist div.mediawrapper { }
.shortlist div.image { height: 100%; position: relative; }
.shortlist div img { height: 20em; width: auto; }
.shortlist div.video { position: relative; }
.shortlist div.video span.gvideoembed { position: absolute; top: 0; left: 0; width: 100%; }

#keywordfilter, #branchfilter { padding: .4em .125em .165em .75em; border-bottom-width: 3px; border-bottom-style: solid; }

.indexlist { padding: .2em 0; overflow-x: scroll; scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; scroll-behavior: smooth; }
.indexlist.empty { display: none; }
.indexlist::-webkit-scrollbar { width: 0 !important; height: 0 !important; }
.indexlist ol { list-style: none; margin: 0; padding: .4em .55em; -ms-flex-wrap: nowrap; flex-wrap: nowrap; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }
.indexlist ol li { margin: 0 .075em; padding: 0; }
.indexlist ol li:last-child { padding-right: .55em; }
.indexlist a { opacity: .35; text-decoration: none; padding: 0 .075em; }
.indexlist ol li:first-child a { padding-left: 0; }
.indexlist a.visible, .indexlist a:hover { opacity: 1; font-style: normal; }

a.boxedlink { text-decoration: none; border-radius: .5em; padding: 0 .25em; border: 2px solid transparent; display: inline-block; width: auto; }

.smalltitle { transition: padding-left .35s; }
body.smallerlogo .smalltitle { padding-left: 4.08em; }
body.smallerlogo .smalltitle.tabrider { padding-left: 3.08em; }

#tenantlists { min-height: 85vh; }
#tenantlists table { padding: 0; margin: .65em 0 1.8em .65em; border-collapse: collapse; width: calc(100% - .65em); }
#tenantlists table.indexlinks { margin-top: 0; }
#tenantlists table td { padding: .075em .15em; border-bottom-width: 3px; border-bottom-style: solid; }
#tenantlists table td:last-child { padding-right: .375em; }
#tenantlists table tr.index td { padding: 1.5em 0 .25em; border-bottom: none; font-weight: 400; }
#tenantlists table tr.index:first-child td { padding-top: .075em; }
#tenantlists table.indexlinks tr.index:first-child td { padding: 0; }
#tenantlists table.indexlinks tr.index:first-child td span { display: none; }
#tenantlists table tr.newcontent td { padding-top: 1.5em; }
#tenantlists table tr.index + tr.newcontent td { padding-top: .075em; }
#tenantlists table td.link { padding-left: 0; width: 50%; }
#tenantlists table td.link a { text-decoration: none; }
#tenantlists table td.index { width: 0; padding: 0; }
#tenantlists table td.index span { display: none; }
#tenantlists table tr.firstindex td { border-top-width: 3px; border-top-style: solid; padding-top: 1em; }
#tenantlists table tr.lastindex td { padding-bottom: 1em; }
#tenantlists table tr.firstindex:first-child td { border-top: none; padding-top: 2px; }

/* tenantdetails */
article.text.portfolio { padding-bottom: .5em; position: relative; }
article.text.portfolio .text { padding-bottom: 2.5em; }
article.text.portfolio p.email + p.urls { margin-top: -1.25em; }
article.text.portfolio p.urls + ol { margin: -.5em 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; font-size: 125%; }
article.text.portfolio p.urls + ol li { margin: 0 .25em 0 0; padding: 0; }
article.text.portfolio p.urls + ol li span.mdi-youtube { font-size: 125%; line-height: 1; }

.tenantgallery > ol { margin: 0 .5em 0; padding: 0; list-style: none; }
.tenantgallery > ol > li { margin: 0; padding: .5em; width: 100%; float: left; box-sizing: border-box; }
.tenantgallery > ol > li.full:first-child { padding-left: 0; padding-right: 0; margin: 0 -.5em; width: calc(100% + 1em); }
.tenantgallery > ol > li.half { width: 50%; }
.tenantgallery img { width: 100%; height: 100%; top: 0; bottom: 0; left: 0; right: 0; position: absolute; }
.tenantgallery figure > figcaption { margin: .66666em 0 0; font-size: 75%; max-width: 600px; }
.tenantgallery figure > div > figcaption { margin-left: 2.5em; line-height: calc(1.8em + 4px); }
.tenantgallery > ol > li.full:first-child figcaption { margin-left: 1.33333em; }
.tenantgallery figure { margin: 0 auto; }
.tenantgallery figure > .imagewrapper { height: 0; position: relative; }

/* text-page */
article.text { padding-bottom: 1.25em; }
article.text h2 { margin-bottom: 0; }
article.text div.textrowwrapper, article.text div.mediarowwrapper { position: relative; min-height: 1.25em; }
article.text div.mediarowwrapper { /*border-width: 3px; border-style: solid; border-left: none; border-right: none;*/ margin: 1.25em 0 2.5em 0; }
article.text div.mediarowwrapper img { width: 100%; height: auo; }

article.text div.text *:first-child { margin-top: 0; }
article.text div.textrow { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
article.text div.textrow.beforeheader .text { margin-bottom: 2.5em; }
article.text div.textrow > div { width: 50%; position: relative; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 .5em 0 1em; }
article.text div.textrow.titleonly > div:first-child { width: 100%; }
article.text div.textrow > div.media { width: 100%; }
article.text div.textrow > div:last-child { padding: 0 1em 0 .5em; }
article.text > div.textrow:first-child > div:last-child { padding-top: 2.5em }
article.text > div.textrow.titleonly:first-child > div:last-child { padding-top: 0; }
article.text > div.textrow.titleonly h2 { text-align: center; }
article.text div.text { max-width: 688px; }
article.text h2 { text-align: left; word-wrap: break-word; }

/*article.text div.textrow > div > * { outline: 1px solid blue; }*/

table { max-width: 100%; font-variant-numeric: tabular-nums; font-feature-settings: "tnum" 1; margin: 1.25em 0; }
table td, table th { padding: 0 .75em; text-align: left; vertical-align: top; font-weight: normal; }
table td:first-child, table th:first-child { padding-left: 0; }
table td:last-child, table th:last-child { padding-right: 0; }
table.prices { border-spacing: 2px; }
table.prices td.price { vertical-align: middle; text-align: center; padding: 0 .175em; background-color: #EFEFEF; }
table.prices th { padding-left: 0; }

article.text div.mediarow { border-width: 3px; border-style: solid; border-left: none; border-right: none; margin: 1.75em 0 0; }

figure.pagepart { margin: .175em 0 1.075em 0; }
figure.pagepart.video { display: block; }
figure.pagepart img { max-width: 100%; height: auto; }
figure.pagepart figcaption { margin: .66666em 0 1.66666em; font-size: 75%; max-width: 600px; }

.textrow .sliderwrapper { margin: .175em 0 1.075em; }
.slider figure.pagepart { margin-top: 0; margin-bottom: 0; }
.slider figure.pagepart > div { height: 0; padding-bottom: 75%; position: relative; }
.slider figure.pagepart > div img { position: absolute; top: 0; left: 0; right: 0; bottom: 0; object-position: center; object-fit: cover; width: 100%; height: 100%; }
.slider figure.pagepart figcaption { margin: 0; padding-top: .666666em; overflow: visible; }

/* teaserscroller */
.teaserscrollerwrapper { overflow: auto; }
.teaserscroller { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; overflow: visible; overflow-x: scroll; scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; -ms-scroll-snap-type: x proximity; scroll-snap-type: x proximity; }
.teaserscroller::-webkit-scrollbar { width: 0; height: 0; }
.teaserscroller article { min-width: calc(33.33333% - 2.66666em); width: calc(33.33333% - 2.66666em); border-bottom: none; scroll-snap-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-sizing: border-box; box-sizing: border-box; }
.teaserscroller article:not(.bg0) { background-color: #FFF; }
.teaserscroller article:first-child { scroll-snap-align: start; }
.teaserscroller article:last-child { scroll-snap-align: end; }
.teaserscroller article .slideinner { border-right-width: 3px; border-right-style: solid; display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; }
.teaserscroller article:last-child .slideinner { border-right: none; }
.teaserscroller article div.text { padding: 0 1em; }
.teaserscroller article p { margin: 1em 0; }
.teaserscroller article h3 { margin: .7em 0; }
.teaserscroller article > .slideinner > a { text-decoration: none; width: 100%; }
.teaserscroller article > .slideinner > a:hover { font-style: normal; }
.teaserscroller article.mzf { }
#mzf { font-size: 100%; width: 5em; height: 5em; position: absolute; top: 0; left: 0; z-index: 1; /*mix-blend-mode: difference;*/ transform: rotate(68deg); animation-name: rotator; animation-duration: 30s; animation-iteration-count: infinite; animation-timing-function: linear; transform-origin: 50%; }
#mzf tspan { font-size: 120%; font-weight: 500; }
@keyframes rotator {
  from { transform: rotate(68deg); }
  to { transform: rotate(-291deg); }
}

/**/
.infinitescroll.loader { text-align: center; padding: 0 0 2em 0; }
.infinitescroll.loader a > span:first-child { display: none; }
.spinner { display: none; position: relative; width: 40px; height: 40px; }
.loading .spinner { display: inline-block; }
.spinner span { display: block; position: absolute; opacity: 1; border-radius: 50%; animation: spinner 1s cubic-bezier(0, 0.2, 0.8, 1) infinite; }
.spinner span:nth-child(2) { animation-delay: -0.5s; }
@keyframes spinner {
	from { top: 20px; left: 20px; width: 0; height: 0; opacity: 1; }
	to { top: 0; left: 0; width: 40px; height: 40px; opacity: 0; }
}

/* marquee */
.marquee { border-bottom-width: 3px; border-bottom-style: solid; border-left: none; border-right: none; overflow: hidden; position: relative; padding: .75em 0 .8em; }
.marquee h2 { margin: 0; }
.marquee.initialized h2 { margin-left: -200vw; }
.marquee > div { white-space: nowrap; position: absolute; top: .75em; left: -3em; }
.marquee div div { animation-name: marquee; animation-duration: 90s; animation-iteration-count: infinite; animation-timing-function: linear; }
.marquee div span { margin: 0 .5em; }
@keyframes marquee {
  from { transform: translateX(0%); }
  to { transform: translateX(-50%); }
}
.teaserfooter { border-width: 3px; border-style: solid; border-left: none; border-right: none; padding: .75em 0 .8em; text-align: center; }

/* gvideoembed */
span.gvideoembed { display: block; background-size: cover; background-position: center; position: relative; max-width: 100% !important; padding-bottom: 56.25%; height: 0 !important; overflow: hidden; transition: all .25s; cursor: pointer; background-color: #000; }
span.gvideoembed a.gvideoembed { display: none; }
span.gvideoembed:before { opacity: 1; content: ''; display: block; border-radius: 50%; width: 3.125em; height: 3.125em; background-color: #FFF; position: absolute; left: 50%; top: 50%; margin: -1.5625em 0 0 -1.5625em; padding: 0; transition: opacity .25s; }
span.gvideoembed:after { opacity: 1; content: ''; position: absolute; left: 50%; top: 50%; margin: -.8em 0 0 -.5em; width: 0; height: 0; border-top: .8em solid transparent; border-bottom: .8em solid transparent; border-left: 1.35em solid #000; transition: opacity .25s; }
span.gvideoembed:hover:before, span.gvideoembed:hover:after { opacity: .85; }
span.gvideoembed.loaded, span.gvideoembed.loaded:hover { opacity: 1; cursor: wait; }
span.gvideoembed.loaded:after, span.gvideoembed.loaded:before { display: none; }
.gvideoembed iframe, .gvideoembed object, .gvideoembed embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; }

/* image2 */
img { display: block; }
figure { margin: 0; padding: 0; }
figure.gimagecaptioned { margin-bottom: 2em; }
figure.gimagecaptioned figcaption { font-size: 90%; margin-top: .5em; max-width: 100%; }
.gimageleft { float: left; margin: .2em 1em 1em 0; }
.gimagecenter { text-align: center; }
.gimagecenter figcaption, .gimagecenter img { margin-left: auto; margin-right: auto; text-align: left; }
.gimageright { float: right; margin: .2em 0 1em 1em; }

figure.fixedratio { height: 0; position: relative; }
figure.fixedratio img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/**/
article.map { background-color: #EFEFEF; }
article.map div.mapwrapper { position: relative; height: 0; padding: 0 0 33.3333%; border-width: 3px; border-style: solid; border-left: none; border-right: none; }
article.map:last-child div.mapwrapper { border-bottom: none; }
article.map div.mapwrapper iframe { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100% !important; height: 100% !important; }

/**/
.clearfix:before, .clearfix:after { content: ' '; display: table; }
.clearfix:after { clear: both; }
span.nowrap { white-space: nowrap; }
span.hyphenate { -webkit-hyphens: auto; -webkit-hyphenate-limit-chars: auto 3; -webkit-hyphenate-limit-lines: 4; -ms-hyphens: auto; -ms-hyphenate-limit-chars: auto 3; -ms-hyphenate-limit-lines: 4; hyphens: auto; hyphenate-limit-chars: auto 5; hyphenate-limit-lines: 4; }

/* form stuff */
main p + .tenantloginwrapper { margin-top: -1.25em; }
main form > fieldset > legend { padding: 1.6666em 0 .3333em; text-transform: none; background-color: transparent; color: inherit; margin: 0; }
main form { max-width: 300px; }
main form fieldset { margin: 0; border: none; background-color: transparent; box-shadow: unset; }
main form ul.comp { list-style: none; margin: 0; padding: 0; }
main form ul.comp > li { margin: .5em 0; padding: 0; }
main form .eventdatetimefield .inputtype.exceptions li.actions { margin: 0; }
main form ul.comp > li.formerrors { padding: .25em .5em; }
main form li.comp.nolabel > div.formrow > label { display: none; }
main form li.hidden { display: none; }
main form input, main form textarea, main form select, main form button { font-family: inherit; font-size: inherit; line-height: inherit; min-width: 100%; max-width: 100%; width: 100%; box-sizing: border-box; border: none; border-bottom-width: 3px; border-bottom-style: solid; color: inherit; padding: .125em 0; border-radius: 0; }
main form input:focus, main form select:focus, main form button:focus { outline: none; }
main form .imagebutton.emailfield.email { display: none; }
main form .formfoot { margin: .5em 0 0; }
main form .formfoot .buttons input { min-width: auto; max-width: auto; width: auto; border: none; background-color: transparent !important; cursor: pointer; color: inherit; padding: 0; outline: none !important; box-shadow: none; margin: 0 !important; }
main form .formfoot .buttons input:first-child { float: right; font-weight: 400; }
main form .formerrors, main form .formnotes { font-size: 75%; }
main form .formerrors ul, main form .formerrors li, main form .formnotes ul, main form .formnotes li { list-style: none; margin: 0; padding: 0; }
main form .eventdatetimefield ul ul > li.comp.date, main form .eventdatetimefield ul ul > li.comp.time { margin: 0 .5em 0 0; }
main form ::placeholder { color: inherit; opacity: .6; }

/* content to be read by screen-reader but not visible */
.invisible { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }

/* mdi */
span.mdi { }
span.mdi.mdi-size-xs { font-size: 50%; }
span.mdi.mdi-size-s { font-size: 75%; }
span.mdi.mdi-size-l { font-size: 150%; }
span.mdi.mdi-size-xl { font-size: 200%; }
span.mdi > span { display: none; }

/* search */
.searchresults { margin-bottom: 3.5em; }
.searchresults ol { margin: 0; list-style: none; }
.searchresults ol li { border-top: 3px; border-top-style: solid; padding: 0 1em; }
.searchheader { padding: 0 1em; }
.searchheader, .searchresults ol li > div { max-width: 50em; margin: 0 auto; }
.searchheader .smalltitle { border-bottom: none; text-align: center; margin: 0; padding: 1.25em 0; }
.searchheader .smalltitle h2 { text-align: center; }
.searchheader .smalltitle p { margin: 0; }
.searchresults h3 { margin-top: .8333em; }

.searchresults ol li { margin: 0; }
.searchresults ol li.ajax { display: none; }
.searchresults a { text-decoration: none; }
.searchresults .alternatives { display: none; }
.searchresults .alternatives ul { display: inline; margin: 0; }
.searchresults .alternatives li { display: inline; }
.searchresults .alternatives li:before { content: ', '; }
.searchresults .alternatives li:first-child:before { content: ' '; }
.searchresults .searchresultspager { }
.searchresults .searchresultspager a { margin: 1em 0; }
.searchresults .searchresultspager.loading { }
.searchresults .searchresultspager.loading a { }

span.searchmatch { background-color: rgba(255,255,0,.4); }
span.searchmatch1 { background-color: rgba(255,255,0,.35); }
span.searchmatch3 { background-color: rgba(255,255,0,.3); }
span.searchmatch4 { background-color: rgba(255,255,0,.25); }
span.searchmatch5 { background-color: rgba(255,255,0,.2); }
span.searchmatch6 { background-color: rgba(255,255,0,.15); }

/* teaser stuff */
@media only screen and (max-width: 750px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(50% - 4em); width: calc(50% - 4em); }
}
@media only screen and (max-width: 600px) and (min-width: 520px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(50% - 2em); width: calc(50% - 2em); }
	.slider a.navigation { width: 2em; }
	.slider.first a.navigation.next, .slider.last a.navigation.prev { width: 4em; }
}
@media only screen and (max-width: 520px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(100% - 8em); width: calc(100% - 8em); }
}
@media only screen and (max-width: 400px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(100% - 4em); width: calc(100% - 4em); }
	.slider a.navigation { width: 2em; }
	.slider.first a.navigation.next, .slider.last a.navigation.prev { width: 4em; }
	
	.slider.large .teaserscroller article { min-width: calc(100% - 4em); width: calc(100% - 4em); }
}
@media only screen and (max-width: 880px) and (min-width: 750px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(33.3333% - 1.3333em); width: calc(33.3333% - 1.3333em); }
	.slider a.navigation { width: 2em; }
	.slider.first a.navigation.next, .slider.last a.navigation.prev { width: 4em; }
}
@media only screen and (max-width: 1120px) and (min-width: 1068px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(33.3333% - 1.6666em); width: calc(33.3333% - 1.6666em); }
	.slider a.navigation { width: 2.5em; }
	.slider.first a.navigation.next, .slider.last a.navigation.prev { width: 5em; }
	
	.slider.large .teaserscroller article { min-width: calc(50% - 2em); width: calc(50% - 2em); }
}
@media only screen and (min-width: 1380px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(25% - 2em); width: calc(25% - 2em); }
	
	/* @todo clean this up! */
	.slider.large .teaserscroller article { min-width: calc(33.3333% - 2.6666em); width: calc(33.3333% - 2.6666em); }
}
@media only screen and (max-width: 1500px) and (min-width: 1380px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(25% - 1.25em); width: calc(25% - 1.25em); }
	.slider a.navigation { width: 2.5em; }
	.slider.first a.navigation.next, .slider.last a.navigation.prev { width: 5em; }

	.slider.large .teaserscroller article { min-width: calc(33.3333% - 2.6666em); width: calc(33.3333% - 2.6666em); }
}
@media only screen and (min-width: 1800px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(20% - 1.6em); width: calc(20% - 1.6em); }

	.slider.large .teaserscroller article { min-width: calc(25% - 1.25em); width: calc(25% - 1.25em); }
}
@media only screen and (min-width: 2300px) {
	.teaserscroller article, #tenantshortlist div.title { min-width: calc(16.6666% - 1.3333em); width: calc(16.6666% - 1.3333em); }

	.slider.large .teaserscroller article { min-width: calc(20% - 1.6em); width: calc(20% - 1.6em); }
}

/* general */
@media only screen and (max-width: 1180px) {
	/* a little more compact calendar */
	#agendalist .dategroup > div.date br { display: inline; }
	#agendalist article { margin-left: 6.5em; }
	#agendalist .dategroup { min-height: 5.25em; }
	#agendalist .dategroup > div.date { width: 6.5em; }
	#agendalist div.row div.title, #agendalist div.row div.text { width: calc(50% - 3.25em); }
	#agendalist div.row div.image {  width: calc(50% + 3.25em); }
	#agendalist div.row div.type { width: calc(50% - 9.5em + 3.25em); }
	.eventcalendar ul, .eventcalendar div ul, #agendafilter ul.checkboxlist { padding-left: 6.5em; }
	body.agendacreate article.text div.textrow { display: block; }
	body.agendacreate article.text div.textrow > div { width: auto; padding: 0 1em; }
}

@media only screen and (max-width: 1068px) {
	body { font-size: 1em; line-height: 1.1875; }
	body.smallerlogo #logo { top: .9em; }
	nav > div { font-size: 150%; line-height: 5; }
	#navigation { font-size: 354%; line-height: 1.25; }
	#homenavigation { padding-top: .85em; }
	#header .header { margin-top: .2em; }
	#header .header, #homenavigation, #subnavigation, h3, .marquee h2, .smalltitle h1, .smalltitle h2, #agendalist h2,
	.marquee > div span, .teaserfooter a, .infinitescroll.loader a, div.date span,
	.teaserscroller article.noimage .description, .tabrider a, #tenantlists > article, .indexlist,
	.event.status span.status span, .slide.status span.status span,
	form fieldset legend, #sharingiscaringsearch input { font-size: 125%; line-height: 1.15; }
	#tenantlists table { margin-left: .85em; width: calc(100% - .85em); }
	.indexlist ol { padding-left: .8em; }
	#tenantshortlist { font-size: 80%; }
	#subnavigation { line-height: 1.5; }
	.imageheader q, h2, h1 { font-size: 250%; line-height: 1.05; }
	.h1wrapper { margin-top: 1em; }
	article > div:first-child h3:first-child { margin-top: 1em; }
	#mzf tspan { font-size: 150%; }
	.eventcalendar div .day { line-height: 1.075; }
	article.text > div:first-child > div:last-child { padding-top: .3em; }	
	#agendalist .dategroup { min-height: 4.7em; }
	#agendalist .dategroup > div.date { width: 5.75em; }
	#agendalist article { margin-left: 5.75em; }
	#agendalist div.row div.title, #agendalist div.row div.text { width: calc(50% - 2.875em); }
	.event.status span.status { left: calc(50% - 2.375em); }
	#agendalist div.row div.image {  width: calc(50% + 2.875em); }
	#agendalist div.row div.type { width: calc(50% - 9.5em + 2.875em); }
	article.map div.mapwrapper { padding-bottom: 43%; }
	.eventcalendar ul, .eventcalendar div ul, #agendafilter ul.checkboxlist { padding-left: 5.75em; }
	#subanchornavigation { top: 6.15em; }
}

@media only screen and (max-width: 880px) {
	nav > div { font-size: 100%; }
	#homenavigation { padding-top: 1.65em; }
	#navigation { font-size: 9.65vw; }
}
@media only screen and (max-width: 680px) {
	/* full width agenda */
	#agendalist div.row > a { display: block; }
	.event.status span.status { display: block; position: static; }
	.event.status span.status { margin: 1em 0 -1em; }
	 #agendalist div.row div.type.status { padding-right: 0; }
	#agendalist div.row div.title, #agendalist div.row div.type, #agendalist div.row div.time { width: 100%; padding: 0 1em 0 0; }
	#agendalist div.details > div.row { display: block; }
	#agendalist div.row div.image { width: 100%; padding-right: 0; }
	#agendalist div.row div.text { width: 100%; padding: 1.25em 1em 0 6.5em; }
	#agendalist div.details { margin-left: -6.5em; }
	/* hide branches */
	#tenantlists td.branch { display: none; }
	#tenantlists table td.link { width: auto; }
	article.map div.mapwrapper { padding-bottom: 66.66666%; }
	.tenantgallery > ol > li.half { width: 100%; }
	/* sharing is caring full width text */
	#sharingiscaringlist .shortlist .row > a { display: block; }
	#sharingiscaringlist .shortlist .row > a > div { width: 100%; padding-left: 1em; box-sizing: border-box; }
	#sharingiscaringlist .shortlist .details .text { width: 20.5em; max-width: calc(100% - 4em); }
}
@media only screen and (min-width: 601px) {
	.textrow div.h1wrapper { margin-bottom: 1em; }
}
@media only screen and (max-width: 600px) {
	/* single column text-page */
	article.text div.textrow { display: block; }
	article.text div.textrow .h1wrapper { margin-bottom: 1.25em; }
	article.text div.textrow > div, article.text > div.textrow:first-child > div:last-child, article.text div.textrow > div:last-child { width: 100%; padding: 0 1em; }
	article.text div.textrow.hasheader { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; }
	article.text div.textrow.beforeheader .text { margin-bottom: 0; }
	article.text div.textrow.beforeheader { margin-bottom: 2.5em; }
	footer > div { display: block; }
	footer > div > div { display: block; }
	footer > div > div:first-child { padding-right: 0; }
	footer > div > div:last-child { padding-left: 0; padding-top: 1em; }
	footer > div li { display: inline-block; }
	footer > div li:before { content: ' |'; margin: 0 .3em; }
	footer > div li:first-child:before { content: ''; display: none; }
}

/* hide keywords on small screens */
/* branches on single line */
@media only screen and (max-height: 640px), only screen and (max-width: 800px) {
	#tenantfilter li:first-child, #keywordfilter { display: none; }
	#branchfilter { white-space: nowrap; }
}

/* touchscreens */
@media (hover: none) {
	/* hide the left/right-navigation-area */
	/*body.home .slider a.navigation { display: none !important; } */
}

@media only screen and (max-width: 1000px) {
	.slider a.navigation { display: none; }
}

main form div.formfoot { height: auto; padding: 4px 0 3px; }
main form div.formfoot div.buttons { background-color: #FFF; padding-bottom: .125em; justify-content: space-between; padding-left: 0; float: none; width: 100%; }
main form .formfoot.submitting { z-index: 1; background: linear-gradient(90deg, #CCC 4px, transparent 2px); background-size: 10px 3px; background-repeat: repeat; -webkit-animation: tenantsubmitting .75s linear infinite; animation: tenantsubmitting .75s linear infinite; }
@-webkit-keyframes tenantsubmitting {
	0% { background-position: 0 0; }
	100% { background-position: 50px 0; }
}
@keyframes tenantsubmitting {
	0% { background-position: 0 0; }
	100% { background-position: 50px 0; }
}

/* event-form */
#publicadd { max-width: 800px; }
#publicadd fieldset { background-color: transparent; box-shadow: none; }
#publicadd input, #publicadd div.selectwrapper select + span, #publicadd textarea, main form input.radio + span:before { background-color: #EFEFEF; border-color: inherit !important; font-weight: 400; }
#publicadd fieldset legend { display: none; }
#publicadd fieldset fieldset { border-width: 3px; border-style: solid; border-color: inherit; margin: 8px 0 5px; padding: 0.33em 0.67em 0.75em; }
#publicadd fieldset fieldset legend { display: block; }
main form .charcounter { display: none; }
main form .formrow > label > span { margin-left: 0; margin-top: 6px; margin-right: 0; }
main form li.comp > div.formrow { display: block; }
main form li.comp > div.formrow > div.inputtype { display: block; }
main form li.comp:not(.timestamp) > div.formrow > div.inputtype.checkbox { padding-left: 0; }
main form li.comp > div.formrow > label { width: 100%; display: block; font-size: 86%; }
main form li.comp label span.infotext { border-bottom: none; }
main form li.comp label span.infotext:after { content: '?'; font-weight: 400; font-size: 75%; vertical-align: super; line-height: .5; }
main form fieldset.componentwrapper legend { color: inherit; }
main form div.mappingwrapper { border: none; }
main form input:focus, main form input:hover { border-color: inherit; }
main form ul { list-style: none; padding-left: 0; }
main form div.selectwrapper select + span { border: none; }
main form div.mappingselects ul li.selector div.selectwrapper select { height: calc(1.8em - 2px); }
main form div.mappingselects .mapping > ul > li { border: none; border-bottom-width: 3px; border-bottom-style: solid; border-color: inherit !important; margin: 0 .5em .5em 0; }
main form .select2-container--glorya .select2-results__option { margin: 0; }
main form .select2-container--glorya .select2-search--dropdown::before { line-height: 1.5; font-size: 135%; }
main form .eventdatetimefield ul .weekdaytimes > div > fieldset > div > ul { margin-bottom: .5em; }
main form .eventdatetimefield ul .weekdaytimes > div > fieldset > div > ul:last-child { margin-bottom: 0; }
main form .select2-container--glorya .select2-dropdown { border-color: inherit !important; }
main form li.comp input.checkbox:checked + span::after { border-width: 3px; border-color: inherit !important; }
main form .select2-container--glorya .select2-selection--single .select2-selection__arrow { height: calc(1.8em - 3px); }
main form .select2-container.select2-container--glorya .select2-selection--single { height: calc(1.8em - 3px); line-height: calc(1.8em - 4px); }
main form select + .select2-container.select2-container--glorya { border: none; border-bottom-width: 3px; border-bottom-style: solid; border-color: inherit !important; }
main form li.comp input.checkbox + span::before { border-color: inherit !important; background-color: #EFEFEF; }
main form .urlfield div.textfieldwrapper.selector div.inputtype.selector { padding-right: .5em; }
main form div.formfoot { background-color: transparent; padding-top: 0; }
#publicadd ul.comp > li.formerrors { padding: .5em; }
main form div.textfieldwrapper.button a.imagebutton { width: 1.8em; }
main form a.imagebutton:before { font-size: 1.35em; width: 100%; line-height: 1.175em }
main form li.comp.cuid_price_287 { width: 10em; }
main form .eventdatetimefield ul .weekdaytimes ul .formrow { display: table; }
main form .eventdatetimefield ul li.comp { margin: 0; }
main form div.textfieldwrapper.button a.imagebutton { height: calc(100% - 3px); top: -2px; right: -2px; }
main form .qq-uploader-selector.qq-uploader button.button { height: calc(1.8em - 3px); margin: 0; padding: 1px 0px; width: 1.7em; box-sizing: border-box; }
main form div.inputtype .fileupload + .fileinput { border-top-color: #FFF; border-top-width: 3px; }
main form div.inputtype > .fileuploadwrapper > .fileupload .thumbnailwrapper, main form div.inputtype > .fileuploadwrapper > .fileupload { padding: 0; }
main form .qq-uploader-selector.qq-uploader .clearfix button.button::before { font-size: 1.35em; }
main form .detailwrapper li { margin: 0; }
main form li.comp.error div.mappingwrapper label { color: inherit; }
main form div.inputtype .fileuploadwrapper { background-color: #EFEFEF; border: none; border-bottom-width: 3px; border-bottom-style: solid; }
main form li.comp.error div.mappingwrapper { background-color: #FFF; }
main form .fileupload_remove { display: none; }
main form th a { text-decoration: none; }
main form .eventdatetimefield .inputtype.exceptions li.actions ul.imagebutton a.imagebutton { width: 1.5em; height: 1.5em; }
main form .inputtype.exceptions li.comp > div.formrow { display: table; }
main form .inputtype.exceptions li.comp > div.formrow > div.inputtype { display: table-cell; }
main form .eventdatetimefield .inputtype.exceptions ul.comp { margin-bottom: .5em; }
/* room reservation */
main form ul.comp li { padding-left: 0; margin: 0; }
main form li.comp .mappingselects div.inputtype.checkbox label { min-height: calc(1.8em - 2px); }
/*
main form ul.comp .mappingwrapper ul { display: flex; flex-wrap: wrap; }
main form ul.comp .mappingwrapper ul li { border: none; }
main form ul.comp .mappingwrapper .mappingoption { padding-right: 1em; }
div.mapping ul li .mappingoption:not(.readonly) label span:before { background-color: #EFEFEF; }
main form ul.comp li.comp div.mapping ul li input.checkbox + span { margin-left: 0; }
*/
main form li.id_roomtorent .select2.select2-container.select2-container--glorya { width: 100% !important; }
main li.cuid_datetype_626 .eventdatetimefield .comp.eventdatetimefieldwrap_3 > ul > li.comp:nth-child(2) { margin-bottom: 0; }
main #publicadd .fieldset > ul.comp { display: flex; flex-wrap: wrap; }
body.roomform li.company, body.roomform li.firstname, body.roomform li.lastname, body.roomform li.city { width: 33.3333%; }
body.roomform li.zip { width: 16.6666%; }
body.roomform li.address, body.roomform li.email, body.roomform li.phone { width: 50%; }
body.roomform li.formerrors { width: 100%; }

main .text #gloryanotifications { position: static; margin: 0 0 1em; padding: 0; max-width: 800px; }
main .text #gloryanotifications > li { animation: unset; box-shadow: unset; border-radius: 0; margin: 0; max-width: unset; width: inherit; list-style: none; padding: 0; }
main .text #gloryanotifications > li > div { margin-left: 0; }

.agendacreatemessage { padding: 1em; max-width: 800px; box-sizing: border-box; margin: 0 0 .5em; }
.agendacreatemessage p { margin: 0; }

/**/
#sharingiscaringsearch input { background-color: transparent; border: none; padding: 0; margin: 0; line-height: inherit; min-width: 5em; -webkit-appearance: none; appearance: none; outline: none; display: inline; margin: -.075em 0; }
/*#sharingiscaringsearch input:focus { background-color: rgba(255,255,255,.05); }*/
main #sharingiscaringsearch { max-width: unset; width: 100%; }
main #sharingiscaringsearch ::placeholder { opacity: .35; }
main #sharingiscaringsearch :hover::placeholder, main #sharingiscaringsearch :focus::placeholder, main #sharingiscaringsearch li.active ::placeholder { opacity: 1; }
.tabrider #sharingiscaringsearch ul li { flex-grow: 0; white-space: nowrap; }
.tabrider #sharingiscaringsearch ul li.search { flex-grow: 1; }

/* dev only */
#newcolors { display: block; position: absolute; width: 1em; height: 1.125em; cursor: pointer; opacity: .1; transition: opacity .5s; right: .125em; bottom: .125em; font-size: 150%; text-decoration: none; overflow: hidden; }
#newcolors:before { content: '\f03d8'; font-family: 'Material Design Icons'; }
#newcolors:hover { opacity: 1; text-decoration: none; }

#buildingmap { border-bottom-width: 3px; border-bottom-style: solid; }
#buildingmap article { /*max-width: 600px;*/ margin: 0 auto; padding: 0; }
#buildingmap article figure { height: 0; padding-bottom: 47.04177505374811%; position: relative; }
#buildingmap article figure svg { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }
#buildingmap .bgw { fill: #FFFFFF; }
#buildingmap circle.bgw { stroke-width: 0.517; stroke-miterlimit: 10; }
html[lang=de] #buildinglabels_en { display: none; }
html[lang=en] #buildinglabels_de { display: none; }

body.three-d #gloryaadminbar, body.three-d #gloryanavigation { display: none; }
#models3d { position: fixed; top: .5em; right: .5em; text-align: right; list-style: none; }
#models3d li.active { color: #FFF; }
ul.actions a:not(.visible) span.hide { display: none; }
ul.actions a.visible span.show { display: none; }
/*
#template3d { position: fixed; top: 0; left: 0;  right: 0; bottom: 0; background-image: url('../img/3d/template.png'); background-size: contain; opacity: .5; }
*/
