/*
 Theme Name:   Divi Child
 Template:     Divi
*/
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;600&display=swap');

@font-face {
  font-family: El Messiri;
  src: url('/wp-content/themes/Divi-child/fonts/ElMessiri-Bold.ttf');
	font-weight: 600;
	font-display: swap !important;
}
@font-face {
  font-family: barlow400;
  src: url('/wp-content/themes/Divi-child/fonts/barlow400.ttf');
	font-weight: 400 !important;
	font-display: swap !important;
}

@font-face {
  font-family: barlow500;
  src: url('/wp-content/themes/Divi-child/fonts/barlow500.ttf');
	font-weight: 500 !important;
	font-display: swap !important;
}

@font-face {
  font-family: barlow600;
  src: url('/wp-content/themes/Divi-child/fonts/barlow600.ttf');
	font-weight: 600 !important;
	font-display: swap !important;
}

@font-face {
 	font-family: SuezOne;
 	src: url('/wp-content/themes/Divi-child/fonts/SuezOne-Regular.ttf');
	font-display: swap !important;
}

.et_pb_menu .et-menu > li {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

#menu-hauptmenue li.menu-item-2609 > a {
    position: relative !important;
    display: inline-block !important;
    vertical-align: middle !important;
    height: 31px !important; /* Your proven center fix */
    padding: 0 24px !important;
    line-height: 25px !important;
    background: #E3F0EB !important;
    border: 2px solid #E3F0EB !important;
    border-radius: 90px !important;
    box-sizing: border-box !important;
	padding-left: 17px !important;
	padding-right: 12px !important;
}

#menu-hauptmenue li.menu-item-2609 a,
#menu-hauptmenue li.menu-item-2609 a span {
    position: relative !important;
    top: -7.5px !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600;
    font-size: 20px;
    letter-spacing: 0.17em !important;
    text-transform: uppercase !important;
    color: #739D89 !important;
}

#menu-hauptmenue li.menu-item-2609:hover > a {
    background: #cfa379 !important;
	border-color: #cfa379 !important;
	color: #e3f0eb !important;
	opacity: 100%;
}

/* ABSCHIED light green when selected */
.et_pb_menu_1_tb_header #menu-bewohner > li.menu-item-2850.current-menu-item a {
    color: #739d89 !important;
}

@media(max-width: 980px) {
  /* #mobile_menu1 li.menu-item-2609.et_first_mobile_item, */
  #mobile_menu1 li.menu-item-2614.et_first_mobile_item {
    padding: 60px 20px 16px 20px !important;
  }
  
  /* #mobile_menu1 li.menu-item-2609.et_first_mobile_item a, */
  #mobile_menu1 li.menu-item-2614.et_first_mobile_item a {
    display: block !important;
    padding: 0 !important;
    position: static !important;
  }
}

#mobile_menu1,
#mobile_menu1 li,
#mobile_menu1 li * {
  pointer-events: auto !important;
}

/* ALLES position/top/transform LÖSCHEN für #mobile_menu1 li, li a + Textfarbe anpassen */
#mobile_menu1 li,
#mobile_menu1 li a {
  position: static !important;
  top: auto !important;
  transform: none !important;
  color: #e3f0eb !important;
}

/* GARDEN frei */
.kukus-garden-menu a {
    pointer-events: auto !important;
}

/* Pfeil ausblenden auf BEWOHNER und HELFEN */
.et_pb_menu li.mega-menu a:after {
    display: none !important;
    padding-right: 0 !important;
}

.et_pb_menu .et-menu > li.mega-menu {
	padding-right: 0 !important;
}

@media (min-width: 981px) {
  /* Desktop-only Kleber für quadratische HELFEN buttons */
  .et_pb_row.kukus-button-row{
    width: min(100%, 1200px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(24px, 4vw, 48px) !important;
    padding-right: clamp(24px, 4vw, 48px) !important;
    box-sizing: border-box !important;
  }

  .kukus-garden-menu-row .et_pb_column {
	margin-right: 0 !important;
  }
  .kukus-garden-menu .et_pb_text_inner {
	width: 218px !important;
	line-height: 30px !important;
  }
  .kukus-garden-bewohner {
    top: 50% !important;
    transform: translateY(-64%) !important;
  }
  .kukus-garden-menu {
    top: 50% !important;
    transform: translateY(-57%) !important;
  }
  .kukus-main-menu.et_pb_menu_0_tb_header {
    margin-left: unset !important;
  }
	
	/* Kill ALL gold bars */
	/* li.menu-item-2609 .sub-menu, */
	li.menu-item-2614 .sub-menu,
	.et_pb_menu .sub-menu {
	  background: transparent !important;
	  border: none !important;
	  box-shadow: none !important;
	}

  .kukus-garden-hide { display: none !important; }
}

@media (max-width: 980px) {
    /* HELFEN – 2 Spalten auf Mobile */
  /* Row wird Grid */
  .et_pb_row.kukus-button-row{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    justify-items: center !important;
  }

  /* Divi-Columns (kukus-button-col) "wegflachen", damit die MODULE Grid-Items werden */
  .et_pb_row.kukus-button-row .kukus-button-col,
  .et_pb_row.kukus-button-row > .et_pb_column{
    display: contents !important;
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Button-Größe: füllt Grid-Zelle, bleibt quadratisch */
  .et_pb_row.kukus-button-row .kukus-button-square{
    width: 100% !important;
    max-width: 210px !important;   /* ggf. 240px, wenn du es breiter willst */
    aspect-ratio: 1 / 1 !important;
    height: auto !important;

    min-width: 0 !important;
    min-height: 0 !important;
    padding: 10px !important;
    border-radius: 35px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }
  /* Mobile/Tablet: Grid nicht über volle Breite ziehen */
  .et_pb_row.kukus-button-row{
    width: min(100%, 600px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
  }

  /* MOBILE - FULL Dark Green #mobile_menu1 */
  #menu-hauptmenue li:nth-child(2),
  #menu-hauptmenue li:nth-child(2) *,
  #menu-hauptmenue li:nth-child(4),
  #menu-hauptmenue li:nth-child(4) * {
    pointer-events: auto !important;
  }
	
  /* FULL mobile menu dark green */
  #mobile_menu1,
  #mobile_menu1 > li {
    background: #739D89 !important;
  }

  /* Hide empty mobile-toggle (creates gap) */
  #mobile_menu1 .mobile-toggle {
    display: none !important;
  }

  /* Submenus dark green + collapsed */
  #mobile_menu1 .sub-menu {
    margin-left: 20px !important;
    display: none !important;
  }

  /* Typography */
  #mobile_menu1 a {
    font-size: 22px !important;
    letter-spacing: 0.17em !important;
    color: white !important;
    padding: 16px 24px !important;
  }
  
  /* #mobile_menu1 .menu-item-2609 > .sub-menu, */
  #mobile_menu1 .menu-item-2614 > .sub-menu {
    display: none !important; /* Initially versteckt */
  }

  /* #mobile_menu1 .menu-item-2609.open > .sub-menu, */
  #mobile_menu1 .menu-item-2614.open > .sub-menu {
    display: block !important; /* Toggle-Klasse */
  }
}

/* Kill ALL conflicting Divi styles globally */
.et-menu-nav .sub-menu li,
.et_pb_menu .sub-menu li {
  width: max-content !important;
  flex-basis: max-content !important;
  min-width: 0 !important;
}

/* Divi main menu styling */
#top-menu-nav a {
  font-family: 'Barlow', sans-serif !important;
  font-weight: 600 !important;
  font-size: 24px;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.et_pb_section.kukus-hero {
  min-height: 95vh !important;
  margin-top: -124px !important;
  padding: 0 !important;
  margin-bottom: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
}

.et_pb_section.kukus-hero .kukus-hero-row {
  flex: 1 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-start !important;
  padding: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 4vw 0 2vw !important;  /* Right 4vw breathing room, left 0.5vw Figma-tight like .header-hero-row */
  max-width: 95vw !important;
  margin: 0 auto !important;
}

.et_pb_section.kukus-hero .kukus-hero-title {
  margin: 0 0 8vh 4vw !important;
  padding: 0 !important;
  margin-left: 0 !important;  /* Reset */
  padding-left: 0 !important;
}

.et_pb_section.kukus-hero .hi-kukus-garden {
  margin: 0 0 0 4vw !important;
  padding: 0 !important;
  font-size: clamp(58px, 10.5vw, 116px) !important;
  line-height: clamp(65px, 11vw, 130px) !important;
  margin-left: 0 !important;  /* Zero + row padding = perfect tight left */
  padding-left: 0 !important;
}

/* LOCK hero at 540px "last good size" below breakpoint */
@media (max-height: 540px) {
  .et_pb_section.kukus-hero {
    height: 540px !important;  /* Fixed "last size" where text fits */
    min-height: 540px !important;
  }
  .et_pb_section.kukus-hero .kukus-hero-row {
    height: 540px !important;
  }
  .et_pb_section.kukus-hero .kukus-hero-title {
    margin-bottom: 40px !important;
  }
  /* Full font - bottom overflow only */
}

.header-hero {
  margin-top: -175px !important;
  margin-bottom: 0 !important;
  position: relative;
  background-size: cover !important;
  background-position: center top !important;
  --hero-height: 27vh !important;  /* Your measured height */
  position: relative !important;
  padding-bottom: var(--hero-height) !important;
}

.header-hero-title,
.header-hero-title h1,
.header-hero-title .et_pb_text_inner h1 {
  top: calc(var(--hero-height) * 0.8) !important;  /* 80% down hero */
  transform: translateY(10%) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: 90vw !important;
}

.header-hero-row {
  max-width: 90vw;
  margin: 0 auto;
  padding: 0 5vw 0 0;
  width: auto !important;
}

.header-hero-title {  /* HELfEN - pure text, more padding */
  z-index: 3;
  position: relative;
  background: none !important;  /* Transparent bg */
  margin-top: 35vh !important;
  text-align: left !important;        /* Left align */
}

/* Subtitle - NO green background/rounding */
.header-hero-col .et_pb_text {
  background: none !important;  /* Remove green rectangle */
  padding: 0 !important;
  margin: 0 auto 2vh;
  max-width: 85vw;
  line-height: 1.4;
  text-align: center;
}

/* DESKTOP - Override inline styles */
.header-hero-title h1,
.header-hero-title .et_pb_text_inner h1 {
  font-size: clamp(93px, 8vw, 116px) !important;
  line-height: clamp(104px, 9vw, 130px) !important;
  color: white !important;
  text-align: left !important;
  margin: 0 !important;
}

.et_pb_section.header-hero::before,
div.et_pb_section.et_pb_section_0::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100%);
    background: rgba(0, 0, 0, 0.23);
    z-index: 1;
    pointer-events: none;
}

.et_pb_section.header-hero > .et_pb_row,
div.et_pb_section.et_pb_section_0 > .et_pb_row {
    position: relative;
    z-index: 2;
}

/* All <981px - FORCE font decrease + lower position + shorter hero */
@media (max-width: 980px) {
  .header-hero {
    padding-bottom: 18vh !important;
  }
  
  .header-hero-title h1,
  .header-hero-title .et_pb_text_inner h1 {
    font-size: clamp(49px, 6vw, 72px) !important;
	line-height: clamp(55px, 7vw, 80.5px) !important;
    margin: 27vh 1vh 8vh !important;  /* LOWER - more top margin */
    text-align: left !important;
  }
}

/* SOLID COLOR HEADERS - Figma-spacing */
.header-color {
    padding-top: 5vh !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

@media (min-width: 981px) {
	.header-color-row {
	    padding-top: clamp(140px, 22vh, 200px) !important;  /* Responsive Figma */
	    padding-bottom: 0 !important;
	    padding-left: 0 !important;
	    padding-right: 0 !important;
	    margin: 0 !important;
	    width: 100% !important;
	    max-width: 100vw !important;
	    margin-right: 0 !important;
	}
}

.header-color-col {
    padding: 0 !important;
    width: 100% !important;
}

.header-color-title {
    margin: 0 0 clamp(12.5px, 5vh, 25px) !important;  /* Halbiert */
    padding-left: clamp(20px, 3vw, 40px) !important;
    padding-right: clamp(16px, 2.5vw, 24px) !important;
    padding-top: clamp(8px, 1vw, 16px) !important;
    padding-bottom: 0 !important;
    text-align: left !important;
}

.header-color-title h1 {
	font-size: clamp(93px, 8vw, 116px) !important;
	line-height: clamp(104px, 9vw, 130px) !important;
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

/* Subtitle-Abstand halbiert */
.header-color-title + .et_pb_row {
    margin-top: clamp(16px, 3vh, 32px) !important;  /* Halbiert */
}

body #page-container .et_pb_section .et_pb_contact_form_0.et_pb_contact_form_container.et_pb_module .et_pb_button {
    margin-top: 20px !important;
}

/* ========================================
   CONSOLIDATED MOBILE RULES - FIGMA SPACING
   ======================================== */

/* DESKTOP - FIXED WIDTHS NO FUSS */
@media (min-width: 981px) {
	#menu-bewohner li a {
		font-size: clamp(14px, 1.11vw, 22px) !important; /* Smooth scaling from 1024px to 1800px */
	}
    /* ROW FLEX */
    .kukus-garden-menu-row,
    .et_pb_row_0_tb_header {
        display: flex !important;
        flex-wrap: nowrap !important;
    }
    
    /* KUKUS GARDEN - FIXED + LEFT PADDING */
    .et_pb_column_0_tb_header,
    .kukus-garden-menu {
        width: 300px !important;
        min-width: 300px !important;
        flex-shrink: 0 !important;
        padding-left: 40px !important;
        padding-right: 0 !important;
    }
    
    /* MAIN MENU - FIXED MINIMUM 580px */
    .et_pb_column_1_tb_header,
    .kukus-main-menu {
        min-width: 580px !important;
        flex: 1 !important;  /* Takes remaining space */
        padding-right: 30px !important;
    }
}

/* TABLET (769px - 980px) */
@media (min-width: 769px) and (max-width: 980px) {
    .header-color-title { 
        padding-left: 5vw !important; 
        padding-right: 2.5vw !important; 
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
    }
}

/* ROW - RESPONSIVE BASE */
.gallery-grid {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: clamp(1100px, 90vw, 1500px) !important;
  margin: 0 clamp(10px, 2vw, 40px) !important;
  padding: 0 !important;
  gap: clamp(15px, 3vw, 25px) !important;
}

.gallery-grid .et_pb_column {
  padding: 0 !important;
  margin: 0 !important;
}

/* LEFT COLUMN - EXACT 660x660 */
.gallery-col-left {
  width: 660px !important;
  height: 660px !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

.gallery-col-left .et_pb_image_wrap {
  width: 660px !important;
  height: 660px !important;
  overflow: hidden !important;
}

.gallery-col-left img {
  width: 660px !important;
  height: 660px !important;
  object-fit: cover !important;
}

/* RIGHT COLUMN - CSS VARS */
.gallery-col-right {
  width: 680px !important;
  height: 660px !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
  --tile-size: 320px;
  --button-padding-bottom: 40px;
}

/* RIGHT GALLERY - 320x320 squares */
.gallery-col-right .et_pb_gallery_items {
  height: 660px !important;
}

.gallery-col-right .et_pb_gallery_item {
  width: 320px !important;
  height: 320px !important;
  margin: 0 20px 20px 0 !important;
  float: left !important;
}

.gallery-col-right .et_pb_gallery_item:nth-child(2n) {
  margin-right: 0 !important;
}

.gallery-col-right .et_pb_gallery_image,
.gallery-col-right .portrait {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.gallery-col-right img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* DESKTOP BUTTON - Bottom right of 4-tile grid */
.gallery-show-all {
  font-family: 'Barlow', sans-serif !important;
  font-weight: 400 !important;
  font-size: 18px;
  border-radius: 50px;
  letter-spacing: 0;
  line-height: 1.3 !important;
  border-width: 0;
  color: #739D89;
  background: #E3F0EB;
  background-color: #E3F0EB;
  position: absolute !important;
  bottom: var(--button-padding-bottom) !important;
  left: calc(50% + (var(--tile-size) / 2)) !important;
  transform: translateX(-50%) !important;
  z-index: 10 !important;
  white-space: nowrap !important;
}

.gallery-show-all:hover {
  font-size: 18px !important;
  border-width: 0;
  color: #E3F0EB !important;
  background: #739D89 !important;
  background-color: #739D89 !important;
}

body #page-container .et_pb_section .et_pb_button_3.gallery-show-all::before {
  opacity: 1 !important;
  position: relative !important; /* override absolute */
  z-index: 1;
  content: "";
  font-family: initial !important;
  font-weight: normal !important;
  background-image: url("data:image/svg+xml;utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Crect%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3Crect%20y%3D%227.19971%22%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3Crect%20y%3D%2214.3999%22%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3Crect%20x%3D%227.19922%22%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3Crect%20x%3D%227.19922%22%20y%3D%227.19971%22%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3Crect%20x%3D%227.19922%22%20y%3D%2214.3999%22%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3Crect%20x%3D%2214.4023%22%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3Crect%20x%3D%2214.4023%22%20y%3D%227.19971%22%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3Crect%20x%3D%2214.4023%22%20y%3D%2214.3999%22%20width%3D%225.60001%22%20height%3D%225.60001%22%20rx%3D%222.8%22%20fill%3D%22%23739D89%22/%3E%3C/svg%3E") !important;
  background-size: 20px 20px;
  background-repeat: no-repeat;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-left: 0;
  margin-right: 0.3em; /* space from text */
  vertical-align: -0.1em !important;
  position: relative !important;
}

body #page-container .et_pb_section .et_pb_button_3.gallery-show-all:hover::before {
  filter: brightness(1.8) sepia(1) saturate(0.3) hue-rotate(140deg) !important;
}

/* MOBILE @ 1390px */
@media (max-width: 1390px) {
  .house-gallery {
    padding: 0;
  }
  
  .house-gallery .gallery-grid {
    width: 100% !important;
    max-width: none !important;
  }
  
  .gallery-grid {
    flex-direction: column !important;
  }
  
  .gallery-col-left,
  .gallery-col-left img {
    width: 100% !important;  /* STEP 1 */
    aspect-ratio: 1 / 1 !important;  /* STEP 2 - AUTO HEIGHT */
	height: unset !important;
  }
  
  .gallery-col-left .et_pb_image_wrap {
    width: 100% !important;
    height: 100% !important;
  }
	
  .gallery-col-right {
    width: 100% !important;
    height: auto !important;
    margin-top: clamp(15px, 3vw, 25px) !important;
  }
  
  .gallery-col-right .et_pb_gallery_items {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: clamp(15px, 3vw, 25px) !important;
    height: auto !important;
  }
  
  .gallery-col-right .et_pb_gallery_item {
    aspect-ratio: 1/1 !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
  }
  
  .gallery-col-right .et_pb_gallery_item:nth-child(4) {
    display: none !important;
  }
	
  .gallery-left-image {
    position: relative !important;
  }
  
  .gallery-show-all {
    position: absolute !important;
    right: 3vw !important;
    bottom: 41vw !important;
    left: auto !important;
    transform: none !important;
    z-index: 10 !important;
  }
}

/* PERFECT VERTICAL ALIGNMENT + FIGMA SPACING */
@media (max-width: 980px) {
  
  .et_mobile_menu {
    border-color: #e3f0eb !important;
    border-width: 2px;
  }
  .et_pb_row_0_tb_header {
    border-bottom-width: 2px !important;
  }
    .header-color-title,
    .header-color-title .et_pb_text_inner h1 {
		font-size: clamp(49px, 6vw, 72px) !important;
	    line-height: clamp(55px, 7vw, 80.5px) !important;
        text-align: left !important;
			padding-bottom: 0 !important;
		margin-bottom: 0 !important;
    }
  /* 2: row and alignment */
  .header-hero .et_pb_row,
  .header-hero .header-hero-row {
    max-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    display: flex !important;
    align-items: flex-end !important;        /* title sits on lower edge */
    justify-content: flex-start !important;
    padding-left: clamp(20px, 3vw, 40px) !important;
    padding-right: clamp(16px, 2.5vw, 24px) !important;
    padding-bottom: 32px !important;
  }
	/* FULL VIEWPORT WIDTH → SCROLLABLE UNTER HAMBURGER */
	/* Mobile Menu: Flexibel hoch, volle Breite, kein Scroll */
	.et_pb_menu .et_mobile_menu,
	#mobile_menu1 {
		position: absolute !important;
		top: 54px !important;
		left: 50% !important;           /* ← Body-Mitte */
		transform: translateX(-50%) !important;
		width: 100vw !important;
		margin-left: -50vw !important;  /* ← Von Mitte nach links ausdehnen */
		height: auto !important;
		overflow: visible !important;
		padding: 20px !important;
		background: #739d89 !important;
		z-index: 999 !important;
	}

	/* Hamburger sauber */
	.mobile_menu_bar {
		position: relative !important;
		z-index: 1000 !important;
	}

	/* TEXT CENTER ALIGNED + PADDING */
	.et_mobile_menu li a,
    #mobile_menu1 li a {
		border-bottom: none !important;
        text-align: center !important;
        padding-right: 0px !important;
        padding-left: 0px !important;
        display: block !important;
		font-size: 20px !important;
        font-weight: 600 !important;
    }
    
	#mobile_menu1 a {
        font-size: 20px !important;
        font-weight: 600 !important;
    }
	
	#mobile_menu1 a:hover,
	#mobile_menu1 li a:hover {
	  font-weight: 400 !important;
      opacity: 1 !important;
    }
	
    /* CONTAINER NO LIMITS */
    .et_pb_menu_inner_container,
    .et_pb_menu__wrap {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }
    
    /* LIST ITEMS FULL WIDTH */
    .et_mobile_menu li {
        width: 100% !important;
        /* padding-right: 20px !important; */
    }
	
    /* HEADER ROW - EXACT HEIGHT CONTROL */
    .et_pb_section_0_tb_header .et_pb_row_0_tb_header,
    .kukus-garden-menu {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        height: 70px !important;
        padding: 0 !important;
        line-height: 1 !important;
    }
    
    /* KUKUS GARDEN - 2 LETTERS LEFT (38px) */
    .et_pb_section_0_tb_header .et_pb_column_0_tb_header,
    .kukus-garden-menu {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        height: 70px !important;
        padding-left: clamp(20px, 3vw, 40px) !important;  /* Figma 2 letters */
        padding-right: 0 !important;
        margin: 0 !important;
        flex: 1 !important;
    }
	
    .et_pb_section_0_tb_header .et_pb_text_0_tb_header {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* HAMBURGER - 1.5 LETTERS RIGHT (57px) */
    .et_pb_section_0_tb_header .et_pb_column_1_tb_header,
    .kukus-main-menu {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 70px !important;
        width: 0 !important;
        flex: 0 0 auto !important;
        padding-left: 0 !important;
        margin: 0 !important;
        position: relative !important;
        right: 0 !important;
        z-index: 1000 !important;
    }
    
    /* HAMBURGER BUTTON */
    .et_pb_section_0_tb_header .mobile_menu_bar {
        margin-right: 20px !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 40px !important;
        width: 40px !important;
    }
    
    .et_pb_section_0_tb_header .mobile_menu_bar .hamburger {
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
    }
	
	.gallery-show-all {
      bottom: 43vw !important;
	}
}

/* PHONE (≤768px) - Title + Sizing */
@media (max-width: 768px) {
	.footer-title .et_pb_text_inner p {
		font-size: 20px !important;
	}
    .header-color-title,
    .header-color-title .et_pb_text_inner h1 {
        font-size: 49px !important;
        line-height: 48px !important;
        text-align: left !important;
		padding-bottom: 14px !important;
	    margin-bottom: 0 !important;
    }
    
    .header-color-row,
    .header-color-col,
    .header-color {
	padding-bottom: 2vh !important;
        width: 100vw !important;
    }
    
    .header-color-row {
		padding-bottom: 0 !important;
	    margin-bottom: 0 !important;
	}
	
	.gallery-show-all {
      bottom: 45vw !important;
	}
}

/* EXTRA SMALL (≤480px) */
@media (max-width: 480px) {
	.footer-title .et_pb_text_inner p {
		font-size: 19px !important;
	}
	.et_pb_menu .et_mobile_menu,
	#mobile_menu1 {
		top: 51px !important;
	}
    .et_pb_section_0_tb_header .et_pb_row_0_tb_header {
        min-height: 50px !important;
        padding: 5px 0 !important;
    }
    
    .et_pb_section_0_tb_header .et_pb_column_0_tb_header {
        /* max-width: 65% !important; */
        padding-left: clamp(20px, 2.5vw, 30px) !important;
    }
    
    .et_pb_section_0_tb_header .et_pb_column_1_tb_header {
        padding-right: unset !important;
    }
	
    .gallery-show-all {
      bottom: 47vw !important;
	}
}

@media (max-width: 380px) {
	.footer-title .et_pb_text_inner p {
		font-size: 17px !important;
	}
	.header-color-title {
        	padding-left: clamp(20px, 2.5vw, 30px) !important;
        }
}

/* ULTRA NARROW <360px - HAMBURGER POSITION, SHOW ALL BUTTON */
@media (max-width: 360px) {
	.footer-title .et_pb_text_inner p {
	  font-size: 16px !important;
    }
	.gallery-show-all {
      bottom: 49vw !important;
	}
}

/* Hide Divi lightbox image titles */
.mfp-title {
  display: none !important;
}

/* ABSCHIED 1:1 Tiles - CONSOLIDATED */
.abschied-tiles-grid .abschied-tile {
    position: relative !important;
    width: 100% !important;
    height: 0 !important;
    padding-bottom: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
    margin: 0 !important;
}

/* Force ALL rows uniformly */
.abschied-tiles-grid .et_pb_row .abschied-tile {
    padding-bottom: 100% !important;
    height: 0 !important;
}

/* Kill ALL Divi row/column height interference */
.abschied-tiles-row,
.abschied-tiles-row .et_pb_column {
    height: auto !important;
    min-height: 0 !important;
}

.abschied-tiles-row {
    margin-bottom: 0 !important;
}

.abschied-tiles-column {
    padding-bottom: 2% !important;
}

/* BOTTOM-RIGHT TEXT */
.abschied-tiles-grid .abschied-tile .et_pb_text_inner {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding-right: 15% !important;
    margin: 0 !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    text-align: right !important;
    box-sizing: border-box !important;
}

.abschied-tiles-grid .abschied-tile .et_pb_text_inner > * {
    margin: 0 !important;
    padding: 30px 60px !important;
    background: rgba(0,0,0,0.6) !important;
    color: white !important;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.9) !important;
    font-weight: 600 !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    z-index: 4 !important;
}

/* Kill Divi equal columns interference */
.abschied-tiles-row.et_pb_equal_columns .et_pb_column {
    height: auto !important;
    min-height: 0 !important;
}

/* Narrow Desktop Fix (981px-1200px) */
@media (min-width: 981px) and (max-width: 1200px) {
    .abschied-tiles-row {
        max-width: 1200px !important;
        margin: 0 auto !important;
    }
}

@media (max-width: 980px) {
    .abschied-tiles-column {
        padding-bottom: 4% !important;
        margin-bottom: 0 !important;
        width: 100% !important; /* Full width single column */
    }
    
    .abschied-tiles-grid .abschied-tile .et_pb_text_inner {
		font-size: 36px;
        padding-bottom: 20px !important; /* Text lift */
        padding-right: 40px !important; /* Extra mobile right padding */
    }
}

/* Figma text style for animal Abschied table */
/* narrow icon column, text columns stay auto */
.animals-table td.animal-icon {
  width: 60px;              /* slightly bigger than icon, tweak if needed */
  padding: 8px 24px 8px 24px;
  vertical-align: middle;
  text-align: center;
}

.animals-table td {
  font-family: 'Barlow', sans-serif !important;
  font-weight: 600 !important;
  font-style: normal;
  line-height: 24px !important;
  letter-spacing: 0.17em;
  text-transform: uppercase;
  color: #3D534A;
  padding: 8px 0;
}

/* animal icons */
.animals-table td.animal-icon .icon-box {
  display: inline-block;
  width: 50px;
  height: 40px;
  margin-top: 4px;
  margin-bottom: -4px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

/* CAT */
.cat-icon .icon-box {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080'%3E%3Cpath fill='%23739D89' d='M571.83,591.22h-69.49c-18.18,0-34.78,9.95-43.35,25.98-8.56,16.02-7.61,35.36,2.49,50.47l34.74,52c9.14,13.67,24.42,21.84,40.86,21.84s31.72-8.16,40.86-21.84l34.74-51.99c10.1-15.11,11.05-34.45,2.49-50.47-8.57-16.03-25.18-25.98-43.35-25.98ZM576.89,643.75l-34.74,51.99c-1.57,2.36-3.84,2.71-5.06,2.71s-3.49-.35-5.06-2.7l-34.74-52h0c-1.67-2.5-1.09-4.78-.31-6.24.79-1.47,2.35-3.22,5.37-3.22h69.49c3.01,0,4.58,1.75,5.37,3.22.78,1.46,1.36,3.73-.31,6.24Z'/%3E%3Cpath fill='%23739D89' d='M889.81,717.04h-61.69c3.29-7.75,6.21-15.69,8.88-23.75h52.81c11.89,0,21.54-9.64,21.54-21.54s-9.64-21.54-21.54-21.54h-41.83c3.31-18.3,5.13-37.11,5.13-56.35,0-34.98-5.8-68.61-16.34-100.09,8.19-40.67,27.08-164.73-15.95-288.41-6.05-17.38-20.42-30.1-38.45-34.03-18.19-3.96-36.76,1.71-49.63,15.17-25.16,26.29-59.37,65.61-87.25,110.5-33.82-12.39-70.34-19.16-108.4-19.16s-77.61,7.41-112.61,20.81c-28.05-45.57-62.79-85.55-88.25-112.16-12.88-13.45-31.43-19.13-49.63-15.17-18.03,3.93-32.41,16.65-38.45,34.03-47.44,136.38-19.62,273.2-13.85,298.17-8.56,28.64-13.23,58.95-13.23,90.34,0,19.24,1.82,38.05,5.13,56.35h-36.01c-11.89,0-21.54,9.64-21.54,21.54s9.64,21.54,21.54,21.54h46.99c2.68,8.05,5.59,15.99,8.89,23.75h-55.87c-11.89,0-21.54,9.64-21.54,21.54s9.64,21.54,21.54,21.54h78.29c55.79,89.82,155.31,149.79,268.61,149.79s212.81-59.96,268.6-149.79h84.11c11.89,0,21.54-9.64,21.54-21.54s-9.64-21.54-21.54-21.54ZM763.86,216.29c3.5-3.65,7.72-3.21,9.35-2.86,1.95.42,5.44,1.78,6.94,6.09,25.8,74.15,26.93,150.01,22.66,203.61-29.26-45.38-69.77-82.83-117.62-108.32,25.33-39.72,55.91-74.75,78.67-98.52ZM288.82,219.52c1.5-4.31,4.99-5.67,6.93-6.09,1.65-.36,5.86-.8,9.36,2.86,23.16,24.2,54.41,60.03,80,100.61-48.7,26.83-89.61,66.09-118.39,113.52-4.96-53.79-4.95-133.12,22.1-210.9ZM558.63,865.9v-67.77c0-11.89-9.64-21.54-21.54-21.54s-21.54,9.64-21.54,21.54v67.77c-79.16-6.21-148.91-46.3-194.74-105.79h19.22c11.89,0,21.54-9.64,21.54-21.54s-9.64-21.54-21.54-21.54h-46.41c-3.92-7.71-7.47-15.63-10.66-23.75h57.07c11.89,0,21.54-9.64,21.54-21.54s-9.64-21.54-21.54-21.54h-70.02c-3.83-18.19-5.88-37.04-5.88-56.35,0-150.5,122.45-272.95,272.95-272.95,116.24,0,215.68,73.07,254.96,175.66-.02.07-.05.22-.06.24l.17.04c11.51,30.17,17.88,62.85,17.88,97.01,0,19.32-2.05,38.16-5.88,56.35h-64.2c-11.89,0-21.54,9.64-21.54,21.54s9.64,21.54,21.54,21.54h51.25c-3.18,8.11-6.74,16.03-10.66,23.75h-40.59c-11.89,0-21.54,9.64-21.54,21.54s9.64,21.54,21.54,21.54h13.4c-45.83,59.48-115.58,99.57-194.74,105.79Z'/%3E%3C/svg%3E");
}

/* TURTLE */
.turtle-icon .icon-box {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080'%3E%3Cpath fill='%23739D89' d='M824.53,747.43l-36.81-25.37c12.38-30.8,19.27-64.38,19.27-99.56s-6.89-68.75-19.27-99.55l36.81-25.37c32.33-22.28,40.51-66.71,18.23-99.04-10.79-15.66-27.04-26.18-45.75-29.63-18.71-3.44-37.63.61-53.29,11.4l-42.42,29.23c-29.65-22.62-64.15-39.16-101.64-47.85l3.85-24.06c.51-3.17,2.83-5.84,6.22-7.13,47.27-18.03,76.36-65.77,70.73-116.09-3.36-30.06-18.36-56.82-42.26-75.37-23.88-18.55-53.58-26.44-83.54-22.27-51.89,7.25-90.8,44.28-101.53,96.62-2.29,11.17-3.05,22.93-2.31,35.98,1.06,18.63,4.77,63.96,17.19,115.05-33.33,9.21-64.07,24.68-90.85,45.12l-42.42-29.23c-15.66-10.79-34.59-14.84-53.29-11.4-18.71,3.44-34.96,13.97-45.75,29.63-10.79,15.66-14.84,34.59-11.4,53.3,3.44,18.7,13.97,34.95,29.63,45.74l36.81,25.37c-12.38,30.8-19.27,64.38-19.27,99.55s6.89,68.76,19.27,99.56l-36.81,25.37c-15.66,10.79-26.18,27.04-29.63,45.74-3.44,18.71.6,37.63,11.4,53.3,10.79,15.66,27.04,26.18,45.75,29.63,4.35.8,8.71,1.19,13.03,1.19,14.29,0,28.24-4.31,40.26-12.59l42.42-29.23c32.35,24.68,70.47,42.15,111.94,50.04l20.51,58.59c4.41,12.6,16.14,20.89,29.41,20.89.35,0,.69,0,1.04-.02,13.69-.44,25.35-9.6,29.02-22.79l15.58-55.83c43.3-7.43,83.07-25.27,116.64-50.88l42.42,29.23c12.02,8.29,25.97,12.59,40.26,12.59,4.33,0,8.69-.39,13.03-1.19,18.71-3.44,34.96-13.97,45.75-29.63,22.28-32.33,14.09-76.76-18.23-99.04ZM561.14,847.09l-.34-90.4h23.05c20.26,0,39.14-10.9,49.28-28.45l12.04-20.86,78.49,44.92c-36.92,52.31-95.45,88.3-162.52,94.79ZM355.79,753.7l78-45.43,11.53,19.97c10.14,17.55,29.02,28.45,49.28,28.45h24.09l.35,90.53c-67.18-5.99-125.95-41.53-163.24-93.51ZM517.31,397.92l.35,90.4h-23.05c-20.26,0-39.14,10.9-49.28,28.45l-12.04,20.86-78.49-44.92c36.92-52.3,95.45-88.3,162.52-94.79ZM722.65,491.3l-78.01,45.44-11.53-19.97c-10.14-17.55-29.02-28.45-49.28-28.45h-24.08l-.35-90.53c67.18,5.99,125.95,41.53,163.24,93.51ZM494.6,714.58c-5.27,0-10.18-2.84-12.81-7.4l-44.62-77.28c-2.64-4.56-2.64-10.23,0-14.8l44.62-77.28c2.64-4.56,7.55-7.4,12.81-7.4h89.24c5.27,0,10.18,2.84,12.81,7.4l44.62,77.28c2.64,4.56,2.64,10.23,0,14.8l-44.62,77.28c-2.64,4.56-7.55,7.4-12.81,7.4h-89.24ZM677.74,594.05l-12.04-20.86,78.21-45.55c13.43,28.86,20.98,60.99,20.98,94.86s-7.29,64.83-20.26,93.28l-78.41-44.87,11.53-19.96c10.13-17.55,10.13-39.35,0-56.9ZM333.82,529.22l78.41,44.87-11.53,19.97c-10.13,17.55-10.13,39.35,0,56.9l12.04,20.86-78.21,45.55c-13.43-28.86-20.98-60.99-20.98-94.86s7.29-64.83,20.26-93.28ZM767.61,414.98c6.4-4.41,14.13-6.06,21.79-4.66,7.64,1.41,14.29,5.71,18.69,12.11,9.11,13.22,5.77,31.38-7.45,40.49l-31.84,21.94c-10.07-16.74-21.96-32.25-35.32-46.36l34.13-23.52ZM492.85,247c-.53-9.37-.04-17.58,1.51-25.14,7.15-34.9,31.87-58.6,66.11-63.38,18.63-2.6,37.07,2.31,51.89,13.82,14.83,11.52,24.15,28.14,26.24,46.8,3.49,31.25-14.55,60.88-43.89,72.07-17.36,6.62-29.92,21.88-32.79,39.82l-3.91,24.48c-6.22-.43-12.47-.73-18.79-.73-10.08,0-20.02.61-29.81,1.7-11.99-48.47-15.56-91.78-16.56-109.44ZM277.81,462.91c-6.4-4.41-10.7-11.06-12.11-18.7-1.41-7.65.25-15.38,4.66-21.78,4.41-6.4,11.06-10.7,18.7-12.11,7.67-1.4,15.39.25,21.79,4.66l34.13,23.52c-13.37,14.1-25.25,29.62-35.32,46.36l-31.84-21.94ZM310.84,830.03c-6.4,4.41-14.14,6.05-21.79,4.66-7.64-1.41-14.29-5.71-18.7-12.11-4.41-6.4-6.07-14.13-4.66-21.78,1.41-7.65,5.71-14.29,12.11-18.7l31.84-21.94c10.07,16.74,21.96,32.25,35.32,46.36l-34.13,23.52ZM537.86,897.38l-2.52-7.21c1.3.02,2.58.1,3.89.1.21,0,.41-.02.62-.02l-1.99,7.12ZM808.09,822.58c-4.41,6.4-11.06,10.7-18.7,12.11-7.65,1.39-15.38-.25-21.79-4.66l-34.13-23.52c13.37-14.1,25.25-29.62,35.32-46.36l31.84,21.94c13.22,9.11,16.56,27.27,7.46,40.48Z'/%3E%3C/svg%3E");
}

/* SHEEP */
.sheep-icon .icon-box {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080'%3E%3Cpath fill='%23739D89' d='M916.34,561.62c-18.38-50.89-42.58-96.61-68.13-128.72-36.6-45.98-65.82-51.4-85.07-46.57-.14-.21-.26-.43-.4-.64,6.12-13.26,9.63-27.96,9.63-43.49,0-46.45-29.95-85.94-72.5-99.37-5.67-82.58-74.66-148.04-158.66-148.04-70.11,0-131.33,45.95-151.79,111.54-60.48,11.44-105.58,64.35-105.58,127.6,0,18.49,3.91,36.09,10.9,52.03-17.14,3.49-38.38,16.07-62.94,46.93-25.55,32.11-49.76,77.82-68.14,128.72-18.38,50.89-28.97,101.51-29.83,142.54-1.33,63.64,21.08,85.19,40.12,92.06,5.26,1.9,10.66,2.83,16.18,2.83,28.65,0,60.38-25.22,90.48-71.43,40.75,129.85,142.92,222.2,262.28,222.2s218.48-89.61,260.42-216.4c28.93,42.46,59.14,65.63,86.55,65.63,5.52,0,10.92-.93,16.18-2.83,19.03-6.87,41.44-28.42,40.12-92.06-.85-41.03-11.44-91.66-29.83-142.54ZM542.89,613.55c-85.35,0-164.93,35.41-217.8,94.63-9.71-32.88-15.07-68.48-15.07-105.67,0-56.64,12.18-110.76,35.35-158.12,19.9,12.39,43.37,19.57,68.49,19.57,41.61,0,80.23-19.82,104.56-52.72,22.62,3.26,45.87,1.61,67.56-4.78,19.49,25.1,49.37,40.02,82.1,40.02,23.38,0,44.92-7.83,62.33-20.88,29.36,51.13,45.35,112.85,45.35,176.91,0,37.19-5.36,72.79-15.07,105.67-52.87-59.22-132.45-94.63-217.8-94.63ZM409.94,252.51l19.02-.91,3.58-18.7c9.95-52,55.65-89.74,108.67-89.74,61.03,0,110.68,49.65,110.68,110.68,0,2.39-.1,4.75-.26,7.1l-1.5,23.4,23.33,2.22c28.81,2.74,50.54,26.66,50.54,55.64,0,30.83-25.09,55.92-55.92,55.92-21.56,0-40.83-12.12-50.29-31.63l-10.22-21.07-21.39,9.54c-14.22,6.34-29.35,9.56-44.98,9.56-9.51,0-18.97-1.21-28.11-3.61l-18.35-4.81-9.04,16.68c-14.32,26.42-41.85,42.83-71.85,42.83-45.03,0-81.66-36.64-81.66-81.66s34.14-79.36,77.74-81.43ZM190.41,750.68h-.02c-9.58-7.62-18.07-70.66,18.75-172.64,30.3-83.91,67.49-127.91,86.27-140.78-22.14,50.45-33.75,106.75-33.75,165.26,0,18.33,1.18,36.32,3.4,53.89-34.78,71.83-66.78,94.27-74.66,94.27ZM542.89,901.47c-83.29,0-156.47-56.46-197.64-141.1,42.45-61.05,116.83-98.46,197.64-98.46s155.19,37.41,197.64,98.46c-41.17,84.64-114.34,141.1-197.64,141.1ZM889.61,750.68h-.02c-7.53,0-37.17-20.59-70.17-85.28,3.04-20.41,4.71-41.41,4.71-62.89,0-55.38-10.7-109.38-30.69-157.86,20.26,18.7,51.37,61.24,77.42,133.39,36.83,101.98,28.34,165.02,18.75,172.64Z'/%3E%3C/svg%3E");
}

/* RABBIT */
.animals-table td.rabbit-icon .icon-box {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080'%3E%3Cpath fill='%23739D89' d='M833.47,778.39h-34.01c2.1-4.29,4.11-8.64,6-13.05h28.01c12.06,0,21.84-9.78,21.84-21.84s-9.78-21.84-21.84-21.84h-13.48c5.27-21.53,8.12-44,8.12-67.13,0-59.62-18.6-114.96-50.24-160.61,12.64-86.86,15.59-174.59,8.7-261.86-.03-.38-.07-.77-.12-1.15-2.44-18.41-31.86-141.53-89.73-146.5-.64-.05-1.36-.05-1.91-.08-58.04,0-98.11,119.95-102.15,138.07-.09.37-.16.75-.22,1.13-8.36,49.68-13.47,99.8-15.37,150.11-10.4-1.17-20.96-1.82-31.67-1.82s-21.27.65-31.67,1.82c-1.91-50.3-7.01-100.43-15.37-150.11-.06-.38-.14-.75-.22-1.13-4.04-18.11-44.09-138.07-102.15-138.07-.66.01-1.28.03-1.91.08-57.89,4.97-87.3,128.1-89.73,146.51-.05.38-.09.76-.12,1.14-6.89,87.26-3.94,174.99,8.7,261.86-31.64,45.65-50.24,100.99-50.24,160.61,0,23.13,2.85,45.6,8.12,67.13h-24.26c-12.06,0-21.84,9.78-21.84,21.84s9.78,21.84,21.84,21.84h38.79c1.89,4.41,3.89,8.76,6,13.05h-44.78c-12.06,0-21.84,9.78-21.84,21.84s9.78,21.84,21.84,21.84h71.32c51.53,69.79,134.32,115.16,227.54,115.16s176.01-45.37,227.54-115.16h60.54c12.06,0,21.84-9.78,21.84-21.84s-9.78-21.84-21.84-21.84ZM620.47,382.01c1.61-50.5,6.57-100.81,14.93-150.65,9.35-41.01,44.35-99.04,58.43-103.15,13.77,5.4,43.52,66.25,49.22,107.88,5.57,71.01,4.37,142.35-3.5,213.24-33.15-31.39-73.85-54.84-119.09-67.32,0,0,0,0,0,0ZM347.71,236.09c5.7-41.67,35.48-102.55,49.15-107.88,14.2,4.16,49.17,62.16,58.5,103.15,8.36,49.85,13.32,100.16,14.94,150.65-45.23,12.48-85.93,35.93-119.09,67.32-7.88-70.89-9.08-142.23-3.5-213.24ZM774.76,721.65h-71.43c-12.06,0-21.84,9.78-21.84,21.84s9.78,21.84,21.84,21.84h53.76c-2.33,4.42-4.74,8.8-7.33,13.05h-46.43c-12.06,0-21.84,9.78-21.84,21.84s9.78,21.84,21.84,21.84h12.33c-38.59,39.21-90.55,65.17-148.43,70.44v-85.47c2.31-1.13,4.55-2.45,6.69-3.96l59.75-42.03c6.67-4.69,10.34-12.84,8.76-20.83-3.42-17.27-21.87-23.36-34.32-14.59l-60.26,42.39c-1.47,1.04-3.44,1.04-4.91,0l-60.26-42.39c-12.44-8.76-30.89-2.69-34.33,14.58-1.59,8,2.08,16.15,8.75,20.84l59.76,42.04c2.14,1.51,4.38,2.83,6.69,3.95v85.47c-57.87-5.27-109.84-31.23-148.43-70.44h1.55c12.06,0,21.84-9.78,21.84-21.84s-9.78-21.84-21.84-21.84h-35.65c-2.59-4.26-5-8.63-7.33-13.05h42.98c12.06,0,21.84-9.78,21.84-21.84s-9.78-21.84-21.84-21.84h-60.65c-6.25-21.31-9.66-43.83-9.66-67.13,0-131.8,107.23-239.03,239.03-239.03s239.03,107.23,239.03,239.03c0,23.31-3.41,45.82-9.66,67.13Z'/%3E%3C/svg%3E");
}

/* CHICKEN */
.animals-table td.chicken-icon .icon-box {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080'%3E%3Cpath fill='%23739D89' d='M937.1,592.46l-152.7-107.19,17.61,12.36c-17.86-80.08-68.69-147.3-136.89-185.67-7.29-31.33-31.13-119.2-75.94-153.82-21-16.23-38.65-14.2-49.75-9.64-9.2,3.77-16.61,10.48-22.57,18.57-12.22-23.93-30.8-46.82-58.36-53.29-22.18-5.22-35.54,4.58-41.54,10.88-8.83,9.29-13.06,23.02-14.45,38.34-15.62-12.72-34.24-21.32-55.35-19.52-18.02,1.53-31.61,11.99-37.29,28.69-9.44,27.77,5.52,66.77,19.74,94.6,11.77,23.03,26.63,45.4,42.75,64.84-68.59,51.39-113.4,134.54-113.8,228.34-.28,2.39-1.1,9.05-2.7,18.97-1.94,8.78-4.47,21.32-6.8,36.08-13.63,63.7-44.74,170.28-111.17,258.56-5.08,6.76-5.91,15.8-2.13,23.37,3.78,7.56,11.5,12.35,19.96,12.35h577.05c8.5,0,16.27-4.84,20.01-12.48,3.75-7.63,2.83-16.74-2.37-23.47-.25-.32-22.96-29.88-54.1-83.06,38.41-28.89,68.17-66.82,87.49-110.01l147.44-48.33c8.02-2.63,13.87-9.56,15.12-17.91,1.24-8.35-2.34-16.68-9.25-21.54ZM351.62,187.87c25.42-1.43,54.06,45.44,64.09,68.49,4.67,10.79,16.91,16.11,27.98,12.14,11.07-3.96,17.17-15.85,13.92-27.15-9.63-33.54-13.72-72.37-9.22-84.12,24.83,5.97,41.36,57.31,45.48,81.25,1.84,10.85,11.48,18.71,22.32,18.57,11.01-.16,20.25-8.34,21.77-19.25,3.08-22.21,12.32-44.37,18-47.81.9.25,2.94,1.13,5.94,3.46,22.25,17.19,39.89,60.55,50.84,95.98-25.02-7.74-51.51-11.95-78.95-11.95-44.35,0-86.24,10.93-123.38,30.22-39.36-45.3-63-103.81-58.81-119.81ZM198.22,864.66c23.09-36.37,41.2-73.99,55.43-109.82,5.82,14.09,14.35,25.52,26.59,32.38,36.15,20.26,74.15-8.39,100.73-37.8.92,3.44,1.96,6.93,3.1,10.42,15.73,47.97,46.52,74.86,86.7,75.7,36.34.7,64.87-19.82,85-42.05,9.37,27.21,28.2,51.36,62.95,55.67,2.85.35,5.66.53,8.43.53,13.31,0,25.45-4.08,35.51-12.01,2.36-1.86,4.48-3.88,6.44-5.98,7.71,12.65,14.75,23.7,20.85,32.96H198.22ZM739.68,669.22c-18.86,38.66-47.82,71.88-84.96,95.64-6.85,4.38-10.41,11.88-10.2,19.45-1.44,7.67-6.07,22.32-20.31,20.58-36.07-4.48-31.56-70.94-31.51-71.55.96-10.85-6.07-20.78-16.61-23.52-10.53-2.73-21.53,2.55-25.98,12.49-8.68,19.36-39.72,69.21-78.41,68.64-51.15-1.07-54.3-96.64-54.32-97.57-.15-9.89-6.79-18.51-16.33-21.16-9.53-2.64-19.67,1.3-24.9,9.69-22.58,36.23-60.7,73.93-74.11,66.4-16.45-9.22-17.53-66.65-9.1-124.14,7.4-35.01,9.85-58.11,10.11-60.75.07-.74.11-1.48.11-2.22,0-131.85,103.47-239.12,230.65-239.12,101.74,0,188.25,68.68,218.8,163.65,0,0,0,0,0,0-24.98,12.34-41.68,49.13-41.68,96.43,0,38.54,11.12,70.02,28.74,87.07ZM770.9,637.52c-5.47-4.9-15.36-24.05-15.36-55.37,0-27.85,7.82-46.09,13.4-53.23l106.09,74.47-104.13,34.13Z'/%3E%3C/svg%3E");
}

/* DOG */
.animals-table td.dog-icon .icon-box {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080'%3E%3Cpath fill='%23739D89' d='M570.81,552.39h-63.93c-17.06,0-32.65,9.34-40.69,24.39-8.04,15.05-7.15,33.2,2.33,47.38l31.97,47.84c8.58,12.83,22.92,20.49,38.36,20.49s29.78-7.66,38.36-20.5l31.97-47.84c9.48-14.18,10.37-32.33,2.33-47.38-8.04-15.05-23.63-24.39-40.69-24.39ZM574.7,601.13l-31.96,47.83c-1.15,1.72-2.75,2.08-3.89,2.08s-2.74-.36-3.89-2.07l-31.97-47.84c-1.29-1.93-.84-3.68-.24-4.8.6-1.13,1.81-2.47,4.13-2.47h63.93c2.32,0,3.52,1.35,4.13,2.47s1.05,2.87-.24,4.8Z'/%3E%3Cpath fill='%23739D89' d='M980.73,554.08l-88.46-196.5c-25.77-57.25-82.99-94.24-145.78-94.24h-28c-49.57-39.09-112.09-62.04-179.64-62.04s-130.07,22.95-179.64,62.04h-25.7c-62.78,0-120,37-145.78,94.24l-88.46,196.5c-16.66,37-15.58,78.93,2.96,115.03,18.54,36.1,52,61.4,91.78,69.41l53.78,10.83c8.32,16.62,18.59,32.38,30.88,46.85,44.52,52.42,109.49,82.49,178.27,82.49h163.82c68.77,0,133.75-30.07,178.27-82.49,12.16-14.32,22.35-29.91,30.63-46.34l56.34-11.35c39.78-8.01,73.23-33.31,91.78-69.41,18.54-36.1,19.62-78.03,2.96-115.03ZM226.16,606.93c-5.36,32.63-3.65,65.49,4.45,96.67l-28.41-5.72c-27.35-5.51-50.34-22.9-63.09-47.71-12.75-24.81-13.49-53.63-2.04-79.06l88.46-196.5c16.56-36.79,50.67-62.26,89.78-68.36-31.7,38.42-53.81,85.46-62.41,137.87l-26.74,162.81ZM767.42,769.37c-36.63,43.13-90.08,67.87-146.67,67.87h-61.18v-86.93c0-11.45-9.28-20.73-20.73-20.73s-20.73,9.28-20.73,20.73v86.93h-61.18c-56.58,0-110.04-24.74-146.67-67.87-36.62-43.13-52.37-99.89-43.2-155.72l26.74-162.81c19.8-120.57,122.85-208.08,245.04-208.08s225.23,87.51,245.04,208.08l26.74,162.81c9.17,55.83-6.58,112.59-43.2,155.72ZM940.89,650.17c-12.75,24.81-35.74,42.2-63.08,47.71l-30.84,6.21c8.21-31.33,9.96-64.37,4.57-97.16l-26.74-162.81c-8.63-52.57-30.84-99.75-62.7-138.23,40.19,5.36,75.44,31.12,92.37,68.72l88.46,196.5c11.45,25.43,10.71,54.25-2.04,79.06Z'/%3E%3C/svg%3E");
}

/* PIG */
.animals-table td.pig-icon .icon-box {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080'%3E%3Cpath fill='%23739D89' d='M540.58,492.74c-94.18,0-170.79,68.3-170.79,152.25s76.62,152.24,170.79,152.24,170.79-68.29,170.79-152.24-76.62-152.25-170.79-152.25ZM540.58,754.73c-70.74,0-128.3-49.23-128.3-109.75s57.55-109.75,128.3-109.75,128.29,49.24,128.29,109.75-57.55,109.75-128.29,109.75Z'/%3E%3Cg%3E%3Ccircle fill='%23739D89' cx='480.49' cy='638.68' r='39.2'/%3E%3Ccircle fill='%23739D89' cx='600.66' cy='638.68' r='39.2'/%3E%3C/g%3E%3Cpath fill='%23739D89' d='M963.93,440.55c-1.13-1.61-2.91-4.23-5.24-7.67-81.5-120.02-135.41-174.64-174.77-177.09-24.48-1.49-48,14.63-71.6,49.12,5.84,4.64,11.58,9.54,17.22,14.67-55.68-50.09-121.3-77.17-188.96-77.17-61.28,0-120.84,22.27-172.9,63.66,0,0,0,0,0,0-23.61-34.5-47.17-50.62-71.6-49.12-39.35,2.44-93.25,57.05-174.74,177.05-2.35,3.45-4.13,6.08-5.27,7.7-5.96,8.48-7,19.05-2.85,29,11.8,28.27,66.35,48.98,116.95,60.03-5.06,23.95-7.77,48.11-7.77,71.97,0,160.17,121.92,259.67,318.18,259.67s318.18-99.5,318.18-259.67c0-24.31-2.81-48.93-8.06-73.32,50.36-11.09,104.35-31.72,116.08-59.83,4.15-9.95,3.11-20.52-2.85-29ZM156.46,457.91l.03-.04c98.47-145,133.76-157.99,142.23-158.51,5.43-.23,18.74,7.36,37.03,35.48-7.34,7.46-14.52,15.27-21.45,23.56-32.65,39.12-57.5,84.2-73.08,131.25,0,0,0,0,0,0-44.39-9.43-73.66-23.22-84.76-31.74ZM540.58,819.88c-172.63,0-275.69-81.19-275.69-217.18,0-146.96,120.43-317.8,275.69-317.8s275.69,170.84,275.69,317.8c0,135.99-103.06,217.18-275.69,217.18ZM839.48,488.34c-15.61-46.57-40.27-91.18-72.62-129.94-7.28-8.73-14.84-16.95-22.58-24.75,18.27-28.09,31.56-35.67,37.01-35.45,8.48.53,43.77,13.51,142.25,158.54,0,0,0,0,0,0-11.04,8.48-40.07,22.15-84.07,31.58Z'/%3E%3C/svg%3E");
}

/* DUCK */
.animals-table td.duck-icon .icon-box {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080'%3E%3Cpath fill='%23739D89' d='M898.07,468.19c-12.85-10.37-37.48-19.54-81.86-4.31-23.58,8.07-51.59-6.77-68.6-19.23-18.74-125.17-126.96-221.48-257.26-221.48-143.45,0-260.15,116.71-260.15,260.15,0,32.87,12.94,81.94,16.13,90.35.53,1.61,46.72,171.17-13.14,273.19-3.94,6.72-3.99,15.02-.12,21.78,3.87,6.76,11.06,10.92,18.84,10.92h436.95c8.9,0,16.87-5.45,20.16-13.72,3.28-8.27,1.17-17.72-5.3-23.83-3.42-3.22-81.86-78.67-41.01-163.5,7.01-5.53,20.55-17.33,34.94-35.73,7.36.31,14.55.52,21.43.52,174.92,0,195.7-97.05,198.11-117.5,3.76-31.85-8.31-48.91-19.1-57.62ZM286.28,836.14c5.79-15.03,10.11-30.7,13.28-46.6h319.57c6.3,17.23,14.67,32.98,23.67,46.6h-356.51ZM633.36,646.27c-2.93,2-5.32,4.68-6.97,7.82-16.62,31.56-20.79,62.94-17.6,92.03h-303.34c7.53-95.37-17.9-186.15-18.35-187.34-2.28-6.07-13.49-49.21-13.49-75.45,0-119.5,97.22-216.72,216.72-216.72s206.91,87.79,215.94,199.05l-.56.58c.11.1.35.33.65.62.41,5.44.69,10.92.69,16.47,0,110.32-70.77,160.91-73.71,162.95ZM874.04,520.72c-1.62,13.71-16.51,77.57-149.54,79.1,13.3-27.21,23.78-61.47,25.66-103.14,22.49,10.87,51.12,18.22,80.13,8.27,22.9-7.85,36.12-6.5,40.51-2.97,3.12,2.52,4.34,9.52,3.25,18.74Z'/%3E%3C/svg%3E");
}

.none {
	opacity: 0;
}
body {
    font-family: 'Barlow', sans-serif !important;
    font-weight: 400 !important;
	margin: 0;
	padding: 0;
	background-color: /*#cbe1d8*/ #aad1be !important;
	color: #111;

}

h1, h2, h3, h4, h5 {
	font-family: 'El Messiri', serif !important;
	letter-spacing: 0;
	font-weight: 600 !important;
	color: #CFA379;
}
h1{
	font-size: 65px;
	line-height: 75px;
	text-transform: uppercase;
}
h2{
	font-size: 48px;
	line-height: 1.2em;
}
h3{
	font-size: 36px;
}
h4{
	font-size: 24px;
}
p{
	font-size: 18px;
	line-height: 31px;
}

h1.hi-kukus-garden {
	font-size: 116px;
	line-height: 130px;
}

/* Shrink fonts on mobile */
@media (max-width: 980px) {
	h1, h2, h3, h4, h5 {
		font-family: 'El Messiri', serif !important;
		/*text-transform: uppercase; */
		letter-spacing: 2px;
		color: #CFA379;
	}
	h1{
		font-size: 40px;
		line-height: 45px;
	}
	h2{
		font-size: 30px;
		line-height: 34px;
	}
	h3{
		font-size: 24px;
		line-height: 27px;
	}
	h4{
		font-size: 18px;
		line-height: 20.5px;
	}
	p{
		font-size: 16px;
		line-height: 27.5px;
	}

	h1.hi-kukus-garden {
		font-size: 49px !important;
		line-height: 48px !important;
	}
}

/* Shrink even more on small mobiles */
@media (max-width: 640px) {
	h1, h2, h3, h4, h5 {
		font-family: 'El Messiri', serif !important;
		/*text-transform: uppercase; */
		letter-spacing: 2px;
		color: #CFA379;
	}
	h1{
		font-size: 35px;
		line-height: 1.2em;
	}
	h2{
		font-size: 25px;
		line-height: 1.2em;
	}
	h3{
		font-size: 22px;
	}
	h4{
		font-size: 18px;
	}
	p{
		font-size: 16px;
		line-height: 27.5px;
	}

	h1.hi-kukus-garden {
		font-size: 65px !important;
	}
}

/* Shrink even more on tiny mobiles */
@media (max-width: 500px) {
	h1, h2, h3, h4, h5 {
		font-family: 'El Messiri', serif !important;
		/*text-transform: uppercase; */
		letter-spacing: 2px;
		color: #CFA379;
	}
	h1{
		font-size: 30px;
		line-height: 1.2em;
	}
	h2{
		font-size: 25px;
		line-height: 1.2em;
	}
	h3{
		font-size: 20px;
	}
	h4{
		font-size: 17px;
	}
	p{
		font-size: 16px;
		line-height: 27.5px;
	}

	h1.hi-kukus-garden {
		font-size: 55px !important;
	}
}

@media (max-width: 800px) {
	.kuku-heading h3 {
		font-size: 55px !important;
		line-height: 62.5px !important;
	}
	.so-ein-blick img {
		max-height: 350px !important;
	}
}

@media (max-width: 700px) {
	.kuku-heading h3 {
		font-size: 45px !important;
		line-height: 51px !important;
	}
    .so-ein-blick img {
		max-height: 300px !important;
	}
}

@media (max-width: 600px) {
	.kuku-heading h3 {
		font-size: 40px !important;
		line-height: 45.5px !important;
	}
	.so-ein-blick img {
		max-height: 300px !important;
	}
}

@media (max-width: 550px) {
	.kuku-heading h3 {
		font-size: 35px !important;
		line-height: 39.5px !important;
	}
    .so-ein-blick img {
		max-height: 250px !important;
	}
}
	
@media (max-width: 500px) {
	.kuku-heading h3 {
		font-size: 32.5px !important;
		line-height: 37px !important;
	}
    .so-ein-blick img {
		max-height: 200px !important;
	}
}

@media (max-width: 450px) {
	.kuku-heading h3 {
		font-size: 30px !important;
		line-height: 34px !important;
	}
    .so-ein-blick img {
		max-height: 175px !important;
	}
	.animal-nickname {
		display: none !important;
	}
}

@media (max-width: 400px) {
	.kuku-heading h3 {
		font-size: 27.5px !important;
		line-height: 31px !important;
	}
    .so-ein-blick img {
		max-height: 150px !important;
	}
}

@media (max-width: 350px) {
	.kuku-heading h3 {
		font-size: 25px !important;
		line-height: 28.5px !important;
	}
    .so-ein-blick img {
		max-height: 125px !important;
	}
}

.wpgdprc-consent-bar__notice .wpgdprc-consent-bar__notice,
.wpgdprc-consent-bar__notice p {
	font-size: 16px !important;
}

.kukus-button {
	color: #739D89 !important;
	border-color: #739D89;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    font-size: clamp(16px, 2.5vw, 24px) !important;
    letter-spacing: 0.17em !important;
    height: clamp(52px, 7vw, 59px) !important;
    border-radius: 32px !important;
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
    display: inline-flex !important;
    box-sizing: border-box !important;
    padding: 0 clamp(20px, 4vw, 40px) !important;
    
    /* Adaptive Breite wie bei kukus-button-wide */
    width: clamp(318px, 75vw, 553px) !important;
    max-width: min(100%, calc(100vw - 40px)) !important;
    min-height: 52px;
}

/* Kleine Bildschirme: Mehr Flexibilität */
@media (max-width: 768px) {
    .kukus-button {
        width: clamp(260px, 85vw, 400px) !important;
        height: clamp(48px, 12vw, 70px) !important;
        font-size: clamp(16px, 4vw, 20px) !important;
        padding: 0 20px !important;
        flex-wrap: wrap;
    }
}

/* Große Bildschirme: Feste Originalgröße */
@media (min-width: 1400px) {
    .kukus-button {
        width: 553px !important;
        height: 53px !important;
        font-size: 24px !important;
        padding: 0 40px !important;
    }
}

.kukus-button-small {
	color: #739D89 !important;
	border-color: #739D89 !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
	text-transform: uppercase !important;
	font-size: clamp(16px, 2.5vw, 24px) !important;
	letter-spacing: 0.17em !important;
	width: 318px !important;
	height: 52px !important;
	border-radius: 32px !important;
	line-height: 1 !important;
	text-align: center !important;
	align-items: center !important;
	justify-content: center;
	display: inline-flex !important;
}

@media (max-width: 1200px) and (min-width: 980px) {
  .kukus-button-small {
    width: 26vw !important;       /* shrink with viewport */
    font-size: 18px !important;   /* slightly smaller text */
  }
}

.kukus-button-wide {
	letter-spacing: 0.17em !important;
	color: #739D89 !important;
	border-color: #739D89 !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    font-size: clamp(16px, 2vw, 24px) !important; /* Kleiner Min für Wrap */
    min-height: 59px; /* Nie kleiner als Original */
    border-radius: 32px !important;
    line-height: 1.2 !important; /* Besser für mehrzeilig */
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
    display: inline-flex !important;
    
    /* Overflow-Schutz + stabile Breite */
    max-width: min(100%, calc(100vw - 60px)) !important;
    
    /* Standard: Adaptive Breite */
    width: clamp(300px, 85%, 1000px) !important;
}

/* Sehr schmale: Höher + mehrzeilig */
@media (max-width: 600px) {
    .kukus-button-wide {
        /* height: 118px !important; */ /* Doppelt hoch */
        font-size: 20px !important;
        line-height: 1.3 !important;
        flex-wrap: wrap; /* Text umbrechen */
        padding: 20px !important;
    }
}

.footer-title {
	color: #CBE1D8 !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
	font-size: 24px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.17em !important;
	line-height: 24px !important;
}

.footer-text {
	color: #CBE1D8 !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 400 !important;
	font-size: 18px !important;
	text-transform: none !important;
	letter-spacing: 0% !important;
	line-height: 31px !important;
}

.footer-text a {
	color: inherit !important;
}

.tile-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.kuku-heading h3 {
  margin: 0;
  padding-top: 5% !important;
  padding-bottom: 0 !important;
  letter-spacing: 0;
  font-size: 65px;
  line-height: 73.5px;
  color: #cfa379;
  text-align: left;
}

@media (max-width: 1400px) {
	.kuku-heading h3 {
	  margin: 0;
	  letter-spacing: 0;
	  font-size: 55px;
	  line-height: 62.5px;
	  text-align: left;
	}
}

.social-icons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;        /* Abstand zwischen den Icons */
}

.kuku-tiles {
  padding: 0 !important;
}

/* IMAGES */
.kuku-tiles-row .tile-image img {
  width: 100% !important;
  height: 100%;
  object-fit: cover !important;
  display: block !important;
}

/* TEXT TILES */
.kuku-tiles-row .tile-text {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  height: 100%;
  margin: 0 !important;
  padding: 10px !important;
}

.kuku-tiles-row .tile-text .et_pb_text_inner {
  margin: 0 !important;
  padding: 0 !important;
}

/* Remove the hardcoded 505px from that specific text tile */
.kuku-tiles-row .et_pb_text {
  min-height: 0 !important;
}

/* Remove the old 505px min-height from ALL images in the Fun-Facts row */
.kuku-tiles-row .et_pb_row,
.kuku-tiles-row .et_pb_image img {
  min-height: 0 !important;
}

/* Make all image tiles follow the tile height (1:1) */
.kuku-tiles-row .tile-image,
.kuku-tiles-row .tile-image .et_pb_image_wrap,
.kuku-tiles-row .tile-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* MOBILE: 2-column grid, square tiles */
@media (max-width: 980px) {

  /* Row with the 12 tiles */
  .kuku-tiles-row {
    display: grid !important;
    grid-template-columns: 50% 50%;
    /* 1:1 → column width is 50vw, so use 50vw as height */
    grid-auto-rows: 50vw;        /* tile height */
    column-gap: 0 !important;
    row-gap: 0 !important;
  }

  /* Make column wrappers transparent to layout */
  .kuku-tiles-row .et_pb_column,
  .kuku-tiles-row .kuku-tiles-column {
    display: contents !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    position: static !important;
    clear: none !important;
  }

  /* Each module = one grid item with full height */
  .kuku-tiles-row .et_pb_module {
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .kuku-tiles-row .et_pb_module_inner {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  /* Images fill the square */
  .kuku-tiles-row .tile-image,
  .kuku-tiles-row .tile-image .et_pb_image_wrap,
  .kuku-tiles-row .tile-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  /* Text tiles stay centered in the square */
  .kuku-tiles-row .tile-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: 100% !important;
    margin: 0;
    padding: 10px;
    min-height: 0 !important;
  }

    /* falls Divi/Row ein ::before/::after als Grid-Item erzeugt */
  .kuku-tiles-row::before,
  .kuku-tiles-row::after{
    content: none !important;
    display: none !important;
  }

  /* alles ohne explizite Order nach hinten (zur Sicherheit) */
  .kuku-tiles-row .kukus-order{
    order: var(--kukus-order, 9999) !important;
  }
}

/* DESKTOP: 3 columns, all tiles 1:1 */
@media (min-width: 981px) {

  /* 1. Define the square size on the row:
        row width / 3 = column width = tile height */
  .kuku-tiles-row {
    --kuku-tile-size: calc(100vw / 3);
  }

  /* 2. Apply that height to every tile module */
  .kuku-tiles-row .et_pb_module,
  .kuku-tiles-row .tile-image,
  .kuku-tiles-row .tile-text {
    height: var(--kuku-tile-size) !important;
  }

  /* 3. Make inner content fill and crop correctly */
  .kuku-tiles-row .tile-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .kuku-tiles-row .tile-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin: 0;
    padding: 10px;
  }
}

/* =========================
   ANIMAL TILES – DESKTOP
   ========================= */

/* remove hard aspect from the whole row */
.animal-row {
  display: flex !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  overflow: hidden !important;
}

/* columns still 50/50 */
.animal-col-left,
.animal-col-right {
  flex: 0 0 50% !important;
  max-width: 50% !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
}

/* IMAGE tile: own “almost square” ratio */
.animal-image {
  width: 100% !important;
  aspect-ratio: 756 / 733 !important;  /* ≈ square, makes it less tall */
  overflow: hidden !important;
  margin: 0 !important;
}

/* image fills that quasi-square and is cropped */
.animal-image .et_pb_image_wrap {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
}

.animal-image img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.animal-image-text .et_pb_text_inner {
  position: absolute !important;
  bottom: 15px !important;
  right: 0px !important;
  margin-right: 10% !important;
  padding-bottom: 5% !important;
  color: white !important;
  font-weight: bold !important;
  white-space: nowrap !important;
  max-width: 80% !important;
}

.animal-image-text {
  position: relative !important;
  height: 250px !important;
  background-size: cover !important;
  background-position: center !important;
  overflow: hidden !important;
}

/* TEXT: keep as before, vertically centered with padding */
.animal-text {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  padding-left: 17.5%;
  padding-right: 17.5%;
}

/* Animal tiles more tweaks, also for mobile */
.animal-title {
  font-family: 'El Messiri', sans-serif;
  font-style: normal;
  font-weight: 600;
  text-transform: uppercase;
  color: #CFA379 !important;
  margin: 0;
}

/* header row */
.animal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* arrow as inline SVG in CSS */
.animal-more-icon {
  display: inline-block;
  width: 17px;
  height: 10px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg width='17' height='10' viewBox='0 0 17 10' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.5 8.5L8.50037 1.5L1.5 8.5' fill='none' stroke='%23CFA379' stroke-width='3' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* rotate arrow when open (JS toggles .is-open on .animal-text) */
.animal-text.is-open .animal-more-icon {
  transform: rotate(180deg);
}

.animal-desc {
  font-family: 'Barlow', sans-serif !important;
  font-weight: 400 !important;  font-style: normal;
  color: #3D534A;
  margin: 1.5rem 0 0 0;   /* space below header, adjust as needed */
  font-size: 22px !important;
  line-height: 38px !important;
}

.animals-toggle .et_pb_toggle_title {
	font-family: 'Barlow' !important;
	font-style: normal;
	font-weight: 600 !important;
	font-size: 20px !important;
	line-height: 24px !important;
	/* identisch mit der Höhe des Felds oder 120% */
	text-align: right;
	letter-spacing: 0.17em !important;
	text-decoration-line: underline !important;
	text-transform: uppercase !important;
	color: #739D89 !important;
}

/* Remove top border of the table block */
.animals-toggle .et_pb_toggle_content {
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  margin: 0;
  /* No border or top line on the toggle content box */
  border: none !important;
  padding-top: 24px;
  padding-right: 32px;
  padding-bottom: 24px;
  padding-left: 32px;
}

/* Remove margins that can look like a line */
.animals-toggle .et_pb_toggle_content,
.animals-toggle .et_pb_toggle_content * {
  margin-top: 0;
}

/* Toggle content: no outer border, no top line */
.animals-toggle .et_pb_toggle_content {
  border: none !important;
  margin: 0;
  padding: 24px 32px;
}

/* Table: remove any outer border and top line */
.animals-table {
  width: 100%;
  border-collapse: collapse;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: none !important;
  margin-bottom: 0 !important;
}

.animals-table td {
  padding: 8px 0;
  border: none;                            /* no side/outer borders */
  border-bottom: 1px solid #3D534A;       /* separators */
  font-size: 13px;
  letter-spacing: 0.08em;
}

/* no line after last row */
.animals-table tr:last-child td {
  border-bottom: none;
}

.animals-table tr:first-child td {
  border-top: none !important;
}

.animals-toggle .et_pb_toggle_title {
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Hide default Divi default toggle icon (plus/minus) */
.animals-toggle .et_pb_toggle_title:before {
  display: none !important;
}

/* Title styling + space for arrow */
.animals-toggle .et_pb_toggle_title {
  position: relative;
  display: inline-block;
  padding-right: 30px !important;
  color: #739D89 !important;
  text-decoration-color: #739D89 !important;
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Custom SVG arrow (dark green) */
.animals-toggle .et_pb_toggle_title::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 17px;
  height: 10px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml;utf8,<svg width='17' height='10' viewBox='0 0 17 10' xmlns='http://www.w3.org/2000/svg'><path d='M15.5 8.5L8.50037 1.5L1.5 8.5' fill='none' stroke='%23739D89' stroke-width='3' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

/* Light green background + padding only for toggle content */
/* Bigger gap between "ALLE TIERE" and first row */
.animals-toggle .et_pb_toggle_content {
  background-color: #CBE1D8;
  margin-top: 64px !important;
  padding: 24px 32px 24px !important;   /* top, left/right, bottom */
  @media (min-width: 981px) {
    margin-top: 92px !important;
  }
}

/* default: arrow points down */
.animals-toggle .et_pb_toggle_title::after {
  transform: translateY(-50%) rotate(180deg);
}

/* when toggle is open, arrow points up */
.animals-toggle.et_pb_toggle_open .et_pb_toggle_title::after {
  transform: translateY(-50%) rotate(0deg);
}

@media (max-width: 1600px) {
  .animal-title {
    font-size: 59px !important;
	line-height: 68px !important;
  }

  .animal-desc {
    font-size: 20px !important;
	line-height: 34.5px !important;
  }
}

@media (max-width: 1500px) {
  .animal-title {
    font-size: 58px !important;
	line-height: 67px !important;
  }

  .animal-desc {
    font-size: 19.5px !important;
	line-height: 33.5px !important;
  }
}

@media (max-width: 1400px) {
  .animal-title {
    font-size: 57px !important;
	line-height: 65.5px !important;
  }

  .animal-desc {
    font-size: 19px !important;
	line-height: 33px !important;
  }
}

@media (max-width: 1300px) {
  .animal-title {
    font-size: 56px !important;
	line-height: 64.5px !important;
  }

  .animal-desc {
    font-size: 18px !important;
	line-height: 31px !important;
  }
}

@media (max-width: 1200px) {
  .animal-title {
    font-size: 55px !important;
	line-height: 63.5px !important;
  }

  .animal-desc {
    font-size: 17px !important;
	line-height: 29px !important;
  }
}

@media (max-width: 1100px) {
  .animal-title {
    font-size: 50px !important;
	line-height: 57.5px !important;
  }

  .animal-desc {
    font-size: 16px !important;
	line-height: 27.5px !important;
  }
}

@media (max-width: 1000px) {
  .animal-title {
    font-size: 45px !important;
	line-height: 52px !important;
  }

  .animal-desc {
    font-size: 15px !important;
	line-height: 25.5px !important;
  }
}

/* desktop: MEHR hidden, full text visible */
@media (min-width: 981px) {
  .kukus-title-row {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;  /* push content to bottom */
    height: 260px; /* tweak per your baseline */
  }
  .title-section,
  .animal-grid-section,
  .paten-hilfe-section {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .kukus-title-row,
  .animal-row {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .animal-row {
    display: flex !important;
  }

  .animal-row .et_pb_column {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
  }
  /* desktop tile padding – a bit tighter */
  .animal-text {
    padding-top: 3rem !important;
	padding-bottom: 3rem !important;
  }

  .animal-desc {
    color: #3D534A;
    margin-top: 0;
  }

  .animal-more {
    display: none !important;
  }
}

/* mobile layout + toggle behavior */
@media (max-width: 980px) {
  .animal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  /* Wrap MEHR + arrow in a flex row */
  .animal-header p {
    margin: 0;
    display: flex;
    align-items: center;      /* centers both within the row */
    white-space: nowrap;
  }

  .animal-row {
    display: flex !important;      /* was block */
    flex-direction: column;        /* default order: text, then image */
    aspect-ratio: auto !important;
  }

  /* when image is on the right on desktop → reverse order on mobile */
  .animal-row.animal-image-right {
    flex-direction: column-reverse;
  }

  .animal-col-left,
  .animal-col-right {
    max-width: 100% !important;
    flex: none !important;
  }

  .animal-text {
    padding: 4rem 2rem 4rem 3rem !important;  /* top, right, bottom, left */
	box-sizing: border-box !important;
  }

  .animal-title {
    display: inline-block;
	font-size: 30px !important;
	line-height: 34px !important;
  }

  .animal-more {
    display: inline-flex !important;
    align-items: center;
	vertical-align: middle;
	position: static;
    gap: 0.6rem;                  /* space between MEHR and arrow */

    background: none;
    border: none;
    margin: 0;
    padding: 0;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
    font-style: normal;
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 0.17em;
    text-transform: uppercase;
    text-decoration: underline;
    text-align: right;
    cursor: pointer;
    color: #CFA379 !important;
  }
  
  .animal-more-icon {
    display: inline-block;
    width: 17px;
    height: 10px;
	position: static;
  }
	
  .animal-desc {
    display: none;
	padding-bottom: 2rem !important;
	font-size: 16px !important;
	line-height: 26.5px !important;
  }

  .animal-text.is-open .animal-desc {
    display: block;
    margin-top: 0 !important;
  }
	
  /* SAFARI/WEBKIT FLEX BASELINE BUG – align MEHR button on mobile only */
  @media screen and (-webkit-min-device-pixel-ratio:0) {
	.animal-more {
	  position: relative;
	  top: -18px;
	}
	.animal-more-icon {
	  position: relative;
	  top: 12px;
	}
  }

  /* FIREFOX FLEX BASELINE OFFSET – undo WebKit hack, apply smaller nudge */
  @supports (-moz-appearance: none) {
	  .animal-more {
		position: relative;
		top: -6px;        /* tweak just for FF */
	  }
	.animal-more-icon {
	  position: static;
	}
  }
}

/* Undo the hacky overlap in the tablet area */
@media (min-width: 900px) and (max-width: 1000px) {
  .kukus-title-row {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;  /* push content to bottom */
    height: 260px; /* tweak per your baseline */
  }
  .paten-row,
  .helfen-row {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* Mobile adjustment */
@media (max-width: 480px) {
  .kukus-button {
    /* at least ~20% smaller than desktop */
    font-size: clamp(0.75rem, 3vw, 0.9rem);
    padding: 0.7em 1.8em;
    /* optional: keep width from getting too wide on very small screens */
    max-width: 80%;
  }
}

/* phones < 444px */
@media (max-width: 443px) {
  .kukus-button {
    letter-spacing: 0 !important;      /* no letter spacing on very small screens */
  }
}

.kukus-button:hover, .kukus-button-small:hover, .kukus-button-wide:hover, body #page-container .et_pb_section .et_pb_contact_form_0.et_pb_contact_form_container.et_pb_module .et_pb_button:hover {
	color: #CBE1D8 !important;
	background-color: #739D89 !important;
	background: #739D89 !important;
}

.kukus-button-pate {
	color: #CBE1D8 !important;
	border-color: #CBE1D8 !important;
	background: #cfa379 !important;
	background-color: #cfa379 !important;
}

.kukus-button-pate:hover {
	color: #cfa379 !important;
	border-color: #e3f0eb !important;
	background: #e3f0eb !important;
	background-color: #e3f0eb !important;
}


@media (min-width: 981px) {

  :root {
    --header-width: max-width;
  	--bewohner-width: 100%;  /* statt min(90vw, 1800px) */
  }

  .et_pb_menu_0_tb_header .et-menu-nav li.menu-item-2614.mega-menu > ul.sub-menu {
	overflow-x: hidden !important;
    --menu-width: var(--bewohner-width);

    /* jetzt identisch vom Prinzip her mit der Header-Row */
    width: min(100%, var(--menu-width)) !important;
    max-width: var(--menu-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;

    /* gleiche Innenabstände wie Header-Row */
    padding-top: 27px !important;
    padding-bottom: 27px !important;
    padding-left: 72px !important;
    padding-right: 60px !important;

    position: fixed !important;
    left: 50vw !important;
    transform: translateX(-50%) !important;
    top: clamp(80px, 7vw, 100px) !important;

    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 10px 28px !important;

    box-sizing: border-box !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    right: auto !important;
    z-index: 99999 !important;
  }

  li.menu-item-2614 .sub-menu > li {
    width: auto !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  li.menu-item-2614 .sub-menu > li > a {
    display: block !important;
    width: auto !important;
    box-sizing: border-box !important;
    text-align: center !important;
    white-space: nowrap !important;
    padding: 4px 0 !important;

    font-family: Barlow, sans-serif !important;
    font-size: clamp(14px, 1.11vw, 22px) !important;
    font-weight: 600 !important;
    letter-spacing: 0em !important;  /* oder Geschmackswert */
    text-transform: uppercase !important;
    color: #E3F0EB !important;
    line-height: 1.2 !important;
  }

  .et-menu-nav li.mega-menu > ul > li > a:first-child {
    border-bottom: none !important;
  }

  /* Bewohner-Zeile an Headerbreite angleichen */
  .bewohner-menu-bar {
    width: min(100%, var(--header-width)) !important;
    max-width: var(--header-width) !important;
    padding-left: 81px !important;
    padding-right: 54px !important;
    box-sizing: border-box !important;
  }

  /* Bewohner-Menü selbst auf volle verfügbare Breite */
  .bewohner-menu-bar .et_pb_menu_inner_container,
  .bewohner-menu-bar .et_pb_menu__wrap,
  .bewohner-menu-bar .et_pb_menu__menu,
  .bewohner-menu-bar .et-menu-nav,
  .bewohner-menu-bar ul#menu-bewohner {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Items über die ganze Breite verteilen */
  .bewohner-menu-bar ul#menu-bewohner {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 10px 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  /* Keine künstliche Divi-Einengung je Item */
  .bewohner-menu-bar ul#menu-bewohner > li {
    width: auto !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  .bewohner-menu-bar ul#menu-bewohner > li > a {
    display: block !important;
    width: auto !important;
    white-space: nowrap !important;
    padding: 4px 0 !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }
}

.et-menu .menu-item-has-children > a:first-child {
	padding-right: 12px !important;
}

.et_pb_menu .et-menu > li {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.kukus-button-square {
  display: flex;
  align-items: center;      /* vertical centering */
  justify-content: center;  /* horizontal centering */
  text-align: center;

  color: #739D89 !important;
  border-color: #739D89 !important;
  background: #E3F0EB !important;
  font-size: 20px !important;
  line-height: 24px !important;
  letter-spacing: 0.17em !important;
  min-width: 300px !important;
  min-height: 300px !important;
  border-radius: 96px !important;
  border-width: 3px !important;
}

.kukus-button-square p {
  margin: 0; /* avoid extra vertical offset */
  font-size: 20px !important;
  line-height: 24px !important;
  letter-spacing: 0.17em !important;
  text-align: center !important;
}

.kukus-button-square:hover {
  color: #E3F0EB !important;
  background: #739D89 !important;
}

.et_pb_row_0_tb_header {
  border-bottom-width: 2px !important;
}

@media (max-width: 980px) {
  /* Hide certain elemenst on mobile devices */
  .kukus-mobil-hide {
    display: none !important;
  }

  .et_pb_section.kukus-hero .hi-kukus-garden {
	margin-left: 4vw !important;	
  }
	
  * {
    /* max-width: 100vw !important; */
    box-sizing: border-box !important;
  }
  .animal-row {
    padding: 0 0 !important;
  }
  .animal-grid-section {
    padding: 0 0 !important;
  }
  .kukus-garden-ev .kukus-logo-icon {
    position: relative !important;
    text-align: center !important;
    width: 100vw !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin-bottom: 15px !important;
    padding: 0 20px !important; /* Screen edge buffer */
  }
  
  .kukus-garden-ev .kukus-logo-icon img,
  .kukus-garden-ev .kukus-logo-icon svg {
    margin-top: 80px !important;
    max-width: 121px !important;
    display: block !important;
  }
	.et_mobile_menu .menu-item-has-children > a {
		background-color: unset !important;
	}
  /* Hide KUKUS GARDEN top item */
  #mobile_menu1 li.et_first_mobile_item {
    display: none !important;
  }
  /* Target exact HELFEN menu item */
  #mobile_menu1 li.menu-item-2609 {
    align-items: center !important;
    justify-content: center !important;
    display: flex !important;
    text-align: center !important;
    padding: 12px 0 24px 0 !important; /* Top/bottom 12/24px like others, left and right none for alignment */
    margin: 0 auto !important;
  }
  
  #mobile_menu1 li.menu-item-2609 > a {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
    flex: 0 0 auto !important;
    width: 155px !important; /* Tighter fit for "HELFEN" */
    height: 36px !important;
    line-height: 32px !important;
    font-size: 22px !important; /* Match other items' readability */
    font-weight: 600 !important;
	letter-spacing: 0.17em !important;
    color: #739D89 !important;
    background: #E3F0EB !important;
    border-radius: 90px !important;
    box-sizing: border-box !important;
    padding: 0 12px !important; /* Minimal padding */
    margin: 0 auto !important;
  }
  
  #mobile_menu1 li.menu-item-2609 > a:hover {
    background: #CFA379 !important;
    color: #E3F0EB !important;
    opacity: 1 !important;
  }
  /* no margins on hamburger menu */
  .et_mobile_nav_menu {
	margin: 0 0 0 0 !important;
  }
  /* center mobile sub menu (BEWOHNER) */
  /* 1. Kill alle Padding/Margin auf Submenu bis auf padding-left */
  #mobile_menu1 .sub-menu,
  #mobile_menu1 ul.sub-menu {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    margin: 0 !important;
    
    /* Dynamisch + 12px Puffer */
    min-height: calc(100% + 12px) !important;
    height: auto !important;
    
    background: #739d89 !important;
  }
  
  /* 2. Submenu List Items */
  #mobile_menu1 .sub-menu li,
  .et-menu-nav .sub-menu li,
  .et_pb_menu .sub-menu li {
    width: auto !important;
    flex-basis: auto !important;
    min-width: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
  }
  
  /* 3. Submenu Links - Höchste Spezifität */
  #mobile_menu1 .sub-menu li a,
  #mobile_menu1 li.menu-item-2614 .sub-menu li a {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding: 16px 12px !important;  /* Nur top/bottom + symmetrisch */
    margin: 0 auto !important;
    display: inline-block !important;
    width: fit-content !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
  
  /* 4. Override hartnäckige Divi Rules */
  .et_pb_menu .et_mobile_menu ul.sub-menu {
    text-align: center !important;
  }
  /* Mehr Abstand für Submenu */
  #mobile_menu1 .sub-menu {
    margin-top: 12px !important;    /* Abstand oben */
    margin-bottom: 12px !important; /* Abstand unten */
  }
  
  /* Optional: Erstes/letztes Submenu-Item */
  #mobile_menu1 .sub-menu li:first-child a {
    margin-top: 8px !important;
  }
  #mobile_menu1 .sub-menu li:last-child a {
    margin-bottom: 8px !important;
  }
  #mobile_menu1 li.menu-item-2614 > a {
    position: relative;
  }
  /* DEIN Code + SVG für BEIDE Zustände */
  #mobile_menu1 li.menu-item-2614 > a[href="#"]{
    font-size: 0 !important;
    height: 58px !important;
    line-height: 58px !important;
    margin: 0 !important;
    padding: 0 !important;
    /* padding-left: 54px !important; */
    display: block !important;
    text-align: center !important;
    position: relative;  /* Für ::after */
  }
  
  /* BEWOHNER Text (BEIDE Zustände) */
  #mobile_menu1 li.menu-item-2614 > a[href="#"]::before {
    content: "BEWOHNER";
    font-size: 22px !important;
    color: #E3F0EB !important;
    line-height: inherit !important;
    display: inline !important;
    vertical-align: middle !important;
  }
  
  /* SVG ::after - EIN Rule für BEIDE Zustände */
  #mobile_menu1 li.menu-item-2614 > a[href="#"]::after {
    content: '';
    display: inline-block !important;
    width: 16px !important;
    height: 9px !important;
    vertical-align: middle !important;
    margin-left: 6px !important;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDE2IDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE1IDhMOC4wMDAzNyAxTDEgOCIgc3Ryb2tlPSIjRTNGMEVCIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+");
    background-size: contain !important;
    background-repeat: no-repeat !important;
    transition: transform 0.3s ease !important;
	transform: rotate(180deg) !important; /* Umgekehrt */
  }
  
  /* NUR Transform ändert sich */
  #mobile_menu1 li.menu-item-2614.open > a[href="#"]::after {
    transform: rotate(0deg) !important;
  }
  
  /* Toggle ausblenden */
  #mobile_menu1 li.menu-item-2614 a.mobile-toggle {
    display: none !important;
  }

	/* Mobile Menu: Einfaches SVG X (22px) - KISS */
	.mobile_menu_bar {
		position: relative !important;
		width: 40px !important;
		height: 40px !important;
	}

	.mobile_nav.opened .mobile_menu_bar:before {
		opacity: 0 !important;
	}

	.mobile_nav.opened .mobile_menu_bar {
		background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22.3965 22.3962L0.70733 0.707086' stroke='%23E3F0EB' stroke-width='2'/%3E%3Cpath d='M0.850098 22.7068L22.5393 1.01763' stroke='%23E3F0EB' stroke-width='2'/%3E%3C/svg%3E") !important;
		background-size: 22px 22px !important;
		background-repeat: no-repeat !important;
		background-position: center !important;
	}
	.et_pb_row--with-menu {
  		padding: unset !important;
	}
	.so-ein-blick img {
		max-height: 400px !important;
	}
}

/* KUKUS GARDEN LOGO TEXT - Override global p */
.kukus-garden-menu .et_pb_text_inner p,
	.et_pb_text_0_tb_header p {
		font-size: 20px !important;  /* Matches menu */
}
/* LOGO hover */
.kukus-garden-menu .et_pb_text_inner p:hover,
.et_pb_text_0_tb_header p:hover {
    font-weight: 400 !important;
}

@media (min-width: 981px) {
  /* BULLETPROOF: Korrekte Classes */
  #menu-hauptmenue li.menu-item-2614 > a,
  #menu-hauptmenue li.menu-item-2611 > a,
  #menu-hauptmenue li.menu-item-205 > a {
    position: relative !important;
    font-size: 20px !important;
    letter-spacing: 0.17em !important;
    color: #e3f0eb !important;
    white-space: nowrap !important;
    font-weight: 600 !important;
    display: block !important;
  }
  
  /* Thin duplicates */
  #menu-hauptmenue li.menu-item-2614 > a::before { content: "BEWOHNER" !important; }
  #menu-hauptmenue li.menu-item-2611 > a::before { content: "KONTAKT" !important; }
  #menu-hauptmenue li.menu-item-205 > a::before { content: "SHOP" !important; }
  
  #menu-hauptmenue li.menu-item-2614 > a::before,
  #menu-hauptmenue li.menu-item-2611 > a::before,
  #menu-hauptmenue li.menu-item-205 > a::before {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    font-weight: 400 !important;
    font-size: 20px !important;
    letter-spacing: 0.17em !important;
    color: transparent !important;
    z-index: 1 !important;
  }
  
  /* Hover */
  #menu-hauptmenue li.menu-item-2614 > a:hover::before,
  #menu-hauptmenue li.menu-item-2611 > a:hover::before,
  #menu-hauptmenue li.menu-item-205 > a:hover::before {
    color: #e3f0eb !important;
    z-index: 2 !important;
  }
  
  #menu-hauptmenue li.menu-item-2614 > a:hover,
  #menu-hauptmenue li.menu-item-2611 > a:hover,
  #menu-hauptmenue li.menu-item-205 > a:hover {
    color: transparent !important;
    z-index: 1 !important;
  }

  /* Sub-menu items base styles */
  #menu-hauptmenue li.menu-item-2614 .sub-menu li > a {
    position: relative !important;
	font-size: clamp(11px, 1.11vw, 20px) !important; /* Smooth scaling from 1024px to 1800px */
    letter-spacing: 0em !important;
    color: #e3f0eb !important;
    white-space: nowrap !important;
    font-weight: 600 !important;
    display: inline-block !important;
  }
  
	#menu-hauptmenue li.menu-item-2614 .sub-menu li > a {
	  position: relative !important;
	  display: inline-block !important;
	  font-size: clamp(11px, 1.11vw, 20px) !important;
	  letter-spacing: 0em !important;
	  white-space: nowrap !important;
	  font-weight: 600 !important;
	  color: #e3f0eb !important;
	  box-sizing: border-box !important;
	}

	#menu-hauptmenue li.menu-item-2614 .sub-menu li > a::before {
	  content: var(--link-text) !important;
	  position: absolute !important;
	  inset: 0 !important;
	  font-weight: 400 !important;
	  font-size: inherit !important;
	  letter-spacing: inherit !important;
	  color: transparent !important;
	  pointer-events: none !important;
	  z-index: 1 !important;
	}

	#menu-hauptmenue li.menu-item-2614 .sub-menu li > a:hover::before {
	  color: #e3f0eb !important;
	}

	#menu-hauptmenue li.menu-item-2614 .sub-menu li > a:hover {
	  color: transparent !important;
	}
}

/* Bugfix: keep original header color, no darkening like for Hero images */
.header-color::before,
.header-color *::before {
  background: transparent !important;
  opacity: 0 !important;
}

/* MITGLIEDSCHAFT-VORTEILE – PERFECT ALIGNMENT ALL BREAKPOINTS */
.mitgliedschaften-row {
  width: 100% !important;
  max-width: 1400px;
  margin: 0 auto !important;
  overflow-x: hidden !important;
  display: flex !important; /* BASE FLEX */
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: stretch !important; /* EQUAL HEIGHTS */
  column-gap: 32px !important;
  row-gap: 0px !important;
}

/* KILL ALL DIVI MARGINS/PADDINGS */
.mitgliedschaften-row .mitgliedschaften-col,
.mitgliedschaften-row .mitgliedschaften-text {
  margin: 0 !important;
  padding: 0 !important;
}

/* COLUMNS: FIXED RESPONSIVE WIDTHS + FLEX */
.mitgliedschaften-row .mitgliedschaften-col {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* TEXT MODULES: PERFECT FILL + BACKGROUND ALIGN */
.mitgliedschaften-row .mitgliedschaften-text {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  height: 100% !important;
  min-height: 280px !important; /* Minimum consistent height */
  box-sizing: border-box !important; /* Include padding/border */
}

.mitgliedschaften-text .et_pb_text_inner {
  flex-grow: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: 40px !important; /* Uniform inner padding */
  margin: 0 !important;
}

@media (min-width: 1361px) {
  .mitgliedschaften-row .mitgliedschaften-col {
    flex: 0 1 300px !important;
    max-width: 300px !important;
  }
}

/* 2x2 + 3x1: Perfect 50%/33% */
@media (max-width: 1360px) and (min-width: 801px) {

  /* Basis wie bisher: 2 Spalten nebeneinander */
  .mitgliedschaften-row .mitgliedschaften-col {
    flex: 0 1 calc(50% - 22px) !important;
    max-width: calc(50% - 22px) !important;
  }

  /* Kleber: Kacheln enger zusammenrücken, ohne das Grid zu zerbrechen */
  .mitgliedschaften-row{
    max-width: 800px !important;       /* sanfter Kleber für den ganzen Block */
    margin-left: auto !important;
    margin-right: auto !important;
    column-gap: 0 !important;
    row-gap: 60px !important;
    padding-bottom: 60px !important;
  }
}

/* MOBILE STACK: Full width centered */
@media (max-width: 800px) {
  .mitgliedschaften-row {
    flex-direction: column !important;
    align-items: center !important;
    gap: 28px !important;
  }
  
  .mitgliedschaften-row .mitgliedschaften-col {
    flex: 0 1 340px !important;
    width: 100% !important;
    max-width: 340px !important;
  }
}

/* Full width on desktop, gradual zoom and side crop on smaller screens */
.kukus-image-wide img {
  width: 100vw;
  max-width: 100vw;
  height: clamp(400px, 100vw * 0.6, 600px);
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  display: block;
  object-fit: cover;
  object-position: center center;
}

/* Mobile-Ansicht */
@media (max-width: 768px) {
  .animals-table tr {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    row-gap: 15px;
    padding: 25px 20px;
    border-bottom: 1px solid #8B9D8E;
    position: relative;
  }
  
  /* Entferne ALLE Borders von TDs im Mobile */
  .animals-table td {
    padding: 0 !important;
    border: none !important;
    border-bottom: none !important;
    background-image: none !important;
  }
  
  /* ANGEKOMMEN & ABSCHIED: letzte Linie im schmalen Mobile ausblenden */
  .animals-table tr:last-child,
  .animals-arrived-table tr:last-child {
    border-bottom: none !important;
  }

  /* Erste Zeile: Icon + Name */
  .animal-icon {
    position: absolute;
    left: 20px;
    top: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .animal-name {
    grid-row: 1;
    grid-column: 1;
    font-weight: 500;
    text-align: center;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
  }
  
  /* Zweite Zeile: Jahreszahlen links und rechts */
  .animal-birth {
    grid-row: 2;
    grid-column: 1;
    font-size: 0.9em;
    text-align: left;
    padding-left: 20px !important;
  }
  
  .animal-death {
    grid-row: 2;
    grid-column: 1;
    font-size: 0.9em;
    text-align: right;
    padding-right: 20px !important;
  }
  
  /* Verstecke Desktop-Labels */
  .label-desktop {
    display: none;
  }
  
  /* Füge Symbole hinzu */
  .animal-birth:before {
    content: "* ";
  }
  
  .animal-death:before {
    content: "† ";
  }
}

/* Mobile-Ansicht für ANGEKOMMEN Tiere */
@media (max-width: 768px) {
  .animals-arrived-table tr {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto auto;
    row-gap: 10px;
    padding: 20px;
    border-bottom: 1px solid #8B9D8E;
    position: relative;
  }
  
  /* Icon - weiter rechts positioniert */
  .animals-arrived-table .animal-icon {
    position: absolute;
    left: clamp(40px, 12%, 90px);
    top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  /* Name - erste Zeile, zentriert */
  .animals-arrived-table .animal-name {
    grid-row: 1;
    grid-column: 2;
    font-weight: 500;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 !important;
  }
  
  /* Status - zweite Zeile, volle Breite */
  .animals-arrived-table .animal-status {
    grid-row: 2;
    grid-column: 1 / 3;
    font-size: 0.85em;
    text-align: center;
    padding: 0 20px !important;
  }
  
  /* Location - verstecken im Mobile */
  .animals-arrived-table .animal-location {
    display: none !important;
  }
  
  /* Entferne ALLE Borders von TDs */
  .animals-arrived-table td {
    padding: 0 !important;
    border: none !important;
    border-bottom: none !important;
    background-image: none !important;
  }
}

.tile-text .et_pb_text_inner {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  height: 100% !important;
  padding: 20px !important;
}

.tile-text .et_pb_text_inner h1 {
  margin: 0 !important;
  padding: 0 !important;
}

.tile-text .et_pb_text_inner p {
  margin: 0 !important;
}

/* DESKTOP (Grid für gleiche Höhen) */
@media (min-width: 981px) {
  /* guarantees min 20px on both sides at all desktop widths */
  #helfer-urlaub-section {
    padding-left: 20px !important;
    padding-right: 0 !important;
  }

  /* row: override Divi row sizing/padding */
  #helfer-urlaub-section .helfer-urlaub-container.et_pb_row {
    display: flex !important;
    justify-content: center;
    align-items: stretch;
    column-gap: 20px;                             /* visual gap between boxes */
    max-width: calc(2 * 660px + 20px) !important; /* two 660px cards + 20px gap */
    margin: 0 auto !important;                    /* centered inside section */
    padding: 0 !important;                        /* no extra side padding */
  }

  /* columns: cap width so boxes don’t grow past 660px */
  #helfer-urlaub-section .helfer-col,
  #helfer-urlaub-section .urlaub-col {
    flex: 1 1 0 !important;
    max-width: 660px !important;
    display: flex;
    align-items: stretch;
    padding: 0 !important;
    box-sizing: border-box;
  }

  #helfer-box,
  #urlaub-box {
    width: 100%;
    height: 100%;                            /* stretch with content */
    border: 3px solid #739D89;
    border-radius: 96px;
    padding: 64px 32px;
    box-sizing: border-box;
    text-align: center;
    display: flex;
    flex-direction: column;
  }

  #helfer-box h2,
  #urlaub-box h2 {
    color: #CFA379;
    font-family: 'El Messiri', serif;
    font-size: 48px;
    margin: 0 0 20px 0;
  }
  
  .helfer-subtitle {
    color: #CFA379;
    font-family: 'Barlow', sans-serif;
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.17em;
    line-height: 24px;
    margin: 0 0 30px 0;
  }
  
  .helfer-toggle-btn {
    display: none;
  }
  
  .helfer-content-hidden p {
    text-align: center;
    font-family: 'Barlow', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 31px;
    color: #3D534A;
    margin: 0;
  }
}

/* MOBILE */
@media (max-width: 980px) {

  /* outer boxes (Divi IDs) */
  #helfer-box,
  #urlaub-box {
    width: 341px;
    min-height: 341px;
    max-width: 90vw;
    border: 3px solid #739D89;
    border-radius: 80px;
    padding: 40px 25px;
    box-sizing: border-box;
    margin: 0 auto 30px auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    position: relative;
  }

  /* inner content wrappers (new ids) */
  #helfer-box-content,
  #urlaub-box-content {
    display: flex;
    flex-direction: column;
    align-items: center;      /* centers subtitle + button */
    justify-content: flex-start;
    gap: 20px;
    width: 100%;
    height: 100%;
  }

  /* open state on outer box */
  #helfer-box.is-open,
  #urlaub-box.is-open {
    height: auto;
    padding-bottom: 60px;
  }

  /* subtitle styling */
  .helfer-subtitle {
    color: #CFA379;
    font-family: 'Barlow', sans-serif;
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.17em;
    line-height: 24px;
    margin-bottom: 20px;
  }

  /* hidden/visible content */
  .helfer-content-hidden {
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  #helfer-box.is-open .helfer-content-hidden,
  #urlaub-box.is-open .helfer-content-hidden {
    display: block;
    opacity: 1;
    margin-bottom: 20px;
  }

  /* MEHR / WENIGER button */
  .helfer-toggle-btn {
    background: none;
    border: none;
    font-family: 'Barlow', sans-serif;
    font-weight: 600;
    font-size: 20px;
    letter-spacing: 0.17em;
    text-transform: uppercase;
    color: #3D534A;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0;
    margin-top: auto;         /* pushes button to bottom of inner content */
  }

  .toggle-text {
    text-decoration: underline;
    text-underline-offset: 4px;
  }

  .toggle-text::before {
    content: 'MEHR';
  }

  #helfer-box.is-open .toggle-text::before,
  #urlaub-box.is-open .toggle-text::before {
    content: 'WENIGER';
  }

  .toggle-arrow {
    display: inline-block;
    width: 17px;
    height: 10px;
    background-image: url('data:image/svg+xml;utf8,<svg width="17" height="10" viewBox="0 0 17 10" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 8.5L8.50037 1.5L1.5 8.5" fill="none" stroke="%233D534A" stroke-width="3" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform 0.3s ease;
    transform: rotate(180deg);
  }

  #helfer-box.is-open .toggle-arrow,
  #urlaub-box.is-open .toggle-arrow {
    transform: rotate(0deg);
  }
}

/* DESKTOP: alles sichtbar, kein Button */
@media (min-width: 981px) {
  .kg-moreless__content { max-height: none !important; overflow: visible !important; }
  .kg-moreless__btn { display: none !important; }
}

/* MOBILE: default = Text versteckt, nur MEHR */
@media (max-width: 980px) {
  .kg-moreless__content{
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s ease;
  }
  .kg-moreless.is-open .kg-moreless__content{
    max-height: 3000px; /* genug für langen Text */
  }

  .kg-moreless__btn{
    margin-top: 18px;
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    font-family: 'Barlow', sans-serif;
    font-weight: 600;
    font-size: 20px;
    letter-spacing: 0.17em;
    text-transform: uppercase;
    color: #3D534A;
  }

  .toggle-text{
    text-decoration: underline;
    text-underline-offset: 4px;
  }
  .toggle-text::before{ content: 'MEHR'; }
  .kg-moreless.is-open .toggle-text::before{ content: 'WENIGER'; }

  .toggle-arrow{
    display: inline-block;
    width: 17px;
    height: 10px;
    background-image: url('data:image/svg+xml;utf8,<svg width="17" height="10" viewBox="0 0 17 10" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 8.5L8.50037 1.5L1.5 8.5" fill="none" stroke="%233D534A" stroke-width="3" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform .25s ease;
    transform: rotate(180deg);
  }
  .kg-moreless.is-open .toggle-arrow{ transform: rotate(0deg); }
}

/* Remove hover color on mobile menu */
.et_mobile_menu li a:hover,
.nav ul li a:hover {
  background-color: transparent !important;
  opacity: 1 !important;
}

/* MOBILE/TABLET – KONTAKT hero exactly 393×385 */
@media (max-width: 980px) {

  /* 1: lock hero box */
  .header-hero {
    --hero-height: auto !important;          /* kill 27vh logic */
    padding-bottom: 0 !important;            /* no extra height */
    height: 385px !important;
    min-height: 385px !important;
    overflow: hidden !important;
    background-position: center center !important;
    background-size: cover !important;
  }

  .header-hero::before {
    height: 385px !important;
  }

  /* 3: title block – pull it DOWN, not with huge margin-top */
  .header-hero-title {
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
  }

  .header-hero-title h1,
  .header-hero-title .et_pb_text_inner h1 {
    font-size: clamp(49px, 6vw, 72px) !important;
    line-height: clamp(48px, 6vw, 70.5px) !important;
    margin: 0 !important;                   /* remove 27vh top margin */
    top: auto !important;
    transform: none !important;
    text-align: left !important;
  }
  
/* Specificity (1,2,0) – beats Divi's #page-container .et_pb_section rules */
  #page-container .et_pb_section.header-color {
    height: 385px !important;
    max-height: 385px !important;
    min-height: 0 !important;
    padding: 0 !important;
    position: relative !important;
	margin-top: -120px !important;
  }

  #page-container .et_pb_section.header-color .header-color-row,
  #page-container .et_pb_section.header-color > .et_pb_row {
    width: 100% !important;
    max-width: 100% !important;
    height: 385px !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    position: static !important;
  }

  #page-container .et_pb_section.header-color .header-color-col {
    padding: 0 !important;
    width: 100% !important;
  }

  /* Absolute pin to bottom-left — immune to flex/row issues */
  #page-container .et_pb_section.header-color .header-color-title {
    position: absolute !important;
    bottom: 102px !important;
    left: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 2 !important;
  }

  #page-container .et_pb_section.header-color .header-color-title h1,
  #page-container .et_pb_section.header-color .header-color-title .et_pb_text_inner h1 {
    font-size: clamp(49px, 12vw, 72px) !important;
    line-height: 1.1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Compound selector → wins by higher specificity (0,3,0) vs (0,1,0) */
  .et_pb_section.header-color .header-color-row {
    padding-top: 0 !important;
    height: 385px !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: flex-end !important;
  }
}

/* FIX 1: kills padding-bottom pushing row taller at ≤768px */
@media (max-width: 768px) {
  .et_pb_section.header-color .header-color-row,
  .et_pb_section.header-color .header-color-col,
  .et_pb_section.header-color {
    padding-bottom: 0 !important;
  }
}

.et_pb_menu0_tb_header .et-menu-nav li.menu-item-2614.mega-menu ul.sub-menu {
  position: fixed !important;
  overflow-x: hidden !important;
  left: 50vw !important;
  transform: translateX(-50%) !important;
  width: min(90vw, 1800px) !important;
  max-width: calc(100vw - 40px) !important;
  top: clamp(80px, 7vw, 100px) !important;

  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0 12px !important;
  padding: 12px 40px !important;
  justify-content: center !important;

  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  z-index: 99999 !important;
  margin: 0 !important;
  right: auto !important;
}

/* Prevent horizontal page overflow - BOTTOM OF CSS */
html, body {
  overflow-x: clip !important;
}

#page-container {
  overflow-x: clip !important;
}

/* GLOBAL OVERFLOW PREVENTION - BOTTOM OF CSS */
@media (max-width: 980px) {
  * {
    /* max-width: 100vw !important; */
    box-sizing: border-box !important;
  }
  html, body, #page-container {
    overflow-x: hidden !important;
  }
}