/*
 Theme Name:   OceanWP Child
 Description:  Child Theme des high-performance WP-Theme OceanWP
 Author:       Philipp Limbeck
 Author URI:   https://insyde.at/
 Template:     oceanwp
 Version:      1.0
 Text Domain:  oceanwp-child
*/

/* overwrite general settings of oceanwp for focus of links (black border) */
#main a:focus,
#site-header a:focus,
#footer a:focus{
	outline: 0px !important;
}

#main #content-wrap {
	padding-top: 0px !important;
}

.woocommerce-page #main div.page-description>p:first-child{
	display: none;
}

#wrap #site-header{
	background-color: var(--farbe-white);
}

ul.products li.product div.wc-product-upper{
	text-align: center;
}

.woocommerce-page.archive,
.page-id-460 {
	background-color: #e8ebec;
}

.nomargin-bottom {
	margin-bottom: 0px !important;
}

.nopadding-top {
	padding-top: 0px !important;
}

a {
	color: var(--farbe-blue) !important;
}

a:hover {
	color: var(--farbe-hook) !important;
}

/**********/
/* FARBEN */
/**********/


:root {
    --farbe-white: #fffcfa; /* Nature White */
    --farbe-basic: #96917d; /* Grün-Grau */
    --farbe-hook: #ffe164; /* Gelb */
    --farbe-blue: #073c48; /* Blau */
	--farbe-original: #6d8763; /* Grün */
	--farbe-chili: #c35944; /* Orange-Rot */
	--farbe-bbq: #da8e42; /* Orange */
	--farbe-knoblauch: #967c9b; /* Lila */
	--farbe-pute: #c56591; /* Rosa */
	--farbe-wild: #0f2f2f; /* Dunkles Grün */
	--farbe-hotchili: #2d1d1d; /* Dunkles Rot-Braun */
}

/* Abstufungen der Farben in jeweils 25% - 15% - 5% für Light */


/**********/
/* FONTS */
/********/

@font-face {
	font-family: 'Hydra';
	src: url('/wp-content/themes/oceanwp-child/assets/fonts/Hydra-Bold/Hydra-Bold.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}


/* Roundkey Light */
@font-face {
	font-family: 'Roundkey';
	src: url('/wp-content/themes/oceanwp-child/assets/fonts/Roundkey/Roundkey-Regular.ttf') format('truetype');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

/* Roundkey Regular */
@font-face {
	font-family: 'Roundkey';
	src: url('/wp-content/themes/oceanwp-child/assets/fonts/Roundkey/Roundkey-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/* Roundkey Medium */
@font-face {
	font-family: 'Roundkey';
	src: url('/wp-content/themes/oceanwp-child/assets/fonts/Roundkey/Roundkey-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

/* Roundkey "Fake Bold" (700 → mapped auf Medium) */
@font-face {
	font-family: 'Roundkey';
	src: url('/wp-content/themes/oceanwp-child/assets/fonts/Roundkey/Roundkey-Medium.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* Roundkey Light Oblique */
@font-face {
	font-family: 'Roundkey';
	src: url('/wp-content/themes/oceanwp-child/assets/fonts/Roundkey/Roundkey-LightOblique.ttf') format('truetype');
	font-weight: 300;
	font-style: italic;
	font-display: swap;
}

a.menu-link {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(1.1rem, 1.8vw + 8px, 30px) !important;
	font-weight: 400;
	color: var(--farbe-blue);
	line-height: 24px;
	letter-spacing: 0.72px;
}

#site-navigation-wrap .dropdown-menu > li > a:hover,
#site-navigation-wrap .dropdown-menu > .current-menu-item > a:hover {
	color: var(--farbe-hook) !important;
}

body h1,
body h2 {
	font-family: 'Hydra', sans-serif;
	font-size: clamp(3rem, 2.5vw + 45px, 90px);
	line-height: clamp(3.1rem, 2.5vw + 46px, 91px);
	color: var(--farbe-blue);
	text-transform: uppercase;
}

body h3 {
	font-family: 'Roundkey', sans-serif;
	font-weight: 700;
	font-size: clamp(1.75rem, 1.4vw + 25px, 50px);
	color: var(--farbe-basic);
	text-transform: uppercase;
}

body h4 {
	font-family: 'Roundkey', sans-serif;
	font-weight: 700;
	font-size: clamp(1.75rem, 1.4vw + 25px, 50px);
	color: var(--farbe-blue);
	text-transform: uppercase;
}


body p {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(1.125rem, 0.9vw + 14px, 30px);
	font-weight: 400;
	color: var(--farbe-blue);
	line-height: clamp(1.4rem, 0.9vw + 15px, 31px);
	letter-spacing: 0;
}


span.biggertext {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(1.25rem, 1.1vw + 18px, 35px);
	font-weight: 400;
	color: var(--farbe-blue);
	letter-spacing: 0;
}

body #mobile-fullscreen ul li a {
	font-family: 'Roundkey', sans-serif;
}




/**************************/
/* HEADER - Logo und Menü */
/**************************/

/* Nichts abschneiden */
#site-header,
#site-header #site-navigation-wrap {
	overflow: visible;
}

/* Center Header: Logo-Wrapper bleibt im Layout */
#site-header.center-header #site-navigation-wrap .middle-site-logo {
	position: relative;
	height: 140px;              /* Header-Höhe */
	width: 24%;                /* laut Inspector bei dir */
	overflow: visible;
	z-index: 20;
}

/* Logo selbst hängt unter dem Header */
#site-header.center-header #site-navigation-wrap .middle-site-logo a {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	z-index: 50;
}

/* Logo-Größe FIX */
#site-header.center-header #site-navigation-wrap .middle-site-logo img {
	height: 240px;
	width: auto;
	max-width: none;
	display: block;
}

/* Platz schaffen für das überhängende Logo */
#main {
	padding-top: 140px;
}

/* Runder Logo-Hintergrund */
#site-header.center-header #site-navigation-wrap .middle-site-logo a {
	background: var(--farbe-white);
	border-radius: 50%;
	width: 245px;              /* etwas größer als das 240px Logo */
	height: 245px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.menuicons img {
	max-width: 30px;
}

.menuicons img:hover {
	filter: invert(97%) sepia(100%) saturate(3883%) hue-rotate(310deg) brightness(111%) contrast(110%);
}

#site-navigation-wrap .menu-link:hover img{
  filter: invert(97%) sepia(100%) saturate(3883%) hue-rotate(310deg) brightness(111%) contrast(110%);
}

#site-navigation-wrap li.insyde-desktop-cart > a .text-wrap::before {
    content: "";
    display: block;
    width: 28px;
    height: 28px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: filter 0.2s ease;
	background-size: 28px 28px;
}





/* DESKTOP ONLY (ab 801px): Warenkorb-Menüpunkt als Icon + Badge
   Unter 801px greift nichts davon -> Mobile Icons bleiben unberührt
*/

@media (min-width: 801px){

  #site-navigation-wrap li.insyde-desktop-cart{
    display: inline-flex;
    align-items: center;
  }

  #site-navigation-wrap li.insyde-desktop-cart > a{
    position: relative;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    width: 35px;
    height: 35px;

    padding: 0 !important;
    margin-left: 10px;

    line-height: 1 !important;
    vertical-align: middle !important;

    /* Text ausblenden ohne Badge zu killen */
    font-size: 0 !important;
    text-indent: -9999px;
    white-space: nowrap;
    overflow: visible !important;

    /* Icon */
    background-image: url(/wp-content/uploads/2026/02/icon_warenkorb.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 34px 34px !important;

    /* Feinjustierung */
    margin-top: -9px;
  }

  #site-navigation-wrap li.insyde-desktop-cart > a .insyde-cart-count{
    position: absolute !important;
    top: -8px !important;
    right: -10px !important;
    z-index: 99 !important;

    min-width: 20px;
    height: 20px;
    padding: 0 5px;

    border-radius: 999px;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    font-size: 12px !important;
    line-height: 20px !important;
    color: var(--farbe-blue) !important;

    text-indent: 0 !important;
    white-space: nowrap !important;

    background: var(--farbe-hook);
    font-weight: 700;
  }

}

@media (min-width: 801px){
	  #site-navigation-wrap li.insyde-desktop-cart > a:hover{
    filter: invert(97%) sepia(100%) saturate(3883%) hue-rotate(310deg) brightness(111%) contrast(110%);
  }

  #site-navigation-wrap li.insyde-desktop-cart > a:hover .insyde-cart-count{
    filter: none !important;
  }

}

#site-navigation-wrap .left-menu > li + li {
    margin-left: 80px;
}

#site-navigation-wrap .left-menu {
    position: relative;
    left: 40px;
}

@media (max-width: 1330px) {

    #site-navigation-wrap .left-menu > li + li {
        margin-left: 0px;
    }

    #site-navigation-wrap .left-menu {
        left: 0px;
    }

}

/****************/
/* MOBILES MENÜ */
/***************/

.oceanwp-mobile-menu-icon {
	margin-top: 5%;
}

.mobilemenulogo {
  max-width: 50%;
  margin: auto auto;
}

#mobile-fullscreen nav {
	vertical-align: top !important;
  padding: 70px 0 !important;
}

.mobilemenuflag a {
	padding-top: 0px !important;
  border-top: 2px solid var(--farbe-blue);
  margin-top: 20px;
}

@media (max-width: 800px) {
#wrap #site-header {
	max-height: 115px;
}
}

@media (max-width: 800px){
  .insyde-mobile-icons{
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-right: 10px;
  }

  .insyde-mi{
    position: relative;
    display: inline-block;
    width: 28px;
    height: 28px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }

  /* Icons als SVG/PNG hinterlegen */
  .insyde-mi-account{ background-image: url(/wp-content/uploads/2026/02/Profil.svg); }
  .insyde-mi-cart{ background-image: url(/wp-content/uploads/2026/02/icon_warenkorb.png); }

  .insyde-mi-badge{
    position: absolute;
    top: -6px;
    right: -8px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    background: var(--farbe-hook);
    color: var(--farbe-blue);
    font-weight: 700;
  }
	
/* Container (Hamburger + Ihre Icons) als Flex betreiben */
  #site-header .oceanwp-mobile-menu-icon.mobile-right{
    float: none !important;
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
  }

  /* Ihre Icons links vom Hamburger */
  #site-header .oceanwp-mobile-menu-icon.mobile-right > .insyde-mobile-icons{
    order: 1;
  }

  /* Hamburger rechts davon */
  #site-header .oceanwp-mobile-menu-icon.mobile-right > a.mobile-menu{
    order: 2;
  }
}



/************/
/* BUTTONS */
/**********/


/* Peck Brothers Button */
.pb-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 223px;
	height: 64px;
	background-color: var(--farbe-hook); 
	color: var(--farbe-blue) !important; 
	font-family: 'Roundkey', sans-serif;
	font-weight: 700;
	font-size: clamp(1.25rem, 0.9vw + 12px, 30px);
	line-height: 1;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 50px;
	padding-bottom: 3px;
}

.pb-button-center {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	display: flex;
	width: 223px;
	height: 64px;
	background-color: var(--farbe-hook) !important; 
	color: var(--farbe-blue) !important;   
	font-family: 'Roundkey', sans-serif;
	font-weight: 700;
	font-size: clamp(1.25rem, 0.9vw + 12px, 30px);
	line-height: 1;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 50px;
	padding-bottom: 3px;
}

a.pb-button,
a.pb-button-center,
a.media-button {
	text-decoration: none !important;
}

.pb-button:hover,
.pb-button-center:hover{
	color: var(--farbe-blue) !important; 
	text-decoration: none !important;
}

.media-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 5px;
  padding-top: 5px;
  padding-right: 25px;
  padding-left: 25px;
	background-color: var(--farbe-blue);
	color: var(--farbe-white) !important;
	font-family: 'Roundkey', sans-serif;
	font-weight: 700;
	font-size: clamp(1.25rem, 0.9vw + 12px, 30px);
	line-height: 1;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 10px;
	padding-bottom: 5px;
}


.media-button:hover {
	background-color: var(--farbe-blue);
	color: var(--farbe-white) !important;
}

/* NUR Startseiten-Header-Row darf überlappen */
#startseite-header {
	position: relative;
	overflow: visible;
}

/* Bild-Spalte normal */
#startseite-header .bild-im-header {
	position: relative;
	z-index: 10;
}

/* Text-Spalte über das Bild schieben */
#startseite-header .text-im-header {
	position: relative;
	z-index: 20;
	transform: translateX(41%);
}


/* unter 2400px → weniger Overlap */
@media (max-width: 2400px) {
	#startseite-header .text-im-header {
		transform: translateX(30%);
	}
}


/* unter 1900px → weniger Overlap */
@media (max-width: 1999px) {
	#startseite-header .text-im-header {
		transform: translateX(18%);
	}
}

/* unter 1600px → noch weniger Overlap */
@media (max-width: 1860px) {
	#startseite-header .text-im-header {
		transform: translateX(9%);
	}
}

/* Mobile / Tablet → kein Overlap */
@media (max-width: 1060px) {
	#startseite-header .text-im-header {
		transform: translateX(2%);
		padding-left: 15px;
	}
}

div.bild-im-header {
	background-image: url('https://pb.insyde.co.at/wp-content/uploads/2026/01/header_packages_transparent.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left;
}


#startseite-header {
	min-height: 620px;
}

#startseite-header-mobile {
		display: none;
	}

@media (max-width:800px) {
	#startseite-header,
	.geschenkherz {
		display: none;
	}
	#startseite-header-mobile {
		display: block;
	}
}





/* Mobile Header: Padding oben komplett entfernen */
#startseite-header-mobile,
#startseite-header-mobile .vc_row,
#startseite-header-mobile .vc_column_container,
#startseite-header-mobile .vc_column-inner,
div.blauerinfobalken,
div.blauerinfobalken .vc_row,
div.blauerinfobalken .vc_column_container,
div.blauerinfobalken .vc_column-inner{
	padding-top: 0 !important;
	margin-top: 0 !important;
}

div.headertext-mobile {
	padding-left: 15px;
}

/* Newsletter Herz */
.geschenkherz {
	position: fixed !important;
	left: 0px !important;
	bottom: 0;
	z-index: 9999 !important;
	cursor: pointer;
}

.home .geschenkherz {
	position: sticky !important;
	top: 4vw;
}

#geschenkherz-home img{
	position: sticky;
	top: 4vw;
	left: 0;
}


/* auf Tablet etwas kleiner */
@media (max-width: 1150px) {
	.geschenkherz {
		left: 0px !important;
		transform: scale(0.6);
	}
}

.geschenkherz.has-shadow {
    filter: drop-shadow(0 4px 12px rgba(0,0,0,0.25));
}


/* Produkte Karussell Startseite */

/* Grundzustand */
/*
.mySwiper .swiper-slide {
  transition:
    transform 0.4s ease,
    filter 0.4s ease,
    opacity 0.4s ease;
}
*/

/* Ungerade Slides (1 & 3) → blur */

.mySwiper .swiper-slide:not(.swiper-slide-active) {
  filter: blur(10px);
  transform: scale(0.9);
  opacity: 0.6;
  z-index: 1;
}


/* Gerade Slides (Slide 2) → Fokus */

.mySwiper .swiper-slide.swiper-slide-active {
  filter: none;
  transform: scale(1.1);
  opacity: 1;
  z-index: 2;
}


/* Bilder korrekt skalieren */
.mySwiper .swiper-slide img {
  width: 100%;
  height: auto;
  display: block;
}

/* Pagination Wrapper */
.mySwiper .swiper-pagination {
  position: relative;
  margin-top: 70px;
  text-align: center;
}

/* Alle Bullets */
.mySwiper .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background-color: #bfbfbf; /* grau */
  opacity: 1;               /* Swiper überschreibt sonst */
  margin: 0 6px;
  transition: 
    background-color 0.3s ease,
    transform 0.3s ease;
}

/* Aktiver Bullet */
.mySwiper .swiper-pagination-bullet-active {
  background-color: #ffd84d; /* dein Gelb */
  transform: scale(1.2);
}



/* Durchlaufzeile Marquee Startseite */

div.marquee-start,
div.marquee-start .vc_row,
div.marquee-start .vc_column_container,
div.marquee-start .vc_column-inner {
	padding-top: 2px !important;
	padding-bottom: 2px !important;
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

.pb-marquee{
	font-family: 'Roundkey';
  font-size: clamp(1.25rem, 0.9vw + 12px, 30px);
  color: var(--farbe-blue);
  width:100%;
  overflow:hidden;
  white-space:nowrap;
  --pb-marquee-duration: 75s; /* schneller = kleiner */
}

.pb-marquee__track{
  display:flex;
  width:max-content;
  animation: pb-marquee-move var(--pb-marquee-duration) linear infinite;
  will-change: transform;
}

.pb-marquee__content{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  white-space:nowrap;
}

.abstand{
  display:inline-block;
  width:50px;
}

.pb-marquee strong {
  margin: 0 4px;
}

/* Bewegung: genau eine Content-Breite nach links */
@keyframes pb-marquee-move {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}



#mobile-marquee-hook {
  display: none;
}

@media (max-width: 800px) {

  #mobile-marquee-hook {
    display: block !important;
    width: 100% !important;
  }

  /* Originale WPBakery-Zeile auf Mobile weg */
  #startseite-header-marquee.pb-hide-on-mobile {
    display: none !important;
  }

  /* Mobile-Marquee wirklich full width (kein weißer Rand rechts) */
  #pb-marquee-mobile.pb-marquee {
    width: 100vw !important;
    max-width: 100vw !important;
    left: 50% !important;
    margin-left: -50vw !important;
    position: relative !important;
    display: block !important;
	  background-color: var(--farbe-hook);
  }
}





div.blauerinfobalken-heading p {
	font-family: 'Roundkey';
	font-weight: 500;
	color: var(--farbe-white);
	font-size: clamp(3rem, 2.6vw + 40px, 95px);
	line-height: clamp(3.05rem, 2.6vw + 41px, 96px);
	letter-spacing: 1.2px;
}

div.blauerinfobalken-text p {
	font-family: 'Roundkey';
	font-weight: 300;
	color: var(--farbe-white);
	font-size: clamp(1.125rem, 0.9vw + 14px, 30px);
	line-height: clamp(1.4rem, 0.9vw + 15px, 31px);
	letter-spacing: 1px;	
}

div.wirliebenjerky {
	background-image: url('https://pb.insyde.co.at/wp-content/uploads/2026/02/peck_bros_allgemein.jpg');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding-top: 170px;
  padding-bottom: 170px;
}

div.wirliebenjerky-heading p {
	font-family: 'Hydra';
	color: var(--farbe-white);
	font-size: clamp(3rem, 2.5vw + 40px, 90px);
	line-height: clamp(3.05rem, 2.5vw + 41px, 91px);
	text-transform: uppercase;
}

div.wirliebenjerky-text p {
	font-family: 'Roundkey';
	font-weight: 400;
	color: var(--farbe-white);
	font-size: clamp(1.25rem, 1.1vw + 18px, 35px);
	line-height: clamp(1.3rem, 1.1vw + 19px, 36px);
}

@media (max-width: 767px) {
	div.wirliebenjerky-block {
		padding-left: 15px;
	}
	div.wirliebenjerky {
		 padding-bottom: 20px;
	}
}

div.icons-heading p {
	font-family: 'Hydra', sans-serif;
	font-weight: 400;
	font-size: clamp(1.75rem, 1.4vw + 25px, 50px);
	line-height: clamp(2.1rem, 1.4vw + 32px, 57px);
	color: var(--farbe-basic);
}


/*********************/
/* STEAK SNACK STORY */
/*********************/

#steakstorymobile {
	display: none;
}

@media (max-width: 680px) {
	#steakstorymobile {
	display: block;
	}
	#steakstorydesktop {
	display: none;
}
}

span.storyheading {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(3rem, 2.5vw + 45px, 90px);
	line-height: clamp(3.1rem, 2.5vw + 46px, 91px);
	color: var(--farbe-blue);
	text-transform: uppercase;
	letter-spacing: 1.5px;
	font-weight: 700;
}

.pecksnack-text p {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(1.5rem, 1.2vw + 20px, 50px);
  line-height: clamp(1.8rem, 1.2vw + 35px, 65px);
	font-weight: 300;
	letter-spacing: 1.5px;
}

.anderejerky-text p {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(1.5rem, 1.2vw + 20px, 50px);
  line-height: clamp(1.8rem, 1.2vw + 35px, 65px);
	font-weight: 300;
	letter-spacing: 1.5px;
	color: #f21ac7;
}

.storyvergleich {
  display: flex;
  align-items: stretch;
}

.storyvergleich > .vc_column_container {
  display: flex;
}

.storyvergleich > .vc_column_container > .vc_column-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.storyvergleich {
  margin-left: -20px;
  margin-right: -20px;
}

.storyvergleich > .vc_column_container {
  padding-left: 20px;
  padding-right: 20px;
}


.pecksnack-bg {
	background-color: #96917D4D;
background-image: url('https://pb.insyde.co.at/wp-content/uploads/2026/02/austria_flag.png');
background-repeat: no-repeat;
background-position: top right 70px;
	border-radius: 10px;
	min-height: 1140px;
}

.anderejerky-bg {
	background-color: #F21AC71F;
	border-radius: 10px;
	min-height: 1140px;
}

.pecksnack-text,
.anderejerky-text {
		padding-left: 70px !important;
}

/* Bild nach oben ziehen */
.steakbild,
.anderebild {
  position: relative;
  z-index: 5;
  margin-bottom: -220px !important; /* bestimmt wie stark es reinragt */
}

/* Text-Box Abstand nach oben vergrößern */
.storyvergleich .wpb_text_column {
  padding-top: 250px; /* muss größer sein als margin-bottom */
  position: relative;
  z-index: 1;
}

div.versus {
	transform: translateX(-50%);
  left: 50%;
  top: 250px;
	position: absolute;
}

@media (max-width: 1300px) {
	div.versus {
	transform: translateX(-50%);
  left: 50%;
  top: 180px;
	position: absolute;
}
}

@media (max-width: 1090px) {
	div.versus {
	transform: translateX(-50%);
  left: 50%;
  top: 100px;
	position: absolute;
}
}


span.statement {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(1.5rem, 1.2vw + 20px, 50px);
	line-height: clamp(1.5rem, 1.2vw + 20px, 50px);
	color: var(--farbe-basic);
	letter-spacing: 1px;
	font-weight: 300;
}

#vergleichmobile {
	display: none;
}

.versusbild-mobile {
	 margin-bottom: -85px !important;
}

.versusbild-mobile img {
	margin-top: -85px;
}

@media (max-width: 1000px) {
	#vergleichmobile {
	display: block !important;
}
	#vergleichdesktop,
	#versusschrift {
		display: none;
	}
}

#vergleichmobile .anderejerky-bg,
#vergleichmobile .pecksnack-bg {
	min-height: auto;
}

#vergleichmobile div.wpb_text_column.wpb_content_element.pecksnack-text {
	padding-top: 50px !important;
	padding-left: 20px !important;
}

#vergleichmobile div.wpb_text_column.wpb_content_element.anderejerky-text {
	padding-top: 70px !important;
	padding-left: 20px !important;
}

#vergleichmobile .pecksnack-bg {
	background-position: top right 35px;
	padding-bottom: 50px;
}

#zweibrueder-mobile {
	display: none;
}

@media (max-width: 800px) {
	#zweibrueder-desktop {
		display: none;
	}
	#zweibrueder-mobile {
	display: block;
}
}

/* Testimonials */

.strong-view-id-1 .wpmtst-testimonial-inner {
	border-radius: 10px;
}

div.wpmtst-testimonial-field.testimonial-field.testimonial-name {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(1.5rem, 1.2vw + 20px, 50px);
	line-height: clamp(1.5rem, 1.2vw + 20px, 50px);
	color: var(--farbe-blue);
	letter-spacing: 1px;
	font-weight: 700;
	text-transform: uppercase;
}

span.slogan {
	font-family: 'Roundkey', sans-serif;
	font-size: clamp(24px, 2.8vw, 40px);
	color: var(--farbe-basic) !important;
	letter-spacing: 1px;
	font-weight: 300;
}
/* Kreis/Border auf die Controls selbst */
.strong-view .wmslider-prev,
.strong-view .wmslider-next{
  width: 44px;
  height: 44px;
  border: 2px solid var(--farbe-blue);
  border-radius: 50%;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Pseudo-Element (Chevron) sauber zentrieren */
.strong-view .wmslider-prev::before,
.strong-view .wmslider-next::before{
  content: "";
  width: 20px;
  height: 20px;
  position: static;
  display: block;
  background-color: var(--farbe-blue);
  -webkit-mask: var(--mask) center / contain no-repeat;
  mask: var(--mask) center / contain no-repeat;
}

/* Hover: Kreis füllen + Pfeil wird gelb */
.strong-view .wmslider-prev:hover,
.strong-view .wmslider-next:hover{
  background: var(--farbe-blue);
}

.strong-view .wmslider-prev:hover::before,
.strong-view .wmslider-next:hover::before{
  background-color: var(--farbe-hook);
}



/**********/
/* FOOTER */
/**********/


footer#footer.site-footer {
  background-image: url('https://pb.insyde.co.at/wp-content/uploads/2026/02/footerbg.png');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding-top: 70px;
}

footer p,
footer a {
	color: var(--farbe-white) !important;
	font-size: clamp(0.875rem, 0.5vw + 14px, 22px);
  line-height: clamp(1rem, 0.5vw + 14px, 24px);
}

footer a:hover,
div.footer-infotext a:hover {
	color: var(--farbe-hook);
}

span.footernewsletter {
	font-family: 'Roundkey';
	font-weight: 700;
	color: var(--farbe-white);
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
  line-height: clamp(2rem, 1vw + 30px, 49px);
}

div.footer-infotext p,
div.footer-infotext a {
	font-size: clamp(0.875rem, 0.5vw + 14px, 22px);
  line-height: clamp(1rem, 0.5vw + 14px, 24px);
}

span.footerinfoh {
font-size: clamp(1rem, 0.8vw + 15px, 25px);
  line-height: clamp(1.4rem, 0.8vw + 18px, 30px);
font-weight: 500;
	letter-spacing: 0.7px;
}



/****************/
/* WOOCOMMERCE */
/***************/

/*** SHOP ARCHIVE ***/

div.testimonials-shop-unten {
	  background-color: var(--farbe-hook);
}

#shopmobile {
	display: none;
}

@media (max-width: 1000px) {
	#shopdesktop {
		display: none;
	}
	#shopmobile {
		display: block;
	}
}

/* SHOP ARCHIVE GRID */
body.post-type-archive-product.woocommerce ul.products{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 40px;
	max-width: 1600px;
  margin: auto;
}

body.post-type-archive-product.woocommerce ul.products > li.product{
  width: auto !important;
  margin: 0 !important;
	padding-left: 0px !important;
	border-top-left-radius: 10px !important;
	max-width: 375px;
}

/* unter 1300px → 3 Spalten */
@media (max-width: 1300px){
  body.post-type-archive-product.woocommerce ul.products{
    grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 15px;
  }
}

/* unter 940px → 2 Spalten */
@media (max-width: 940px){
  body.post-type-archive-product.woocommerce ul.products{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px; 
  }
}

/* unter 400px → 1 Spalten */
@media (max-width: 400px){
  body.post-type-archive-product.woocommerce ul.products{
    grid-template-columns: repeat(1, minmax(0, 1fr)); 
  }
}

/* Bild im Upper zentrieren */
body.post-type-archive-product .wc-product-upper {
  text-align: center;
}

body.post-type-archive-product .wc-product-upper a.woocommerce-loop-product__link {
  display: flex;
  justify-content: center;
}

body.post-type-archive-product .wc-product-upper img.attachment-woocommerce_thumbnail {
  display: block;
  margin: 0 auto;
}


/* Nur Shop-Archiv Bild  einfärben */


body.post-type-archive-product.woocommerce ul.products > li.product.product_cat-original .wc-product-upper,
ul.products > li.product.pb-cat-all-original .wc-product-upper {
    background-color: #d3d9cd;
    padding: 20px 10px;
    border-radius: 10px 10px 0 0;
}

body.post-type-archive-product.woocommerce ul.products > li.product.product_cat-knoblauch .wc-product-upper,
ul.products > li.product.pb-cat-all-knoblauch .wc-product-upper {
    background-color: #e0d6de;
    padding: 20px 10px;
    border-radius: 10px 10px 0 0;
}

body.post-type-archive-product.woocommerce ul.products > li.product.product_cat-bbq .wc-product-upper,
ul.products > li.product.pb-cat-all-bbq .wc-product-upper {
    background-color: #f4dbc3;
    padding: 20px 10px;
    border-radius: 10px 10px 0 0;
}

body.post-type-archive-product.woocommerce ul.products > li.product.product_cat-chili .wc-product-upper,
ul.products > li.product.pb-cat-all-chili .wc-product-upper {
    background-color: #edcbc3;
    padding: 20px 10px;
    border-radius: 10px 10px 0 0;
}

body.post-type-archive-product.woocommerce ul.products > li.product.product_cat-puten-teriyaki .wc-product-upper,
ul.products > li.product.pb-cat-all-puten-teriyaki .wc-product-upper {
    background-color: #eecfdb;
    padding: 20px 10px;
    border-radius: 10px 10px 0 0;
}

body.post-type-archive-product.woocommerce ul.products > li.product.product_cat-sets .wc-product-upper,
ul.products > li.product.pb-cat-all-sets .wc-product-upper {
    background-color: #e0dcd5;
    padding: 20px 10px;
    border-radius: 10px 10px 0 0;
}

/* Einfärben Ende */



div.pb-price-per-100g {
	display: none;
}

h2.woocommerce-loop-product__title {
	font-family: 'Roundkey';
	font-weight: 300;
	color: var(--farbe-basic);
	font-size: clamp(20px, 1.4vw + 10px, 30px);
	line-height: 1;
	margin-bottom: 0px;
	text-transform: none !important;
}

div.pb-product-untertitel {
	font-family: 'Roundkey';
	font-weight: 700;
	color: var(--farbe-blue);
	font-size: clamp(1.75rem, 1.4vw + 25px, 50px);
	text-transform: uppercase;
	line-height: 1;
}

span.woocommerce-Price-amount.amount bdi,
small.woocommerce-price-suffix {
	font-family: 'Roundkey';
	font-weight: 700;
	color: var(--farbe-blue);
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
}

div.preispro100g,
span.preispro100g {
	font-family: 'Roundkey';
	font-weight: 300;
	color: var(--farbe-basic);
	font-size: clamp(0.875rem, 0.5vw + 10px, 18px);
	padding-top: 7px;
}

div.wc-product-lower,
h2.woocommerce-loop-product__title,
div.pb-product-untertitel {
	background-color: var(--farbe-white);
	padding-left: 15px;
}

@media (max-width: 450px) {
	div.wc-product-lower,
h2.woocommerce-loop-product__title,
div.pb-product-untertitel {
	padding-left: 3px;
}
}

div.pb-product-untertitel {
	padding-bottom: 20px;
}

div.wc-product-lower {
	 border-bottom-right-radius: 10px;
	 border-bottom-left-radius: 10px;
	padding-bottom: 15px;
	padding-top: 15px
}

.wc-product-lower-col.second {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

div.wc-product-lower-col.second {
	padding-left: 15px;
	min-height: 95px;
}

@media (max-width: 1484px) {
	div.wc-product-lower-col.second {
	padding-left: 15px;
	min-height: 120px;
}
}

/* Preis & Preis/100g nebeneinander */
.wc-product-lower-col.second .price,
.wc-product-lower-col.second  {
    display: inline-flex;
    align-items: center;
    margin-right: 0.5rem;
}

/* NEU: Formular immer unter dem Preis */
.wc-product-lower-col.second form.cart {
    flex-basis: 100%;
    width: 100%;
    margin-top: 0.7rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Mengenauswahl und Warenkorb Button */
.loop-quantity-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
}

.custom-quantity {
    display: flex;
    overflow: hidden;
}

.custom-quantity input.qty {
    width: 48px;
    border: none;
    text-align: center;
    font-weight: 600;
	border-radius: 15px;
	background-color: var(--farbe-basic);
	color: var(--farbe-white);
}

.qty-buttons {
    display: flex;
    flex-direction: column;
}

.qty-buttons button {
    width: 32px;
    height: 24px;
    border: none;
    cursor: pointer;
    font-size: 20px;
    line-height: 1;
	background-color: var(--farbe-white);
	color: var(--farbe-basic);
    line-height: 1.1;
    padding: 0;
}


.woocommerce ul.products li.product .button {
	font-family: 'Roundkey';
  text-transform: uppercase !important;
  color: var(--farbe-basic) !important;
  font-size: clamp(1.25rem, 0.3vw + 18px, 30px) !important;
  border: none !important;
}

a.button.product_type_simple {
	min-height: 56px;
	padding-left: 0px !important;
}



/* Mengenauwahl & Warenkorb mobile */

@media (max-width: 965px) {

    .custom-quantity input.qty {
    width: clamp(38px, 3vw, 48px);
}

.qty-buttons button {
    width: clamp(26px, 2.5vw, 32px);
    height: clamp(18px, 2vw, 24px);
}
}

@media (max-width: 595px) {

    .loop-quantity-wrapper {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    /* Mengenauswahl als 3er-Reihe */
    .custom-quantity {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        width: 100%;
        gap: 8px;
    }

    /* Buttons nebeneinander */
    .qty-buttons {
        display: contents; /* wichtig → löst den Wrapper auf */
    }

    /* Reihenfolge definieren */
    .qty-buttons button:first-child {
        order: 1; /* + */
    }

    .custom-quantity input.qty {
        order: 2;
        width: 70px;
        text-align: center;
    }

    .qty-buttons button:last-child {
        order: 3; /* - */
    }

    /* Button darunter volle Breite */
    .woocommerce ul.products li.product .button {
        width: 100%;
        text-align: center;
    }

}

/* Icon rechts im Produktbild */

/* Bild-Wrapper darf NICHT volle Kartenbreite haben */
.wc-product-lower-col.first,
.wc-product-lower-col.first > a,
.wc-product-lower-col.first .pb-product-media,
.wc-product-lower-col.first .pb-product-media a,
.wc-product-lower-col.first .pb-product-media .woocommerce-LoopProduct-link,
.wc-product-lower-col.first .pb-product-media .woocommerce-loop-product__link {
  display: inline-block !important;
  width: auto !important;
  max-width: 100% !important;
	text-decoration: none !important;
}

/* Positionierungs-Container */
.pb-product-media {
  position: relative !important;
}

/* Thumbnail soll den Container "definieren" */
.pb-product-media img {
  display: block !important;
  max-width: 100% !important;
  height: auto !important;
}

/* Icon oben rechts AM Bild */
.pb-product-icon {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 10 !important;
  pointer-events: none;
  line-height: 0;
}

.pb-product-icon img {
  width: clamp(36px, 4vw, 100px);
  height: auto;
  display: block;
}




/* Info Badge links oben */
.wc-product-upper {
	position: relative;
}

.pb-product-badge {
	position: absolute;
	top: 90px;
  left: -100px;
	z-index: 10;
	}

.pb-product-badge--text span {
    transform: rotate(-45deg);
    transform-origin: left top;
    display: inline-block;
	background-color: var(--farbe-hook);
	transform: rotate(-45deg);
	transform-origin: left top;
	padding-left: 100px;
  padding-right: 100px;
  padding-top: 50px;
}

/* alter Preis */
.woocommerce ul.products li.product .price del,
.woocommerce div.product .price del {
    position: relative;
    text-decoration: none;
    font-size: clamp(0.85rem, 0.6vw + 0.6rem, 1rem);
    opacity: 0.7;
}

.woocommerce ul.products li.product .price del::after,
.woocommerce div.product .price del::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 2px;
    background: currentColor;
    transform: translateY(-50%);
}

.woocommerce ul.products li.product .price del .amount {
	text-decoration: none !important;
}



/*************************/
/** SINGLE PRODUCT PAGE **/
/*************************/


/* Single Product Background per Kategorie (PB) */

body.single-product #main #content-wrap {
    padding-top: 120px !important;
}

@media (max-width: 800px) {
	body.single-product #main #content-wrap {
    padding-top: 40px !important;
}
	body.single-product main#main.site-main.clr {
		padding-top: 115px;
	}
}


@media (max-width: 730px) {
	body.single-product #main #content-wrap {
    padding-top: 80px !important;
}
}

/* Default */
body.single-product #main{
  background-color: #e8ebec !important;
}

/* Kategorie-Farben (nutzt die von PHP hinzugefügten Body-Klassen) */
body.single-product.pb-cat-all-original #main{ background-color: #d3d9cd !important; }
body.single-product.pb-cat-all-knoblauch #main{ background-color: #e0d6de !important; }
body.single-product.pb-cat-all-bbq #main{ background-color: #f4dbc3 !important; }
body.single-product.pb-cat-all-chili #main{ background-color: #edcbc3 !important; }
body.single-product.pb-cat-all-puten-teriyaki #main{ background-color: #eecfdb !important; }
body.single-product.pb-cat-all-starter-set #main{ background-color: #e0dcd5 !important; }

/* Marquee */
#product-header-marquee {
  background-color: var(--farbe-hook) !important;
}

body.single-product h1.product_title.entry-title{
  font-family: "Roundkey", sans-serif;
  font-weight: 300;
  font-size: clamp(32px, 2.2vw + 18px, 50px);
  letter-spacing: 1.5px;
  line-height: 1.1;
  color: var(--farbe-basic);
	padding-bottom: 0px;
  border-bottom: none;
	text-transform: none !important;
}

body.single-product .product-untertitel{
  font-family: "Roundkey", sans-serif;
  font-weight: 700;
  font-size: clamp(40px, 5vw, 90px);
  line-height: 0.85;
  letter-spacing: 1.5px;
	color: var(--farbe-blue);
	text-transform: uppercase;
}

div.woocommerce-product-details__short-description p {
	font-family: "Roundkey", sans-serif;
	color: var(--farbe-basic);
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
	padding-bottom: 35px;
}

div.summary.entry-summary {
  max-width: 35%;
  float: left !important;
}

@media (max-width: 1550px) {
	div.summary.entry-summary {
  max-width: 50%;
  float: left !important;
}
}

.woocommerce div.product div.woocommerce-product-details__short-description {
	margin-top: 5px !important;
}

body.single-product .summary .price{
  display: flex !important;
  align-items: baseline;
  gap: 12px;
  flex-wrap: nowrap;
}

body.single-product .summary .price .preispro100g{
  display: inline !important;
  margin: 0 !important;
  white-space: nowrap;
}

body.single-product span.woocommerce-Price-amount.amount bdi,
body.single-product small.woocommerce-price-suffix{
	font-size: clamp(32px, 2.2vw + 18px, 50px);
}

.woocommerce div.product form.cart {
	border-top: none !important;
	border-bottom: none !important;
}

/* Beispiel: jeder Wrapper als eigene Karte */
body.single-product .pb-summary-top,
body.single-product .pb-summary-naehrwerte,
body.single-product .pb-summary-hinweise{
  background: var(--farbe-white);
   border-radius: 10px;
  padding: 28px;
}

/* Abstände zwischen den Blöcken */
body.single-product .pb-summary-naehrwerte{
  margin-top: 35px;
}
body.single-product .pb-summary-hinweise{
  margin-top: 35px;
}

body.single-product .pb-summary-accordion{
  margin-top: 18px;
  display: grid;
  gap: 18px;
}

body.single-product details.pb-acc{
  background: var(--farbe-white);
  border-radius: 10px;
  overflow: hidden;
}

body.single-product .pb-acc__head{
  cursor: pointer;
  padding: 18px 22px;
  font-weight: 700;
  letter-spacing: 0.5px;
  list-style: none;
  position: relative;
	font-family: "Roundkey", sans-serif;
	color: var(--farbe-blue);
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
	text-transform: uppercase;
}

body.single-product .pb-acc__head::-webkit-details-marker{
  display: none;
}

body.single-product .pb-acc__head:after{
  content: "+";
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  font-weight: 700;
}

body.single-product details[open] > .pb-acc__head:after{
  content: "–";
}

body.single-product .pb-acc__body{
  padding: 18px 22px 24px 22px;
}

/* SINGLE: Wrapper darf das Bild nicht verkleinern */
body.single-product .pb-single-image-wrap{
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Das eigentliche Bild darf wieder die volle Breite im Wrapper nehmen */
body.single-product .pb-single-image-wrap img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
}

/* SINGLE: Icon-Position erzwingen (rechts unten) und ALLE Center-Regeln killen */
body.single-product .pb-single-image-wrap .pb-product-icon--single{
  position: absolute !important;
  right: 120px !important;
  bottom: 12px !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: 9999 !important;
  pointer-events: none;
  line-height: 0;
}

/* SINGLE: Icon-Position mobile */
@media (max-width: 1800px) {
body.single-product .pb-single-image-wrap .pb-product-icon--single{
  position: absolute !important;
  right: 60px !important;
  bottom: 12px !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: 9999 !important;
  pointer-events: none;
  line-height: 0;
}
}

@media (max-width: 1320px) {
body.single-product .pb-single-image-wrap .pb-product-icon--single{
  position: absolute !important;
  right: 30px !important;
  bottom: 12px !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: 9999 !important;
  pointer-events: none;
  line-height: 0;
}
}

@media (max-width: 1100px) {
body.single-product .pb-single-image-wrap .pb-product-icon--single{
  position: absolute !important;
  right: 0px !important;
  bottom: 12px !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: 9999 !important;
  pointer-events: none;
  line-height: 0;
}
}

@media (max-width: 500px) {
body.single-product .pb-single-image-wrap .pb-product-icon--single{
  position: absolute !important;
  right: -30px !important;
  bottom: -60px !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: 9999 !important;
  pointer-events: none;
  line-height: 0;
}
}


body.single-product .pb-single-image-wrap img{
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 auto !important;
}

/* Icon-Größe */
body.single-product .pb-single-image-wrap .pb-product-icon--single img{
    width: clamp(150px, 4.5vw, 250px) !important;
  height: auto !important;
  max-width: none !important;
}

@media (max-width: 767px) {
body.single-product .pb-single-image-wrap .pb-product-icon--single img{
    width: clamp(120px, 4.5vw, 250px) !important;
  height: auto !important;
  max-width: none !important;
}
}


/* Woocommerce Kill the Zoom Produktbild
.woocommerce div.product div.images img {
	width: 50%;
	display: inline;
} */

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	text-align: center;
}

.woocommerce span.onsale {
	display: none;
}

/* Nährwerte Tabelle Single Product */

table.naehrwertetabelle {
	color: var(--farbe-blue);
}


table.naehrwertetabelle td {
	border-bottom: 1px solid var(--farbe-blue);
	font-family: "Roundkey", sans-serif;
	font-size: clamp(1.25rem, calc(1.2vw + 0.6rem), 1.563rem);
line-height: 1.28; /* entspricht ca. 32px bei 25px Font */
letter-spacing: 1.5px;
font-weight: 400;
}


/* Stock Status */

.pb-stock-badge{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}

.pb-stock-badge:after{
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  display: inline-block;
  background: #008A00; /* fallback grün */
}

/* Rot wenn nicht verfügbar */
.pb-stock-badge.is-out-of-stock:after{
  background: #FF5F00; /* fallback rot */
}

.pb-stock-badge {
	color: var(--farbe-white);
	font-family: "Roundkey", sans-serif;
	font-weight: 400;
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
}

.woocommerce div.product p.stock {
	color: #FF5F00 !important;
	padding-top: 20px;
}

#singleproduct-versandinfo-zeile table td,
#versandzeile-mobile table td {
	color: var(--farbe-white);
	border: none;
	font-family: "Roundkey", sans-serif;
	font-weight: 400;
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
	padding: 0px !important;
}

#singleproduct-versandinfo-zeile
{
	background-color: var(--farbe-blue);
	border-radius: 10px;
	max-width: 75%;
  margin: auto;
}

@media (max-width: 1310px) {
	#singleproduct-versandinfo-zeile {
	max-width: 85%;
  margin: auto;
}
}

@media (max-width: 1150px) {
	#singleproduct-versandinfo-zeile {
	max-width: 95%;
  margin: auto;
}
}

#versandzeile-mobile {
	display: none;
	background-color: var(--farbe-blue);
	border-radius: 10px;
	margin-bottom: 25px;
}

@media (max-width: 1030px) {
	#singleproduct-versandinfo-zeile {
		display: none;
	}
	
	#versandzeile-mobile {
	display: block !important;
		max-width: 100%;
}
}



table.singleproductversandinfo {
	margin-bottom: 0px !important;
}

td.tableicon1 img,
td.tableicon2 img{
	max-width: 15px;
}

td.tableicon3 img {
	max-width: 20px;
}

.singleproductversandinfo td:first-child {
  max-width: 7%;
  width: 7%;
}


/*  SINGLE PRODUCT ONLY
   Menge über Button */

div.insyde-qty-title {
	color: var(--farbe-blue);
	font-weight: 700;
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
	line-height: 1;
}

body.single-product form.cart {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* Quantity volle Breite */
body.single-product form.cart .quantity {
    width: 100%;
    margin: 0;
}

/* Input + / - auf volle Breite strecken */
body.single-product form.cart .quantity input.qty {
    width: 100%;
    height: 56px;
    text-align: center;
    font-weight: 700;
    border-radius: 10px;
}

/* Falls Theme Float verwendet -> entfernen */
body.single-product form.cart .quantity,
body.single-product form.cart .single_add_to_cart_button {
    float: none !important;
}

/* Button volle Breite */
body.single-product form.cart button.single_add_to_cart_button {
    width: 100%;
    min-height: 56px;
    border-radius: 10px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
	font-family: 'Roundkey';
	color: var(--farbe-white);
	font-size: clamp(1.25rem, 1vw + 18px, 30px) !important;
	background-color: var(--farbe-blue);
	
}

/* Sicherheit falls OceanWP Inline-Styles setzt */
body.single-product form.cart .single_add_to_cart_button {
    display: block;
}

/* Single Product: Quantity auf volle Breite strecken (inkl. +/-) */
body.single-product form.cart .quantity {
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: 56px 1fr 56px; /* minus | input | plus */
    align-items: stretch;
    gap: 0;
}

/* +/- Buttons voll hoch & breit */
body.single-product form.cart .quantity .minus,
body.single-product form.cart .quantity .plus {
    width: 56px !important;
    height: 56px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    line-height: 1 !important;
	border-color: var(--farbe-basic);
}



/* Input füllt die Mitte */
body.single-product form.cart .quantity input.qty {
    width: 100% !important;
    height: 56px !important;
    box-sizing: border-box;
    margin: 0 !important;
}

/* Falls OceanWP mit floats arbeitet: raus damit */
body.single-product form.cart .quantity,
body.single-product form.cart .quantity * {
    float: none !important;
}

/* Optional: runde Kanten wie Button */
body.single-product form.cart .quantity .minus {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
	color: var(--farbe-basic);
	font-size: 20px;
}
body.single-product form.cart .quantity .plus {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
	color: var(--farbe-basic);
	font-size: 20px;
}
body.single-product form.cart .quantity input.qty {
    border-radius: 0 !important;
}

/* Zahl exakt zentrieren */
body.single-product form.cart .quantity input.qty {
    text-align: center !important;
    padding: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Falls Browser eigenes Appearance setzt */
body.single-product form.cart .quantity input.qty::-webkit-inner-spin-button,
body.single-product form.cart .quantity input.qty::-webkit-outer-spin-button {
    margin: 0;
}

/* Input darf NICHT fix schmal sein, sondern muss die Mitte füllen */
body.single-product form.cart .quantity input.qty {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
	border-right: none;
	border-left: none;
	border-color: var(--farbe-basic);
}

/* Grid-Layout erzwingen: - | input (1fr) | + */
body.single-product form.cart .quantity {
    display: grid !important;
    grid-template-columns: 56px 1fr 56px !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Wichtig: explizit sagen, dass das Input die mittlere Spalte nimmt */
body.single-product form.cart .quantity input.qty {
    grid-column: 2 / 3 !important;
}

/* +/- links/rechts fix */
body.single-product form.cart .quantity .minus {
    grid-column: 1 / 2 !important;
}
body.single-product form.cart .quantity .plus {
    grid-column: 3 / 4 !important;
}

/* Single Product Page mobile */

@media (max-width: 767px) {
	div#versandzeile-mobile.vc_row.wpb_row.vc_row-fluid {
		margin-left: 0px !important;
	}
	div.summary.entry-summary {
		max-width: 100%;
	}
}

/****************************/
/* Section Related Products */
/***************************/


section.insyde-single-product-related span.woocommerce-Price-amount.amount bdi,
section.insyde-single-product-related small.woocommerce-price-suffix {
    font-size: clamp(1.25rem, 1vw + 18px, 30px);
}

section.insyde-single-product-related .wc-product-lower-col.second form.cart {
	align-items: flex-start;
}

.single-product section.insyde-single-product-related div.wc-product-lower {
	min-height: 283px;
}

@media (max-width: 1100px) {
	section.insyde-single-product-related h2.woocommerce-loop-product__title,
	section.insyde-single-product-related div.pb-product-untertitel,
	section.insyde-single-product-related div.wc-product-lower-col.second {
		padding-left: 0px !important;
	}
}

/* RELATED PRODUCTS GRID */
/* PB – SINGLE PRODUCT: "Related" (Best Selling Page/Shortcode) GRID */
.single-product section.insyde-single-product-related ul.products,
.single-product .insyde-single-product-related ul.products{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 40px;

  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;

  /* wichtig: Woo/Ocean setzt teils floats/widths */
  float: none !important;
  width: 100% !important;
}

/* Items */
.single-product section.insyde-single-product-related ul.products > li.product,
.single-product .insyde-single-product-related ul.products > li.product{
  width: auto !important;
  float: none !important;
  margin: 0 !important;

  padding-left: 0 !important;

  border-top-left-radius: 10px !important;

  /* max-width killt Grid oft, deshalb raus bzw. neutralisieren */
  max-width: none !important;
}

/* unter 1300px → 3 Spalten */
@media (max-width: 1300px){
  .single-product section.insyde-single-product-related ul.products,
  .single-product .insyde-single-product-related ul.products{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
  }
}

/* unter 940px → 2 Spalten */
@media (max-width: 940px){
  .single-product section.insyde-single-product-related ul.products,
  .single-product .insyde-single-product-related ul.products{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
}

/* unter 400px → 1 Spalte */
@media (max-width: 400px){
  .single-product section.insyde-single-product-related ul.products,
  .single-product .insyde-single-product-related ul.products{
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}



.single-product section.insyde-single-product-related ul.products a.button.product_type_simple {
	padding: 20px 0 !important;
  margin-top: 25px;
}

/************************/
/* Woocommerce Messages */
/***********************/

div.woocommerce-message {
	color: var(--farbe-blue);
  border: 2px solid var(--farbe-white);
	padding: 5px 25px;
	font-family: 'Roundkey';
  border-radius: 10px;
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
}

div.woocommerce-message::before {
	color: var(--farbe-blue);	
}

a.button.wc-forward {
	color: var(--farbe-white) !important;
	font-family: 'Roundkey';
  border-radius: 10px;
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
	background-color: var(--farbe-blue);
	border-color: var(--farbe-blue);
	margin-top: 7px;
}

a.button.wc-forward:hover {
	color: var(--farbe-white) !important;
	font-family: 'Roundkey';
  border-radius: 10px;
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
	background-color: var(--farbe-blue);
	border-color: var(--farbe-blue);
	margin-top: 7px;
}

/************/
/* Fly Cart */
/************/


.woofc-area.woofc-style-01 .woofc-area-top {
	background-color: var(--farbe-blue) !important;
  font-family: 'Roundkey' !important;
  color: var(--farbe-white) !important;
	font-size: clamp(1.25rem, 1vw + 16px, 20px) !important;
}

span.woofc-item-price bdi {
	font-size: clamp(1.25rem, 1vw + 16px, 20px) !important;
}

.woofc-area.woofc-style-01 .woofc-area-bot .woofc-link span,
div.woofc-data-left,
div#woofc-subtotal.woofc-data-right,
span.woocommerce-Price-amount.amount bdi,
span.woofc-continue-url{
  color: var(--farbe-blue) !important;
}

.woofc-area.woofc-style-01 .woofc-area-bot .woofc-action .woofc-action-inner > div a {
	background-color: var(--farbe-blue);
	border: none;
	font-family: 'Roundkey';
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
	color: var(--farbe-white) !important;
}

.woofc-area.woofc-style-01 .woofc-area-bot .woofc-action .woofc-action-inner > div a:hover {
	background-color: var(--farbe-blue);
	border: none;
	font-family: 'Roundkey';
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
	color: var(--farbe-white) !important;
}


#site-navigation-wrap li.insyde-desktop-cart,
#site-navigation-wrap li.insyde-desktop-cart > a {
    cursor: pointer;
}

/*************/
/* Warenkorb */
/*************/

div.wc-block-components-product-metadata {
	display: none;
}

table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name,
div.wp-block-woocommerce-cart-order-summary-block {
	font-family: 'Roundkey';
	font-size: clamp(1.25rem, 1vw + 16px, 20px) !important;
	color: var(--farbe-blue);
}

table.wc-block-cart-items .wc-block-cart-items__header th,
span.wc-block-components-totals-item__label
{
  font-weight: 700;
  color: var(--farbe-blue);
  font-family: 'Roundkey';
  text-transform: none;
	font-size: clamp(1.25rem, 1vw + 18px, 30px) !important;
}

.wc-block-components-formatted-money-amount {
	font-weight: 700;
  color: var(--farbe-blue);
  font-family: 'Roundkey';
}

span.wc-block-formatted-money-amount.wc-block-components-formatted-money-amount.wc-block-components-product-price__value {
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
}

h2.wp-block-woocommerce-cart-order-summary-heading-block.wc-block-cart__totals-title,
span.wc-block-formatted-money-amount.wc-block-components-formatted-money-amount.wc-block-components-totals-footer-item-tax-value{
	font-weight: 700;
  color: var(--farbe-blue);
  font-family: 'Roundkey';
  text-transform: none;
	font-size: clamp(1.25rem, 1vw + 18px, 30px) !important;
}

button.wc-block-components-button.wp-element-button.wc-block-components-totals-coupon__button.contained {
	background-color: var(--farbe-blue);
	border: none;
	font-family: 'Roundkey';
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
	border-radius: 10px;
	min-height: 2em !important;
}

a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained {
	background-color: var(--farbe-blue);
	border: none;
	font-family: 'Roundkey';
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
	border-radius: 10px;
	min-height: 2em !important;
	color: var(--farbe-white) !important;
}

.wc-block-components-totals-shipping .wc-block-components-totals-item strong {
	color: var(--farbe-blue);
}


/*************/
/*   Kassa  */
/************/

button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained {
	background-color: var(--farbe-blue);
	border: none;
	font-family: 'Roundkey';
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
	border-radius: 10px;
	min-height: 2em !important;
}

/*****************/
/*   Mein Konto  */
/****************/


a.owp-account-link.current,
li.login {
	color: var(--farbe-blue) !important;
  font-family: 'Roundkey';
}

li.register {
	font-family: 'Roundkey';
}

.woocommerce .owp-account-links li.or {
	color: var(--farbe-basic) !important;
  border: none !important;
	text-transform: none !important;
}

button.woocommerce-button.button.woocommerce-form-login__submit {
	background-color: var(--farbe-blue);
	border: none;
	font-family: 'Roundkey';
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
	border-radius: 10px;
	min-height: 2em !important;
}

.woocommerce #customer_login > div {
	border: none !important;
}

/******************/
/*   Danke-Seite  */
/******************/

p.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
	font-family: 'Roundkey';
	font-size: clamp(32px, 2.2vw + 18px, 50px);
	text-align: center;
	padding-bottom: 15px;
}

.woocommerce ul.order_details {
	border-color: var(--farbe-basic) !important;
  border-radius: 10px;
	border: 2px solid !important;
}

h2.wc-bacs-bank-details-heading,
h2.woocommerce-order-details__title,
h2.woocommerce-column__title,
h3.wc-bacs-bank-details-account-name {
	font-size: clamp(1.25rem, 1vw + 18px, 30px);
}

section.woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses,
p.woocommerce-customer-details--email {
	font-family: 'Roundkey';
	color: var(--farbe-blue);
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
}

table.woocommerce-table.woocommerce-table--order-details.shop_table.order_details {
	font-family: 'Roundkey';
	color: var(--farbe-blue);
	font-size: clamp(1.25rem, 1vw + 16px, 20px);
	border-color: var(--farbe-basic) !important;
  border-radius: 10px;
	border: 2px solid !important;
}

.woocommerce table.shop_table thead,
.woocommerce .shop_table.order_details tfoot th {
  background-color: var(--farbe-white) !important;
}

table.woocommerce-table.woocommerce-table--order-details.shop_table.order_details span.woocommerce-Price-amount.amount {
	color: var(--farbe-blue);
}

table.woocommerce-table.woocommerce-table--order-details.shop_table.order_details td.woocommerce-table__product-name.product-name p {
	font-size: clamp(1rem, 0.9vw + 10px, 22px);
}



/************/
/*   Blog  */
/***********/


.single-post.content-max-width .entry-content h3,
.single-post.content-max-width #wrap .entry-content h1,
.single-post.content-max-width .entry-content p {
	margin: 0.2em auto !important;
}

.single-post.content-max-width .entry-content p {
	padding-left: 0px !important;
	padding-right: 0px !important;
}


/* Single Blog Post Content Breite */
body.single-post #primary,
body.single-post .single-post-content,
body.single-post .entry-content {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

/* GRID */
.blog-grid.vc-gitem-zone-height-mode-auto:before {
	display: none;
}

.blog-grid.vc_gitem-zone-a .vc_gitem-row-position-top,
.blog-grid.vc_gitem-zone-b .vc_gitem-row-position-top {
	position: relative;
}

.blogbild img {
	border-radius: 10px;
}

div.blogtitel a {
	font-family: 'Roundkey';
	color: var(--farbe-blue) !important;
	text-decoration: none !important;
	text-transform: uppercase;
	font-weight: 700;
	font-size: clamp(1.75rem, 1.4vw + 25px, 50px);
	line-height: 1;
}

div.blogtitel {
		max-width: 90%;
	margin-bottom: 8px !important;
}

div.blogtext {
	font-family: 'Roundkey';
	color: var(--farbe-blue) !important;
	font-weight: 300;
	font-size: clamp(1.25rem, 1.1vw + 18px, 35px);
	line-height: 1;
	max-width: 90%;
}

@media (max-width: 1420px) {
	body.single-post div.wpb_wrapper {
		padding-left: 10px;
  padding-right: 10px;
	}
}

/************/
/*   Media  */
/***********/

.media-img img {
	border-top-left-radius: 10px;
  border-top-right-radius: 10px;
	margin-bottom: 0px !important;
}

.media-img {
	margin-bottom: 0px !important;
}

span.media-info1 {
	color: var(--farbe-basic);
	font-family: 'Roundkey';
	font-size: clamp(1.125rem, 0.9vw + 14px, 30px);
	padding-bottom: 5px;
}

span.media-info2 {
	color: var(--farbe-blue);
	font-family: 'Roundkey';
	font-weight: 700;
	font-size: clamp(24px, 2.8vw, 40px);
}

.media-text {
	background-color: var(--farbe-white);
	padding-left: 20px;
  padding-top: 10px;
  padding-bottom: 20px;
}

.media-botton-wrapper {
	background-color: var(--farbe-white);
	padding-left: 20px;
	padding-bottom: 20px;
	border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.media-margin {
	margin-bottom: 15px;
}

/********************/
/*   Versandkosten  */
/********************/

.versandinfo {
  width: 100%;
  border-collapse: collapse;
  font-family: "Roundkey", sans-serif;
  color: var(--farbe-blue);
	font-size: clamp(1.125rem, 0.9vw + 14px, 30px);
}

.versandinfo th,
.versandinfo td {
  padding: 10px;
  text-align: left;
}

.versandinfo thead th {
  background: var(--farbe-basic);
  color: var(--farbe-blue);
}

.versandinfo tbody tr:nth-child(even) {
  background: #e8ebec;
}



/********************/
/*   Ninja Forms    */
/********************/


div.nf-form-fields-required {
	display: none;
}

textarea#nf-field-3.ninja-forms-field.nf-element,
input#nf-field-1.ninja-forms-field.nf-element,
input#nf-field-2.ninja-forms-field.nf-element {
	border: 2px solid var(--farbe-blue);
	border-radius: 10px;
	color: var(--farbe-blue);
}

input#nf-field-4.ninja-forms-field.nf-element {
	text-transform: none;
  font-family: "Roundkey", sans-serif;
  font-size: clamp(1.25rem, 1vw + 16px, 20px);
  background-color: var(--farbe-blue);
  color: var(--farbe-white);
}

input#nf-field-4.ninja-forms-field.nf-element:hover {
	color: var(--farbe-hook);
}



/********************/
/*   Newsletter     */
/********************/

form input[type="email"] {
	font-size: clamp(1.25rem, 1vw + 16px, 20px) !important;
	border-radius: 50px !important;
  font-weight: 700;
	background-color: var(--farbe-white) !important;
  color: var(--farbe-blue) !important;
}

input[type="submit"] {
	font-size: clamp(1.25rem, 1vw + 16px, 20px) !important;
	border-radius: 50px !important;
  font-weight: 700;
	color: var(--farbe-blue) !important;
	background-color: var(--farbe-hook) !important;
}

body input[type="submit"] {
	border-color: var(--farbe-hook) !important;
}

div.nl-text p {
	color: var(--farbe-white);
}