@import url("reset.css");

/*-----------FONTS-----------*/

/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/montserrat-v31-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/montserrat-v31-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/montserrat-v31-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/montserrat-v31-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/*-----------FONTGESTALTUNG-----------*/

body {font-family: 'Montserrat', sans-serif;}
p {font-size: 15px; font-weight: 300; line-height: 21px; margin-bottom: 15px; color: #792A32;}
a {color: #792A32; text-decoration: underline; cursor: pointer;}
h1 {font-size: 22px; line-height: 40px; margin-bottom: 10px; color: #fff; font-weight: 600;}
h1 b {font-size: 30px;}
h3 {font-size: 20px; margin-bottom: 30px;font-weight: normal; color: #fff;}
h2 {font-size: 20px; margin-bottom: 10px;font: bold;}
h4 {font-size: 18px; font-weight: bold; margin-bottom: 1rem;}
li {font-size: 14px; list-style: disc;}
strong {font-weight: 500; font-weight: 600;}


/*-----------NAVI-----------*/

.logo {position: fixed; width: 200px; height: auto;  left: 5%; z-index: 9997;}
nav {position: fixed; background: #fff; width: 100%; z-index: 101; top: 0; text-align: right; padding: 35px 0; z-index: 100; border-bottom: #792A32 3px solid;}
nav ul {margin-right: 1%;}
nav ul li {display: inline-block; margin: 0 10px; text-transform: uppercase;}
nav ul li a {text-decoration: none; font-size: 14px; color: #792A32; font-weight: 400;  padding: 8px 10px;}
nav ul li strong {color: #0025a6; font-weight: 600;}
nav ul li a:hover {border-bottom: 2px solid #792A32; border-top: 2px solid #792A32}
nav ul li a[href="#kontakt"] { background-color: #792A32; color: #fff; padding: 10px 10px;}

.navi {display: none;}
.burger-nav {position: fixed; right: 0; top: -6px; color: #fff; z-index: 9999; -webkit-transform: rotate(-90deg); transform: rotate(-90deg); font-size: 40px; cursor: pointer; transition: all .4s ease-in-out; background-color: #792A32; padding: 16px 21px 21px 19px;}
.burger-nav b {transition: all .4s ease-in-out; float: left; margin-left: 0; font-family: 'montserrat'; font-style: normal;}
.burger-nav-anim {top: -5px; color: #fff;}
.burger-nav-anim b:first-of-type {-webkit-transform: rotate(45deg); transform: rotate(45deg);}
.burger-nav-anim b:nth-of-type(2) {opacity: 0;}
.burger-nav-anim b:last-of-type {-webkit-transform: rotate(-45deg); transform: rotate(-45deg); margin-left: -78%;}

.burger-navi {position: fixed; right: -8px; top: -10px; color: #fff; z-index: 9999; -webkit-transform: rotate(-90deg); transform: rotate(-90deg); font-size: 40px; cursor: pointer; transition: all .4s ease-in-out; background-color: #792A32; padding: 16px 21px 21px 19px;scale: 0.8;}
.burger-navi b {transition: all .4s ease-in-out; float: left; margin-left: 0; font-family: 'montserrat'; font-style: normal;}
.burger-navi-anim {top: -5px; color: #fff;}
.burger-navi-anim b:first-of-type {-webkit-transform: rotate(45deg); transform: rotate(45deg);}
.burger-navi-anim b:nth-of-type(2) {opacity: 0;}
.burger-navi-anim b:last-of-type {-webkit-transform: rotate(-45deg); transform: rotate(-45deg); margin-left: -48%;}







.full-screen-nav {position: fixed; z-index: 9998; width: 100%; height: 100vh; background: #792A32; display: table; visibility: hidden;  opacity: 0;}
.full-screen-nav ul {text-align: center; display: table-cell; vertical-align: middle; width: 100%;}
.full-screen-nav ul li a {padding: 20px; display: block; font-size: 30px; color: #fff; text-decoration: none;}
.fadeIn {opacity: 1 !important; visibility: visible !important;}
.fadeUp {opacity: 1 !important; margin-top: 0 !important;}


/*-----------ASIDE-----------*/

aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 10px 5px 10px 15px;  width: 40px; z-index: 999; right: 0; transition: 0.5s;}
.phone {top: 520px;}
.mail {top: 590px;}
.maps {top: 660px;}
.instagram {top: 730px;}


/*-----------SUBNAV-----------*/

.subnav {position: fixed; bottom: 0; color: #fff; z-index: 999; transition: 0.5s; width: 100%; text-align: right;}
.subnav a { color: #fff; padding: 8px 15px; font-size: 13px; background-color: #792A32; margin-left: 20px; line-height: 23px;}
.subnav a:nth-of-type(2) {margin-right: 5%;}
.subnav a:hover {background-color: #fff; color: #792A32}


/*-----------HEADER-----------*/

header {background: url("../images/header.JPG") no-repeat; height: 100vh; width: 100%; background-size: cover; background-attachment: fixed; background-position: center; position: relative;}

#stoerer {position: absolute; left: 0%; bottom: 1vh; ; padding: 150px 100px 130px 50px; background-image: url("../images/stoerer.webp");  background-repeat: no-repeat; background-position: center;background-size: contain; max-width: 30%; }


/*-----------AUFBAU-----------*/

html {scroll-behavior: smooth;}




/*-----------BEREICH1 - ueberuns - ----------*/
/*--TITLE---*/

.ueberunstitle {
    text-align: center;
    padding: 30px 5%;
    position: relative; /* nötig für absolute Positionierung der Pseudo-Elemente */
  }
  
  .ueberunstitle::before,
  .ueberunstitle::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%); /* zentriert */
    width: 25%;                 /* nur 25% breit */
    border-top: 2px solid #792A32;
  }
  
  .ueberunstitle::before {
    top: 0; /* obere Linie */
  }
  
  .ueberunstitle::after {
    bottom: 0; /* untere Linie */
  }

  #ueberuns { 
    padding-top: 100px; 
    padding-bottom: 50px;
 }

  #ueberuns h2 {
    color: #792A32;
    align-items: center;
    margin-bottom: 0px;
  }
  
  #ueberuns h3 {
    font-weight: bold;
    color: darkred;
  }



/*--TEXT&IMAGE---*/

.texte-image {
    display: flex;
    align-items: center;     
    justify-content: center;  
    gap: 20px;              
    padding: 90px 5%;
  }
  
  .texte-image .texte {
    flex: 1;                  
    color: #792A32;    
    line-height: 23px;
  }
  
  .texte-image .image {
    flex: 1;
    display: flex;
    justify-content: right;
  }
  
  .texte-image .image img {
    max-width: 80%;       
    height: auto;            
    border-radius: 12px; 
  }

/*--ueberunsbalken---*/

.ueberunsbalken {
  width: 100%;
  margin: 0;
  padding: clamp(16px, 3vw, 40px);
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr;
  gap: clamp(12px, 2vw, 24px);
  align-items: stretch;
  box-sizing: border-box;
  background-color: #792A32;
}

.ueberunsbalken__text {
  background: #792A32;
  color: #fff;
  padding: clamp(16px, 2.5vw, 28px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.ueberunsbalken__text ul {
  background: #792A32;
  color: #fff;
  padding: clamp(16px, 2.5vw, 28px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
}

.ueberunsbalken__text p {
  margin: 0 0 16px;
  color: #fff;
}

.ueberunsbalken__img {
  margin: 0;
  border-radius: 15px;
  overflow: hidden;       /* sorgt dafür, dass die Rundung wirkt */
  border-radius: 15px;
  background-color: #fff; /* Rahmenfarbe sichtbar bei contain */
}

.ueberunsbalken__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 15px;
}

/*-----------BEREICH2 - Hochzeitskutschen - ----------*/
/*--TITLE---*/

.hochzeitskutschentitle {
  text-align: center;
  padding: 30px 5%;
  position: relative; 
}

.hochzeitskutschentitle::before,
.hochzeitskutschentitle::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%); 
  width: 25%;                 
  border-top: 2px solid #792A32;
}

.hochzeitskutschentitle::before {
  top: 0; /* obere Linie */
}

.hochzeitskutschentitle::after {
  bottom: 0; /* untere Linie */
}

#hochzeitskutschen { 
  padding-top: 100px; 
  padding-bottom: 50px;
}

#hochzeitskutschen h2 {
  color: #792A32;
  align-items: center;
  margin-bottom: 0px;
}

#hochzeitskutschen h3 {
  font-weight: bold;
  color: darkred;
}

/*--TEXT&IMAGE---*/

.texte-image {
  display: flex;
  align-items: center;     
  justify-content: center;  
  gap: 20px;              
  padding: 90px 5%;
}

.texte-image .text {
  flex: 1;                  
  color: #792A32;    
  line-height: 23px;
}

.texte-image .image {
  flex: 1;
  display: flex;
  justify-content: right;
}

.texte-image .image img {
  max-width: 80%;       
  height: auto;            
  border-radius: 12px; 
}

/*--SLIDER---*/


/* Slider Container */
.hochzeitskutschenslide {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  background: #792A32; padding-bottom: 20px;
}

/* Track */
.hochzeitskutschenslide-track {
  display: flex;
  transition: transform 0.5s ease;
}

/* Slide: 100% des Containers */
.hochzeitskutschenslide-slide {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  padding: 30px 80px 20px 80px;
  min-width: 100%; /* damit jede Slide die volle Containerbreite nimmt */
  box-sizing: border-box;
}

.hochzeitskutschenslide-slide img {
  width: 100%;
  height: 90%;
  object-fit: cover;
  display: block;
  border-radius: 15px;
}



/* Slide Positionen */
#hk1:checked ~ .hochzeitskutschenslide .hochzeitskutschenslide-track { transform: translateX(0%); }
#hk2:checked ~ .hochzeitskutschenslide .hochzeitskutschenslide-track { transform: translateX(-100%); }
#hk3:checked ~ .hochzeitskutschenslide .hochzeitskutschenslide-track { transform: translateX(-200%); }

/* Pfeile */
/* Pfeile: Standard ausgeblendet */
.hochzeitskutschenslide label.prev,
.hochzeitskutschenslide label.next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-size: 30px;
  cursor: pointer;
  user-select: none;
  z-index: 2;
  color: #fff;
  display: none;   /* <-- geändert: unsichtbar */
}

/* Positionierung */
.hochzeitskutschenslide label.prev { left: 10px; }
.hochzeitskutschenslide label.next { right: 10px; }

/* Nur die richtigen Pfeile beim aktiven Slide sichtbar machen */
#hk1:checked ~ .hochzeitskutschenslide label.prev[for="hk3"],
#hk1:checked ~ .hochzeitskutschenslide label.next[for="hk2"],
#hk2:checked ~ .hochzeitskutschenslide label.prev[for="hk1"],
#hk2:checked ~ .hochzeitskutschenslide label.next[for="hk3"],
#hk3:checked ~ .hochzeitskutschenslide label.prev[for="hk2"],
#hk3:checked ~ .hochzeitskutschenslide label.next[for="hk1"] {
  display: flex;  /* sichtbar */
  opacity: 1;     /* voll sichtbar */
}



/* Punkte unten */
.hochzeitskutschenslide-dots {
  position: absolute;
  bottom: 12px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 10px;
  padding-bottom: 10px;
}
.hochzeitskutschenslide-dots label {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer;
  transition: transform 0.2s, background 0.2s;
}
#hk1:checked ~ .hochzeitskutschenslide .hochzeitskutschenslide-dots label[for="hk1"],
#hk2:checked ~ .hochzeitskutschenslide .hochzeitskutschenslide-dots label[for="hk2"],
#hk3:checked ~ .hochzeitskutschenslide .hochzeitskutschenslide-dots label[for="hk3"] {
  background: #333;
  transform: scale(1.1);
}




/*-----------BEREICH3 - Planwagenfahrten - ----------*/
/*--TITLE---*/

.planwagentitle {
  text-align: center;
  padding: 30px 5%;
  position: relative; 
}

.planwagentitle::before,
.planwagentitle::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%); 
  width: 25%;                 
  border-top: 2px solid #792A32;
}

.planwagentitle::before {
  top: 0; /* obere Linie */
}

.planwagentitle::after {
  bottom: 0; /* untere Linie */
}

#planwagen { 
  padding-top: 100px; 
  padding-bottom: 50px;
}

#planwagen h2 {
  color: #792A32;
  align-items: center;
  margin-bottom: 0px;
}

#planwagen h3 {
  font-weight: bold;
  color: darkred;
}

/*--TEXT&IMAGE---*/

.texte-image {
  display: flex;
  align-items: center;     
  justify-content: center;  
  gap: 20px;              
  padding: 90px 5%;
}

.texte-image .text {
  flex: 1;                  
  color: #792A32;    
  line-height: 23px;
}

.texte-image .image {
  flex: 1;
  display: flex;
  justify-content: right;
}

.texte-image .image img {
  max-width: 80%;       
  height: auto;            
  border-radius: 12px; 
}

/*--SLIDER---*/


/* Slider Container */
.planwagenslide {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  background: #792A32; padding-bottom: 20px;
}

/* Track */
.planwagenslide-track {
  display: flex;
  transition: transform 0.5s ease;
}

/* Slide: 100% des Containers */
.planwagenslide-slide {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  padding: 30px 80px 20px 80px;
  min-width: 100%; /* damit jede Slide die volle Containerbreite nimmt */
  box-sizing: border-box;
}

.planwagenslide-slide img {
  width: 100%;
  height: 90%;
  object-fit: cover;
  display: block;
  border-radius: 15px;
}


/* Slide Positionen */
#hka1:checked ~ .planwagenslide .planwagenslide-track { transform: translateX(0%); }
#hka2:checked ~ .planwagenslide .planwagenslide-track { transform: translateX(-100%); }
#hka3:checked ~ .planwagenslide .planwagenslide-track { transform: translateX(-200%); }

/* Pfeile */
/* Pfeile: Standard ausgeblendet */
.planwagenslide label.prev,
.planwagenslide label.next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-size: 30px;
  cursor: pointer;
  user-select: none;
  z-index: 2;
  color: #fff;
  display: none;   /* <-- geändert: unsichtbar */
}

/* Positionierung */
.planwagenslide label.prev { left: 10px; }
.planwagenslide label.next { right: 10px; }

/* Nur die richtigen Pfeile beim aktiven Slide sichtbar machen */
#hka1:checked ~ .planwagenslide label.prev[for="hka3"],
#hka1:checked ~ .planwagenslide label.next[for="hka2"],
#hka2:checked ~ .planwagenslide label.prev[for="hka1"],
#hka2:checked ~ .planwagenslide label.next[for="hka3"],
#hka3:checked ~ .planwagenslide label.prev[for="hka2"],
#hka3:checked ~ .planwagenslide label.next[for="hka1"] {
  display: flex;  /* sichtbar */
  opacity: 1;     /* voll sichtbar */
}



/* Punkte unten */
.planwagenslide-dots {
  position: absolute;
  bottom: 12px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 10px;
  padding-bottom: 10px;
}
.planwagenslide-dots label {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer;
  transition: transform 0.2s, background 0.2s;
}
#hka1:checked ~ .planwagenslide .planwagenslide-dots label[for="hka1"],
#hka2:checked ~ .planwagenslide .planwagenslide-dots label[for="hka2"],
#hka3:checked ~ .planwagenslide .planwagenslide-dots label[for="hka3"] {
  background: #333;
  transform: scale(1.1);
}





/*-----------BEREICH4 - kulinarische fahrten - ----------*/
/*--TITLE---*/

.kulinarischefahrtentitle {
  text-align: center;
  padding: 30px 5%;
  position: relative; 
}

.kulinarischefahrtentitle::before,
.kulinarischefahrtentitle::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%); 
  width: 25%;                 
  border-top: 2px solid #792A32;
}

.kulinarischefahrtentitle::before {
  top: 0; /* obere Linie */
}

.kulinarischefahrtentitle::after {
  bottom: 0; /* untere Linie */
}

#kulinarischefahrten { 
  padding-top: 100px; 
  padding-bottom: 50px;
}

#kulinarischefahrten h2 {
  color: #792A32;
  align-items: center;
  margin-bottom: 0px;
}

#kulinarischefahrten h3 {
  font-weight: bold;
  color: darkred;
}




/*--dreier Spallte ---*/

.row {
  display: flex;              
  gap: 20px;                 
  padding: 60px 5%;          
  box-sizing: border-box; 

}

.column {
  flex: 1;                    
  color: #fff;
  padding: 20px; 
  line-height: 23px; 

}

.column h4 {
  background: #792A32;
  color: #fff; 
  padding: 15px; 
                              

}

.column p {
  background: #792A32;
  color: #fff; 
  padding: 20px;                    
  border-radius: 0px 0px 15px 15px;              

}
/*--dreier Spallte slider A ---*/

.kulinarische-slide {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.kulinarische-slide-track {
  display: flex;
  transition: transform 0.5s ease;
}

.kulinarische-slide-item {
  min-width: 100%;
  box-sizing: border-box;
}

.kulinarische-slide-item img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  display: block;
  border-radius: 15px 15px 0px 0px;
}

input[name="kf"] { display: none; }

/* Slide Positionen */
#kf1:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(0%); }
#kf2:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-100%); }
#kf3:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-200%); }
#kf4:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-300%); }
#kf5:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-400%); }
#kf6:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-500%); }
#kf7:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-600%); }
#kf8:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-700%); }
#kf9:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-800%); }
#kf10:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-900%); }
#kf11:checked ~ .kulinarische-slide .kulinarische-slide-track { transform: translateX(-1000%); }



.kulinarische-slide label.prev { left: 5px; }
.kulinarische-slide label.next { right: 5px; }

/* Punkte */
.kulinarische-slide-dots {
  position: absolute;
  bottom: 10px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 8px;
}

.kulinarische-slide-dots label {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer;
  transition: 0.2s;
}

#kf1:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf1"],
#kf2:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf2"],
#kf3:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf3"],
#kf4:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf4"],
#kf5:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf5"],
#kf6:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf6"],
#kf7:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf7"],
#kf8:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf8"],
#kf9:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf9"],
#kf10:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf10"],
#kf11:checked ~ .kulinarische-slide .kulinarische-slide-dots label[for="kf11"] {
  background: #792A32;
  transform: scale(1.2);
}

/*--dreier Spallte slider b ---*/

.kulinarische-slideb {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.kulinarische-slide-trackb {
  display: flex;
  transition: transform 0.5s ease;
}

.kulinarische-slide-itemb {
  min-width: 100%;
  box-sizing: border-box;
}

.kulinarische-slide-itemb img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  display: block;
  border-radius: 15px 15px 0px 0px;
}

input[name="kfb"] { display: none; }

/* Slide Positionen */
#kf1b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(0%); }
#kf2b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-100%); }
#kf3b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-200%); }
#kf4b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-300%); }
#kf5b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-400%); }
#kf6b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-500%); }
#kf7b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-600%); }
#kf8b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-700%); }
#kf9b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-800%); }
#kf10b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-900%); }
#kf11b:checked ~ .kulinarische-slideb .kulinarische-slide-trackb { transform: translateX(-1000%); }


.kulinarische-slideb label.prev { left: 5px; }
.kulinarische-slideb label.next { right: 5px; }

/* Punkte */
.kulinarische-slide-dotsb {
  position: absolute;
  bottom: 10px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 8px;
}

.kulinarische-slide-dotsb label {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer;
  transition: 0.2s;
}

#kf1b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf1b"],
#kf2b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf2b"],
#kf3b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf3b"],
#kf4b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf4b"],
#kf5b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf5b"],
#kf6b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf6b"],
#kf7b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf7b"],
#kf8b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf8b"],
#kf9b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf9b"],
#kf10b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf10b"],
#kf11b:checked ~ .kulinarische-slideb .kulinarische-slide-dotsb label[for="kf11b"] {
  background: #792A32;
  transform: scale(1.2);
}

/*--dreier Spallte slider c ---*/

.kulinarische-slidec {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.kulinarische-slide-trackc {
  display: flex;
  transition: transform 0.5s ease;
}

.kulinarische-slide-itemc {
  min-width: 100%;
  box-sizing: border-box;
}

.kulinarische-slide-itemc img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  display: block;
  border-radius: 15px 15px 0px 0px;
}

input[name="kfc"] { display: none; }

/* Slide Positionen */
#kf1c:checked ~ .kulinarische-slidec .kulinarische-slide-trackc { transform: translateX(0%); }
#kf2c:checked ~ .kulinarische-slidec .kulinarische-slide-trackc { transform: translateX(-100%); }
#kf3c:checked ~ .kulinarische-slidec .kulinarische-slide-trackc { transform: translateX(-200%); }
#kf4c:checked ~ .kulinarische-slidec .kulinarische-slide-trackc { transform: translateX(-300%); }
#kf5c:checked ~ .kulinarische-slidec .kulinarische-slide-trackc { transform: translateX(-400%); }



.kulinarische-slidec label.prev { left: 5px; }
.kulinarische-slidec label.next { right: 5px; }

/* Punkte */
.kulinarische-slide-dotsc {
  position: absolute;
  bottom: 10px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 8px;
}

.kulinarische-slide-dotsc label {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
  transition: 0.2s;
}

#kf1c:checked ~ .kulinarische-slidec .kulinarische-slide-dotsc label[for="kf1c"],
#kf2c:checked ~ .kulinarische-slidec .kulinarische-slide-dotsc label[for="kf2c"],
#kf3c:checked ~ .kulinarische-slidec .kulinarische-slide-dotsc label[for="kf3c"],
#kf4c:checked ~ .kulinarische-slidec .kulinarische-slide-dotsc label[for="kf4c"],
#kf5c:checked ~ .kulinarische-slidec .kulinarische-slide-dotsc label[for="kf5c"]
 {
  background: #792A32;
  transform: scale(1.2);
}


/*-----------BEREICH5 - Festumzüge - ----------*/
/*--TITLE---*/

.festumzügetitle {
  text-align: center;
  padding: 30px 5%;
  position: relative; 
}

.festumzügetitle::before,
.festumzügetitle::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%); 
  width: 25%;                 
  border-top: 2px solid #792A32;
}

.festumzügetitle::before {
  top: 0; /* obere Linie */
}

.festumzügetitle::after {
  bottom: 0; /* untere Linie */
}

#festumzuege { 
  padding-top: 100px; 
  padding-bottom: 50px;
}

#festumzuege h2 {
  color: #792A32;
  align-items: center;
  margin-bottom: 0px;
}

#festumzuege h3 {
  font-weight: bold;
  color: darkred;
}

/*--TEXT&IMAGE---*/

.texte-image {
  display: flex;
  align-items: center;     
  justify-content: center;  
  gap: 20px;              
  padding: 90px 5%;
}

.texte-image .text {
  flex: 1;                  
  color: #792A32;    
  line-height: 23px;
}

.texte-image .image {
  flex: 1;
  display: flex;
  justify-content: right;
}

.texte-image .image img {
  max-width: 80%;       
  height: auto;            
  border-radius: 12px; 
}

/*--SLIDER---*/


/* Slider Container */
.festumzügeslide {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  background: #792A32; padding-bottom: 20px;
}

/* Track */
.festumzügeslide-track {
  display: flex;
  transition: transform 0.5s ease;
}

/* Slide: 100% des Containers */
.festumzügeslide-slide {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  padding: 30px 80px 20px 80px;
  min-width: 100%; /* damit jede Slide die volle Containerbreite nimmt */
  box-sizing: border-box;
}

.festumzügeslide-slide img {
  width: 100%;
  height: 90%;
  object-fit: cover;
  display: block;
  border-radius: 15px;
}

/* Radio Buttons verstecken */
input[name="hk"] { display: none; }

/* Slide Positionen */
#hke1:checked ~ .festumzügeslide .festumzügeslide-track { transform: translateX(0%); }
#hke2:checked ~ .festumzügeslide .festumzügeslide-track { transform: translateX(-100%); }
#hke3:checked ~ .festumzügeslide .festumzügeslide-track { transform: translateX(-200%); }

/* Pfeile */
.festumzügeslide label.prev,
.festumzügeslide label.next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  cursor: pointer;
  user-select: none;
  z-index: 2;
  color: #fff;
}
.festumzügeslide label.prev { left: 10px; }
.festumzügeslide label.next { right: 10px; }

/* Zeige nur den passenden Pfeil pro Slide */
#hke1:checked ~ .festumzügeslide label.prev[for="hke3"],
#hke2:checked ~ .festumzügeslide label.prev[for="hke1"],
#hke3:checked ~ .festumzügeslide label.prev[for="hke2"],
#hke1:checked ~ .festumzügeslide label.next[for="hke2"],
#hke2:checked ~ .festumzügeslide label.next[for="hke3"],
#hke3:checked ~ .festumzügeslide label.next[for="hke1"] {
  display: flex;
}

.festumzügeslide label.prev,
.festumzügeslide label.next { display: none; }

/* Punkte unten */
.festumzügeslide-dots {
  position: absolute;
  bottom: 12px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 10px;
  padding-bottom: 10px;
}
.festumzügeslide-dots label {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer;
  transition: transform 0.2s, background 0.2s;
}
#hke1:checked ~ .festumzügeslide .festumzügeslide-dots label[for="hke1"],
#hke2:checked ~ .festumzügeslide .festumzügeslide-dots label[for="hke2"],
#hke3:checked ~ .festumzügeslide .festumzügeslide-dots label[for="hke3"] {
  background: #333;
  transform: scale(1.1);
}





/*-----------BEREICH6 - Trauerfahrten - ----------*/
/*--TITLE---*/

.trauerfahrtentitle {
  text-align: center;
  padding: 30px 5%;
  position: relative; 
}

.trauerfahrtentitle::before,
.trauerfahrtentitle::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%); 
  width: 25%;                 
  border-top: 2px solid #792A32;
}

.trauerfahrtentitle::before {
  top: 0; /* obere Linie */
}

.trauerfahrtentitle::after {
  bottom: 0; /* untere Linie */
}

#trauerfahrten { 
  padding-top: 100px; 
  padding-bottom: 50px;
}

#trauerfahrten h2 {
  color: #792A32;
  align-items: center;
  margin-bottom: 0px;
}

#trauerfahrten h3 {
  font-weight: bold;
  color: darkred;
}

/*--TEXT&IMAGE---*/

.texte-image-t {
  display: flex;
  align-items: center;     
  justify-content: center;  
  gap: 20px;              
}

.texte-image-t  .texte-t {
  flex: 1;                  
  color: #792A32;    
  line-height: 23px;
}

.texte-t p {   
  padding: 5% 5px 5% 80px;
}

.texte-image-t .image-t {
  flex: 1;
  display: flex;
  justify-content: right;
  padding: 90px 5%;
}

.texte-image-t .image-t img {
  max-width: 80%;       
  height: auto;            
  border-radius: 12px; 
}

.trauerbalken { 
  background-image: url("../images/trauerbalken-background.png");
  background-size: contain;
  background-repeat: no-repeat; 

}

.trauerbalken p { 
  color: #fff;
  margin-top: 15px; 
  padding-right: 50px;

}

.trauerbalken a { 
  color: #fff;
  text-decoration: underline; 
}


/*-- slider Trauerfahrten ---*/

.trauer-slidec {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.trauer-slide-trackc {
  display: flex;
  transition: transform 0.5s ease;
}

.trauer-slide-itemc {
  min-width: 100%;
  box-sizing: border-box;
}

.trauer-slide-itemc img {
  width: 80%;
  height: 400px;
  object-fit: cover;
  display: block;
  border-radius: 15px 15px 15px 15px;
}

input[name="KA"] { display: none; }

/* Slide Positionen */
#KA1:checked ~ .trauer-slidec .trauer-slide-trackc { transform: translateX(0%); }
#KA2:checked ~ .trauer-slidec .trauer-slide-trackc { transform: translateX(-100%); }
#KA3:checked ~ .trauer-slidec .trauer-slide-trackc { transform: translateX(-200%); }




.trauer-slidec label.prev { left: 5px; }
.trauer-slidec label.next { right: 5px; }

/* Punkte */
.trauer-slide-dotsc {
  position: absolute;
  bottom: 10px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 9px;
  padding-right: 11%;
}

.trauer-slide-dotsc label {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
  transition: 0.2s;
}

#KA1:checked ~ .trauer-slidec .trauer-slide-dotsc label[for="KA1"],
#KA2:checked ~ .trauer-slidec .trauer-slide-dotsc label[for="KA2"],
#KA3:checked ~ .trauer-slidec .trauer-slide-dotsc label[for="KA3"]
 {
  background: #792A32;
  transform: scale(1.2);
}


.texte-image-t {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 270px;
  padding-top: 100px
}

.texte-t { 
  flex: 1; 
}

.trauer-slidec {
  flex: 1;
  display: flex;
  justify-content: right;
}




/*-----------Galerie-----------*/


/*--TITLE---*/

.galerietitle {
  text-align: center;
  padding: 30px 5%;
  position: relative; 
}

.galerietitle::before,
.galerietitle::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%); 
  width: 25%;                 
  border-top: 2px solid #792A32;
}

.galerietitle::before {
  top: 0; /* obere Linie */
}

.galerietitle::after {
  bottom: 0; /* untere Linie */
}

#galerie { 
  padding-top: 100px; 
  padding-bottom: 50px;
}

#galerie h2 {
  color: #792A32;
  align-items: center;
  margin-bottom: 0px;
}

#galerie h3 {
  font-weight: bold;
  color: darkred;
}
 



.galerie1 {
  display: flex;
  gap: 20px;   
  margin-top: 100px;            
  margin-left: 100px;     
  margin-right: 50px;     
  background-color: #792A32; 
  padding: 10px;       
  border-radius: 8px;      
}

.galerie1-item {
  flex: 1 1 25%;             
  display: flex;
  justify-content: center;
  align-items: center;
}

.galerie1-item img {
  width: 100%;               
  height: 200px;
  object-fit: cover;        
  display: block;
  border-radius: 15px;
}

.galerie2 {
  display: flex;
  gap: 20px;   
  margin-top: 100px;            
  margin-left: 50px;     
  margin-right: 100px;     
  background-color: #792A32; 
  padding: 10px;       
  border-radius: 8px;      
}

.galerie2-item {
  flex: 1 1 25%;            
  display: flex;
  justify-content: center;
  align-items: center;
}

.galerie2-item img {
  width: 100%;              
  height: 200px;
  object-fit: cover;        
  display: block;
  border-radius: 15px;
}
/*-----------FOOTER-----------*/

.footer {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  background-color: #792A32;
  color: #fff;            
}

.footer-left,
.footer-right {
  flex: 1;
}

.footer-right h2, 
.footer-right h3 {
  margin-bottom: 15px;
  font-weight: 600;
  color: #fff;
}

.footer a,
.footer a:visited {
  color: #fff;             
}


.footer p { 
  color: #fff; 
}

.footer-right {
  padding: 100px 50px;     

}

.footer-right { 
  background-image: url("../images/Logo_transparent_weiss.png");
  background-size: contain;    
  background-repeat: no-repeat;
  background-position: right; 
  min-height: 200px;          
}

.kontakt-button { 
  background-color: #fff;
  border-radius: 10px;
  padding: 10px 20px;
  color: #792A32;
  width: 20%;
  text-decoration: none;
}

.kontakt-button a { 
  color: #792A32;
}

/*-----------RESPONSIVE-----------*/

@media screen and (max-width: 1588px) { 
    header, .puffer1, .puffer2 {background-attachment: scroll;}
    h1 {font-size: 25px; line-height: 30px;}
    h1 b {font-size: 25px;}
    .logo {position: fixed;}

    .phone {top: 320px;}
    .mail {top: 370px;}
    .maps {top: 420px;}
    .instagram {top: 470px;}
    aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 5px 5px 5px 10px;  width: 30px; z-index: 999; right: 0; transition: 0.5s;}

    #stoerer {position: absolute; left: 0%; bottom: -10%; ; padding: 150px 100px 130px 50px; background-image: url("../images/stoerer.webp");  background-repeat: no-repeat; background-position: center;background-size: contain; }


    .kontakt-button a {
      font-size: 15px;
    }
}

@media screen and (max-width: 1450px) {
  nav {background: none; box-shadow: 0 0 0; border-bottom: none;}
  nav ul{display: none;}
  .navi {display: block;}
  #stoerer { max-width: 40%;}
}

@media screen and (max-width: 1200px) {
    header {background: url("../images/header.JPG") no-repeat; height: 90vh; width: 100%; background-size: cover; background-attachment: fixed; position: relative;}
    .kontakt-button a {font-size: 13px;}
    .kontakt-button { width: 30%;}
}

@media screen and (max-width: 1380px) {
 .trauerbalknen p {padding-top: 3%;}
}


@media screen and (max-width: 1050px) {
  #stoerer {position: absolute; left: 0%; bottom: -10%; ; padding: 150px 100px 130px 50px; max-width: 50%;}
}


@media screen and (max-width: 970px) {
   #stoerer {position: absolute; left: 0%; bottom: -10%; ; padding: 150px 100px 130px 50px; background-image: url("../images/stoerer.webp");  background-repeat: no-repeat; background-position: center;background-size: contain; }
   .kontakt-button a {font-size: 10px;}
}


@media screen and (max-width: 900px) {
    header {background: url("../images/header.JPG") no-repeat; height: 75vh; width: 100%; background-size: cover;  position: relative;}
    #stoerer {position: absolute; left: 0%; bottom: -15%; ; padding: 150px 100px 130px 50px; background-image: url("../images/stoerer.webp");  background-repeat: no-repeat; background-position: center;background-size: contain; }
    h1 {font-size: 15px; line-height: 30px;}
    h2 {font-size: 15px;}
    .logo {position: absolute; width: 150px;}
    nav {background: none; box-shadow: 0 0 0;}
    nav ul{display: none;}
    .navi {display: block;}

    /*-----------ueberuns-----------*/
    .texte-image { flex-direction: column;}
     .texte {order: 1; text-align: center; }
      .image img {order: 2; justify-content: center;}
      .texte-image .image { justify-content: center;}

      .ueberunsbalken {
        display: flex;
        flex-direction: column; 
        align-items: center;
      }
    
      .ueberunsbalken__text {
        order: 1;
        width: 100%;
        text-align: center; 
        margin-bottom: 20px;
      }
    
      .ueberunsbalken__img {
        order: 2;
        width: 100%;
        max-width: 500px; 
        margin-bottom: 15px;
      }
    
      .ueberunsbalken__img img {
        width: 100%;
        height: auto;
        display: block;
      }


          /*-----------slide hochzeit-----------*/
          .hochzeitskutschenslide-slide {
            display: flex;
            flex-wrap: wrap;         
            justify-content: center;  
            gap: 15px;              
          }
        
          .hochzeitskutschenslide-slide img {
            width: calc(50% - 15px); 
            max-width: 300px;    
            height: auto;
            margin-bottom: 15px;  
          }

          /*-----------slide planwagen-----------*/
          .planwagenslide-slide {display: flex;flex-wrap: wrap;    justify-content: center;  gap: 15px;  }
          .planwagenslide-slide img { width: calc(50% - 15px); max-width: 300px;  height: auto; margin-bottom: 15px;  }

          /*-----------slide kulinarische-----------*/
          .column { padding: 0;}
          .row {display: flex; flex-direction: column; gap: 30px; padding: 60px 10%;}
          .row .column {width: 100%;}
          .column h4 , .column p { text-align: center; }
          .kulinarische-slide-item img {  height: 500px;}
          .kulinarische-slide-itemb img {  height: 500px;}
          .kulinarische-slide-itemc img {  height: 500px;}

          /*-----------slide festumzüge-----------*/
          .festumzügeslide-slide {display: flex;flex-wrap: wrap;    justify-content: center;  gap: 15px;  }
          .festumzügeslide-slide img { width: calc(50% - 15px); max-width: 300px;  height: auto; margin-bottom: 15px;  }

          /*-----------slide trauerfahrten-----------*/
          .texte-image-t {
            display: flex;
            flex-direction: column;
            align-items: center; 
            gap: 10px;
          }
          
          .trauer-slidec {
            order: 1;
            display: flex;
            flex-direction: column;
            align-items: center;
            width: 100%;
            margin-bottom: 20px;
          }
          
          .trauer-slidec img {
            width: 90%;      
            max-width: 400px; 
            max-height: 300px; /* einheitliche maximale Höhe */
            object-fit: cover;  /* füllt den Bildbereich, ohne Verzerrung */
            display: block;
            margin: 0 auto 15px; 
          }
          
          .trauer-slide-dotsc {
            display: flex;
            justify-content: center;
            gap: 10px;         
            margin-top: 270px;   /* Punkte direkt unter Bildern im Flow */
            width: 100%;
            bottom: auto;        /* feste Position entfernen */
            padding-right: 0;
          }
          
          .texte-t {
            order: 2;     
            text-align: center;
            margin: 0 auto;
          }

          .texte-t p {
            padding: 5% 5% 5% 5%;
          }

          .trauerbalken p { 
            text-align: left;
          }

          .trauerbalken {
            width: 80%;
          }

       /*----------galerie-----------*/
  /* erlaubt Zeilenumbruch innerhalb des Flex-Containers */
  .galerie1,
  .galerie2 {
    flex-wrap: wrap;
  }

  /* jeweils genau zwei Items pro Reihe; calc berücksichtigt den gap */
  .galerie1-item,
  .galerie2-item {
    flex: 0 0 calc(50% - 10px);
    max-width: calc(50% - 10px);
    box-sizing: border-box;
  }
}

@media screen and (max-width: 800px) {
    #stoerer {position: absolute; left: 0%; bottom: -15%; ; padding: 150px 100px 130px 50px;  }
    h1 {font-size: 15px; line-height: 20px;}
    h2 {font-size: 14px;}
    h4 { font-size: 14px}

    #festumzüge, #ueberuns{
      padding-top: 0px;
      padding-bottom: 50px;
    }
    

    .footer {
      display: flex;
      flex-direction: column; 
    }
    
    .footer-right {
      margin-bottom: 20px; 
      padding-top: 20px;
      padding-bottom: 20px;   
     }
    
    .footer-left {
      max-width: 100%;
      max-height: 200px;
    }

    .footer-left, .footer-left iframe {
      max-height: 200px;
      overflow: hidden; 
    }

    .footer p {
      padding-left: 0px;
    }

    .kontakt-button {
      width: 13%;
    }
}


@media screen and (max-width: 700px) {
    #stoerer {position: absolute; left: 0%; bottom: -20%; ; padding: 160px 50px 130px 20px; }
    .logo {position: absolute; width: 120px;}

    main {text-align: center;}
    .content {display: block;}
    .col {width: 80%; margin-left: 10%;}
    .col:nth-of-type(2) {padding: 40px 0 0;}  
    
    .phone {top: 280px;}
    .mail {top: 320px;}
    .maps {top: 360px;}
    .instagram {top: 400px;}
    aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 5px 5px 5px 10px;  width: 25px; z-index: 999; right: 0; transition: 0.5s;}

 #ueberuns{ padding-top: 50px}
 .text-image { padding-top: 0px; }

 header {
  height: 55vh;
}
#stoerer {
  position: absolute;
  left: 0%;
  bottom: -25%;
  padding: 160px 50px 130px 20px;
}

}

@media screen and (max-width: 600px) {
    #stoerer {position: absolute; left: 0%; bottom: 25%; ; padding: 160px 50px 130px 20px; }

    #stoerer { max-width: 60%;}
    
    .phone {top: 240px;}
    .mail {top: 275px;}
    .maps {top: 310px;}
    .instagram {top: 345px;}
    aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 5px 5px 5px 10px;  width: 20px; z-index: 999; right: 0; transition: 0.5s;}

    
    .footer-right p { 
      padding:0px
    }

    .kontakt-button {
      width: 20%;              
      text-align: center;        
      margin: 20px 36%; 
    }

    .ueberunsbalken__img img {
      width: 100%;
      max-height: 250px;
      display: block;
    }

    .ueberunsbalken__img {
      order: 2;
      width: 100%;
      max-width: 410px;
      margin-bottom: 15px;
    }
    

    header {
      height: 50vh;
    }
    #stoerer {
      position: absolute;
      left: 0%;
      bottom: -32%;
      padding: 160px 50px 130px 20px;
    }

    .trauerbalken p {
      font-size: 15px;
      width: 80%;
      padding-top: 2%;
    }
}

@media screen and (max-width: 550px) {
    #stoerer {position: absolute; left: 0%; bottom: -30%; ; padding: 160px 50px 130px 20px; }
    .phone {top: 230px;}
    .mail {top: 265px;}
    .maps {top: 300px;}
    .instagram {top: 335px;}
    aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 5px 5px 5px 10px;  width: 20px; z-index: 999; right: 0; transition: 0.5s;}
    .logo {position: absolute; width: 100px;}

    header {
      height: 48vh;
    }
    #stoerer {
      position: absolute;
      left: 0%;
      bottom: -33%;
      padding: 160px 50px 130px 20px;
    }
}

@media screen and (max-width: 500px) {
    #stoerer {position: absolute; left: 0%; bottom: 32%; ; padding: 160px 50px 130px 20px; }
    #stoerer h2 { display: none;}
    #stoerer h1 { font-size: 13px;}
    .phone {top: 200px;}
    .mail {top: 235px;}
    .maps {top: 270px;}
    .instagram {top: 305px;}
    aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 5px 5px 5px 10px;  width: 15px; z-index: 999; right: 0; transition: 0.5s;}

    .burger-nav { font-size: 25px; cursor: pointer;; background-color: #792A32; padding: 10px 15px 15px 10px;}

    .hochzeitskutschenslide-slide, .planwagenslide-slide , .festumzügeslide-slide{
      display: flex;
      flex-direction: column; /* Bilder untereinander */
      align-items: center;
    }
  
    .hochzeitskutschenslide-slide img , .planwagenslide-slide img, .festumzügeslide-slide img {
      width: 90%;       /* Bilder volle Breite */
      max-width: 150px;  /* optional: Begrenzung */
      height: auto;
      margin-bottom: 15px;
    }

    .trauer-slidec img {
      width: 90%;
      max-width: 300px;
      max-height: 200px;
      object-fit: cover;
      display: block;
      margin: 0 auto 15px;
    }
    .trauer-slide-dotsc {
      display: flex;
      justify-content: center;
      gap: 10px;
      margin-top: 175px;
      width: 100%;
      bottom: auto;
      padding-right: 0;
    }



    .full-screen-nav ul li a {
      padding: 10px;
      font-size: 20px;
      color: #fff;
      text-decoration: none;
    }

    header {
      height: 45vh;
    }
    #stoerer {
      position: absolute;
      left: 0%;
      bottom: -31%;
      padding: 160px 50px 150px 20px;
    }


    .kulinarische-slide-item img {  height: 300px;}
    .kulinarische-slide-itemb img {  height: 300px;}
    .kulinarische-slide-itemc img {  height: 300px;}



}

@media screen and (max-width: 450px) {
    #stoerer {position: absolute; left: 0%; bottom: -34%; ; padding: 160px 50px 130px 20px; }
    .phone {top: 190px;}
    .mail {top: 220px;}
    .maps {top: 250px;}
    .instagram {top: 280px;}
    aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 5px 5px 5px 10px;  width: 15px; z-index: 999; right: 0; transition: 0.5s;}
    .logo {position: absolute; width: 75px;}

    .galerie1, .galerie2 {
      margin-top: 20px;
    }

    .galerie1 {
      display: flex;
      gap: 5px;
      margin-top: 20px;
      margin-left: 20px;
      margin-right: 20px;
      background-color: #792A32;
      padding: 5px;
      border-radius: 8px;
    }

    .galerie2 {
      display: flex;
      gap: 2px;
      margin-top: 20px;
      margin-left: 20px;
      margin-right: 20px;
      background-color: #792A32;
      padding: 5px;
      border-radius: 8px;
    }

    .galerie1 img , .galerie2 img { 
       border-radius: 8px;
    }

    .kontakt-button a {
      font-size: 8px;
    }

    header {
      height: 42vh;
    }
    #stoerer {
      position: absolute;
      left: 0%;
      bottom: -31%;
      padding: 160px 50px 150px 20px;
    }

    .burger-navi-anim b:last-of-type {-webkit-transform: rotate(-45deg); transform: rotate(-45deg); margin-left: -78%;}


}

@media screen and (max-width: 425px) {
    #stoerer {position: absolute; left: 0%; bottom: 37%; ; padding: 144px 50px 130px 20px; }
    .phone {top: 180px;}
    .mail {top: 210px;}
    .maps {top: 240px;}
    .instagram {top: 270px;}
    aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 5px 5px 5px 10px;  width: 15px; z-index: 999; right: 0; transition: 0.5s;}
    .logo {position: absolute; width: 75px;}
    .texte-t p {
      padding-top: 3%;
    }
    header {
      height: 40vh;
    }
    #stoerer {
      position: absolute;
      left: 0%;
      bottom: -31%;
      padding: 160px 50px 150px 20px;
    }
}

@media screen and (max-width: 400px) {
    #stoerer {position: absolute; left: 0%; bottom: -40% ; padding: 144px 50px 130px 20px; background-size: auto;}
    .phone {top: 165px;}
    .mail {top: 195px;}
    .maps {top: 225px;}
    .instagram {top: 255px;}
    aside img {position: fixed; background-image: url("../images/CTA-Aside.webp"); background-size: cover; padding: 5px 5px 5px 10px;  width: 15px; z-index: 999; right: 0; transition: 0.5s;}
    .logo {position: absolute; width: 75px;}


    header {
      height: 39vh;
    }
    #stoerer {
      position: absolute;
      left: 0%;
      bottom: -38%;
      padding: 144px 50px 135px 20px;
    }

    .trauerbalken p { 
      padding-top: 2%;
      line-height: 13px;
      width: 80%;
    }
}