html, body{
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}
.wrap{
  position:relative;
  margin:0 auto;
  font-family: 'Zilla Slab', serif;
  max-width:2000px

}

.h2, h2 {
	font-weight: 700;
	color: #502900;
	font-size: 2.5rem;
}
.h3, h3 {
  	font-weight:700;
  color: #502900;
}

.frame-space-before-extra-small{
  padding-top: 1vw;
  margin-top: 0;
}
.frame-space-after-extra-small{
  padding-bottom: 1vw;
  margin-bottom:0;
}
.frame-space-before-small{
  padding-top: 4vw;
  margin-top: 0;
}
.frame-space-after-small{
  padding-bottom: 4vw;
  margin-bottom:0;
}
.frame-space-before-medium {
  padding-top: 6vw;
  margin-top: 0;
}
.frame-space-after-medium {
  padding-bottom: 6vw;
  margin-bottom:0;
}
.frame-space-before-large{
  padding-top: 8vw;
  margin-top: 0;
}
.frame-space-after-large{
  padding-bottom: 8vw;
  margin-bottom:0;
}
.frame-space-before-extra-large {
  padding-top: 20vw;
  margin-top: 0;
}
.frame-space-after-extra-large {
  padding-bottom: 20vw;
  margin-bottom:0;
}
.frame-layout-1 {
  padding-left:5%;
  padding-right:5%;
}
.frame-layout-2 {
  padding-left:10%;
  padding-right:10%;
}
.frame-layout-3 {
  padding-left:15%;
  padding-right:15%;
}
.frame-layout-4 {
  padding-left:20%;
  padding-right:20%;
}



.header, .content{
  width:90%;
  margin-left: auto;
  margin-right: auto;
}
.header .tns-nav {
	position: absolute;
	bottom: 2rem;
	z-index: 10;
	right: 50%;
	display: block;
	transform: translatex(50%);
}
.header .tns-nav button {
    height: 15px!important;
    width: 15px!important;
    border: 3px solid #fff;
    background: transparent;
    margin: 0 10px;
    transform: rotate(45deg);
    font-size: 1px;
    line-height: 1px;
    padding: 0;
}
.header .tns-nav button.tns-nav-active {
	background: #fff;
}
.headerslider .image {
	margin-bottom: 0;
	width: 100%;
	height: 90svh;
}
.headerslider .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.headerslider .ce-bodytext {
	position: absolute;
	top: 65%;
	transform: translateY(-50%);
	margin-left: 2rem;
}
.headerslider .ce-bodytext h2, .headerslider .ce-bodytext p {
	width: fit-content;
	background: #fff;
	margin: 0;
	color: #502900;
	padding: 0 5px;
}
.headerslider .ce-bodytext p {
	font-size: 1.5rem;
	color: #000;
	font-weight: 500;
}
.shop.badge {
	position: absolute;
	z-index: 15;
	right: 25%;
	top: 10%;
	border-radius: 50%;
	height: 180px;
	width: 180px;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: rotate(15deg);
	background: rgb(153,98,99);
	padding: 0;
	font-size: 2rem;
}
.shop.badge div {
	padding-bottom: 10px;
}
.content {
	position: relative;
	background: url('../elements/content-bg2.jpg');
}
.content a {
	color: inherit;
	text-decoration: none;
      overflow-wrap: break-word;
}
.content p {
	font-size: 1.2rem;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	color: #000;
}
.ce-headline-center {
	text-align: center;
}
.content::before, .header::before {
	background: -moz-linear-gradient(top, rgba(80,41,0,0.4) 0%, rgba(80,41,0,0) 100%);
	background: -webkit-linear-gradient(top, rgba(80,41,0,0.4) 0%,rgba(80,41,0,0) 100%);
	background: linear-gradient(to bottom, rgba(80,41,0,0.4) 0%,rgba(80,41,0,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#66502900', endColorstr='#00502900',GradientType=0 );
	content: '';
	position: absolute;
	top: 0;
	width: 100%;
	height: 150px;
	z-index: 0;
	left: 0;
}
.header::before {
	z-index: 1;
}
.content.container-fluid {
	margin-top: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.content .image-embed-item {
	width: 100%;
	height: auto;
}

.content {
	background-color: #e7d1bb;
}
.row .lightbg > div {
    background-color: rgba(255,255,255,0.4);
}
.contenttable {
	width: 100%;
}
.contenttable .text-end {
	margin-bottom: 0;
	font-size: 1rem;
}

.contenttable tr {
	border-bottom: 0;
	background: transparent;
}
.contenttable tr td:last-child {
	padding-left: 10px;
}
.bptab .tabpanel .nav-tabs {
	display: flex;
	justify-content: space-around;
}
.bptab .tabpanel .tabbtwrap:nth-child(1) .nav-link::before {
  content: 'Appetit zum runterladen';

  width: 100%;
  text-align: center;
  display: block;
  background:url('../elements/icon_speisen.svg');
  background-position-x: 0%;
  background-position-y: 0%;
  background-repeat: repeat;
  background-repeat: no-repeat;
  background-position:top center;
  padding-top: 80px;
  margin-bottom: 10px;
  position: relative;
  font-weight: 700;
  color: #502900;
}

.bptab .tabpanel .tabbtwrap:nth-child(2) .nav-link::before {
content: 'Mittagsmenü';

  width: 100%;
  text-align: center;
  display: block;
  background:url('../elements/icon_mittag.svg');
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
  background-repeat: no-repeat;
  background-position:top center;
  padding-top: 80px;
  margin-bottom: 10px;
  position: relative;
  font-weight: 700;
  color: #502900;
}

.bptab .tabpanel .tabbtwrap:nth-child(3) .nav-link::before {
content: 'Tisch reservieren';

  width: 100%;
  text-align: center;
  display: block;
  background:url('../elements/icon_book.svg');
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
  background-repeat: no-repeat;
  background-position:top center;
  padding-top: 80px;
  margin-bottom: 10px;
  position: relative;
  font-weight: 700;
  color: #502900;
}

.bptab .tabpanel .nav-link::before {
  font-size: 24px;
}

.extratext {
	font-weight: 700;
  font-size:1.5rem;
  
}
.bptab .nav-tabs .tabbtwrap {
	position: relative;
}
.bptab .nav-tabs .tabbtwrap a.bauurl{
    	display: none;
}
.bptab .nav-tabs .tabbtwrap:last-child a.bauurl {
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	position: absolute;
	left: 0;
	z-index: 2;
}
.bptab .tabpanel .tabbtwrap:nth-child(1) .nav-link span.extratext::before {
  content: 'Stöbern Sie schon mal \A in unserer Speisekarte';
  display: block;
  text-align: center;
  width: 100%;
  white-space: pre;
  color: #000;
  margin-bottom: 15px;
}
.bptab .tabpanel .tabbtwrap:nth-child(2) .nav-link span.extratext::before {
  content: 'Das ist der direkte Weg zu \A unseren Mittagsmenüs von';
  display: block;
  text-align: center;
  width: 100%;
  white-space:pre;
  color: #000;
  margin-bottom: 15px;
}
.bptab .tabpanel .tabbtwrap:nth-child(3) .nav-link span.extratext::before {
  content: 'Ganz einfach mit unserem \A Reservierungs-Tool';
  display: block;
  text-align: center;
  width: 100%;
  white-space:pre;
  color: #000;
  margin-bottom: 15px;
}
.bptab .tabpanel .nav-link span.tabtitle {
	background: #502900;
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	padding: 0 5px;
}

.bptab .tabpanel .nav-link::after {
	content: '';
	height: 50px;
	width: 100%;
	position: relative;
	display: block;
}

.bptab .tabpanel .nav-link.active::after {
	background: url('../elements/icon_tabact.svg');
	background-repeat: no-repeat;
	background-position: center center;
}
.bptab .nav-tabs .nav-item.show .nav-link, .bptab .nav-tabs .nav-link.active {
	background-color: transparent;
	border-color: transparent;
}

.bptab .nav-tabs .nav-link:focus, .bptab .nav-tabs .nav-link:hover {
	isolation: isolate;
	border-color: transparent;
}

.bptab .tabpanel .tab-content {
	display: block;
	border-width: 0;
	padding: 1em 1em;
	background: rgba(255,255,255,0.4);
	border: 1px solid #502900;
}

.bptab .tabpanel .tab-content .tab-pane > div > header {
	padding-left: calc(1.5rem * .5);
}

.bptab .accordion-item {
	background-color: transparent;
	border: 0;
}
.accordion-header {
	margin-bottom: 0;
	border-bottom: 2px solid #502900;
}

.bptab .accordion-button {
	background-color: transparent;
	font-weight: 700;
	color: #502900;
	font-size: 1.5rem;
	border: 0;
	padding: 5px 0;
	box-shadow: none;
}
.bptab .accordion-button:focus, .bptab .accordion-button:active{
  border:0;
  outline:0;
  box-shadow: none;
}

.bptab .accordion-button::after {
	background-image: url('../elements/icon_acc.svg');
	background-position: center;
}
.bptab .accordion-body {
	padding-right: 0;
	padding-left: 0;
}
.woche .border-end {
	border-right: 2px #fff solid !important;
	margin-bottom: 10px;
}

hr.ce-div {
	/* margin-top: 10px; */
	/* margin-bottom: 10px; */
	border: 0;
	border-top-width: 0px;
	border-top-style: none;
	border-top-color: currentcolor;
	border-top: 0;
	background: url('../elements/hr_line.svg');
	background-position-x: 0%;
	background-position-y: 0%;
	background-repeat: repeat;
	background-position: center center;
	background-repeat: no-repeat;
	height: 40px;
	opacity: 1;
}
.ce-gallery[data-ce-columns="3"] .ce-row {
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
}
.ce-gallery[data-ce-columns="3"] .ce-column {
	margin: 0;
	padding: 0 10px;
	box-sizing: border-box;
}
.ce-gallery[data-ce-columns="3"] .ce-column {
	width: 33.3333%;
}

.ce-gallery[data-ce-columns="3"] .image {
	position: relative;
	margin-bottom: 20px;
}
a.lightbox::after {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	background-color: rgba(0,0,0,0.5);
	background-image: url('../elements/plus_icon.svg');
	/* margin: 15px; */
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 1000;
	opacity: 0;
	transition: all 0.2s;
	background-repeat: no-repeat;
	background-position: center;
}
a.lightbox:hover::after {
	opacity: 1;
}
.news .lightbg .ce-bodytext {
	padding-left: 10px;
	padding-right: 10px;
}
.jobs {
	z-index: 1;
	position: relative;
}
.jobs .col{
  padding: 1em 1em;
  background: rgba(255,255,255,0.4);
  border: 1px solid #502900;
}
.jobs .lead a{
  background: #502900;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  padding: 0 5px;
  font-family: 'Zilla Slab', serif;
}


.footer {
	background: rgb(153,98,99);
	color: #fff;
	padding: 20px 15px;
}
.footercont {
	width: 90%;
}
.footer a {
	color: inherit;
	text-decoration: none;
}