/* ********************************************************* */
/* Allgemeines                                               */
/* ********************************************************* */
.sc {
	/*border: 1px solid darkblue;*/
	margin-left: 0;
	margin-right: 0;
	padding-left: 10px;
	padding-right: 10px;
	clear: none;
}

.sc-first
{
	clear: both;
}

.sc-last {
}

.sc-clear {
	clear: left;
}

.sc-rowspan > *
{
	margin: 0;
	padding: 0;
}

/* ********************************************************* */
/* 2 Spalten                                                 */
/* ********************************************************* */
.sc2 {
	width: 49.4%;
	margin-left: 0.3%;
	margin-right: 0.3%;
	float: left;
	display: inline;
}
.sc2-first {
	width: 49.7%;
	margin-left: 0;
	clear: left;
}
.sc2-last {
	width: 49.7%;
	margin-right: 0;
}

/* ********************************************************* */
/* 3 Spalten                                                 */
/* ********************************************************* */
.sc3 {
	width: 32.8%;
	margin-left: 0.3%;
	margin-right: 0.3%;
	float: left;
	display: inline;
}
.sc3-first {
	width: 33%;
	margin-left: 0;
	clear: left;
}
.sc3-last {
	width: 33%;
	margin-right: 0;
}

.sc3-2 {
	width:65.6%;padding-right:1%;float:left;display:inline;
}
.sc3-2-first {
	clear:left;
}
.sc3-2-last {
	padding-right:1.1%;
}

/* ********************************************************* */
/* 4 Spalten                                                 */
/* ********************************************************* */
.sc4 {
	width: 24.4%;
	margin-left: 0.3%;
	margin-right: 0.3%;
	float: left;
	display: inline;
}
.sc4-first {
	width: 24.7%;
	margin-left: 0;
	clear: left;
}
.sc4-last {
	width: 24.7%;
	margin-right: 0;
}

.sc4-2 {
	width:49%;padding-right:1%;float:left;display:inline;
}
.sc4-2-first {
	clear:left;
}
.sc4-2-last {
}
.sc4-3 {
	width:74%;padding-right:1%;float:left;display:inline;
}
.sc4-3-first {
	clear:left;
}
.sc4-3-last {
}

/* ********************************************************* */
/* 5 Spalten                                                 */
/* ********************************************************* */
.sc5 {
	width: 19.4%;
	margin-left: 0.3%;
	margin-right: 0.3%;
	float: left;
	display: inline;
}
.sc5-first {
	width: 19.7%;
	margin-left: 0;
	clear: left;
}
.sc5-last {
	width: 19.7%;
	margin-right: 0;
}

.sc5-2 {
	width:39%;padding-right:1%;float:left;display:inline;
}
.sc5-2-first {
	clear:left;
}
.sc5-2-last {
}
.sc5-3 {
	width:59%;padding-right:1%;float:left;display:inline;
}
.sc5-3-first {
	clear:left;
}
.sc5-3-last {
}
.sc5-4 {
	width:79%;padding-right:1%;float:left;display:inline;
}
.sc5-4-first {
	clear:left;
}
.sc5-4-last {
}

/* ********************************************************* */
/* 6 Spalten                                                 */
/* ********************************************************* */
.sc6 {
	width: 16.1%;
	margin-left: 0.3%;
	margin-right: 0.3%;
	float: left;
	display: inline;
}
.sc6-first {
	width: 16.3%;
	margin-left: 0;
	clear: left;
}
.sc6-last {
	width: 16.3%;
	margin-right: 0;
}

.sc6-2 {
	width:32.33%;padding-right:1%;float:left;display:inline;
}
.sc6-2-first {
	clear:left;
}
.sc6-2-last {
}
.sc6-3 {
	width:49%;padding-right:1%;float:left;display:inline;
}
.sc6-3-first {
	clear:left;
}
.sc6-3-last {
}
.sc6-4 {
	width:65.67%;padding-right:1%;float:left;display:inline;
}
.sc6-4-first {
	clear:left;
}
.sc6-4-last {
}
.sc6-5 {
	width:82.33%;padding-right:1%;float:left;display:inline;
}
.sc6-5-first {
	clear:left;
}
.sc6-5-last {
}


/* ********************************************************* */
/* 7 Spalten                                                 */
/* ********************************************************* */
.sc7 {
	width: 13.92%;
	margin-left: 0.2%;
	margin-right: 0.2%;
	float: left;
	display: inline;
}
.sc7-first {
	width: 14%;
	margin-left: 0;
	clear: left;
}
.sc7-last {
	width: 14%;
	margin-right: 0;
}

.sc7-2 {
	width:27.57%;padding-right:1%;float:left;display:inline;
}
.sc7-2-first {
	clear:left;
}
.sc7-2-last {
}
.sc7-3 {
	width:41.86%;padding-right:1%;float:left;display:inline;
}
.sc7-3-first {
	clear:left;
}
.sc7-3-last {
}
.sc7-4 {
	width:56.14%;padding-right:1%;float:left;display:inline;
}
.sc7-4-first {
	clear:left;
}
.sc7-4-last {
}
.sc7-5 {
	width:70.43%;padding-right:1%;float:left;display:inline;
}
.sc7-5-first {
	clear:left;
}
.sc7-5-last {
}
.sc7-6 {
	width:84.71%;padding-right:1%;float:left;display:inline;
}
.sc7-6-first {
	clear:left;
}
.sc7-6-last {
}


/* 8-spaltig */
.sc8 {
	width:11.5%;padding-right:1%;float:left;display:inline;
}
.sc8-first {
	clear:left;
}
.sc8-last {
}
.sc8-2 {
	width:24%;padding-right:1%;float:left;display:inline;
}
.sc8-2-first {
	clear:left;
}
.sc8-2-last {
}
.sc8-3 {
	width:36.5%;padding-right:1%;float:left;display:inline;
}
.sc8-3-first {
	clear:left;
}
.sc8-3-last {
}
.sc8-4 {
	width:49%;padding-right:1%;float:left;display:inline;
}
.sc8-4-first {
	clear:left;
}
.sc8-4-last {
}
.sc8-5 {
	width:61.5%;padding-right:1%;float:left;display:inline;
}
.sc8-5-first {
	clear:left;
}
.sc8-5-last {
}
.sc8-6 {
	width:74%;padding-right:1%;float:left;display:inline;
}
.sc8-6-first {
	clear:left;
}
.sc8-6-last {
}
.sc8-7 {
	width:86.5%;padding-right:1%;float:left;display:inline;
}
.sc8-7-first {
	clear:left;
}
.sc8-7-last {
}


/* 9-spaltig */
.sc9 {
	width:10.11%;padding-right:1%;float:left;display:inline;
}
.sc9-first {
	clear:left;
}
.sc9-last {
}
.sc9-2 {
	width:21.22%;padding-right:1%;float:left;display:inline;
}
.sc9-2-first {
	clear:left;
}
.sc9-2-last {
}
.sc9-3 {
	width:32.33%;padding-right:1%;float:left;display:inline;
}
.sc9-3-first {
	clear:left;
}
.sc9-3-last {
}
.sc9-4 {
	width:43.44%;padding-right:1%;float:left;display:inline;
}
.sc9-4-first {
	clear:left;
}
.sc9-4-last {
}
.sc9-5 {
	width:54.56%;padding-right:1%;float:left;display:inline;
}
.sc9-5-first {
	clear:left;
}
.sc9-5-last {
}
.sc9-6 {
	width:65.67%;padding-right:1%;float:left;display:inline;
}
.sc9-6-first {
	clear:left;
}
.sc9-6-last {
}
.sc9-7 {
	width:76.78%;padding-right:1%;float:left;display:inline;
}
.sc9-7-first {
	clear:left;
}
.sc9-7-last {
}
.sc9-8 {
	width:87.89%;padding-right:1%;float:left;display:inline;
}
.sc9-8-first {
	clear:left;
}
.sc9-8-last {
}


/* 10-spaltig */
.sc10 {
	width:9%;padding-right:1%;float:left;display:inline;
}
.sc10-first {
	clear:left;
}
.sc10-last {
}
.sc10-2 {
	width:19%;padding-right:1%;float:left;display:inline;
}
.sc10-2-first {
	clear:left;
}
.sc10-2-last {
}
.sc10-3 {
	width:29%;padding-right:1%;float:left;display:inline;
}
.sc10-3-first {
	clear:left;
}
.sc10-3-last {
}
.sc10-4 {
	width:39%;padding-right:1%;float:left;display:inline;
}
.sc10-4-first {
	clear:left;
}
.sc10-4-last {
}
.sc10-5 {
	width:49%;padding-right:1%;float:left;display:inline;
}
.sc10-5-first {
	clear:left;
}
.sc10-5-last {
}
.sc10-6 {
	width:59%;padding-right:1%;float:left;display:inline;
}
.sc10-6-first {
	clear:left;
}
.sc10-6-last {
}
.sc10-7 {
	width:69%;padding-right:1%;float:left;display:inline;
}
.sc10-7-first {
	clear:left;
}
.sc10-7-last {
}
.sc10-8 {
	width:79%;padding-right:1%;float:left;display:inline;
}
.sc10-8-first {
	clear:left;
}
.sc10-8-last {
}
.sc10-9 {
	width:89%;padding-right:1%;float:left;display:inline;
}
.sc10-9-first {
	clear:left;
}
.sc10-9-last {
}

/* raleway-800 - latin */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 800;
  src: url('../../files/assets/fonts/raleway-v28-latin-800.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/assets/fonts/raleway-v28-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/assets/fonts/raleway-v28-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/assets/fonts/raleway-v28-latin-800.woff') format('woff'), /* Modern Browsers */
       url('../../files/assets/fonts/raleway-v28-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/assets/fonts/raleway-v28-latin-800.svg#Raleway') format('svg'); /* Legacy iOS */
}

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../../files/assets/fonts/open-sans-v34-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/assets/fonts/open-sans-v34-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/assets/fonts/open-sans-v34-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/assets/fonts/open-sans-v34-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../../files/assets/fonts/open-sans-v34-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/assets/fonts/open-sans-v34-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../../files/assets/fonts/open-sans-v34-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/assets/fonts/open-sans-v34-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/assets/fonts/open-sans-v34-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/assets/fonts/open-sans-v34-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../../files/assets/fonts/open-sans-v34-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/assets/fonts/open-sans-v34-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}
html {
  height: 100%; /* dev */
  overflow-y: scroll;
  -webkit-font-smoothing: antialiased;
}

body {
  background: #000 center center no-repeat;
  background-size: 150% 300%;
  background-attachment: fixed;
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
  height: 100%; /* dev */
}

.invisible {
  display: none;
}

.ce_form {
  margin-bottom: 2em;
}

.ce_form label {
  display: block;
}

.ce_form input.text, .ce_form .textarea {
  display: block;
  width: 96%;
  max-width: 96%;
  padding: 2%;
  border: 0;
  background-color: #6c6b6b;
  color: #fff;
}

.ce_form input.text:hover, .ce_form .textarea:hover, .ce_form input.text:focus, .ce_form .textarea:focus {
  outline: 0;
  background-color: #858585;
}

.ce_form input.submit {
  background-color: #ff5103;
  border: 0;
  display: block;
  line-height: 1;
  padding: 1em;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
}

.ce_form input.submit:hover, .ce_form input.submit:focus {
  outline: 0;
  background-color: #ff631d;
}

.ce_form span.mandatory {
  color: #e2221a;
  padding-left: 0.5em;
  font-size: 0.8em;
}

#backgrounds {
  background-image: url(../../files/assets/images/status.gif);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 64px 64px;
}

#backgrounds {
  position: fixed;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  z-index: 0;
  -webkit-transform: translateZ(0);
}

.map {
  height: 100%;
}

video {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 2em;
}

.main .ce_player {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

#backgrounds img, #backgrounds .dlh_googlemap, #backgrounds .map-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  min-width: 50%;
  min-height: 50%;
  z-index: -2;
}

#backgrounds img {
  left: -65%;
}

.maps #backgrounds img {
  left: 0;
}

.gm-style-iw {
  color: #000;
}

.gm-style-iw a {
  color: #ff5103;
}

a img {
  border: 0;
}

.inside {
  padding: 0 5%;
}

.pages .main .inside, .title .inside {
  padding: 0 7%;
  overflow: hidden;
}

/* Header */
.header {
  background-color: #000;
  background-color: rgba(0,0,0,0.8);
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.pages .main {
  background-color: #000;
  background: -moz-linear-gradient(top,  rgba(0,0,0,0.8) 0%, rgba(0,0,0,1) 60%, rgba(0,0,0,1) 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.8)), color-stop(60%,rgba(0,0,0,1)), color-stop(100%,rgba(0,0,0,1))); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,1) 60%,rgba(0,0,0,1) 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,1) 60%,rgba(0,0,0,1) 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,1) 60%,rgba(0,0,0,1) 100%); /* IE10+ */
  background: linear-gradient(to bottom,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,1) 60%,rgba(0,0,0,1) 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
  clear: both;
  margin-top: 80%;
  z-index: 1;
  position: relative;
}

.lunchtable figure, .main figure, .main ul, .main ol, .main p, .main img {
  margin: 0 0 1em 0;
  padding: 0;
}

.main ul, .main ol {
  padding-left: 30px;
}

.main a, .lightbox p a {
  color: #ff5103;
}

.main a:hover, .main a:focus, .lightbox p a:hover, .lightbox p a:focus {
  text-decoration: none;
}

.main article {
  padding-bottom: 1em;
}

.main blockquote {
  margin: 0;
  padding: 0 0 0 1.5em;
  border-left: 2px dotted #858585;
}

.main blockquote + figcaption {
  text-align: right;
  color: #858585;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  margin: 0 0 1.25em 0;
  line-height: 1.2;
}

h2, h3, h4, h5, h6 {
  margin: 0 0 0.5em 0;
}

h1 {
  font-size: 1.25em;
}

p + h1 {
  margin-top: 2em;
}

h2 {
  font-weight: normal;
  font-size: 1.25em;
}

h3 {
  font-size: 1.125em;
}

h4 {
  font-weight: normal;
  font-size: 1.125em;
}

h5 {
  font-size: 1em;
}

h6 {
  font-size: 0.95em;
}

.main figure img, .lunchtable figure, .notice figure {
  margin: 0;
  text-align: center;
}

.lunchtable figcaption, .notice figcaption, .main figcaption {
  font-size: 0.95em;
}

.main img, .lunchtable img, .notice img {
  max-width: 100%;
  width: auto;
  height: auto;
}

.main h1.title, .lightbox h1.title {
  font-size: 1em;
  line-height: 3;
  text-transform: uppercase;
  letter-spacing: 4px;
  display: block;
  background-color: #662682;
  background-color: rgba(102,38,130,0.9);
  margin: 0 0 1em 0;
}

.mainnav ul, .specialnav ul {
  overflow: hidden;
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: 'Raleway', sans-serif;
  font-weight: 800;
}

.mainnav, .mainnav.open {
  margin: 0.5em 0;
}

.mainnav ul {
  display: none;
}

.mainnav.open ul {
  display: block;
}

#mainnav-toggler {
  float: right;
  font-size: 3em;
  line-height: 1.5em;
  cursor: pointer;
  color: #6c6b6b;
  -webkit-transition: color 400ms;
  -moz-transition: color 400ms;
  transition: color 400ms;
}

#mainnav-toggler.open {
  color: #fff;
}

#mainnav-toggler:hover, #mainnav-toggler:focus {
  color: #ddd;
}

.mainnav ul li a, .mainnav ul li span.active {
  color: #6c6b6b;
  display: block;
  text-align: center;
  padding: 1em 0;
  text-decoration: none;
  -webkit-transition: color 400ms;
  -moz-transition: color 400ms;
  transition: color 400ms;
}

.mainnav ul li a:hover, .mainnav ul li a:focus {
  outline: 0;
  background-color: rgba(0,0,0,0.2);
  color: #ddd;
}

.mainnav ul li span.active {
  color: #fff;
  cursor: default;
}

.mainnav a.logo {
  width: 42px;
  padding: 1em 0;
  display: block;
  line-height: 1;
}

.mainnav a.logo img {
  max-width: 100%;
  width: auto;
  height: auto;
}

.specialnav {
  position: relative;
  z-index: 900;
}

.specialnav ul li {
  float: left;
  width: 50%;
}

.specialnav ul li.reservation {
  width: 100%;
}

.specialnav ul li a {
  display: block;
  line-height: 3;
  padding: 0 1em;
  color: #fff;
  text-decoration: none;
  -webkit-transition: background 50ms;
  -moz-transition: background 50ms;
  transition: background 50ms;
}

.specialnav ul li a:hover, .specialnav ul li a:focus {
  outline: 0; /* optimize indication */
  background: rgba(255, 255, 255,0.1);
}

.specialnav ul li.reservation {
  background-color: #e2221a;
}

.specialnav ul li.lunch {
  background-color: #ff5103;
}

.specialnav ul li.gift {
  background-color: #9b121e;
}

.specialnav ul li.instagram {
  width: 60px;
  background-color: #ff0069;
  margin-left: auto;
}

.specialnav ul li.facebook {
  width: 60px;
  background-color: #0766fe;
  margin-left: auto;
}

.specialnav ul li.facebook a, .specialnav ul li.instagram a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 42px;
}

.main .subnav ul {
  list-style: none;
  padding: 0;
  display: block;
  overflow: hidden;
}

.main .subnav ul li {
  float: left;
  padding: 0 1em 0 0;
}

.main .subnav ul li a {
  line-height: 3;
  text-transform: uppercase;
  letter-spacing: 4px;
  font-weight: bold;
  color: #858585;
  text-decoration: none;
  cursor: pointer;
  display: block;
  -webkit-transition: color 400ms;
  -moz-transition: color 400ms;
  transition: color 400ms;
}

.main .subnav ul li.active a {
  color: #fff;
}

.main .subnav ul li a:hover, .main .subnav ul li a:focus {
  color: #ddd;
  outline: 0;
}

.main .tab-content {
  -webkit-transition: height 1.35s ease;
  -moz-transition: height 1.35s ease;
  -o-transition: height 1.35s ease;
  transition: height 1.35s ease;
}

.lightbox .lunchtable h1.title {
  background-color: #ff5103;
}

.lightbox .reservation h1.title {
  background-color: #e2221a;
}

.lightbox .lightbox-content {
  background-color: #222;
}

.lightbox .lightbox-content > article {
  padding: 2.5% 5%;
}

.lightbox {
  display: none;
}

.jquery .lightbox {
  width: 95%;
  padding: 2.5%;
  min-height: 100%;
  z-index: 2000;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background-color: #fff;
  background-color: rgba(255,255,255,0.8);
}

.jquery .lightbox .lightbox-content {
  min-height: 100%;
}

.lightbox h1.title {
  padding: 0 5%;
}

.lightbox-close {
  float: right;
  font-size: 2em;
  line-height: 1.5;
  cursor: pointer;
  color: #6c6b6b;
  color: rgba(255,255,255,0.8);
}

.lightbox-close:hover, .lightbox-close:focus {
  color: #fff;
}

.lightbox-active .main {
  position: fixed;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

.lunchtable table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}

.lunchtable table td, table th {
  padding: 0 1em 1em 0;
  text-align: left;
}

.lunchtable table td.col_last {
  text-align: right;
  padding-right: 0;
}

/* Special pages */
.start .header .title {
  padding: 1em 0 1em 2.75em;
  font-size: 1em;
  font-family: 'Raleway', sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  line-height: 0.85;
  margin: 0 auto;
  width: 12em;
}

.start .header .title strong, .start .header .title sup {
  color: #e74f20;
}

.start .header .title strong {
  margin-left: -2.75em;
}

.start .header .title sup {
  font-size: 0.5em;
  text-transform: none;
  vertical-align: top;
}

/* Carte page */

body.carte {
  background-color: #8e35aa;
  background-image: url('../../files/assets/images/backgrounds/carte.jpg');
  background-repeat: repeat;
  background-size: 500px;
}

.carte .main {
  margin-top: 6em;
}

.carte .main .content {
  color: #000;
  background-color: #fff;
}

.carte .carte-box {
  margin-top: 2em;
  padding: 12% 14%;
  background-color: #fff;
  box-shadow: 0px 5px 10px rgba(0,0,0,0.4);
}

.carte .main .content h1 {
  text-transform: uppercase;
  letter-spacing: 4px;
  line-height: 1.2;
  margin-bottom: 0.25em;
}

.carte .main .content p {
  margin-bottom: 0.5em;
}

.carte .main .content .ce_headline, .carte .main .content .ce_text {
  display: block;
  padding: 0.5em 0 0 0;
  border-top: 2px dashed #000;
  border-bottom: 2px dashed #000;
}

.carte .main .content .ce_headline {
  padding-bottom: 0.5em;
}

.carte .ce_table {
  margin-top: 3em;
}

.ce_table table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}

.ce_table table td, .ce_table table th {
  padding: 1em 1em 1em 0;
  text-align: left;
  vertical-align: top;
}

.ce_table table td.col_last {
  text-align: right;
  padding-right: 0;
  white-space:nowrap;
}

.ce_table table tr {
  border-bottom: 1px solid #000;
}

.ce_table table tr.row_last {
  border: 0;
}

/* slideshow */
#slidenav-left, #slidenav-right {
  background-color: transparent;
  border: 0;
  display: block;
  font-size: 0;
  cursor: pointer;
  background-repeat:no-repeat;
  background-position:center;
  background-size: 100% 100%;
  height: 50px;
  width: 50px;
  margin: 5% 0 0 0;
}

#slidenav {
  position: relative;
}

#slidenav-left, #slidenav-right {
  position: absolute;
  top: 0;
  z-index: 1;
}

#slidenav-left {
  left: 5%;
}

#slidenav-right {
  right: 5%;
}

#slidenav {
  position: relative;
}

.carte #slidenav-left, .carte #slidenav-right {
  position: relative;
  margin: 0 0 12% 0;
}

#slidenav-left:hover, #slidenav-right:hover, #slidenav-left:focus, #slidenav-right:focus {
  opacity: 0.5;
  outline: none;
}

#slidenav-left {
  background-image: url('../../files/assets/images/arrow-left-orange.png');
  background-image: none,url('../../files/assets/images/arrow-left-orange.svg');
  float: left;
}

#slidenav-right {
  background-image: url('../../files/assets/images/arrow-right-orange.png');
  background-image: none,url('../../files/assets/images/arrow-right-orange.svg');
  float: right;
}

.carte #slidenav-left {
  background-image: url('../../files/assets/images/arrow-left-white.png');
  background-image: none,url('../../files/assets/images/arrow-left-white.svg'), url('../../files/assets/images/arrow-left-white.png');
  float: left;
}

.carte #slidenav-right {
  background-image: url('../../files/assets/images/arrow-right-white.png');
  background-image: none,url('../../files/assets/images/arrow-right-white.svg'), url('../../files/assets/images/arrow-right-white.png');
  float: right;
}

#tour360iframe {
  width: 100%;
}

.slideshow {
  clear: both;
}

.slideshow section figure.image_container {
  text-align: center;
}

figure.image_container .caption {
  width: 100%!important;
}

.jquery .slideshow {
  position: relative;
}

.jquery .slideshow section {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
}

.main .ce_downloads ul, .lightbox .ce_downloads ul {
  list-style: none;
  padding: 0;
}

.main .ce_downloads ul li, .lightbox .ce_downloads ul li, .ce_download a {
  clear: both;
}

.main .ce_downloads ul li img, .lightbox .ce_downloads ul li img, .ce_download img {
  float: left;
  padding-right: 0.5em;
}

.enclosure img {
  float: left;
  padding-right: 0.5em;
}

.mod_newsarchive .layout_latest {
  margin-top: 1em;
  margin-bottom: 3em;
}

.mod_newsarchive .layout_latest h2 {
  font-weight: bold;
  font-size: 1.2em;
}

.mod_newsarchive .layout_latest h2 a {
  text-decoration: none;
}

.mod_newsarchive .layout_latest .image_container {
  aspect-ratio: 1;
  object-fit: contain;
  object-position: center center;
  padding: 1em;
  box-sizing: border-box;
  background: #fff;
  margin-bottom: 2em;
}

.mod_newsarchive .layout_latest .image_container a {
  display: block;
  height: 100%;
  width: 100%;
}

.mod_newsarchive .layout_latest .image_container img {
  object-fit: contain;
  object-position: center center;
  width: 100%;
  height: 100%;
  display: block;
}

.mod_newsreader .layout_full {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
}

.mod_newsreader .layout_full .image_container {
  aspect-ratio: 1;
  object-fit: contain;
  padding: 1em;
  box-sizing: border-box;
  background: #fff;
  margin-bottom: 2em;
}

.mod_newsreader .layout_full .image_container a {
  display: block;
  height: 100%;
  width: 100%;
}

.mod_newsreader .layout_full .image_container img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  display: block;
}

.toplink {
  background-color: transparent;
  border: 0;
  display: block;
  font-size: 0;
  cursor: pointer;
  background-repeat:no-repeat;
  background-position:center;
  background-size: 50px 50px;
  height: 100px;
  width: 50px;
  margin: 5% auto 0 auto;
  background-image: url("../../files/assets/images/arrow-top.png");
  background-image: none,url("../../files/assets/images/arrow-top.svg"), url("../../files/assets/images/arrow-top.png");
  z-index: 99999999;
  position: relative;
}

.toplink:hover, .toplink:focus {
  opacity: 0.5;
  outline: none;
}

.lightbox-active .toplink {
  display: none!important;
}

#OT_searchWrapperAll {
  height: auto;
  margin: 25px 0 1em 0;
}

#OT_searchWrapper .OT_feedTitle {
  font-size: 14px;
  top: -25px;
  margin: 0;
}

.partnerlogo {
	overflow: hidden;
	display: block;
	clear: none;
	margin-top: 1em;
	text-align: center;
}

.partnerlogo a {
	display: block;
	padding: 1em 1em;
}

.partnerlogo img {
	width: 120px;
	height: auto;
}

#footer {
  position: fixed;
  bottom: 10px;
  left: 10px;
  right: 10px;
  height: 94px;
  z-index: 999;
}

#footer .inside {
  padding: 0;
}

.links {
  display: block;
  -webkit-transform: scale(0.7);
  -moz-transform: scale(0.7);
  -ms-transform: scale(0.7);
  -o-transform: scale(0.7);
  transform: scale(0.7);
  -webkit-transform-origin: bottom right;
  -moz-transform-origin: bottom right;
  -ms-transform-origin: bottom right;
  -o-transform-origin: bottom right;
  transform-origin: bottom right;
  white-space: nowrap;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 50;
}

.gutschein-link, .weinplaces-link, .tripadvisor-link {
  display: inline-block;
  margin-left: 10px;
}

.social-link {
  position: absolute;
  left: 0;
  bottom: 0;
}

.links a, .social-link a {
  display: inline-block;
}

.links a img, .social-link a img {
	vertical-align: middle;
	border: 0;
}

.links a img:hover, .links a img:focus, .social-link a img:hover, .social-link a img:focus {
	opacity: 0.8;
}

.p2-button {
  position: absolute;
  bottom: 50px;
  left: -20px;
  width: 140px;
  height: 140px;
  /*background: #2c333c;*/
  background: #ca001d;
  z-index: 1848;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  -webkit-transform: rotate(-8deg);
  -moz-transform: rotate(-8deg);
  -ms-transform: rotate(-8deg);
  transform: rotate(-8deg);
  z-index: 40;
}

a.p2-button {
  cursor: pointer;
}

.p2-button div {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

a.p2-button:hover, a.p2-button:focus {
  color: #fff;
  opacity: 0.9;
}

.p2-button h5 {
  line-height: 1.3;
}

.p2-button p {
  margin-bottom: 0;
  line-height: 1.2;
}

.inside {
  max-width: 1600px;
  margin: 0 auto;
}


/* Phablet */
@media screen and (min-width: 300px) {

  .sc {
    width: 100%;
  }

  .start .header .title {
    font-size: 1.4em;
  }
}

/* Small Tablet */
@media screen and (min-width: 560px) {



.mod_newsarchive .layout_latest {
  display: grid;
  grid-template-columns: 200px auto;
  column-gap: 2em;
}

  .main .ce_player {
    width: 60%;
  }
  .p2-button {
    left: 10px;
  }
	.partnerlogo {
		float: right;
	}
	.partnerlogo a {
		float: left;
  }
  .partnerlogo img {
	  width: 190px;
  }
  .mainnav ul, .specialnav ul {
    letter-spacing: 4px
  }
  .links {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }

	#backgrounds img {
  	left: 0;
  }

  /* Columns */

  .sc .image_container img {
    width: 100%;
    height: auto;
  }
  .sc .partnerlink-first {
	  float: left;
    width: 48%;
    height: auto;
  }
  .sc .partnerlink-last {
	  float: right;
    width: 48%;
    height: auto;
  }
  /* allgemeine Definition */
  .sc {
  	margin-left:0 !important;
  	margin-right:0 !important;
  	padding-left:0 !important;
  	clear:none !important;
  }
  .sc-first {
  }
  .sc-last, .mod_newsarchive .sc3.even + .sc3.odd + .sc3.even {
    padding-right: 0 !important;
  }
  .sc-clear {
  	clear:left;
    margin-bottom: 1em;
  }

  .sc-rowspan > *
  {
  	margin: 0!important;
  	padding: 0!important;
  }

  /* 2-spaltig */
  .sc2 {
  	width:48.75%;
  	padding-right:2.5%;
  	float:left;
  	display:inline;
  }
  .sc2-first {
  	clear:left;
  }
  .sc2-last {
  	padding-right:0;
  }

  /* 3-spaltig */
  .sc3 {
  	width:31.666%;
  	padding-right:2.5%;
  	float:left;
  	display:inline;
  }
  .sc3-first {
  	clear:left;
  }
  .sc3-2 {
  	width:65.834%;
  	padding-right:2.5%;
  	float:left;
  	display:inline;
  }
  .sc3-2-first {
  	clear:left;
  }

  /* 4-spaltig */
  .sc4 {
  	width:23.125%;
  	padding-right:2.5%;
  	float:left;
  	display:inline;
  }

  .sc4-first {
  	clear:left;
  }

  .sc4-2 {
  	width:48.75%;
  	padding-right:2.5%;
  	float:left;
  	display:inline;
  }

  .sc4-2-first {
  	clear:left;
  }

  .sc4-3 {
  	width:74.333%;
  	padding-right:2.5%;
  	float:left;
  	display:inline;
  }

  .sc4-3-first {
  	clear:left;
  }

  /* 5-spaltig */
  .sc5 {
  	width:19%;
  	padding-right:1.25%;
  	float:left;
  	display:inline;
  }

  .sc5-first {
  	clear:left;
  }

  .sc5-last {
  }

  .sc5-2 {
  	width:39.25%;
  	padding-right:1.25%;
  	float:left;
  	display:inline;
  }

  .sc5-2-first {
  	clear:left;
  }

  .sc5-3 {
  	width:59.5%;
  	padding-right:1.25%;
  	float:left;
  	display:inline;
  }

  .sc5-3-first {
  	clear:left;
  }

  .sc5-4 {
  	width:79.75%;
  	padding-right:1.25%;
  	float:left;
  	display:inline;
  }

  .sc5-4-first {
  	clear:left;
  }

  .inside {
    padding: 0 2%;
  }

  .pages .main {
    margin-top: 30%;
  }

  .mainnav, .mainnav.open {
    font-size: 0.857em;
    display: table;
    margin: 0 auto;
  }

.mainnav {
  display: none!important;
}

.js .mainnav {
  display: table!important;
}

  .mainnav a.logo {
    margin: 0 auto;
    width: 62px;
  }

  #mainnav-toggler {
    display: none;
  }

  .mainnav ul {
    display: block;
    overflow: hidden;
  }

  .mainnav ul li {
    display: inline-block;
  }

  .mainnav ul li a, .mainnav ul li span.active {
    line-height: 3;
    display: inline;
    padding: 1em 0.5em;
  }

  .specialnav {
    float: right;
    padding: 1em 0 1em 1em;
    margin-bottom: 50px;
  }

  .specialnav ul li {
    float: none;
    width: auto;
    margin-top: 1em;
  }

  .jquery .lightbox {
    width: 100%;
    box-sizing: border-box;
    padding: 10% 10%;
  }

  /* Special */
  .start .header .title {
    float: left;
    font-size: 2.8em;
    line-height: 0.775;
  }

  .start .header .title sup {
    font-size: 0.3em;
  }

  .carte .main {
    margin-top: 11em;
  }

  .mod_newsarchive .layout_latest {
    margin-bottom: 1em;
  }

}

/* Large Tablet */
@media screen and (min-width: 800px) {
  .start .header .title {
    margin-left: 10%;
    margin-top: 1em;
  }

  .main .subnav, .tabs .main .content {
    float: left;
  }

  .main .subnav {
    width: 15%;
    margin-right: 5%;
  }

  .tabs .main .content {
    width: 80%;
  }

  .main .subnav ul li {
    padding: 0;
    float: none;
  }

  .main .subnav ul li a, .main .subnav ul li span.active {
    display: block;
    line-height: normal;
    margin-bottom: 0.75em;
  }

}

/* Medium Desktop */
@media screen and (min-width: 960px) {

  .js .backgrounds img {
    display: none;
  }

  .js .backgrounds .mod_dlh_googlemaps img, .js .backgrounds .map img {
    display: block;
  }

  .js .header {
    visibility: hidden;
  }

  .mainnav ul {
    letter-spacing: 2px;
  }

  .mainnav ul li {
    float: left;
  }

  .mainnav ul li a, .mainnav ul li span.active {
    line-height: 1;
    display: block;
  }

  .header .inside {
    padding: 0;
    max-width: none;
  }

  .inside {
    padding: 0 5%;
  }

  .jquery .lightbox {
    width: 100%;
    box-sizing: border-box;
    padding: 10% 25%;
  }

  .start .header .title {
    padding-top: 0;
    font-size: 4em;
  }

  .mainnav ul li a, .mainnav ul li span.active {
    line-height: 62px;
  }

  .mainnav ul li a:hover, .mainnav ul li a:focus {
    background-color: inherit;
  }
  .carte .main .inside {
    padding: 0 15%;
    max-width: 900px;
  }

}

/* Large Desktop */
@media screen and (min-width: 1200px) {

  .start .header .title {
    margin-left: 15%;
  }

  .mainnav ul li a, .mainnav ul li span.active {
    padding: 1em 2em;
  }
}

/* XLarge Desktop */
@media screen and (min-width: 1400px) {
	.partnerlogo {
		clear: both;
		margin-top: -5em;
	}
  .jquery .lightbox {
    width: 100%;
    box-sizing: border-box;
    padding: 10% 33%;
  }

  .mainnav ul {
    letter-spacing: 3px;
  }

  .start .header .title {
    font-size: 4.8em;
  }

  .mainnav, .mainnav.open {
    font-size: 1em;
  }

  .mainnav ul li a, .mainnav ul li span.active {
    padding: 1em 1em;
    line-height: 133px;
  }

  .pages .header, .carte .header {
    background: #000;
    overflow: visible;
    height: 7em;
    opacity: 0.8;
  }

  .pages .mainnav a.logo, .carte .mainnav a.logo {
    background: #000;
    border-radius: 50%;
  }

  .mainnav, .mainnav.open {
    margin-top: 0;
  }

  .mainnav ul li a, .mainnav ul li span.active {
    line-height: 5em;
  }

  .mainnav a.logo {
    width: 133px;
    height: 133px;
    padding: 0;
  }

  .mainnav a.logo img {
    width: 60%;
    height: 60%;
    padding: 17% 0 0 0;
  }

  /* fixed header elements */
  .fixed.pages .specialnav, .fixed.pages .header, .fixed.carte .specialnav, .fixed.carte .header {
    position: fixed;
  }

  .fixed.pages .specialnav, .fixed.carte .specialnav {
    top: 7em;
    right: 0;
  }

  .fixed .header {
    top: 0;
    width: 100%;
    z-index: 200;
    opacity: 1;
    -webkit-transition: opacity 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out;
    -ms-transition: opacity 1s ease-in-out;
    -o-transition: opacity 1s ease-in-out;
    transition: opacity 1s ease-in-out;
  }

  /* persistend elements */
  .fixed.sticky.pages .specialnav {
    top: 5em;
    z-index: 250;
    // width: 600px;
  }

  .fixed.sticky.pages .specialnav ul li {
    float: left;
    width: 33.333%;
  }

  .fixed.sticky.pages .specialnav ul li a {
    padding: 0 1.5em;
  }

  .fixed.sticky.pages .main h1.title {
    position: fixed;
    width: 100%;
    top: 7em;
    z-index: 2;
    background-color: #662682;
  }

  .fixed.sticky.pages .main > .inside {
    padding-top: 3.6em;
  }

  .fixed.sticky .main .subnav {
    position: fixed;
    top: 11em;
  }

  .tabs.fixed.sticky.pages .main .content {
    float: right;
  }

  .carte .main .inside {
    padding: 0 25%;
  }

  .carte #slidenav-left {
    left: -15%;
  }

  .carte #slidenav-right {
    right: -15%;
  }

  .carte #slidenav-left, .carte #slidenav-right {
    margin: 0 0 0 0;
  }

  .fixed.sticky.pages .specialnav ul {
    display: flex;
    flex-direction: row;
    
  }

}

/* XXLarge Desktop */
@media screen and (min-width: 1550px) {
	.partnerlogo {
		margin-top: -7em;
	}
  .mainnav ul {
    letter-spacing: 4px;
  }

  .mainnav ul li a, .mainnav ul li span.active {
    padding: 1em 2em;
  }
}


/* XXXLarge Desktop */
@media screen and (min-width: 1900px) {
  .mainnav ul li a, .mainnav ul li span.active {
    padding: 1em 4em;
  }
}

@media print {
  body {
    background: none;
  }
  body * {
    color: #000!important;
    box-shadow: none!important;
    background: none!important;
  }
  body .inside {
    padding: 0;
  }
  body .main {
    margin-top: 0 !important;
  }
  body .main .content {
    width: 100% !important;
  }
  .header, .specialnav, .subnav, #backgrounds, .lightbox-close, .ce_form {
    display: none !important;
  }
  .lightbox, body .main {
    position: relative !important;
  }
}

@media screen and (max-width: 1200px) {
  .mod_newsarchive .layout_latest.sc2 {
    width: 100%!important;
    float: none!important;
    padding: 0!important;
  }
}

#cookiebox {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 2147483647;
    width: 100%;
    font: inherit;
    font-size: 14px;
    line-height: 1.5;
    padding: 8px 16px;
    background-color: #444;
    color: #fff;
    overflow: hidden;
    box-sizing: border-box;
    vertical-align: middle;
  }
  #cookiebox .cookierecipe {
    display: inline-block;
    padding: 4px;
  }
  #cookiebox .cookierecipe a {
    color: #fff;
    text-decoration: underline;
    padding-left: 0.5em;
  }
  #cookieplease {
    display: inline-block;
    border: 2px solid #fff;
    margin-top: 4px;
    padding: 0px 4px;
    cursor: pointer;
    float: right;
    transition: opacity 400ms ease-in-out;
    border-radius: 3px;
    font-weight: bold;
    font-size: 14px;
  }
  #cookieplease:hover {
    opacity: 0.8;
  }
.familybox {
    position: fixed;
    bottom: 1em;
    right: 1em;
    z-index: 1848;
    text-align: right;
    font-family: Arial;
}
.familybox__toggle {
    display: inline-block;
    padding: 0.75em 0.75em;
    background: rgba(0, 0, 0, 0.75);
    color: #fff;
    cursor: pointer;
    border-radius: 4px;
    text-transform: uppercase;
    font-size: 11px;
    vertical-align: middle;
    letter-spacing: 1px;
    box-shadow: 0px 0px 16px rgba(0,0,0,0.5);
    position: relative;
    z-index: 1;
    transition: all 400ms ease-in-out;
}
.familybox__toggle::after {
    content: '';
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 4px solid #fff;
    content: '';
    display: inline-block;
    margin-left: 0.5em;
    vertical-align: middle;
    transition: all 400ms ease-in-out;
}
.familybox__toggle:hover {
    background: rgba(0, 0, 0, 0.85);
}
.familybox__content {
    pointer-events: none;
    text-align: left;
    max-width: 400px;
    background: rgba(0, 0, 0, 0.75);
    box-shadow: 0px 0px 16px rgba(0,0,0,0.5);
    color: #fff;
    padding: 1em;
    border-radius: 4px;
    border-bottom-right-radius: 0;
    position: relative;
    z-index: 2;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transform: scale(0);
    transform-origin: bottom right;
    transition: all 400ms ease-in-out;
    box-sizing: border-box;
}
.familybox__content a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    font-size: 12px;
    line-height: 1.4;
    color: #fff;
    text-decoration: none;
    margin: 0 0 1em 0;
    transition: all 400ms ease-in-out;
}
.familybox__content a strong {
    text-transform: uppercase;
}
.familybox__content a:hover {
    opacity: 0.75;
}
.familybox__content a:active {
    transform: scale(0.95);
}
.familybox__content a:last-child {
    margin-bottom: 0;
}
.familybox__image {
    background: rgba(0, 0, 0, 0.75);
    width: 100px;
    height: auto;
    flex-shrink: 0;
    margin-right: 1em;
    border-radius: 4px;
}
.familybox.active .familybox__toggle {
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    background: rgba(0, 0, 0, 0.85);
}
.familybox.active .familybox__toggle::after {
    border-top: 4px solid #fff;
    border-bottom: 0;
}
.familybox.active .familybox__content {
    opacity: 1;
    max-height: 1000px;
    overflow: hidden;
    transform: scale(1);
    pointer-events: auto;
    background: rgba(0, 0, 0, 0.85);
    max-height: 70vh;
    overflow-y: auto;
}
.familybox__content .familybox__newsletter {
    text-align: center;
    border-top: 1px solid #fff;
    margin-top: 1em;
    padding-top: 1.5em;
    margin-bottom: 0.5em;
}
.familybox__content .familybox__newsletter .familybox__newsletter__button {
    display: inline-block;
    text-align: center;
    background-color: #000;
    color: #fff;
    text-decoration: none;
    border: 2px solid #fff;
    padding: 0.5em 1em;
    width: auto;
}
@media screen and (max-width: 767px) {
    .familybox__links {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
        max-width: 100%;
        box-sizing: border-box;
    }
    .familybox__content {
        padding: 0.5em;
    }
    .familybox__content a {
        box-sizing: border-box;
        width: 25%;
        margin-bottom: 0;
        padding: 0.5em;
    }
    .familybox__text {
        display: none!important;
    }
    .familybox__image {
        width: 100%;
        margin-right: 0;
    }
}
@media screen and (max-width: 420px) {
    .familybox {
        position: relative;
        width: 100%;
        bottom: 0;
        right: 0;
    }
    .familybox .familybox__content {
        border-radius: 0;
        opacity: 1;
        max-height: 1000px;
        overflow: hidden;
        transform: scale(1);
        pointer-events: auto;
        background: rgba(0, 0, 0, 0.85);
        width: 100%;
    }
    .familybox .familybox__toggle {
        display: none;
    }
}
