@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

*, *:before, *:after {
    -webkit-box-sizing: border-box; /* Safari/Chrome, andere WebKit-Browser */
    -moz-box-sizing: border-box; /* Firefox, andere Gecko-Browser */
    box-sizing: border-box; /* Opera/IE 8+ */
}
html {
  scroll-behavior: smooth;
  height: 100%;
}
body {
    background: #000000;
    font-family: "Montserrat", sans-serif;
    font-weight: normal;
    font-style: normal;
    color: #ffffff;
}
.pagewrap {
	float:left;
	width:100%;
	height:100vh;
	position:relative;
	
}

.intro {
    width: 100%;
    height: 100vh;
    margin: 0;
    padding: 0;
    z-index: 999;
    display: flex;
    justify-content: center;
    align-items: center;
}
.intro .top {
    position: absolute;
    left: 0;
    top: -50vh;
    width: 100%;
    height: 50vh;
    z-index: 999;
    background: rgba(0,0,0,0.92);
    animation: intro_bereich_oben 6s ease;
}
.intro .bottom {
    position: absolute;
    left: 0;
    bottom: -40px;
    width: 100%;
    height: 40px;
    z-index: 999;
    background: rgba(0,0,0,0.0);
    animation: intro_bereich_unten 6s ease;
}
.intro .top .leiste {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 40px;
    background-image: url(../images/kalksteinleiste_oben.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}
.intro .bottom .leiste {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 40px;
    background-image: url(../images/kalksteinleiste_unten.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}
.intro .logo {
    position: -webkit-sticky; /* Für Safari */
    position: sticky;
    top: 0;
    width: 300px;
    height: 284px;
    padding: 30px;
    transform: scale(1.0);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 1000;
    opacity: 1;
    animation: intro_bereich_logo 5s ease;
}
.intro .logo img {
    display: block;
    width: 100%;
    height: auto;
}

.intro .logo.is-sticky {
    position: fixed;
    width: 120px;  /* Zielgröße oben */
    height: 114px;
}

.header-bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2000;
    opacity: 0;
    background: rgba(0,0,0,0.85);
    transform: translateY(-100%);
    transition: all 0.4s ease-in-out;
}
.header-bar.is-visible {
    opacity: 1;
    transform: translateY(0);
}
.header-bar .logo {
    top: 0;
    width: 120px;
    height: 114px;
    padding: 5px;
    margin: 15px 0 15px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    transition: all 0.3s ease;
}
.header-bar .logo:hover {
    padding: 0;
}
.header-bar .logo img {
    display: block;
    width: 100%;
    height: auto;
}

.menu_icon {
	position:fixed;
	right:27px;
	top:25px;
	width:50px;
	height:50px;
	display:block;
	z-index:1000;
    padding: 0;
	transition:all 0.3s ease;
    animation: intro_menu 5s ease;
    transform: translate(0px,0%);
}
.menu_icon.vorne {
	z-index:2200;
}
.menu_icon.active {
	position:fixed;
	right:20px;
	top:20px;
	width:64px;
	height:62px;
	display:block;
	z-index:2200;
    padding:5px 4px 5px 5px;
	transition:all 0.3s ease;
    background: #000000;
    border: solid 1px #d8b034;
}
.menu_icon label {
	display:flex;
	flex-direction:column;
	width:50px;
	cursor:pointer;
	padding:6px 0px;
	transition:all 0.2s linear;
}
.menu_icon label span{
    width: 100%;
  background: #d8b034;
  border-radius:2px;
  height:2px;
  margin: 5px 0;
  transition: .4s  cubic-bezier(0.68, -0.6, 0.32, 1.6);
}
.menu_icon label span:nth-child(1){
  width:100%;
  margin: 5px 0px 5px 0%;
}
.menu_icon label span:nth-child(2){
  width:100%;
  margin: 5px 0px 5px 0%;
}
.menu_icon label span:nth-child(3){
  width:100%;
  margin: 5px 0% 5px 0%;
}
.menu_icon label span:nth-child(4){
  width:100%;
  margin: 5px 0px 5px 0%;
}
.menu_icon input[type="checkbox"]{
  display:none;
}
.menu_icon label:hover span:nth-child(2){
  width:100%;
  margin: 5px 0px 5px 0%;
  background: #ffffff;
}
.menu_icon label:hover span:nth-child(3){
  width:100%;
  margin: 5px 0% 5px 0%;
  background: #ffffff;
}
.menu_icon label:hover span:nth-child(4){
  width:100%;
  margin: 5px 0px 5px 0%;
  background: #ffffff;
}
.menu_icon input[type="checkbox"]:checked ~ span:nth-of-type(1){
  transform-origin:bottom;
  transform:rotatez(45deg) translate(8px,8px);
  width:100%;
  margin: 5px 0px 5px 0%;
  height:3px;
  background: #ffffff;
}
.menu_icon input[type="checkbox"]:checked ~ span:nth-of-type(2){
  width:0%;
  background:none;
}
.menu_icon input[type="checkbox"]:checked ~ span:nth-of-type(3){
  transform-origin:top;
  transform:rotatez(-45deg) translate(8px,-8px);
  width:100%;
  margin: 5px 0px 5px 0%;
  height:3px;
  background: #ffffff;
}
.navigation {
    top: 20px;
    right: 20px;
    width: 40%;
    height: 0;
    background: #000000;
    transition: all 0.2s ease-in-out;
    transform: translateY(-100%);
    z-index: 99;
    overflow: hidden;
    display: none;
    opacity: 0;
}
.navigation.active {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 40%;
    height: calc(100vh - 40px);
    background: #000000;
    transition: all 0.6s ease-in-out;
    transform: translateY(0%);
    z-index: 2100;
    opacity: 1;
    display: block;
}
.navigation::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: solid 1px #d8b034;
    box-sizing: border-box;
    opacity: 0;
    animation: AniBorder 0.5s ease-out forwards;
}
.nav_innen {
    position: absolute;
    left: 80px;
    top: 70px;
    width: calc(100% - 160px);
    padding: 0px;
    overflow: hidden;
    max-height: 1150px;
    opacity: 0;
    transition: all 0.3s ease;
    animation: AniNav 3s ease;
}
.nav_innen.active {
    max-height: 1150px;
    opacity: 1;
}
.inner-content {
    min-height: 0; 
}
.navigation ul {
    list-style: none;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
}
.navigation ul li {
    float: left;
    width: 100%;
    height: auto;
    margin: 2.5vh 0;
    text-align: center;
}
.navigation ul li a {
    position: relative;
    padding: 14px 28px;
    color: #ffffff;
    font-size: clamp(1em, 3.5vh, 5.5vh);
    text-decoration: none;
    text-transform: uppercase;
    transition: all 0.4s ease;
}
.navigation ul li a:hover {
    color: #d8b034;
    cursor: pointer;
}
.navigation ul li a span {
    position: absolute;
    left: 1px;
    width: 0;
    height: calc(100% - 2px);
    top: 1px;
    border: solid 1px #000000;
    transition: all 0.4s ease;
}
.navigation ul li a:hover span {
    position: absolute;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    background: #000000;
    border: solid 1px #d8b034;
    z-index: -1;
}
.nav_bottom {
    position: absolute;
    left: 80px;
    bottom: 60px;
    width: calc(100% - 160px);
    height: 40px;
    padding: 0px;
    overflow: hidden;
    opacity: 0;
    text-align: center;
    transition: all 0.3s ease;
    animation: AniNavBottom 2.6s ease;
}
.nav_bottom.active {
    opacity: 1;
}
.nav_bottom .fb {
    display: inline-block;
    width: 40px;
    height: 40px;
    background:url(../images/icon_nav_fb.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 40px;
    margin: 0 15px 0 15px;
    opacity: 0.4;
    transition: all 0.3s ease;
}
.nav_bottom .fb:hover {
    opacity: 0.9;
    cursor: pointer;
}
.nav_bottom .insta {
    display: inline-block;
    width: 40px;
    height: 40px;
    background:url(../images/icon_nav_insta.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 40px;
    margin: 0 15px 0 15px;
    opacity: 0.4;
    transition: all 0.3s ease;
}
.nav_bottom .insta:hover {
    opacity: 0.9;
    cursor: pointer;
}
.nav_bottom .email {
    display: inline-block;
    width: 40px;
    height: 40px;
    background:url(../images/icon_nav_mail.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 40px;
     margin: 0 15px 0 15px;
    opacity: 0.4;
    transition: all 0.3s ease;
}
.nav_bottom .email:hover {
    opacity: 0.9;
    cursor: pointer;
}
.nav_bottom a {
    float: left;
    width: 100%;
    height: 40px;
}
.nav_weingut {
    
}
.nav_weingut.active span {
    position: absolute;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    background: #000000;
    border: solid 1px #d8b034;
    z-index: -1;
}
.nav_weinsortiment {
    
}
.nav_weinsortiment.active span {
    position: absolute;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    background: #000000;
    border: solid 1px #d8b034;
    z-index: -1;
}
.nav_weinevents {
    
}
.nav_weinevents.active span {
    position: absolute;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    background: #000000;
    border: solid 1px #d8b034;
    z-index: -1;
}
.nav_weinberg {
    
}
.nav_weinberg.active span {
    position: absolute;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    background: #000000;
    border: solid 1px #d8b034;
    z-index: -1;
}
.nav_aktuelles {
    
}
.nav_aktuelles.active span {
    position: absolute;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    background: #000000;
    border: solid 1px #d8b034;
    z-index: -1;
}
.nav_netzwerk {
    
}
.nav_netzwerk.active span {
    position: absolute;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    background: #000000;
    border: solid 1px #d8b034;
    z-index: -1;
}
.nav_impressionen {
    
}
.nav_impressionen.active span {
    position: absolute;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    background: #000000;
    border: solid 1px #d8b034;
    z-index: -1;
}

@-webkit-keyframes AniNav {
  0% { opacity: 0; max-height: 0; } 
  15% { opacity: 0; max-height: 0; } 
  100% { opacity: 1; max-height: 1150px; }  
}
@keyframes AniNav {
  0% { opacity: 0; max-height: 0; } 
  15% { opacity: 0; max-height: 0; } 
  100% { opacity: 1; max-height: 1150px; }  
}

@-webkit-keyframes AniNavBottom {
  0% { opacity: 0; } 
  60% { opacity: 0; } 
  100% { opacity: 1; }  
}
@keyframes AniNavBottom {
  0% { opacity: 0; } 
  60% { opacity: 0; } 
  100% { opacity: 1; }  
}

@-webkit-keyframes AniBorder {
  0% { opacity: 0; clip-path: inset(0 0 100% 100%); } 
  100% { opacity: 1; clip-path: inset(0 0 0 0); }  
}
@keyframes AniBorder {
  0% { opacity: 0; clip-path: inset(0 0 100% 100%); } 
  100% { opacity: 1; clip-path: inset(0 0 0 0); } 
}


@-webkit-keyframes intro_menu {
  0% { opacity: 0; transform: translate(200px,0%); } 
  85% { opacity: 0; transform: translate(200px,0%); } 
  100% { opacity: 1; transform: translate(0px,0%); } 
}
@keyframes intro_menu {
  0% { opacity: 0; transform: translate(200px,0%); } 
  85% { opacity: 0; transform: translate(200px,0%); } 
  100% { opacity: 1; transform: translate(0px,0%); } 
}


@-webkit-keyframes intro_bereich_logo {
  0% { opacity: 0; transform: scale(3.0); } 
  20% { opacity: 0; transform: scale(3.0); } 
  40% { opacity: 1; transform: scale(1.0); }
  100% { opacity: 1; transform: scale(1.0); }
}
@keyframes intro_bereich_logo {
  0% { opacity: 0; transform: scale(3.0); } 
  20% { opacity: 0; transform: scale(3.0); } 
  40% { opacity: 1; transform: scale(1.0); }
  100% { opacity: 1; transform: scale(1.0); }
}

/*
@-webkit-keyframes intro_bereich_oben {
  0% {top: 0;} 
  40% {top: 0;}
  41% {top: -5px;}
  43% {top: 0px;}
  45% {top: 0px;}
  48% {top: -10px;}
  49% {top: 0px;}
  50% {top: 0px;}
  55% {top: 0px;}
  75% {top: -50vh;}
  100% {top: -50vh;}
}

@keyframes intro_bereich_oben {
  0% {top: 0;} 
  40% {top: 0;}
  41% {top: -5px;}
  43% {top: 0px;}
  45% {top: 0px;}
  48% {top: -10px;}
  49% {top: 0px;}
  50% {top: 0px;}
  55% {top: 0px;}
  75% {top: -50vh;}
  100% {top: -50vh;}
}
*/
@-webkit-keyframes intro_bereich_oben {
  0% {top: 0;} 
  50% {top: 0px;}
  80% {top: -50vh;}
  100% {top: -50vh;}
}

@keyframes intro_bereich_oben {
  0% {top: 0;} 
  50% {top: 0;}
  80% {top: -50vh;}
  100% {top: -50vh;}
}

@-webkit-keyframes intro_bereich_unten {
  0% {bottom: 0; background: rgba(0,0,0,0.92); height: 50vh; } 
  50% {bottom: 0; background: rgba(0,0,0,0.92); height: 50vh; }
  80% {bottom: -40px; background: rgba(0,0,0,0.92); height: 40px; }
  100% {bottom: -40px; background: rgba(0,0,0,0.0); height: 40px; }
}

@keyframes intro_bereich_unten {
  0% {bottom: 0; background: rgba(0,0,0,0.92); height: 50vh; } 
  50% {bottom: 0; background: rgba(0,0,0,0.92); height: 50vh; }
  80% {bottom: -40px; background: rgba(0,0,0,0.92); height: 40px; }
  100% {bottom: -40px; background: rgba(0,0,0,0.0); height: 40px; }
}

/*
@-webkit-keyframes intro_bereich_unten {
  0% {bottom: 0; background: rgba(0,0,0,0.92); height: 50vh; } 
  40% {bottom: 0;}
  41% {bottom: -5px;}
  43% {bottom: 0px;}
  45% {bottom: 0px;}
  48% {bottom: -10px;}
  49% {bottom: 0px;}
  50% {bottom: 0px;}
  55% {bottom: 0px;}
  75% {bottom: -40px; background: rgba(0,0,0,0.92); height: 40px; }
  100% {bottom: -40px; background: rgba(0,0,0,0.0); height: 40px; }
}

@keyframes intro_bereich_unten {
  0% {bottom: 0px; background: rgba(0,0,0,0.92); height: 50vh; } 
  40% {bottom: 0px; background: rgba(0,0,0,0.92); height: 50vh; }
  41% {bottom: 0px; background: rgba(0,0,0,0.92); height: calc(50vh - 5px); }
  43% {bottom: 0px; background: rgba(0,0,0,0.92); height: 50vh; }
  45% {bottom: 0px; background: rgba(0,0,0,0.92); height: 50vh; }
  48% {bottom: 0px; background: rgba(0,0,0,0.92); height: calc(50vh - 10px); }
  49% {bottom: 0px; background: rgba(0,0,0,0.92); height: 50vh; }
  50% {bottom: 0px; background: rgba(0,0,0,0.92); height: 50vh; }
  55% {bottom: 0px; background: rgba(0,0,0,0.92); height: 50vh; }
  75% {bottom: -40px; background: rgba(0,0,0,0.92); height: 40px; }
  100% {bottom: -40px; background: rgba(0,0,0,0.0); height: 40px; }
}
*/


.videobereich {
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    margin: 0;
    padding: 0;
    position: absolute;
    display: block;
    z-index: 1;
}
video {
  width: 100vw;
  height:100vh;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  filter: blur(0px);
  z-index:-1;
}
video.active {
  width: 100vw;
  height:100vh;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  filter: blur(8px);
  z-index:-1;
}
.parallax-section {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0)), url(../images/impressionen_back.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.parallax-section-weinsortiment {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0)), url(../images/weingut_background.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.parallax-section-weinevents {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0)), url(../images/weinevents_back05.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.parallax-section-weinevents_veranstaltungen {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0)), url(../images/weinevents_back02.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.parallax-section-weinberg {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.1)), url(../images/weinberg_background02.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    transition: all 1.3s ease;
}
.parallax-section-aktuelles {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0)), url(../images/weinsortiment_voll.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    transition: all 1.3s ease;
}
.parallax-section-netzwerk {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0)), url(../images/netzwerk_background01.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    transition: all 1.3s ease;
}
.parallax-section-impressionen {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0)), url(../images/weingut_voll02.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    transition: all 1.3s ease;
}

.main {
    float: left;
    width: 100%;
    height: auto;
    padding: 0px 0;
    margin: 0;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}
.content {
    float: left;
    width: 100%;
    height: auto;
    min-height: 100vh;
    padding: 0;
    margin: 0;
    overflow: hidden;
}
.first_page {
    padding: 250px 0 100px 0;
}
.wrapper {
    max-width: 1400px;
    height: auto;
    margin: 0 auto;
    padding: 0 20px;
}
.content_weinevents {
    float: left;
    width: 100%;
    height: auto;
    min-height: 1240px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.wrapper_weinevents {
    max-width: 1400px;
    height: auto;
    min-height: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
}
.content_weinevents_veranstaltungen {
    float: left;
    width: 100%;
    height: auto;
    padding: 0 0 60px 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.wrapper_weinevents_veranstaltungen {
    max-width: 1400px;
    height: auto;
    min-height: 1200px;
    margin: 0 auto;
    padding: 0 20px 0px 20px;
    position: relative;
}
.content_weingut {
    float: left;
    width: 100%;
    height: auto;
    min-height: 1240px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.wrapper_weingut {
    max-width: 1400px;
    height: auto;
    min-height: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
}
.content_weinsortiment {
    float: left;
    width: 100%;
    height: auto;
    min-height: 1240px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.wrapper_weinsortiment {
    max-width: 1400px;
    height: auto;
    min-height: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
}
.content_weinberg {
    float: left;
    width: 100%;
    height: auto;
    min-height: 1240px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.wrapper_weinberg {
    max-width: 1400px;
    height: auto;
    min-height: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
}
.content_aktuelles {
    float: left;
    width: 100%;
    height: auto;
    min-height: 1240px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.wrapper_aktuelles {
    max-width: 1400px;
    height: auto;
    min-height: 1240px;
    margin: 0 auto;
    padding: 0 0px;
    position: relative;
}
.content_netzwerk {
    float: left;
    width: 100%;
    height: auto;
    min-height: 850px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.wrapper_netzwerk {
    max-width: 1400px;
    height: auto;
    min-height: 850px;
    margin: 0 auto;
    padding: 0 0px;
    position: relative;
}
.content_impressionen {
    float: left;
    width: 100%;
    height: auto;
    min-height: 900px;
    padding: 220px 0 90px 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}
.wrapper_impressionen {
    max-width: 1400px;
    height: auto;
    min-height: 900px;
    margin: 0 auto;
    padding: 0px;
    position: relative;
}

h1 {
    float: left;
    width: auto;
    height: auto;
    margin: 0 0 30px 0;
    font-size: 32px;
    line-height: 36px;
    text-transform: uppercase;
    color: #d8b034;
    background: #000000;
    border: solid 1px #d8b034;
    font-weight: 500;
    padding: 6px 10px;
}
h2 {
    float: left;
    width: 100%;
    height: auto;
    margin: 0 0 20px 0;
    padding: 0;
    font-size: 24px;
    line-height: 30px;
    text-transform: uppercase;
    color: #ffffff;
    font-weight: 400;
}
h3 {
    float: left;
    width: 100%;
    height: auto;
    margin: 0 0 25px 0;
    padding: 0;
    font-size: 22px;
    line-height: 28px;
    text-transform: none;
    color: #ffffff;
    font-weight: 400;
}
p {
    float: left;
    width: 100%;
    height: auto;
    margin: 0 0 22px 0;
    padding: 0;
    font-size: 1rem;
    line-height: 1.6rem;
    text-transform: none;
    color: #ffffff;
    font-weight: 400;
}
.firstletter::first-letter {
    font-size: 1.5rem;
    font-family: Baskerville, "Palatino Linotype", Palatino, "Century Schoolbook L", "Times New Roman", "serif";
    margin-right: 1px;
    color: #d8b034;
}
.weine_liste {
    list-style: none;
    float: left;
    width: 100%;
    height: auto;
    margin: 5px 0 10px 0;
    padding-top: 20px;
    border-top: solid 1px #333333;
}
.weine_liste li {
    list-style: none;
    float: left;
    width: 100%;
    height: auto;
    margin: 10px 0 10px 0;
    font-size: 14px;
    font-weight: 400;
}
.weine_liste li strong {
    font-size: 17px;
    font-weight: 600;
}
.weine_pdf_button {
    float: right;
    width: auto;
    height: auto;
    padding: 0px 0px 0px 36px;
    background-image: url(../images/icon_pdf.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 30px;
    font-size: 16px;
    line-height: 34px;
    text-decoration: none;
    color: #ffffff;
    text-transform: uppercase;
    transition: all 0.3s ease;
    margin: 30px 0 0 0;
    outline: none !important;
}
.weine_pdf_button:hover {
    text-decoration: underline;
    cursor: pointer;
}
.weine_shop_button {
    float: left;
    width: auto;
    height: auto;
    padding: 0px 0px 0px 38px;
    background-image: url(../images/icon_shop_a.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 34px;
    font-size: 16px;
    line-height: 34px;
    text-decoration: none;
    color: #ffffff;
    text-transform: uppercase;
    transition: all 0.3s ease;
    margin: 30px 0 0 0;
    outline: none !important;
}
.weine_shop_button:hover {
    text-decoration: underline;
    cursor: pointer;
}
.articel_left {
    float: left;
    width: 50%;
    height: auto;
    position: relative;
    margin: 0 10% 0 0;
}
.articel_right {
    float: left;
    width: 40%;
    height: auto;
    position: relative;
}
.articel_right .bildwrap {
    padding-left: 96px;
    padding-bottom: 96px;
}
.articel_right .bildbig {
    position: relative;
    left: 0%;
    top: 0;
    width: 100%;
    height: 0;
    padding-bottom: 122%;
    display: block;
}
.articel_right .bildbig img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.articel_right .bildsmall {
    position: absolute;
    top: 60%;
    bottom: 0;
    left: 0;
    width: 45%;
    height: 0;
    padding-bottom: 50%;
    border-right: solid 10px #000000;
    border-top: solid 10px #000000;
    display: block;
}
.articel_right .bildsmall img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.content_box_weingut {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:55%;
	height:auto;
	padding:60px 50px 40px 50px;
	background:#000000;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease;
    transform: translate(-400px, -50%) scale(0.0);
	opacity:0;
    animation-fill-mode:backwards;
}
.content_box_weingut.active {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:55%;
	height:auto;
	padding:60px 50px 40px 50px;
	background:#000000;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease;
	animation: content_box_left_ani 1.1s ease-in-out;
	animation-fill-mode: forwards;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
}

.bild_box_weingut {
	position:absolute;
	right:0;
	top:calc(50% + 72px);
	width:40%;
	height:auto;
	padding:0px;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease-in-out;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
}
.bild_box_weingut .bild {
    float: left;
    width: 49%;
    height: 245px;
    overflow: hidden;
    position: relative;
    flex-grow: 1;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.bild_box_weingut .bild img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.0);
    transition: all 0.3s ease;
}
.bild_box_weingut .bild:hover img {
    transform: scale(1.15);
}
.bild_box_weingut .bildbig {
    float: left;
    width: 49%;
    height: 245px;
    overflow: hidden;
    position: relative;
    flex-grow: 1;
}
.bild_box_weingut .bildbig img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.querformat {
    flex-basis: 300px;
}

/* Spezialfall: Hochformate sind schmaler */
.hochformat {
    flex-basis: 150px;
}
.bild_box_weingut.active .bild {
    opacity: 1;
    animation: bild_erscheint_ani 1.2s ease-in-out;
    transition: all 0.3s ease-in-out;
}


.content_box_weinevents {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:55%;
	height:auto;
	padding:60px 50px 40px 50px;
	background:#000000;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease-in-out;
    transform: translate(-400px, -50%) scale(0.0);
	opacity:0;
    animation-fill-mode:backwards;
}
.content_box_weinevents.active {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:55%;
	height:auto;
	padding:60px 50px 40px 50px;
	background:#000000;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease-in-out;
	animation: content_box_left_ani 1.1s ease-in-out;
	animation-fill-mode: forwards;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
}
.events_box_weinevents {
	position:absolute;
	right:0;
	top:calc(50% + 72px);
	width:40%;
	height:auto;
	padding:0px;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease-in-out;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction:row;
    flex-wrap: wrap;
    gap: 20px;
}
.weineventsbox {
    float: left;
    width: 49%;
    height: 230px;
    background: #ffffff;
    border: solid 1px none;
    border-radius: 0px;
    position: relative;
    flex-grow: 1;
    overflow: hidden;
    flex-basis: 230px;
    transform: translate(0px, 0px) scale(1.0);
    transition: all 0.3s ease;
    opacity: 0;
}
.weineventsbox.active {
    opacity: 1;
    animation: bild_erscheint_ani 1.2s ease-in-out;
    transition: all 0.3s ease;
}
.weineventsbox:hover {
    border: solid 1px #d8b034;
    transform: scale(1.06);
    background: #000000;
    color: #000000;
    cursor: pointer;
}
.weineventsbox_bild {
    float: left;
    width: 100%;
    height: 165px;
    overflow: hidden;
    position: relative;
}
.weineventsbox_bild img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.weineventsbox_titel {
    float: left;
    width: 100%;
    height: 65px;
    font-size: 17px;
    font-weight: 500;
    line-height: 20px;
    color: #000000;
    padding: 0 18px 2px 18px;
    display: flex;
    align-items: center;
    transition: color 0.3s ease;
}
.weineventsbox:hover .weineventsbox_titel {
    color: #d8b034;
}

.weineventsboxen_button {
    float: right;
    color: #ffffff;
    margin: 20px 0;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    background: url(../images/btn_icon_arrow.png);
    background-repeat: no-repeat;
    background-position: right 50%;
    background-size: 50px;
    padding: 0 62px 0 0;
}
.menu_veranstaltungen {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:280px;
	height:auto;
	padding:10px;
	background:#000000;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease-in-out;
    transform: translate(-600px, -50%) scale(1.0);
	opacity:0;
    animation-fill-mode:backwards;
}
.menu_veranstaltungen.active {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:280px;
	height:auto;
	padding:10px;
	background:#000000;
	z-index:99;
	text-align:left;
	transition:all 0.5s ease-in-out;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
    animation-fill-mode:backwards;
}
.menu_veranstaltungen ul {
    list-style: none;
    float: left;
    width: 100%;
    height: auto;
}
.menu_veranstaltungen ul li {
    list-style: none;
    float: left;
    width: 100%;
    height: auto;
}
.menu_veranstaltungen ul li a {
    float: left;
    width: 100%;
    height: auto;
    font-size: 16px;
    line-height: 24px;
    padding: 10px 24px 10px 15px;
    color: #ffffff;
    cursor: pointer;
    background-image: url(../images/ver_icon_btn.png);
    background-repeat: no-repeat;
    background-position: 99% 50%;
    background-size: 16px;
    background-color: #000000;
    transition: all 0.3s ease;
}
.menu_veranstaltungen ul li a:hover {
    background-color: #ffffff;
    color: #000000;
}
.ver_nav_a {
    
}
.ver_nav_a.active {
    background-color: #d8b034;
    background-image: url(../images/ver_icon_btn_black.png);
    color: #000000;
}
.ver_nav_b {
    
}
.ver_nav_b.active {
    background-color: #d8b034;
    background-image: url(../images/ver_icon_btn_black.png);
    color: #000000;
}
.ver_nav_c {
    
}
.ver_nav_c.active {
    background-color: #d8b034;
    background-image: url(../images/ver_icon_btn_black.png);
    color: #000000;
}
.ver_nav_d {
    
}
.ver_nav_d.active {
    background-color: #d8b034;
    background-image: url(../images/ver_icon_btn_black.png);
    color: #000000;
}
.ver_nav_e {
    
}
.ver_nav_e.active {
    background-color: #d8b034;
    background-image: url(../images/ver_icon_btn_black.png);
    color: #000000;
}
.ver_nav_f {
    
}
.ver_nav_f.active {
    background-color: #d8b034;
    background-image: url(../images/ver_icon_btn_black.png);
    color: #000000;
}
.sec_nav_events {
    float: left;
    width: 100%;
    height: auto;
    margin: 0 0 25px 0;
    padding-bottom: 10px;
    border-bottom: solid 1px #bbbbbb;
}
.sec_nav_events ul {
    list-style: none;
}
.sec_nav_events ul li {
    float: left;
    width: auto;
    height: auto;
    margin: 0 14px 14px 0;
}
.sec_nav_events ul li:last-of-type {
    margin: 0 0px 10px 0;
}
.sec_nav_events ul li a {
    float: left;
    width: 100%;
    height: auto;
    cursor: pointer;
    padding: 9px 14px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 500;
    text-transform: uppercase;
    background: #000000;
    border:solid 1px #000000;
    margin: 0;
    transition: all 0.3s ease;
}
.sec_nav_events ul li a:hover {
    background: #d8b034;
    border:solid 1px #d8b034;
}
.sec_nav_events .nav1 {}
.sec_nav_events .nav1.active {
    background: #d8b034;
    border:solid 1px #000000;
    color: #000000;
}
.sec_nav_events .nav2 {}
.sec_nav_events .nav2.active {
    background: #d8b034;
    border:solid 1px #000000;
    color: #000000;
}
.sec_nav_events .nav3 {}
.sec_nav_events .nav3.active {
    background: #d8b034;
    border:solid 1px #000000;
    color: #000000;
}
.sec_nav_events .nav4 {}
.sec_nav_events .nav4.active {
    background: #d8b034;
    border:solid 1px #000000;
    color: #000000;
}
.sec_nav_events .nav5 {}
.sec_nav_events .nav5.active {
    background: #d8b034;
    border:solid 1px #000000;
    color: #000000;
}
.veranstaltungen_inhalt {
	position:absolute;
	left:320px;
	top:calc(50% + 72px);
	width:calc(100% - 320px);
	height:auto;
	padding:10px;
    margin: 0 0 40px 0;
	background:#ffffff;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease-in-out;
    transform: translate(700px, -50%) scale(1.0);
	opacity:0;
    color: #000000;
    animation-fill-mode:backwards;
    overflow: hidden;
}
.veranstaltungen_inhalt.active {
	position:absolute;
	left:320px;
	top:calc(50% + 72px);
	width:calc(100% - 320px);
	height:auto;
	padding:10px;
    margin: 0 0 40px 0;
	background:#ffffff;
	z-index:99;
	text-align:left;
	transition:all 0.6s ease-in-out;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
    color: #000000;
    animation-fill-mode:backwards;
    overflow: hidden;
}
.veranstaltungen_portrait_a {
    float: left;
    width: 100%;
    height: auto;
    padding: 0px;
    background: #000000;
	text-align:left;
    color: #000000;
    margin: 20px 0 0 0;
}
.veranstaltungen_portrait_a .bild {
    position: relative;
    float: left;
    width: 100%;
    height: auto;
    border-radius: 0;
    overflow: hidden;
    padding-bottom: 75%;
}
.veranstaltungen_portrait_a .bild img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.veranstaltungen_portrait_a .text {
    float: left;
    width: 100%;
    height: auto;
    padding: 10px;
    font-size: 14px;
    line-height: 19px;
    font-weight: 500;
    text-transform: uppercase;
    background: #000000;
    color: #ffffff;
}
.veranstaltungen_portrait_a .text small {
    font-size: 12px;
    text-transform: none;
    line-height: 14px;
    font-weight: 400;
}
.veranstaltungen_portrait {
    position:absolute;
	right:0px;
	top:calc(50% + 72px);
    width: 220px;
    height: auto;
    padding: 0px;
    background: #ffffff;
    z-index:99;
	text-align:left;
	transition:all 0.3s ease-in-out;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
    color: #000000;
}
.veranstaltungen_portrait .bild {
    position: relative;
    float: left;
    width: 100%;
    height: auto;
    border-radius: 0;
    overflow: hidden;
    padding-bottom: 75%;
}
.veranstaltungen_portrait .bild img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.veranstaltungen_portrait .text {
    float: left;
    width: 100%;
    height: auto;
    padding: 10px;
    font-size: 14px;
    line-height: 19px;
    font-weight: 500;
    text-transform: uppercase;
    background: #000000;
    color: #ffffff;
}
.veranstaltungen_portrait .text small {
    font-size: 12px;
    text-transform: none;
    line-height: 14px;
    font-weight: 400;
}
.veranstaltungen_inhalt .box_a {
    display: none;
    width: 100%;
    height: auto;
    padding: 20px;
    transition: all 0.3s ease;
    transform: translate(0,250px);
    opacity: 0;
}
.veranstaltungen_inhalt .box_a.active {
    transform: translate(0,0);
    opacity: 1;
    display: block;
}
.veranstaltungen_inhalt .box_b {
    display: none;
    width: 100%;
    height: auto;
    padding: 20px;
    transition: all 0.3s ease;
    transform: translate(0,250px);
    opacity: 0;
}
.veranstaltungen_inhalt .box_b.active {
    transform: translate(0,0);
    opacity: 1;
    display: block;
}
.veranstaltungen_inhalt .box_c {
    display: none;
    width: 100%;
    height: auto;
    padding: 20px;
    transition: all 0.3s ease;
    transform: translate(0,250px);
    opacity: 0;
}
.veranstaltungen_inhalt .box_c.active {
    transform: translate(0,0);
    opacity: 1;
    display: block;
}
.veranstaltungen_inhalt .box_d {
    display: none;
    width: 100%;
    height: auto;
    padding: 20px;
    transition: all 0.3s ease;
    transform: translate(0,250px);
    opacity: 0;
}
.veranstaltungen_inhalt .box_d.active {
    transform: translate(0,0);
    opacity: 1;
    display: block;
}
.veranstaltungen_inhalt .box_e {
    display: none;
    width: 100%;
    height: auto;
    padding: 20px;
    transition: all 0.3s ease;
    transform: translate(0,250px);
    opacity: 0;
}
.veranstaltungen_inhalt .box_e.active {
    transform: translate(0,0);
    opacity: 1;
    display: block;
}
.veranstaltungen_inhalt .box_f {
    display: none;
    width: 100%;
    height: auto;
    padding: 20px;
    transition: all 0.3s ease;
    transform: translate(0,250px);
    opacity: 0;
}
.veranstaltungen_inhalt .box_f.active {
    transform: translate(0,0);
    opacity: 1;
    display: block;
}
.veranstaltungen_inhalt .clear {
    clear: both;
}

.veranstaltungen_inhalt .text_voll {
    float: left;
    width: 100%;
    height: auto;
}
.veranstaltungen_inhalt .text_voll h3 {
    float: left;
    width: 100%;
    height: auto;
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    margin: 0 0 12px 0;
    color: #000000;
    text-transform: uppercase;
}
.veranstaltungen_inhalt .text_voll h4 {
    float: left;
    width: 100%;
    height: auto;
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    margin: 0 0 16px 0;
    text-transform: none;
    color: #d8b034;
}
.veranstaltungen_inhalt .text_voll h5 {
    float: left;
    width: 100%;
    height: auto;
    font-size: 15px;
    line-height: 21px;
    font-weight: 600;
    margin: 5px 0 8px 0;
    color: #000000;
    text-transform: none;
}
.veranstaltungen_inhalt .text_voll p {
    float: left;
    width: 100%;
    height: auto;
    font-size: 15px;
    line-height: 21px;
    font-weight: 400;
    margin: 0 0 18px 0;
    color: #000000;
    text-transform: none;
}
.veranstaltungen_inhalt .text_voll ul {
    float: left;
    width: 100%;
    height: auto;
    margin: 0 0 12px 0;
}
.veranstaltungen_inhalt .text_voll ul li {
    float: left;
    width: calc(100% - 16px);
    list-style: disc outside;
    margin: 0 0 9px 16px;
    font-size: 15px;
    line-height: 21px;
    font-weight: 400;
}
.veranstaltungen_inhalt .anfrage_btn {
    float: left;
    margin: 15px 0 5px 0;
    padding: 12px 22px;
    border: none;
    background: #d8b034;
    outline: none;
    cursor: pointer;
    color: #000000;
    font-weight: 500;
    font-size:15px;
    transition: all 0.3s ease;
}
.veranstaltungen_inhalt .anfrage_btn:hover {
    transform: scale(1.05);
    background: #000000;
    color: #d8b034;
}


.content_box_weinshop {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:55%;
	height:auto;
	padding:60px 50px 40px 50px;
	background:#000000;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease;
    transform: translate(-400px, -50%) scale(0.0);
	opacity:0;
    animation-fill-mode:backwards;
}
.content_box_weinshop.active {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:55%;
	height:auto;
	padding:60px 50px 40px 50px;
	background:#000000;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease;
	animation: content_box_left_ani 1.1s ease-in-out;
	animation-fill-mode: forwards;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
}
.shop_box_weine {
	position:absolute;
	right:0;
	top:calc(50% + 72px);
	width:40%;
	height:auto;
	padding:0px;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease-in-out;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction:row;
    flex-wrap: wrap;
    gap: 20px;
}
.weinebox {
    float: left;
    height: 232px;
    background: #ffffff;
    border: solid 1px none;
    border-radius: 0px;
    position: relative;
    flex: 0 1 calc(33.33% - 14px);
    overflow: hidden;
    transform: translate(0px, 0px) scale(1.0);
    transition: all 0.3s ease;
    opacity: 0;
}
.weinebox.active {
    opacity: 1;
    animation: bild_erscheint_ani 1.2s ease-in-out;
    transition: all 0.3s ease;
}
.weinebox:hover {
    transform: scale(1.06);
}
.weinebox_bild {
    float: left;
    width: 100%;
    height: 232px;
    overflow: hidden;
    position: relative;
    transition: all 0.3s ease;
}
.weinebox_bild img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit:scale-down;
}
.weinebox_button {
    float: left;
    height: auto;
    border-radius: 0px;
    position: relative;
    flex: 0 1 100%;
    overflow: hidden;
    transform: translate(0px, 0px) scale(0.0);
    transition: all 0.3s ease;
    opacity: 0;
    animation: bild_erscheint_ani 1.4s ease-in-out;
}
.weinebox_button.active {
    transform: translate(0px, 0px) scale(1.0);
    opacity: 1;
}
.weinebox_button a {
    float: left;
    width: 100%;
    height: auto;
    padding: 16px 10px;
    background: #ffffff;
    border: solid 1px #ffffff;
    font-size: 17px;
    line-height: 32px;
    font-weight: 600;
    color: #000000;
    text-decoration: none;
    text-align: center;
    justify-content: center;
    align-items: center;
    display: flex;
    transition: all 0.3s ease;
    overflow: hidden;
    position: relative;
}
.weinebox_button a .icon_a {
    display: inline;
    width: 32px;
    height: 32px;
    margin-right: 9px;
    margin-bottom: 3px;
    position: absolute;
    transition: all 0.3s ease;
    transform: translate(-155px,0);
}
.weinebox_button a .icon_b {
    width: 32px;
    height: 32px;
    margin-right: 9px;
    margin-bottom: 3px;
    display: inline;
    transition: all 0.3s ease;
    transform: translate(0,100px);
}
.weinebox_button a:hover {
    background: #000000;
    color: #ffffff;
    border: solid 1px #d8b034;
}
.weinebox_button a:hover .icon_a {
    transform: translate(-155px,-100px);
}
.weinebox_button a:hover .icon_b {
    transform: translate(0,0px);
}

.content_box_weinberg {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:100%;
	height:auto;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
    animation-fill-mode:backwards;
}
.content_box_weinberg.active {
	display:block;
	position:absolute;
	left:0;
	top:calc(50% + 72px);
	width:100%;
	height:auto;
	z-index:99;
	text-align:left;
	transition:all 0.3s ease;
	animation: content_box_left_ani 1.1s ease-in-out;
	animation-fill-mode: forwards;
    transform: translate(0px, -50%) scale(1.0);
	opacity:1;
}
.weinberg_einleitung {
    float: left;
    width: 100%;
    height: auto;
    background: #000000;
    margin: 0 0 30px 0;
    padding:40px 40px 20px 40px;
    transition:all 0.4s ease;
    transform: translate(0px, 200px) scale(1.0);
	opacity:0;
    animation-fill-mode:backwards;
}
.weinberg_einleitung.active {
    float: left;
    width: 100%;
    height: auto;
    background: #000000;
    margin: 0 0 30px 0;
    padding:40px 40px 20px 40px;
    transition:all 0.3s ease;
	animation: weinberg_einleitung_ani 1.1s ease;
	animation-fill-mode: forwards;
    transform: translate(0px, 0%) scale(1.0);
	opacity:1;
}
.weinberg_einzeln_wrap {
    float: left;
    width: 100%;
    height: auto;
}
.weinberg_einzeln_box {
    float: left;
    width: 18.4%;
    height: auto;
    background: #ffffff;
    color: #000000;
    transition:all 0.4s ease;
    transform: translate(0px, 200px) scale(1.0);
	opacity:0;
    animation-fill-mode:backwards;
    margin: 0 2% 0 0;
    
}
.weinberg_einzeln_box.active {
    float: left;
    width: 18.4%;
    height: auto;
    background: #ffffff;
    color: #000000;
    transition:all 0.4s ease;
    transform: translate(0px, 0px) scale(1.0);
	opacity:1;
    animation-fill-mode:backwards;
    margin: 0 2% 0 0;
    animation: weinberg_box_ani 1.5s ease;
}
.weinberg_einzeln_box:nth-of-type(2n+2) { margin: 0 2% 0 0; }
.weinberg_einzeln_box:nth-of-type(3n+3) { margin: 0 2% 0 0; }
.weinberg_einzeln_box:nth-of-type(4n+4) { margin: 0 2% 0 0; }
.weinberg_einzeln_box:nth-of-type(5n+5) { margin: 0 0 0 0; }

.weinberg_einzeln_box a {
    color: #000000;
    text-decoration: none;
    outline: none !important;
}

.weinberg_einzeln_box .bild {
    float: left;
    width: 100%;
    height: 185px;
    overflow: hidden;
    position: relative;
    transition: all 0.3s ease;
    border: solid 2px #ffffff;
}
.weinberg_einzeln_box .bild img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit:cover;
    transform: scale(1.0);
    transition: all 0.3s ease;
}
.weinberg_einzeln_box:hover img {
    transform: scale(1.2);
}
.weinberg_einzeln_box .titel {
    float: left;
    width: 100%;
    height: auto;
    padding: 0px 15px;
    font-size: 16px;
    margin: 10px 0 5px 0;
    line-height: 22px;
    font-weight: 600;
    text-transform: uppercase;
}
.weinberg_einzeln_box .text {
    float: left;
    width: 100%;
    height: auto;
    padding: 0px 15px 20px 15px;
    font-size: 13px;
    line-height: 20px;
    font-weight: 400;
    text-transform: none;
}
#flex-container {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.eventkalender_titel {
    float: left;
    width: 100%;
    height: auto;
    margin: 220px 0 50px 0;
    color: #d8b034;
    font-size: 30px;
    font-weight: 500;
    transition: all 0.5s ease;
    opacity: 0;
    transform: translate(0,80px) scale(1.0);
}
.eventkalender_titel.active {
    float: left;
    width: 100%;
    height: auto;
    margin: 220px 0 50px 0;
    color: #d8b034;
    font-size: 30px;
    font-weight: 500;
    transition: all 0.5s ease;
    opacity: 1;
    transform: translate(0,0px) scale(1.0);
}
.eventkalender_wrap {
    float: left;
    width: 100%;
    height: auto;
    /*display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction:row;
    flex-wrap: wrap;
    gap: 20px;*/
}
.eventkalender_wrap .box {
    float: left;
    width:20%; 
    height: 279px;
    padding: 15px;
    border: solid 1px #d8b034;
    border-left: none;
    border-top: none;
    position: relative;
    overflow: hidden;
    opacity: 0;
    transform: scale(0.0);
    background-color: rgba(0,0,0,0.75);
    transition: all 0.3s ease;
}
.eventkalender_wrap .box.active {
    float: left;
    width:20%; 
    height: 279px;
    padding: 15px;
    border: solid 1px #d8b034;
    border-left: none;
    border-top: none;
    position: relative;
    overflow: hidden;
    background-color: rgba(0,0,0,0.75);
    transition: all 0.4s ease;
    opacity: 1;
    transform: scale(1.0);
    animation: event_box_ani 0.7s ease;
}



.eventkalender_wrap .box a {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
}
.eventkalender_wrap .box:hover {
    background-color: rgba(0,0,0,0.95);
}
.eventkalender_wrap .box .datum {
    position: absolute;
    right: 25px;
    top: 25px;
    font-size: 18px;
    font-weight: 400;
    color: #ffffff;
    text-align: right;
}
.eventkalender_wrap .box .titel {
    position: absolute;
    left: 25px;
    bottom: 25px;
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    text-transform: uppercase;
    max-width: calc(100% - 50px);
    text-align: left;
    color: #ffffff;
}
.eventkalender_wrap .box:hover .datum {
    color: #d8b034;
}
.eventkalender_wrap .box:hover .titel {
    color: #d8b034;
}
.eventkalender_wrap .box:first-of-type {
    border-left: solid 1px #d8b034;
}
.eventkalender_wrap .box:nth-child(1),
.eventkalender_wrap .box:nth-child(2), 
.eventkalender_wrap .box:nth-child(3),
.eventkalender_wrap .box:nth-child(4),
.eventkalender_wrap .box:nth-child(5) {
     border-top: solid 1px #d8b034;
}


.eventkalender_wrap .box:nth-child(6) {
    border-left: solid 1px #d8b034;
}
.eventkalender_wrap .box:nth-child(12) {
    border-left: solid 1px #d8b034;
}
.eventkalender_wrap .box:nth-child(18) {
    border-left: solid 1px #d8b034;
}

.erfolge_titel {
    float: left;
    width: 100%;
    height: auto;
    margin: 150px 0 30px 0;
    color: #d8b034;
    font-size: 30px;
    font-weight: 500;
    transition: all 0.5s ease;
    opacity: 0;
    transform: translate(0,80px) scale(1.0);
}
.erfolge_titel.active {
    float: left;
    width: 100%;
    height: auto;
    margin: 150px 0 30px 0;
    color: #d8b034;
    font-size: 30px;
    font-weight: 500;
    transition: all 0.5s ease;
    opacity: 1;
    transform: translate(0,0px) scale(1.0);
}
.erfolge_wrap {
    float: left;
    width: 100%;
    height: auto;
    margin: 0px 0 90px 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    gap: 20px;
}
.erfolge_wrap .box {
    flex: 1 1 auto;
    flex-grow: 1;
    flex-basis: 250px;
    max-width: 270px;
    flex-direction: column;
    float: left;
    width:20%; 
    padding: 25px;
    position: relative;
    overflow: hidden;
    opacity: 0;
    transform: scale(0.0);
    background-color: rgba(0,0,0,0.9);
    transition: all 0.3s ease;
}
.erfolge_wrap .box.active {
    flex: 1 1 auto;
    flex-direction: column;
    float: left;
    width:20%; 
    flex-basis: 250px;
    max-width: 270px;
    padding: 25px;
    position: relative;
    overflow: hidden;
    background-color: rgba(0,0,0,0.9);
    transition: all 0.4s ease;
    opacity: 1;
    transform: scale(1.0);
    animation: event_box_ani 0.9s ease;
}
.erfolge_wrap .box .titel {
    float: left;
    width: 100%;
    height: auto;
    font-size: 17px;
    line-height: 23px;
    font-weight: 500;
    margin: 0 0 6px 0;
    color: #ffffff;
}
.erfolge_wrap .box .punkte {
    float: left;
    width: 100%;
    height: auto;
    font-size: 15px;
    line-height: 19px;
    font-weight: 400;
    margin: 0 0 0px 0;
    color: #d8b034;
}

.netzwerk_titel {
    float: left;
    width: 100%;
    height: auto;
    margin: 250px 0 30px 0;
    color: #555555;
    font-size: 30px;
    font-weight: 500;
    transition: all 0.5s ease;
    opacity: 0;
    transform: translate(0,80px) scale(1.0);
}
.netzwerk_titel.active {
    float: left;
    width: 100%;
    height: auto;
    margin: 250px 0 30px 0;
    color: #555555;
    font-size: 30px;
    font-weight: 500;
    transition: all 0.5s ease;
    opacity: 1;
    transform: translate(0,0px) scale(1.0);
}
.netzwerk_wrap {
    float: left;
    width: 100%;
    height: auto;
    margin: 0px 0 90px 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content:flex-start;
    gap: 20px;
}
.netzwerk_wrap .box {
    flex: 1 1 auto;
    flex-grow: 1;
    flex-basis: 335px;
    max-width: 335px;
    flex-direction: column;
    float: left;
    width:25%; 
    min-height: 140px;
    padding: 30px 25px;
    position: relative;
    overflow: hidden;
    opacity: 0;
    transform: scale(0.0);
    background-color: rgba(0,0,0,0.9);
    transition: all 0.3s ease;
    background: #ffffff;
}
.netzwerk_wrap .box.active {
    flex: 1 1 auto;
    flex-direction: column;
    float: left;
    width:25%; 
    flex-basis: 335px;
    max-width: 335px;
    min-height: 140px;
    padding: 30px 25px;
    position: relative;
    overflow: hidden;
    background-color: rgba(0,0,0,0.9);
    transition: all 0.4s ease;
    opacity: 1;
    transform: scale(1.0);
    background: #ffffff;
    animation: event_box_ani 0.9s ease;
}
.netzwerk_wrap .box:hover {
    transform: scale(1.05);
    box-shadow: 1px 1px 6px rgba(0,0,0,0.25);
}
.netzwerk_wrap .box .titel {
    float: left;
    width: 100%;
    height: auto;
    font-size: 19px;
    line-height: 25px;
    font-weight: 500;
    margin: 0 0 6px 0;
    color: #000000;
    text-transform: uppercase;
}
.netzwerk_wrap .box .titel img {
    display: inline-block;
    margin: 0;
    height: 40px;
    width: auto;
}
.netzwerk_wrap .box .link {
    float: left;
    width: 100%;
    height: auto;
    font-size: 14px;
    line-height: 18px;
    font-weight: 400;
    margin: 5px 0 2px 0;
    color: #000000;
    display: flex;
    align-content: center;
}
.netzwerk_wrap .box .link a {
    display: inline-flex;
    text-decoration: none;
    outline: none;
    color: #000000;
    transition: all 0.3s ease;
}
.netzwerk_wrap .box .link a img {
    display: inline-flex;
    width: 15px;
    height: 15px;
    margin: 0 0 0 6px;
    transition: all 0.3s ease;
}
.netzwerk_wrap .box .link a:hover {
    cursor: pointer;
    text-decoration: underline;
}
.netzwerk_wrap .box .link a:hover img {
    width: 17px;
    height: 17px;
    margin: 0 0 0 5px;
}

.impressionen_titel {
    float: left;
    width: 100%;
    height: auto;
    text-align: center;
    margin: 0px 0 25px 0;
    color: #d8b034;
    font-size: 32px;
    font-weight: 500;
    transition: all 0.5s ease;
    opacity: 0;
    transform: translate(0,80px) scale(1.0);
}
.impressionen_titel.active {
    float: left;
    width: 100%;
    height: auto;
    text-align: center;
    margin: 0px 0 25px 0;
    color: #d8b034;
    font-size: 32px;
    font-weight: 500;
    transition: all 0.5s ease;
    opacity: 1;
    transform: translate(0,0px) scale(1.0);
}
.impressionen_wrapper {
    float: left;
    width: 100%;
    height: auto;
}
.impressionen_wrap {
    float: left;
    width: 100%;
    height: auto;
    margin: 240px 0 90px 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content:center;
    gap: 10px;
}
.impressionen_wrap .bild {
    width: 49%;
    height: 245px;
    overflow: hidden;
    position: relative;
    flex-grow: 1;
}
.impressionen_wrap .bild img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.0);
    transition: all 0.3s ease;
}
.impressionen_wrap .bild:hover img {
    transform: scale(1.15);
}

.im_querformat {
    flex-basis: 300px;
}
.im_hochformat {
    flex-basis: 150px;
}
.impressionen_wrap.active .bild {
    opacity: 1;
    animation: bild_erscheint_ani 1.2s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.gallery {
    max-width: 1200px;
    margin: 0 auto;
}
.grid-sizer,
.gallery-item {
    width: 20%;
}
.gallery-item {
    margin-bottom: 0px;
    padding: 5px;
    box-sizing: border-box;
    transform: scale(1.0);
    opacity: 0;
    transition: all 0.3s ease;
}
.gallery-item.active {
    opacity: 1;
    animation: event_box_ani 0.9s ease;
}

.gallery-item img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
    border: solid 2px transparent;
    transition: all 0.3s ease;
}
.gallery-item img:hover {
    border: solid 2px #ffffff;
}
.gallery-item:hover {
    transform: scale(1.025);
}
.wide {
    width: 40%;
    transition: all 0.3s ease;
}
.wide:hover {
    transform: scale(1.015);
}
.extrawide {
    width: 60%;
    transition: all 0.3s ease;
}
.extrawide:hover {
    transform: scale(1.01);
}

.modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding:220px 0 0 0;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.60);
}
.modal-content {
  position: relative;
  background-color: #ffffff;
  margin: auto;
  padding: 0;
  width: 55%;
  height:auto;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
  animation-name: modal_animatetop;
  animation-duration: 0.4s
}
.modal-content .modal-header {
    float: left;
    width: 100%;
    height: auto;
    position: relative;
    display: block;
    padding:15px 30px 10px 30px;
    background: #d8b034;
    color: #000000;
}
.modal-content .inhalt {
    float: left;
    width: 100%;
    height: auto;
    position: relative;
    display: block;
    padding:15px 30px 20px 30px;
}
.modal-content .inhalt .inputwrap {
	float:left;
	width:20%;
	height:auto;
	display:inline-block;
	padding:22px 10px 22px 0;
}
.modal-content .close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 25px;
    height: 25px;
    line-height: 24px;
    font-size: 34px;
    color: #ffffff;
    transition: all 0.3s ease;
    opacity: 0.5;
    background: #000000;
    text-align: center;
}
.modal-content .close:hover,
.modal-content .close:focus {
  color: #ffffff;
  text-decoration: none;
  cursor: pointer;
  opacity: 1;
}
#modal-title {
    float: left;
    width: 100%;
    height: auto;
    font-size: 28px;
    line-height: 34px;
    font-weight: 500;
    color: #000000;
    padding: 5px 0 5px 0;
}
#modal-date {
    float: left;
    width: auto;
    height: auto;
    font-size: 18px;
    line-height: 28px;
    font-weight: 400;
    color: #000000;
    padding: 5px 25px 5px 0;
}
#modal-beginn {
    float: left;
    width: auto;
    height: auto;
    font-size: 18px;
    line-height: 28px;
    font-weight: 400;
    color: #000000;
    padding: 5px 25px 5px 0;
}
#modal-price {
    float: left;
    width: auto;
    height: auto;
    font-size: 18px;
    line-height: 28px;
    font-weight: 400;
    color: #000000;
    padding: 5px 0 5px 0;
}
#modal-text {
    float: left;
    width: auto;
    height: auto;
    font-size: 15px;
    line-height: 24px;
    font-weight: 400;
    color: #000000;
    padding: 5px 0 5px 0;
}
#modal-text p {
    color: #000000;
    font-size: 15px;
    line-height: 24px;
    margin: 0 0 18px 0;
}
#modal-text ul {
    float: left;
    width: 100%;
    height: auto;
    font-size: 15px;
    line-height: 24px;
    margin: 0 0 18px 0;
}
#modal-text ul li {
    float: left;
    width: calc(100% - 16px);
    height: auto;
    list-style: outside disc;
    color: #000000;
    margin: 0 0 5px 16px;
}
#modal-buchen {
    float: left;
    width: auto;
    height: auto;
    font-size: 15px;
    line-height: 24px;
    font-weight: 400;
    color: #000000;
    padding: 5px 0 10px 0;
}
#modal-buchen a {
    text-decoration: none;
    display: inline-block;
    padding: 10px 22px;
    background: #000000;
    color: #d8b034;
    outline: none;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 500;
    transition: all 0.3s ease;
}
#modal-buchen a:hover {
    background: #d8b034;
    color: #000000;
    cursor: pointer;
}
.clear {
    clear: both;
}

@-webkit-keyframes modal_animatetop {
  from {top:-300px; opacity:0} 
  to {top:0; opacity:1}
}

@keyframes modal_animatetop {
  from {top:-300px; opacity:0}
  to {top:0; opacity:1}
}




.footer {
    float: left;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 80px 0 50px 0;
    background: #ffffff;
    color: #000000;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    font-style: normal;
}
.footer_unten {
    float: left;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 14px 0;
    text-align: left;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    color: #666666;
    background: #eeeeee;
}
.footer_wrap {
    max-width: 1400px;
    height: auto;
    margin: 0 auto;
}
.footer_block_home {
    float: left;
    width: 100%;
    height: auto;
    text-align: center;
    margin: 80px 0 0px 0;
    display: block;
    vertical-align: middle;
}
.footer_block_home a {
    font-size: 13px;
    line-height: 24px;
    font-weight: 400;
    color: #555555;
    text-decoration: none;
    outline: none;
    display: inline-block;
    vertical-align: 4px;
    transition: all 0.3s ease;
    opacity: 0.35;
}
.footer_block_home a .topicon {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0px 8px 0 0;
    vertical-align: middle;
    transform: scale(1.0);
    transition: all 0.3s ease;
}
.footer_block_home a:hover {
    opacity: 1;
    cursor: pointer;
}
.footer_block_home a:hover .topicon {
    transform: scale(1.1);
}

.footer .block_a {
    float: left;
    width: 34%;
    height: auto;
    text-align: left;
    padding: 0 50px 0 0;
    line-height: 25px;
}
.footer .block_b {
    float: left;
    width: 25%;
    height: auto;
    text-align: left;
    padding: 0 20px 0 0;
}
.footer .block_c {
    float: left;
    width: 21%;
    height: auto;
    text-align: left;
    padding: 0 50px 0 0;
}
.footer .block_d {
    float: left;
    width: 19%;
    height: auto;
    text-align: left;
    padding: 0 0px 0 10px;
}

.footer .firma {
    font-weight: 600;
}
.footer .telefon {
    float: left;
    width: auto;
    height: auto;
    margin: 38px 40px 0 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 1px;
    display: flex;
    align-content: center;
}
.footer .email {
    float: left;
    width: auto;
    height: auto;
    margin: 35px 20px 0 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0px;
    display: flex;
    align-content: center;
}
.footer .icon {
    display: inline-block;
    width: 28px;
    height: 28px;
    margin: 0 10px 0 0;
    opacity: 0.65;
    transition: all 0.3s ease;
    transform: scale(1.0);
}
.footer a {
    outline: none;
    text-decoration: none;
    color: #000000;
}
.footer a:hover {
    text-decoration: underline;
    cursor: pointer;
}
.footer .telefon:hover .icon {
    transform: scale(1.15);
}
.footer .email:hover .icon {
    transform: scale(1.15);
}
.footer .block_b ul {
    list-style: none;
    float: left;
    width: 100%;
    height: auto;
    margin: 0;
}
.footer .block_b ul li {
    list-style: none outside;
    float: left;
    width: calc(100% - 5px);
    height: auto;
    margin-left: 5px;
    color: #cccccc;
    border-left: solid 1px #cccccc;
    padding: 10px 0 0 0;
}
.footer .block_b ul li:first-child {
    border-left: solid 1px #ffffff;
    margin-left: 0px;
    width: 100%;
    padding: 0;
}
.footer .block_c ul {
    list-style: none;
    float: left;
    width: 100%;
    height: auto;
    margin: 0;
}
.footer .block_c ul li {
    list-style: none outside;
    float: left;
    width: calc(100% - 5px);
    height: auto;
    margin-left: 5px;
    color: #cccccc;
    padding: 0px 0 10px 0;
}
.footer .block_c img {
    display: inline-block;
    width: 22px;
    height: 22px;
}
.footer .block_c a {
    background-image: url(../images/btn_icon_right.png);
    background-position: 0px 50%;
    background-repeat: no-repeat;
    background-size: 12px;
    padding-left: 16px;
}
.footer .nl_abo_btn {
    float: left;
    width: 100%;
    height: auto;
    margin: 5px 0 25px 0;
    text-align: left;
}
.footer .nl_abo_btn a {
    float: left;
    width: 100%;
    height: auto;
    padding: 13px 18px 13px 46px;
    background-color: #ffffff;
    border: solid 1px #000000;
    background-image: url(../images/icon_nl_black.png);
    background-position: 12px 50%;
    background-repeat: no-repeat;
    background-size: 24px;
    color: #000000;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    outline: none;
    transition: all 0.3s ease;
}
.footer .nl_abo_btn a:hover {
    background-color:#000000;
    border: solid 1px #000000;
    color: #ffffff;
    background-image: url(../images/icon_nl_gold.png);
    background-position: 12px 50%;
    background-repeat: no-repeat;
    background-size: 24px;
}
.footer .fb_btn {
    display: inline-block;
    width: 34px;
    height: 34px;
    background-image: url(../images/icon_nav_fb_black.png);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: 34px;
    margin: 20px 25px 0 16px;
    transition: all 0.3s ease;
    opacity: 0.5;
    transform: scale(1.0);
}
.footer .fb_btn:hover {
    opacity: 1;
    transform: scale(1.1);
}

.footer .insta_btn {
    display: inline-block;
    width: 34px;
    height: 34px;
    background-image: url(../images/icon_nav_insta_black.png);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: 34px;
    margin: 20px 0 0 0;
    transition: all 0.3s ease;
    opacity: 0.5;
    transform: scale(1.0);
}
.footer .insta_btn:hover {
    opacity: 1;
    transform: scale(1.1);
}
.footer .weinshop_btn {
    float: left;
    width: 100%;
    height: auto;
    text-align: left;
    margin: 10px 0 30px 0;
}
.footer .weinshop_btn a {
    float: left;
    width: auto;
    height: auto;
    padding: 13px 18px 13px 48px;
    background-color: #ffffff;
    border: solid 1px #000000;
    background-image: url(../images/icon_shop_b.png);
    background-position: 13px 50%;
    background-repeat: no-repeat;
    background-size: 28px;
    color: #000000;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    outline: none;
    transition: all 0.3s ease;
}
.footer .weinshop_btn a:hover {
    background-color:#000000;
    border: solid 1px #000000;
    color: #ffffff;
    background-image: url(../images/icon_shop_a.png);
    background-position: 13px 50%;
    background-repeat: no-repeat;
    background-size: 28px;
}

@-webkit-keyframes bild_erscheint_ani {
  0% { opacity:0; transform: translate(0px, 10px) scale(0.0); }
  20% { opacity:0; transform: translate(0px, 10px) scale(0.0); }
  100% { opacity:1; transform: translate(0px, 0px) scale(1.0); }
}
@keyframes bild_erscheint_ani {
  0% { opacity:0; transform: translate(0px, 10px) scale(0.0); }
  20% { opacity:0; transform: translate(0px, 10px) scale(0.0); }
  100% { opacity:1; transform: translate(0px, 0px) scale(1.0); }
}

@-webkit-keyframes content_box_left_ani {
  0% { opacity:0; transform: translate(-400px, -50%) scale(0.0); }
  15% { opacity:0; transform: translate(-400px, -50%) scale(0.0); }
  100% { opacity:1; transform: translate(0px, -50%) scale(1.0); }
}
@keyframes content_box_left_ani {
  0% { opacity:0; transform: translate(-400px, -50%) scale(0.0); }
  15% { opacity:0; transform: translate(-400px, -50%) scale(0.0); }
  100% { opacity:1; transform: translate(0px, -50%) scale(1.0); }
}

@-webkit-keyframes weinberg_einleitung_ani {
  0% { opacity:0; transform: translate(0px, 200px) scale(1.0); }
  45% { opacity:0; transform: translate(0px, 200px) scale(1.0); }
  100% { opacity:1; transform: translate(0px, 0px) scale(1.0); }
}
@keyframes weinberg_einleitung_ani {
  0% { opacity:0; transform: translate(0px, 200px) scale(1.0); }
  45% { opacity:0; transform: translate(0px, 200px) scale(1.0); }
  100% { opacity:1; transform: translate(0px, 0px) scale(1.0); }
}
@-webkit-keyframes weinberg_box_ani {
  0% { opacity:0; transform: translate(0px, 200px) scale(1.0); }
  65% { opacity:0; transform: translate(0px, 200px) scale(1.0); }
  100% { opacity:1; transform: translate(0px, 0px) scale(1.0); }
}
@keyframes weinberg_box_ani {
  0% { opacity:0; transform: translate(0px, 200px) scale(1.0); }
  65% { opacity:0; transform: translate(0px, 200px) scale(1.0); }
  100% { opacity:1; transform: translate(0px, 0px) scale(1.0); }
}
@-webkit-keyframes event_box_ani {
  0% { opacity:0; transform: scale(0.0); }
  20% { opacity:0; transform: scale(0.0); }
  100% { opacity:1; transform: scale(1.0); }
}
@keyframes event_box_ani {
  0% { opacity:0; transform: scale(0.0); }
  20% { opacity:0; transform: scale(0.0); }
  100% { opacity:1; transform: scale(1.0); }
}

.ankerpunkt {
    position: absolute;
    left: 0;
    top: 40px;
    width: 0px;
    height: 0px;
}

.sideicon_clock {
    position: fixed;
    left: 0px;
    top: calc(50% - 25px);
    width: 350px;
    height: auto;
    transform: translate(-300px,-50%);
    z-index: 2500;
    transition: all 0.4s ease-in-out;
    animation: AniSideicons 5s ease;
}
.sideicon_clock_icon {
    position: absolute;
    top: 0;
    right: 0px;
    width: 50px;
    height: 50px;
    background-color: #d8b034;
    background-image: url(../images/icon_clock.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 24px;
    opacity: 0.75;
}
.sideicon_clock:hover {
    transform: translate(0px,-50%);
    z-index: 3000;
}
.sideicon_clock:hover .sideicon_clock_icon {
    opacity: 1;
}
.sideicon_clock a {
    outline: none;
    text-decoration: none;
    color: #000000;
    transition: all 0.3s ease;
}
.sideicon_clock a:hover {
    cursor: pointer;
    font-weight: 500;
    text-decoration: underline;
}
.sideicon_innen {
    float: left;
    width: 300px;
    height: auto;
    background: #ffffff;
    border: solid 1px #d8b034;
    padding: 15px 20px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #000000;
    font-size: 14px;
    line-height: 22px;
}
.sideicon_shop {
    position: fixed;
    left: 0px;
    top: calc(50% + 60px);
    width: 250px;
    height: auto;
    transform: translate(-200px,-50%);
    z-index: 2500;
    transition: all 0.4s ease-in-out;
    animation: AniSideiconsShop 5s ease;
}
.sideicon_shop_icon {
    position: absolute;
    top: 0;
    right: 0px;
    width: 50px;
    height: 50px;
    background-color: #d8b034;
    background-image: url(../images/icon_shop.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 30px;
    opacity: 0.75;
}
.sideicon_shop:hover {
    transform: translate(0px,-50%);
    z-index: 3000;
}
.sideicon_shop:hover .sideicon_shop_icon {
    opacity: 1;
}
.sideicon_shop a {
    outline: none;
    text-decoration: none;
    color: #000000;
    transition: all 0.3s ease;
}
.sideicon_shop a:hover {
    cursor: pointer;
    font-weight: 500;
    text-decoration: underline;
}
.sideicon_innen_shop {
    float: left;
    width: 200px;
    height: 50px;
    background: #ffffff;
    border: solid 1px #d8b034;
    padding: 14px 20px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #000000;
    font-size: 14px;
    line-height: 22px;
}
.sideicon_kontakt {
    position: fixed;
    left: 0px;
    top: calc(50% + 45px);
    width: 350px;
    height: auto;
    transform: translate(-300px,-50%);
    z-index: 2500;
    transition: all 0.4s ease-in-out;
    animation: AniSideicons 5s ease;
}
.sideicon_kontakt_icon {
    position: absolute;
    top: 0;
    right: 0px;
    width: 50px;
    height: 50px;
    background-color: #d8b034;
    background-image: url(../images/icon_contact.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 30px;
    opacity: 0.75;
}
.sideicon_kontakt:hover {
    transform: translate(0px,-50%);
    z-index: 3000;
}
.sideicon_kontakt:hover .sideicon_kontakt_icon {
    opacity: 1;
}
.sideicon_kontakt a {
    outline: none;
    text-decoration: none;
    color: #000000;
    transition: all 0.3s ease;
}
.sideicon_kontakt a:hover {
    cursor: pointer;
    font-weight: 500;
    text-decoration: underline;
}
.sideicon_innen_kontakt {
    float: left;
    width: 300px;
    height: auto;
    background: #ffffff;
    border: solid 1px #d8b034;
    padding: 15px 20px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #000000;
    font-size: 14px;
    line-height: 22px;
}

@-webkit-keyframes AniSideicons {
  0% { transform: translate(-400px,-50%); } 
  90% { transform: translate(-400px,-50%); } 
  100% { transform: translate(-300px,-50%); } 
}
@keyframes AniSideicons {
  0% { transform: translate(-400px,-50%); } 
  90% { transform: translate(-400px,-50%); } 
  100% { transform: translate(-300px,-50%); } 
}

@-webkit-keyframes AniSideiconsShop {
  0% { transform: translate(-300px,-50%); } 
  90% { transform: translate(-300px,-50%); } 
  100% { transform: translate(-200px,-50%); } 
}
@keyframes AniSideiconsShop {
  0% { transform: translate(-300px,-50%); } 
  90% { transform: translate(-300px,-50%); } 
  100% { transform: translate(-200px,-50%); } 
}