.templates {
	display:none;
}

.calendar-container {
	display:flex;
	flex-flow:row;
	transition:transform .6s;
	padding:0;
	max-width:1320px;
	margin-left:auto;
	margin-right:auto;
	/*overflow:hidden;*/
}
.calendar-container #cal_container,
.calendar-container #event_overview,
.calendar-container #event_detail {
	width:100%;
	min-width:100%;
	/*background:rgba(255,255,255,0.2);*/
	transition:opacity .6s;
	opacity:1;
	/*padding:20px calc(5rem + 15px);*/
}
.calendar-container #event_overview,
.calendar-container #event_detail {
	opacity:0;
	pointer-events:none;
}

.calendar-container.overview {
	transform:translateX(-100%);
}

.calendar-container.overview #cal_container,
.calendar-container.overview #event_detail {
	opacity:0;
	pointer-events:none;
}
.calendar-container.overview #event_overview {
	opacity:1;
	pointer-events:all;
}

.calendar-container.detail {
	transform:translateX(-200%);
}
.calendar-container.detail #cal_container,
.calendar-container.detail #event_overview {
	opacity:0;
	pointer-events:none;
}
.calendar-container.detail #event_detail {
	opacity:1;
	pointer-events:all;
}

.select-badge {
	cursor:pointer;
	border:2px solid transparent;
}

.select-badge.selected {
	border:2px solid #000;
}

#event_detail .event-item {
	
}

#event_detail .event-item .date,
#event_overview .date {
	display:flex;
	flex-flow:row;
	justify-content:space-between;
	align-items:center;
	padding-bottom:2rem;
	font-weight:600;
}

#event_detail .event-item .date a.btn,
#event_overview .date a.btn {
	color:#fff;
	margin:0;
}

#event_detail .event-item .event-location h3 {
	display:none;
	font-size: 0.75em;
    padding: 10px;
    margin: 0;
    font-weight: 600;
}

#event_detail .event-item .event-data {
	/*background:#575556;
	color:#fff;*/
	padding:1rem;
}
/*
#event_detail .event-item .event-data * {
	color:#fff;
}*/

#event_detail .event-item .event-data .event-description,
#event_detail .event-item .event-data .event-description p {
	font-weight:200;
	font-size:1.2rem;
}

#event_detail .event-item .event-headline {
	font-weight:500;
	line-height:1.2;
}

#event_detail .event-item .event-date {
	font-weight:200;
	line-height:1.2;
	padding-bottom:1.5em;
	font-size:0.75em;
	margin-bottom:0;
}

#event_detail .event-item .event-description hr {
	border-top:1px solid rgba(255,255,255,.1)
}

#event_overview .event-items {
	display:grid;
	grid-template-columns: calc(33.33% - 3px) calc(33.33% - 3px) calc(33.33% - 3px);
	gap:4px;
	background:rgba(255,255,255,0.5);
}

#event_overview .event-items.two-cols {
	grid-template-columns: 50% 50%;
}


@media (max-width:820px) {
	#event_overview .event-items {
		grid-template-columns: 50% 50%;
	}
}

@media (max-width:520px) {
	#event_overview .event-items,
	#event_overview .event-items.two-cols {
		grid-template-columns: 100%;
	}
}

#event_overview .event-items .event-item-preview {
	
}

#event_overview .event-items .event-item-preview .event-location h3 {
	display:none;
	font-size: 0.75em;
    padding: 10px;
    margin: 0;
    font-weight: 600;
}

.badge.all {
	background:#fafafa !important;
	color:#000;
}
.badge.grauergastro,
.belonging-grauergastro.event-item-preview,
.belonging-grauergastro .event-data,
.belonging-grauergastro h3 {
	background:#575556 !important;
	color:#fff;
}
.badge.alexandre,
.belonging-alexandre.event-item-preview,
.belonging-alexandre .event-data,
.belonging-alexandre h3 {
	background:#9d1006 !important;
	color:#fff;
}
.badge.joli,
.belonging-joli.event-item-preview,
.belonging-joli .event-data,
.belonging-joli h3 {
	background:#92762c !important;
	color:#000;
}
.badge.mezcalitos,
.belonging-mezcalitos.event-item-preview,
.belonging-mezcalitos .event-data,
.belonging-mezcalitos h3 {
	background:#fff4d4 !important;
	color:#000;
}
.badge.mezcabar,
.belonging-mezcabar.event-item-preview,
.belonging-mezcabar .event-data,
.belonging-mezcabar h3 {
	background:#32bac8 !important;
	color:#000;
}
.badge.gastwerk,
.belonging-gastwerk.event-item-preview,
.belonging-gastwerk .event-data,
.belonging-gastwerk h3 {
	background:#ffd101 !important;
	color:#000;
}
.badge.saleepane,
.belonging-saleepane.event-item-preview,
.belonging-saleepane .event-data,
.belonging-saleepane h3 {
	background:#be9a9c !important;
	color:#000;
}
.badge.stattstrand,
.belonging-stattstrand.event-item-preview,
.belonging-stattstrand .event-data,
.belonging-stattstrand h3 {
	background:#2e3b41 !important;
	color:#fff;
}
.badge.neigschmeckt,
.belonging-neigschmeckt.event-item-preview,
.belonging-neigschmeckt .event-data,
.belonging-neigschmeckt h3 {
	background:#ce1719 !important;
	color:#fff;
}

.belonging-grauergastro h3,
.belonging-grauergastro h5,
.belonging-grauergastro .event-description *:not(.btn) {
	color:#fff;
}

.belonging-alexandre h3,
.belonging-alexandre h5,
.belonging-alexandre .event-description *:not(.btn) {
	color:#fff;
}

.belonging-joli h3,
.belonging-joli h5,
.belonging-joli .event-description *:not(.btn) {
	color:#000;
}

.belonging-mezcalitos h3,
.belonging-mezcalitos h5,
.belonging-mezcalitos .event-description *:not(.btn) {
	color:#000;
}

.belonging-mezcabar h3,
.belonging-mezcabar h5,
.belonging-mezcabar .event-description *:not(.btn) {
	color:#000;
}

.belonging-gastwerk h3,
.belonging-gastwerk h5,
.belonging-gastwerk .event-description *:not(.btn) {
	color:#000;
}

.belonging-saleepane h3,
.belonging-saleepane h5,
.belonging-saleepane .event-description *:not(.btn) {
	color:#000;
}

.belonging-stattstrand h3,
.belonging-stattstrand h5,
.belonging-stattstrand .event-description *:not(.btn) {
	color:#fff;
}

.belonging-neigschmeckt h3,
.belonging-neigschmeckt h5,
.belonging-neigschmeckt .event-description *:not(.btn) {
	color:#fff;
}

.belonging-grauergastro .event-location h3.grauergastro {
	display:block !important;
}

.belonging-alexandre .event-location h3.alexandre {
	display:block !important;
}

.belonging-joli .event-location h3.joli {
	display:block !important;
}

.belonging-mezcalitos .event-location h3.mezcalitos {
	display:block !important;
}

.belonging-mezcabar .event-location h3.mezcabar {
	display:block !important;
}

.belonging-gastwerk .event-location h3.gastwerk {
	display:block !important;
}

.belonging-saleepane .event-location h3.saleepane {
	display:block !important;
}

.belonging-stattstrand .event-location h3.stattstrand {
	display:block !important;
}

.belonging-neigschmeckt .event-location h3.neigschmeckt {
	display:block !important;
}

#event_overview .event-items .event-data {
	/*background:#575556;*/
	/*color:#fff;*/
	padding:1rem;
}
/*
#event_overview .event-items .event-data * {
	color:#fff;
}
*/

#event_overview .event-items .event-headline {
	font-weight:500;
	line-height:1.2;
	/*margin-bottom:1.8rem;*/
}

#event_overview .event-items .event-headline b {
	display:none;
}

#event_overview .event-items .event-date {
	font-weight:200;
	line-height:1.2;
	padding-bottom:3rem;
	font-size:0.75em;
}

.calendar-container .btn {
	font-weight:300 !important;
	font-size:1.125rem;
	letter-spacing:0.4px;
	padding:6px 18px;
	line-height:1;
}

.btn-brown,
.btn-brown:active,
.btn-brown:focus,
.btn-brown:link {
	background-color:#ccbb9f !important;
	border-color:#ccbb9f;
	color:#000 !important;
}

.btn-brown:hover {
	background-color:#ccc6bd !important;
	border-color:#ccbb9f !important;
}


.gc-calendar {
  /*font-family: 'Inter', sans-serif;*/
  background-color: #fff;
  background-color: transparent;
  padding: 1rem;
}

.gc-calendar .gc-calendar-header {
  background-color: #fff;
  background-color: transparent;
  padding: 2px;
  height: max-content;
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}

.gc-calendar .gc-calendar-header button.prev, .gc-calendar .gc-calendar-header button.next {
  height: 36px;
  /* width: 24px; */
  left: 0px;
  top: 0px;
  border-radius: 100px;
  background: #FFFFFF;
  background: transparent;
  border-radius: 100px;
  position: relative;
  display: inline-block;
  border: 0;
  padding: 4px 15px;
  font-size: 18px;
  box-shadow: inset 0px -1px 0px #EDF2F7;
  box-shadow: none;
  cursor: pointer;
  color: #7A7A9D;
  font-weight: bold;
  margin-right: 10px;
  transform:none;
}

.gc-calendar .gc-calendar-header button.prev:hover, .gc-calendar .gc-calendar-header button.next:hover {
  /*box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.08), 0px 7px 14px rgba(50, 50, 93, 0.1);*/
  color:#38385c;
}

.gc-calendar .gc-calendar-header button.prev:focus, .gc-calendar .gc-calendar-header button.next:focus {
  /*box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.08), 0px 7px 14px rgba(50, 50, 93, 0.1);*/
  outline: none;
  color:#38385c;
  border: 0;
}

.gc-calendar .gc-calendar-header button.prev {
  margin-left: 20px;
}

.gc-calendar .gc-calendar-header .gc-calendar-month-year {
  font-style: normal;
  font-weight: 600;
  font-size: 28px;
  color: #38385c;
  line-height: 136.02%;
  min-width: 220px;
}

.gc-calendar .calendar {
  width: 100%;
}

.gc-calendar .calendar .header-row,
.gc-calendar .calendar .calendar-row {
	display:grid;
	grid-template-columns: repeat(7, 14.28% [col-start]);
	grid-auto-rows: 1fr
}

.gc-calendar .calendar .dayname {
  text-align: start;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 136.02%;
  padding: 2px;
  padding-left: 10px;
  text-transform: uppercase;
  color: #7A7A9D;
  position: relative;
  padding-bottom: 12px;
}

.gc-calendar .calendar .day {
  min-height: 120px;
  position: relative;
  padding-top: 3px;
  padding-left: 10px;
  margin-right: 10px;
  vertical-align: top;
  /*width: calc(100% / 7);*/
   transition: 0.3s;
}

.gc-calendar .calendar .day.today {
	background: rgba(255,255,255,0.4);
	background: linear-gradient(90deg, rgba(255,255,255,0.6) 100%, transparent 50%);
}

.gc-calendar .calendar .day.selectedDay,
.gc-calendar .calendar .day:hover {
  background: linear-gradient(90deg, #E1E8FF 90%, transparent 50%);
  background: linear-gradient(90deg, #fff 100%, transparent 50%);
  padding-left: 10px;
  margin-right: 10px;
  /*transform:scale(1.2);*/
  z-index:5;
  transition: 0.3s;
}

@media (max-width:768px) {
	.gc-calendar .calendar .day,
	.gc-calendar .calendar .day.selectedDay,
	.gc-calendar .calendar .day:hover {
		padding-left: 5px;
		margin-right: 5px;
	}
	.gc-calendar .calendar .day {
		min-height: 80px;
	}
}

@media (max-width:520px) {
	.gc-calendar .calendar .day {
		min-height: 50px;
	}
}

.gc-calendar .calendar .day .hit {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.gc-calendar .calendar .day.prev-month .day-number, .gc-calendar .calendar .day.next-month .day-number {
  color: #B5B5BD
}

.gc-calendar .calendar .day .day-number {
  font-size: 1.25rem;
  font-weight: 800;
  /*line-height: 38.09px;*/
  overflow-y: auto;
  color: #38385c;
  text-decoration: none;
  display: block;
}

.gc-calendar .calendar .day .btn-gc-cell {
  pointer-events:none;
}

.gc-calendar .calendar .day .today .day-number {
  /*color: #cfba9d !important;*/
  color: #cfba9d;
}

.gc-calendar .calendar a {
  text-decoration: none;
  display: block;
}
/*
.gc-calendar .calendar a:hover {
  background-color: #4C6FFF;
  width: 90%;
  border-radius: 5px;
  padding-left: 10px;
  transition: .2s;
}
.gc-calendar .calendar a:hover .day-number {
  color: #fff;
}
*/

.gc-calendar .calendar .calendar-row .day::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  border-radius: 1px;
  background-color: #8f8f93;
  top: 0px;
  left: 0;
  position: absolute;
}



.gc-calendar .gc-event {
  display: block;
  width: calc(100% - 10px);
  margin-bottom: 4px;
  cursor:pointer;
  font-size:0.8rem;
  overflow:hidden;
  text-overflow:ellipsis;
  position:relative;
  border-radius:0;
  background:#575556;
  pointer-events:none;
  font-weight:500;
}
.gc-calendar .gc-event.gc-event-sum {
	display:none;
	pointer-events:none;
	font-size:1.25rem;
}

@media (max-width:820px) {
	.gc-calendar .gc-event {
		width: calc(100% - 5px);
	}
	
	.gc-calendar .gc-event:not(.gc-event-sum) {
		display:none;
	}
	
	.gc-calendar .gc-event.gc-event-sum {
		display:block;
	}
}

.slide-in-left {
  -webkit-animation: slide-in-left 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
  animation: slide-in-left 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.slide-in-right {
  -webkit-animation: slide-in-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
  animation: slide-in-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.slide-out-left {
  -webkit-animation: slide-out-left 0.5s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
  animation: slide-out-left 0.5s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}

.slide-out-right {
  -webkit-animation: slide-out-right 0.5s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
  animation: slide-out-right 0.5s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}

@-webkit-keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@-webkit-keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(1000px);
    transform: translateX(1000px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(1000px);
    transform: translateX(1000px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@-webkit-keyframes slide-out-left {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
    opacity: 0;
  }
}

@keyframes slide-out-left {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
    opacity: 0;
  }
}

@-webkit-keyframes slide-out-right {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(1000px);
    transform: translateX(1000px);
    opacity: 0;
  }
}

@keyframes slide-out-right {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(1000px);
    transform: translateX(1000px);
    opacity: 0;
  }
}

.calendar-container .btn-dark {
	background-color:#222 !important;
	border-color:#222 !important;
}
.calendar-container .btn-dark:hover {
	background-color:#444 !important;
	border-color:#444 !important;
}