

/* barlow-condensed-100 - latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 100;
  src: url('../fonts/barlow-condensed-v12-latin-100.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/barlow-condensed-v12-latin-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/barlow-condensed-v12-latin-100.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-100.woff') format('woff'), /* Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-100.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/barlow-condensed-v12-latin-100.svg#BarlowCondensed') format('svg'); /* Legacy iOS */
}

/* barlow-condensed-200 - latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 200;
  src: url('../fonts/barlow-condensed-v12-latin-200.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/barlow-condensed-v12-latin-200.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/barlow-condensed-v12-latin-200.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-200.woff') format('woff'), /* Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-200.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/barlow-condensed-v12-latin-200.svg#BarlowCondensed') format('svg'); /* Legacy iOS */
}

/* barlow-condensed-300 - latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/barlow-condensed-v12-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/barlow-condensed-v12-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/barlow-condensed-v12-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/barlow-condensed-v12-latin-300.svg#BarlowCondensed') format('svg'); /* Legacy iOS */
}

/* barlow-condensed-regular - latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/barlow-condensed-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/barlow-condensed-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/barlow-condensed-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/barlow-condensed-v12-latin-regular.svg#BarlowCondensed') format('svg'); /* Legacy iOS */
}

/* barlow-condensed-500 - latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/barlow-condensed-v12-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/barlow-condensed-v12-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/barlow-condensed-v12-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/barlow-condensed-v12-latin-500.svg#BarlowCondensed') format('svg'); /* Legacy iOS */
}

/* barlow-condensed-600 - latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/barlow-condensed-v12-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/barlow-condensed-v12-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/barlow-condensed-v12-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/barlow-condensed-v12-latin-600.svg#BarlowCondensed') format('svg'); /* Legacy iOS */
}

/* barlow-condensed-700 - latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/barlow-condensed-v12-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/barlow-condensed-v12-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/barlow-condensed-v12-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/barlow-condensed-v12-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/barlow-condensed-v12-latin-700.svg#BarlowCondensed') format('svg'); /* Legacy iOS */
}




body{

  font-family: 'Barlow Condensed', sans-serif;
  font-size:auto;
  font-weight:300;
  background: #ffffff !important;
    color: #222;
}


h1 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 2.0rem !important;
  line-height: 1em;
  letter-spacing: 0.02em;
    color:#000;

}

  @media only screen and (max-width: 640px){
h1 {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 2rem;
  letter-spacing: 0.05em;
  color:#000;
}
}

h2 {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 1.2em !important;
  margin:0px;
  padding: 0px;
  line-height: 1.2em;
}

 @media only screen and (max-width: 640px){
h2 {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 1.2em !important;
  margin:0px;
  padding: 0px;
  line-height: 1.2em;
}
}

p, p a{
  font-size: 1.2em;
}

/* --- Navigation --- */
.top-bar {
  background: #000000;
  height: 80px;
}

.top-bar .title-area {}
.top-bar .logo-group {
  display: flex;
  align-items: center;
  gap: 20px;
  height: 80px;
  padding: 0 20px;
}

.top-bar .logo-group img { display: block; }

.top-bar-section li:not(.has-form) a:not(.button) {
  background: #000000;
  color: #ffffff;
  line-height: 70px;
  padding: 0 18px;
  font-weight: 500;
}

.top-bar-section li:not(.has-form) a:not(.button):hover {
  background: #000000;
  color: #d0006f;
}

.top-bar-section .active:not(.has-form) a:not(.button) {
  background: #000000 !important;
  color: #d0006f !important;
}

.top-bar-section{
  margin-top: 0px !important;
}

.top-bar-section .left, .top-bar-section .right {
  margin-top: 0px !important;
}

.contain-to-grid { background: #000000; box-shadow: 0 1px 0 rgba(0,0,0,0.05); }

.top-bar .toggle-topbar a { color: #ffffff; }

/* --- Page heading --- */
.page-header { padding: 40px 0 30px; }
.page-header h1 { font-weight: 700; font-size: 2rem; }
.page-header p { color: #777; }
.header-logo { display: block; width: 130px; height: auto; margin: 0 auto 24px; }

/* --- Event grid: flexbox so cards in the same row always match height,
   regardless of how much title/description text wraps at any screen width --- */
.row.event-grid {
  display: flex;
  flex-wrap: wrap;
}

.row.event-grid > .columns {
  float: none;
  display: flex;
}

/* --- Event cards --- */
.event-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  position: relative;
  margin-bottom: 34px;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  border:1px solid rgba(50, 50, 50, 0.1);
  border-radius: 14px;
  background: #f7f7f7;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    box-shadow: 0 5px 22px rgba(0,0,0,0.14);
}

.event-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 32px rgba(0,0,0,0.14);
}

.event-card .image-wrap {
  width: 100%;
  padding-top: 100%; /* 1:1 */
  position: relative;
  overflow: hidden;
  border-radius: 13px 13px 0 0;
  background: #f2f2f2;
}

.event-card .image-wrap img {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
}

.event-card:hover .image-wrap img { transform: scale(1.06); }
.category-tag {
 position: absolute;
  top: -13px;
  left: 12px;
  z-index: 2;
  display: inline-block;
  padding: 6px 12px 6px 12px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #ffffff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.25);
}

.category-tag.kabarett { background: #f07d00; }
.category-tag.konzerte { background: #1c6fd1; }
.category-tag.shows { background: #a020c0; }
.category-tag.theater { background: #1b6b4a; }
.event-card .event-title {
  padding: 5px 16px 5px 16px;
  min-height: 30px;
  font-size: 1.1rem;
  font-weight: 600;
  color: #1b1b1b;
  line-height: 1.3;
}

.event-card .event-text {
  padding: 0px;
  min-height: 46px;
  font-size: 1.1rem;
  font-weight: 400;
  color: #1b1b1b;
  line-height: 1.3;
  margin:0px;
}

.event-card .event-price {
  margin-top: auto;
  padding: 0px 16px 16px;
  display: block;
  color: #d0006f;
  font-size: 0.95rem;
  font-weight: 700;
}

footer.site-footer {
  margin-top: 20px;
  padding: 30px 0;
  color: #999;
  font-size: 0.85rem;
  text-align: center;
}

.neissen-logo { height: 40px; width: auto;    margin-bottom: 100px;}

.footer-navi {
  font-size: 0.9em !important;
  padding-top:5px;
  margin-right: 20px;
  color: #333 !important;
}

.footer-navi a {
  color: #000 !important;
}

.footer_logo {
  margin-right:30px;
  margin-top: 0.1em;
  float: left;
}