/* nunito-200 - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 200;
	src: url('../fonts/nunito-v32-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-200italic - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: italic;
	font-weight: 200;
	src: url('../fonts/nunito-v32-latin-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-300 - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 300;
	src: url('../fonts/nunito-v32-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-300italic - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: italic;
	font-weight: 300;
	src: url('../fonts/nunito-v32-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-regular - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/nunito-v32-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-italic - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: italic;
	font-weight: 400;
	src: url('../fonts/nunito-v32-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-500 - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/nunito-v32-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-500italic - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: italic;
	font-weight: 500;
	src: url('../fonts/nunito-v32-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-600 - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 600;
	src: url('../fonts/nunito-v32-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-600italic - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: italic;
	font-weight: 600;
	src: url('../fonts/nunito-v32-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-700 - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/nunito-v32-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-700italic - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: italic;
	font-weight: 700;
	src: url('../fonts/nunito-v32-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-800 - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 800;
	src: url('../fonts/nunito-v32-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-800italic - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: italic;
	font-weight: 800;
	src: url('../fonts/nunito-v32-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-900 - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 900;
	src: url('../fonts/nunito-v32-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* nunito-900italic - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito';
	font-style: italic;
	font-weight: 900;
	src: url('../fonts/nunito-v32-latin-900italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}



:root {
	--schwarz: #000000;
	--weiss: #FFFFFF;
	--grau: #666666;
	--bgcolor: #ECEDEC;
	
	--maincolor: #009FE3;
	--actioncolor: #8FC9E2;
	--overlay: rgba(0,0,0,0.85);
	--linecolor: #CCCCCC;
	
	--basefont: 'Nunito', Arial, Helvetica;
	--bold: 700;
	--medium: 500;
	--regular: 400;
	--light: 300;
	--fontsize: 19px;
	--lineheight: 1.45;
	--letterspacing: 1px;
	
	--abstand1: 1vh;
	--abstand2: 2vh;
	--abstand3: 3vh;
	--abstand4: 4vh;
	--abstand5: 5vh;
	--abstand7: 7vh;
	--abstand8: 8vh;
	--abstand9: 9vh;
	--abstand10: 10vh;
	
	--headerheight: 70px;
	--toplineheight: 50px;
	--logowidth: 250px;
	--seitenrand: 5vw;
	--socialmediaicons: 40px;
	--commerce-header-icon: 25px;
	--footerlinks: 60px;
	--arrowidth: 15px;
	--headerblockheight: 60vh;
	--klickmenuwidth: 90px;
	--adminspace: 73px;
	
	--maxwidthcontent: 1340px;
}






/* !ADMIN */

ul.tabs {
	border-bottom: solid 0px #CCCCCC;
	padding-top: 50px !important;
	margin: 0px !important;
}

ul.tabs a,
ul.tabs a:visited {
	color: var(--schwarz);
	background: var(--schwarz);
	color: var(--weiss);
	padding: 10px 20px;
	box-sizing: border-box;
	text-transform: uppercase;
	font-weight: var(--bold);
	font-size: 90%;
	line-height: var(--lineheight);
}

ul.tabs a:hover,
ul.tabs a:active {
	color: var(--weiss);
	background: var(--maincolor);
}

ul.tabs li.is-active a {
	background: var(--maincolor);
}



label.js-form-required:after {
	content: "*";
}

.views-field-edit-node a:link,
.views-field-edit-node a:visited {
	color: red;
	padding: 3px 10px;
	border: solid 1px red;
	background-color: var(--weiss);
}

.views-field-edit-node a:hover,
.views-field-edit-node a:active {
	color: var(--weiss) !important;
	background: red;
	padding: 3px 10px;
	border: solid 1px red;
}


div.tabs {
	margin: 1em 0;
}
ul.tabs {
	list-style: none;
	margin: 0 0 0.5em;
	padding: 0;
}
.tabs > li {
	display: inline-block;
	margin-right: 0.3em; /* LTR */
	margin-bottom: 5px;
}
[dir="rtl"] .tabs > li {
	margin-left: 0.3em;
	margin-right: 0;
}
.tabs a {
	display: block;
	padding: 0.2em 1em;
	text-decoration: none;
}
.tabs a.is-active {
	background-color: #eee;
}
.tabs a:focus,
.tabs a:hover {
	background-color: #f5f5f5;
}

.js .dropbutton-widget {
	border: 0px !important;
	display: table;
}

.js .dropbutton-widget {
	border: solid 1px #999999 !important;
}

.js .dropbutton-widget a,
.js .dropbutton-widget a:visited {
	color: var(--maincolor);
}

.weighttable {
	border: solid 1px var(--linecolor);
	padding: 20px;
	box-sizing: border-box;
}

.weighttable table {
	width: 100%;
}

.weighttable caption {
	background: var(--grau);
	color: var(--weiss);
	text-align: left;
	padding: 5px 10px;
	box-sizing: border-box;
	font-weight: var(--bold);
}

.weighttable .tabledrag-toggle-weight-wrapper {
	display: none !important;
}

.weighttable table {
	width: 100%;
}

.weighttable tbody tr:nth-child(odd) {
	background: var(--bgcolor);
}

.weighttable tbody td {
	padding: 10px 10px;
	box-sizing: border-box;
}




/* !COLORBOX */

#cboxPrevious,
#cboxPrevious:hover {
	background-image:url('../images/galprev.png') !important;
	width:33px !important;
	height:33px !important;
	background-position: left top !important;
	background-size: 100% 100% !important;
	margin-top: 0px !important;
	-webkit-transform: translateY(-50%) !important;
	-moz-transform: translateY(-50%) !important;
	transform: translateY(-50%) !important;
}

#cboxNext,
#cboxNext:hover {
	background-image:url('../images/galnext.png') !important;
	width:33px !important;
	height:33px !important;
	background-position: left top !important;
	background-size: 100% 100% !important;
	margin-top: 0px !important;
	-webkit-transform: translateY(-50%) !important;
	-moz-transform: translateY(-50%) !important;
	transform: translateY(-50%) !important;
}

#cboxClose,
#cboxClose:hover {
	background-image:url('../images/galclose.png') !important;
	background-size: 100% 100% !important;
	background-position: left top !important;
	width:33px !important;
	height:33px !important;
	top:-7px !important;
	right:-7px !important;
}
#cboxOverlay {
	background:var(--weiss) !important;
}

#cboxContent {
	background:var(--weiss) !important;
	overflow: visible !important;
}

#cboxLoadedContent {
	border: 12px solid var(--weiss) !important;
	background: var(--weiss) !important;
}

#cboxWrapper {
	background:transparent !important;
	padding-top:0px !important;
	overflow: visible !important;
}

#cboxTitle {
	left:12px !important;
	top:-18px !important;
	color: var(--schwarz) !important;
	display: none !important;
}

#cboxCurrent {
	right:12px !important;
	top:-18px !important;
	color:var(--schwarz) !important;
	display: none !important;
}


#cboxLoadedContent {
	border: 0px !important;
	overflow: visible !important;
}

#colorbox, #cboxOverlay, #cboxWrapper {
	overflow: visible !important;
}


/* !Login und Pass-Form */

.user-login-form {
	display: table;
	width: 100%;
}

.user-login-form .form-type-textfield,
.user-login-form .form-type-password  {
	width: calc(50% - 20px);
	float: left;
	margin-right: 20px;
}

.user-login-form .js-form-type-checkbox {
	clear: both;
	padding-top: 20px;
	display: table;
}


.user-login-form .js-form-item input[type="text"],
.user-pass .js-form-item input[type="text"],
.user-login-form .js-form-item input[type="password"],
.user-pass .js-form-item input[type="password"]  {
	width: 100%;
	padding: 5px;
	box-sizing: border-box;
	border-radius: 0px;
}


/* !ALLGEMEIN */

html, body {
	font-size:var(--fontsize);
}

body {
	font-size: var(--fontsize);
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	line-height: var(--lineheight);
	
	padding: 0px;
	margin: 0px;
	background: var(--weiss);
	color: var(--schwarz);
}


html,
button,
input,
select,
textarea {
	font-family: var(--basefont);
	font-style: normal;
	font-weight: var(--regular);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;  
}

.node--type-error-page .field--name-body {
	font-size: 500%;
	line-height: 100%;
}


a,
a:visited {
	text-decoration: none;
}

a:hover,
a:active {
	text-decoration: none;
}

main a,
main a:visited {
	text-decoration: none;
	color: var(--maincolor);
}

main a:hover,
main a:active {
	text-decoration: none;
	color: var(--actioncolor);
}

.text-formatted p,
.article-text p {
	line-height:175%;
	text-wrap:pretty;
}

h1, h2, h3,
.likeh2 p, .likeh3 p {
	text-wrap:balance;
	letter-spacing:0.033em;
	text-transform: uppercase;
	line-height:120%;
}

h1 {
	font-style: normal;
	font-size: 210%;
	line-height: 115%;
	font-weight: var(--bold);
	margin-top: 0px;
	padding-top: 0px;
}


h2 {
	font-size: 180%;
	line-height: 120%;
}

h2.block-title {
	font-size: 480%;
	line-height: 100%;
	margin: 0px;
	padding: 0px;
}


h3 {
	font-size: 160%;
	line-height: 120%;
	margin: 30px 0px 10px 0px;
	font-weight: var(--bold);
	text-transform: uppercase;
}

.likeh3 {
	font-size: 160%;
	line-height: 120%;
	font-weight: var(--regular);
}

h4 {
	font-size: 140%;
	line-height: 120%;
	margin: 30px 0px 10px 0px;
	
}

h5 {
	margin: 0px;
	padding: 0px;
	font-size: 105%;
	line-height: 120%;
}



.text-s {
	font-size: 80%;
	line-height: var(--lineheight);
}

.mobile {
	display: none;
}

/* !LAYOUT */

.layout-container {
	background: var(--weiss);
	padding-top: calc(var(--headerheight) + var(--toplineheight));
	margin-left: 0px !important;
	margin-right: 0px !important;
}

.maxwidth {
	margin-left: var(--seitenrand);
	margin-right: var(--seitenrand);
}


.path-node .maxwidthcontent,
.path-product .maxwidthcontent,
.path-frontpage .maxwidthcontent {
	max-width: var(--maxwidthcontent);
	margin-left: auto;
	margin-right: auto;
}



/* !TOPLINE */

.topline {
	background: var(--schwarz);
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	padding: 0 var(--seitenrand);
	box-sizing: border-box;
	height: var(--toplineheight);
}

.topline .usermenu ul.menu {
	list-style: none;
	padding: 0px;
	margin: 0px 30px 0px 20px;
	display: flex;
	flex-direction: row;
}

.topline .usermenu ul.menu > li:not(:last-child) {
	margin-right: 30px;
}

.topline .usermenu ul.menu > li {
	display: block;
	width: var(--commerce-header-icon);
	height: var(--commerce-header-icon);
	overflow: hidden;
	white-space: nowrap;
	position: relative;
}

.topline .usermenu a {
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	text-indent: var(--commerce-header-icon);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.topline .usermenu a[data-drupal-link-system-path="dplogin/login"],
.topline .usermenu a[data-drupal-link-system-path="dplogin"] {
	background-image: url('../images/icon-account.svg')
}

.topline .usermenu a[data-drupal-link-system-path="dplogin/login"]:hover,
.topline .usermenu a[data-drupal-link-system-path="dplogin"]:hover {
	background-image: url('../images/icon-account-hover.svg')
}

.topline .usermenu a[data-drupal-link-system-path="dplogin/logout"] {
	background-image: url('../images/icon-logout.svg')
}

.topline .usermenu a[data-drupal-link-system-path="dplogin/logout"]:hover {
	background-image: url('../images/icon-logout-hover.svg')
}


.topline .cart--cart-block {
	position: relative;
}

.topline .cart--cart-block a,
.topline .cart--cart-block a:visited {
	color: var(--weiss);
}

.topline .cart--cart-block a:hover,
.topline .cart--cart-block a:active {
	color: var(--actioncolor);
}

.topline .commerce-header-icon {
	width: calc(var(--commerce-header-icon) * 1.1);
	height: auto;
	margin-left: -5px;
}

.topline .cart-block--summary__count {
	position: absolute;
	left: 2px;
	top: -10px;
	width: 100%;
	text-align: center;
	line-height: 100%;
	display: block;
	font-size: 90%;
	font-weight: var(--bold);
	color: var(--actioncolor);
	font-size: 85%;
	line-height: var(--lineheight);
}



/*  !HEADER */ 

header {
	z-index: 97;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}

body.role_internal header,
body.role_administrator header {
	top: var(--adminspace);
}

.region-header {
	position: relative;
	height: var(--headerheight);
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	background-color: var(--weiss);
	box-shadow: 0 0px 15px rgba(0, 0, 0, 0.5);
	display: flex;
	flex-direction: row;
	position: relative;

}


.block-system-branding-block {
	width: var(--logowidth);
	margin-left: var(--seitenrand);
	padding-top: 5px;
	box-sizing: border-box;
	height: var(--headerheight);
	margin-right: 10vw;
}


.lupe {
	width: calc(var(--headerheight) / 2);
	height: calc(var(--headerheight) / 2);
	position: absolute;
	right: var(--seitenrand);
	z-index: 98;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}

.lupe:hover {
	cursor: pointer;
}

.lupe:hover svg path {
	fill: var(--maincolor) !important;
}

/*  !TOPMEN */ 

.topmenu ul.level1 {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	margin: 0px;
	padding: 0px;
	list-style: none;
	font-weight: var(--bold);
	font-size: 1rem;
	letter-spacing:0.05em;
	line-height: 1;
}
.topmenu ul.level1 li > a,
.topmenu ul.level1 li > a:visited {
	display: flex;
	padding: 0px 20px;
	box-sizing: border-box;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: var(--headerheight);
	color: var(--schwarz);
	text-transform: uppercase;
	margin-right: 1px;
	white-space: nowrap;
	
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}

.topmenu ul.level1 li > a:hover,
.topmenu ul.level1 li > a:active,
.topmenu ul.level1 li.menu-item--active-trail > a {
	background: var(--maincolor);
	color: var(--schwarz);
}

.topmenu ul.level1 li > a.is-active {
	background: var(--maincolor);
	color: var(--weiss);
}

/* !PRIMARY MENU FOR MOBILE */


.menuclick {
	position: absolute;
	top: 0%;
	right: var(--seitenrand);
	z-index: 97;
	height: var(--headerheight);
	width: calc(30px + var(--klickmenuwidth));
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}

.topmenutrigger {
	border: none;
	width: var(--klickmenuwidth);
	height: var(--headerheight);
	text-indent: -900em;
	overflow: hidden;
	cursor: pointer;
	outline: none;
	top: 50%;
	right: 0px;
	z-index: 94;
	position: absolute;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
}

.topmenutrigger-container {
	position: relative;
	margin-left: 30px;
	margin-right: 0px;
	height: var(--headerheight);
}

body.navactive .topmenutrigger {
	
}
	
	
.topmenutrigger span {
	background: var(--schwarz);
	border: none;
	height: 2px;
	border-radius: 0px;
	width:100%;
	position: absolute;
	top: 50%;
	right: 0%;
	cursor: pointer;
	-webkit-transition: all .35s ease;
	transition: all .35s ease;
	display: block;
}


.topmenutrigger span:nth-of-type(1) {
	-webkit-transform: translateY(-11px);
	-moz-transform: translateY(-11px);
	transform: translateY(-11px);
}

.topmenutrigger span:nth-of-type(2) {
	width: 80%;
}
.topmenutrigger span:nth-of-type(3) {
	width: 100%;
	-webkit-transform: translateY(11px);
	-moz-transform: translateY(11px);
	transform: translateY(11px);
}

.topmenutrigger.active {
	
}
	
.topmenutrigger.active span {
		top: 50%;
}
	
	
.topmenutrigger.active .top {
	-moz-transform: translateY(0px) translateX(0%) rotate(45deg);
	-webkit-transform: translateY(0px) translateX(0%) rotate(45deg);
	transform: translateY(0px) translateX(0%) rotate(45deg);
	
	background: var(--schwarz);
	width:50px;
	right: 0%;
	height: 2px;
}
.topmenutrigger.active .middle {
	display: none;
	background: var(--schwarz);
	right:40px;
}
.topmenutrigger.active .bottom {
	-moz-transform: translateY(0px) translateX(0%) rotate(-45deg);
	-webkit-transform: translateY(0px) translateX(0%) rotate(-45deg);
	transform: translateY(0px) translateX(0%) rotate(-45deg);
	width:50px;
	background: var(--schwarz);
	right: 0%;
	height: 2px;
}

.region-primary-menu {
	position: fixed;
	/* width: calc((100% / 2) - (var(--logowidth) / 2)); */
	width: 100%;
	height: calc(100vh - var(--headerheight) - var(--toplineheight));
	overflow: auto;
	top: calc(var(--headerheight) + var(--toplineheight));
	left: 0px;
	background-color: rgba(0, 0, 0, 0.93);
	color: var(--weiss);
	z-index: 94;
	padding: calc(var(--headerheight) + 5vh) 0vw 100px 0vw;
	box-sizing: border-box;
	
	-webkit-transform: translateY(0%);
	-moz-transform: translateY(0%);
	transform: translateY(0%);
	
	display: none; 
}


.mobilemenu {
	display: block;
	margin-left: var(--seitenrand);
	margin-right: var(--seitenrand);
}

.mobilemenu ul.level1 {
	list-style: none;
	margin: 0px 0px 0px 0vw;
	padding: 0px 0px 60px 0px;
	font-family: var(--titlefont);
	width: 100%;
}

.mobilemenu ul.level1 li.hide {
	display: none !important;
}

.mobilemenu ul.level1 > li {
	margin: 0px 0px 20px 0px;
	padding: 0px;
	position: relative;
	
}

.mobilemenu ul.level1 > li a,
.mobilemenu ul.level1 > li a:visited {
	font-size: 300%;
	line-height: var(--lineheight);
	color: var(--weiss);
	display: table;
	position: relative;
	z-index: 89;
	white-space: nowrap;
}

.mobilemenu ul.level1 > li a:hover,
.mobilemenu ul.level1 > li a:active {
	color: var(--actioncolor);
}

.mobilemenu ul.level1 > li a.is-active,
.mobilemenu ul.level1 > li.menu-item--active-trail > a {
	color: var(--maincolor);
}



/* !HEADERIMAGES & HEADERBLOCK */


.headerimage-mobile {
	display: none;
}

.region-headerimage {
	position: relative;
	z-index: 20;
	box-sizing:border-box;
	overflow-x:clip;
}
.view-headerimages {
	position: relative;
	box-sizing:border-box;
}

.view-headerimages .view-content {
	position: relative;
	z-index: 40;
	overflow-x:clip;  /*seb hacky, aber verhindert Scrollbar horizontal*/
}

.view-headerimages .tns-item {
	border: 0px !important;
	line-height: 0px;
}

.view-headerimages .tns-item img {
	border: 0px !important;
	width: 100%;
	height: auto;
}

/*
.view-headerimages .view-footer {
	position: absolute;
	z-index: 41;
	left: 50%;
	bottom: 0px;
	width: 15px;
}
*/

.view-headerimages .view-footer {
		position: absolute;
		bottom: 30px; /* Ausgangsposition */
		left: 50%;
		transform: translateX(-50%);
		z-index: 41;
		width: var(--arrowidth);
		animation: scrollHint 1.8s ease-in-out infinite;
}

@keyframes scrollHint {
		0% {
				transform: translateX(-50%) translateY(0);
				opacity: 0.8;
		}

		50% {
				transform: translateX(-50%) translateY(12px);
				opacity: 1;
		}

		100% {
				transform: translateX(-50%) translateY(0);
				opacity: 0.8;
		}
}

.headerbock-node {
	width: 100vw;
	height: var(--headerblockheight);
	position: relative;
	overflow: hidden;
	background-color: var(--schwarz);
	background-image: url(/themes/custom/zephyx/images/headerbock-node-bg.svg);
	background-repeat: no-repeat;
	background-position: center -20vh;
	background-size: 120% auto;
	box-shadow: inset 0 -40px 40px -40px rgba(0,0,0,0.9);
}

.headerbock-node .navtext-wrapper {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	height: var(--headerblockheight);

}

body.page-node-9 .headerbock-node .navtext-wrapper {
	max-width: var(--maxwidthcontent);
}

.headerbock-node .navtext {
	position: absolute;
	left: -20px;
	bottom: 0;
	white-space: nowrap;
	transform-origin: left bottom;
	line-height: calc(var(--lineheight) / 2.4);
	font-weight: var(--bold);
	color: var(--weiss);
	text-transform: uppercase;
	display: none;
	
	font-size:20vw;
}

/* !BACKGROUNDS */



.bgcolor-maincolor {
	background: var(--maincolor);
	color: var(--schwarz)
}

.bgcolor-bgcolor {
	background: var(--bgcolor);
	color: var(--schwarz)
}

.bgcolor-black {
	background: var(--schwarz);
	color: var(--weiss)
} 


/* !BUTTONS */

button {
	display: table;
	margin-top: 3vh;
	text-align: center;
	text-transform: uppercase;
	border: 0px;
	background: transparent;
	margin: 0px;
	padding: 0px;
}

button a,
button a:visited {
	display: block;
	color: var(--weiss);
	background-color: var(--actioncolor);
	border-radius: 20px;
	padding: 10px 30px;
	box-sizing: border-box;
	white-space: nowrap;
	font-weight: var(--bold);
	letter-spacing: var(--letterspacing);
	-webkit-transition: all .35s ease;
	 transition: all .35s ease;
	 min-width: 200px;
}

button a:hover,
button a:active {
	display: block;
	color: var(--weiss);
	background-color: var(--maincolor);
	cursor: pointer;
	
	-webkit-transition: all .35s ease;
	 transition: all .35s ease;
}


.bgcolor-maincolor button a,
.bgcolor-maincolor button a:visited {
	color: var(--maincolor);
	background-color: var(--weiss);
}

.bgcolor-maincolor button a:hover,
.bgcolor-maincolor button a:active {
	color: var(--weiss);
	background-color: var(--schwarz);
}

.bgcolor-bgcolor button a,
.bgcolor-bgcolor button a:visited {
	color: var(--bgcolor);
	background-color: var(--maincolor);
}

.bgcolor-bgcolor button a:hover,
.bgcolor-bgcolor button a:active {
	color: var(--bgcolor);
	background-color: var(--schwarz);
}

.bgcolor-black button a,
.bgcolor-black button a:visited {
	color: var(--maincolor);
	background-color: var(--weiss);
}

.bgcolor-black button a:hover,
.bgcolor-black button a:active {
	color: var(--weiss);
	background-color: var(--maincolor);
}





/* SUCHSEITE */

.path-search main,
.path-dplogin main {
	padding-bottom: 200px;
	box-sizing: border-box;
}

.path-search .search-form {
	padding-right: 20px;
	box-sizing: border-box;
	margin-top: 3vh;
}


.search-form input[type="search"] {
	border: solid 1px var(--grau);
	padding: 10px 20px;
	box-sizing: border-box;
	height: 50px;
	width: 100%;
	color: var(--schwarz);
} 



.suchliste .view-empty {
	padding: 5vh 0px;
	box-sizing: border-box;
}

.searchoverlay {
	position: fixed;
	width: 100%;
	height: 100%;
	background: var(--overlay);
	top: 0px;
	left: 0px;
	z-index: 9999999;
	display: none;
}


ol.search-results {
	list-style: none;
	padding: 0px;
	margin: 0px;
}

ol.search-results li {
	background: var(--weiss);
	padding: 20px;
	box-sizing: border-box;
	margin-bottom: 10px;
}

ol.search-results li .search-result__snippet-info {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
}

ol.search-results li .search-result__snippet-info > div {
	flex-basis: 100%;
}

ol.search-results h3 {
	margin: 0px 0px 5px 0px;
	padding: 0px;
}

ol.search-results h3 a,
ol.search-results h3t a:visited {
	color: var(--actioncolor);
}

ol.search-results h3 a:hover,
ol.search-results h3 a:active {
	color: var(--grau);
}

ul.js-pager__items {
	list-style: none;
	margin: 5vh auto 0px auto;
	padding: 0px;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
}

ul.js-pager__items li {
	margin: 0px 5px;
	padding: 0px;
}

ul.js-pager__items li a,
ul.js-pager__items li a:visited {
	display: table;
	margin-left: auto;
	margin-right: auto;
	background: var(--maincolor);
	color: var(--weiss);
	text-transform: uppercase;
	box-sizing: border-box;
	padding: 8px 20px 5px 20px;
	font-weight: var(--bold);
	text-align: center;
	
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}

ul.js-pager__items li a:hover,
ul.js-pager__items li a:active { 
	color: var(--weiss);
	background: var(--actioncolor);
	
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}


.searchoverlay.active {

		display: block;
}

.search {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-70%) translateX(-50%);
	-moz-transform: translateY(-70%) translateX(-50%);
	transform: translateY(-70%) translateX(-50%);
	margin-left: -20px;
	width: 40vw;
}

.searchclose {
	width: 80px;
	height: 80px;
	position: absolute;
	top: 20%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	transform: translateX(-50%);
	background-image: url("../images/searchclose.svg");
	background-position: center center;
	background-size: 20px 20px;
	background-repeat: no-repeat;
}

.searchclose:hover {
	cursor: pointer;
}

.search input {
	margin: 0px;
}

.search input[type=search] {
	padding-right: 40px;
	box-sizing: border-box;
	padding: 10px 0px;
	border: 0px;
	border-bottom: solid 2px #FFFFFF;
	background: transparent;
	box-shadow: 0px;
	color: #FFFFFF;
	font-size: 200%;
	width: 100%;
	height: 60px;
}

.search input[type=submit] {
	position: absolute;
	right: -55px;
	bottom: 0px;
	width: 50px;
	height: 50px;
	background-color: transparent;
	text-indent: 100px;
	background-image: url("../images/lupe-weiss.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	border: 0px;
	margin: 0px !important;
}

.search input[type=submit]:hover {
	background-color: transparent;
	background-image: url("../images/lupe-hover.svg");
}

.search .js-form-type-search {
	width: calc(100% - 20px);
}





.searchblockcontent {
	background: var(--bgcolor);
	padding: 30px;
	box-sizing: border-box;
	position: relative;
}

.searchblockcontent .js-form-type-textfield {
	
}

.searchblockcontent input {
	margin: 0px;
}

.searchblockcontent input[type=text] {
	padding-right: 40px;
	box-sizing: border-box;
	padding: 15px 60px 15px 20px;
	box-sizing: border-box;
	border: 0px;
	background: var(--weiss);
	box-shadow: 0px;
	color: var(--schwarz);
	width: 100%;
}

.searchblockcontent input[type=submit] {
	position: absolute;
	right: 40px;
	top: 17px;
	width: 40px;
	height: 40px;
	background-color: transparent;
	text-indent: 100px;
	background-image: url("../images/searchicon.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	border: 0px;
}

.searchblockcontent input[type=submit]:hover {
	background-color: transparent;
}


/* !FOOTER */

footer {
	background: var(--schwarz);
	color: var(--weiss);
	text-transform: uppercase;
	font-weight: var(--bold);
}

footer a,
footer a:visited {
	color: var(--weiss);
}

footer a:hover,
footer a:active {
	color: var(--maincolor);
}

.footercontent {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
	padding: var(--abstand3) 0px;
	box-sizing: border-box;
}

.footer-muster {
	box-shadow: 
		inset 0 20px 20px -20px rgba(0,0,0,0.9),
		inset 0 -20px 20px -20px rgba(0,0,0,0.9);
	background-color: var(--schwarz);
	background-image: url("/themes/custom/zephyx/images/footer-muster.svg");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	width: 100%;
	height: var(--headerheight);
	border-bottom: solid 20px var(--maincolor);
}

.footer-muster img {
	width: 100%;
	height: auto;
}

footer ul.menu {
	display: flex;
	flex-direction: row;
	list-style: none;
	padding: 0px;
	margin: 0px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

footer ul.menu li:not(:first-child) {
	margin-left: 30px;
}

.footerlinks {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.footerlinks svg {
	height: calc(var(--footerlinks) - 30px);
	width: auto;
}



.footerlinks .footerlink {
	border: solid 1px var(--weiss);
	border-radius: 100%;
	width: var(--footerlinks);
	aspect-ratio: 1 / 1;
	position: relative;
	display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0px 10px;
}

.footerlinks .footerlink:hover {
	color: var(--actioncolor);
	border: solid 1px var(--maincolor);
	color: var(--maincolor);
}

.footerlinks .footerlink a {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	display: flex;
	justify-content: center;
	align-items: center;
}



/* !PARAGRAPHS */

.bausteinecontainer {
	
}

.bausteinecontainer > .paragraph {
	margin-top: var(--abstand10);
}

.p-gallery {
	background-image: url("../images/gallery-background.svg");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: contain;
	background-repeat: no-repeat;
	padding-bottom: calc(var(--abstand10) * 2);
}

.p-gallery .gallery-container {
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
}

.p-gallery .gallery-container .gallery-item {
	line-height: 0px;
	margin-bottom: 10px;
	position: relative;
}

.p-gallery .gallery-container .gallery-item img {
	height: auto;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+1) {
	flex-basis: calc(60% - 5px);
	text-align: right;
	margin-right: 5px;
}


.p-gallery .gallery-container .gallery-item:nth-child(6n+1) img {
	width: 70%;
}


.p-gallery .gallery-container .gallery-item:nth-child(6n+2) {
	flex-basis: calc(40% - 5px);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	margin-left: 5px;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+2) img {
	width: 60%;
}


.p-gallery .gallery-container .gallery-item:nth-child(6n+3) {
	flex-basis: calc(50% - 5px);
	text-align: right;
	margin-right: 5px;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+3) img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+3) picture {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 50%;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+4) {
	flex-basis: calc(50% - 5px);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	margin-left: 5px;
	aspect-ratio: 1 / 1;
	position: relative;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+4) picture {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
}


.p-gallery .gallery-container .gallery-item:nth-child(6n+4) img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
	position: relative;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+5) {
	flex-basis: 100%;
	display: flex;
	text-align: right;
	position: relative;
	margin-bottom: 0px;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+5) picture {
	width: calc(25% - 10px);
	position: absolute;
	left: calc(25% + 5px);
	top: 0px;
	-webkit-transform: translateX(0%) translateY(calc(-1 * 100% - 10px));
	-moz-transform: translateX(0%) translateY(calc(-1 * 100% - 10px));
	transform: translateX(0%) translateY(calc(-1 * 100% - 10px));
	aspect-ratio: 1 / 1;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+5) img {
	object-fit: cover;
	object-position: center center;
	width: calc(100% - 0px);
	height: calc(100% - 0px);
	position: relative;
}



.p-gallery .gallery-container .gallery-item:nth-child(6n+6) {
	flex-basis: 100%;
	display: flex;
	text-align: left;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+6) picture {
	width: 50%;
	margin-left: calc(25% + 5px);
	position: relative;
}

.p-gallery .gallery-container .gallery-item:nth-child(6n+6) img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}


.p-title {
	background: var(--schwarz);
	color: var(--maincolor);
	text-align: center;
	text-transform: uppercase;
	overflow: hidden;
	padding-top:2rem;
}

.p-title h2 {
	-webkit-transform: translateY(20%);
	-moz-transform: translateY(20%);
	transform: translateY(20%);
}

.p-article-inline {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.p-article-inline .tns-inner > div > .p-article:not(:last-child) {
	margin-right: 0px;
}

.p-article-inline .tns-inner > div > .p-article {
	text-align: center;
	position: relative;
	flex-basis: 100%;
	
}

.p-article-inline .tns-inner > div > .p-article  .article-image {
	position: relative;
	height: calc((100vw - var(--seitenrand) - var(--seitenrand)) / 5);
}

.p-article-inline .tns-inner > div > .p-article  .article-image img {
	object-fit: contain;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}

.p-article-inline .tns-inner > div > .p-article  .article-title {
	position: relative;
}

.p-article-inline .tns-inner > div > .p-article:not(:last-child)  .article-title:after {
	content: " ";
	display: block;
	width: 100px;
	height: 15px;
	position: absolute;
	top: 10px;
	right: 0px;
	-webkit-transform: translateX(50%) translateY(0%);
	-moz-transform: translateX(50%) translateY(0%);
	transform: translateX(50%) translateY(0%);
	background-image: url("../images/arrow-right.svg");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 100%;
}

.p-article-inline .tns-inner > div > .p-article  .article-text {
	position: relative;
	padding: 0px 30px;
	box-sizing: border-box;
}

.p-webform {
	background: var(--bgcolor);
	padding: var(--abstand5) 0px;
	box-sizing: border-box;
}

.p-linkblock {

}

.p-linkblock .linkblock-container {
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
}

.p-linkblock .linkblock-container .linkblock-item {
	margin-bottom: 10px;
	position: relative;
	box-sizing: border-box;
}

.p-linkblock .linkblock-container .linkblock-item:has(.linkblock-item-content) {
	opacity:0;
	transform:translateY(100px);
	transition:all 1s ease-in-out;
}
.p-linkblock .linkblock-container .linkblock-item:has(.linkblock-item-content.is-visible) {
	transform:translateY(0px);
	opacity:1;
}


.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+1) {
	flex-basis: calc(50% - 5px);
	aspect-ratio: 1 / 1;
	margin-right: 5px;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+1) .linkblock-item-content {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+2) {
	flex-basis: calc(20% - 5px);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	margin-left: 5px;
	aspect-ratio: 1 / 1;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+2) .linkblock-item-content {
	position: absolute;
	left: 0px;
	bottom: 0%;
	width: 100%;
	aspect-ratio: 1 / 1;
}


.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+3) {
	flex-basis: calc(40% - 10px);
	text-align: right;
	aspect-ratio: 1 / 1;
	margin-right: 10px;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+3) .linkblock-item-content {
	position: absolute;
	left: 0px;
	top: 0%;
	width: 100%;
	height: calc(50% - 5px);
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+4) {
	flex-basis: calc(40% - 10px);
	aspect-ratio: 1 / 1;
	position: relative;
	margin-right: 10px;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+4) .linkblock-item-content {
	position: absolute;
	left: 0px;
	top: 0%;
	width: 100%;
	height: 100%;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) {
	flex-basis: calc(20% - 10px);
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) .linkblock-item-content {
	position: absolute;
	left: 0px;
	top: 0%;
	width: 100%;
	height: 50%;
}


.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+6) {
	flex-basis: 20%;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+6) .linkblock-item-content {
	width: calc(100% - 0px);
	height: calc(50% - 5px);
	position: absolute;
	right: -49%;
	top: 0px;
	-webkit-transform: translateX(0%) translateY(calc(-1 * 100% - 10px));
	-moz-transform: translateX(0%) translateY(calc(-1 * 100% - 10px));
	transform: translateX(0%) translateY(calc(-1 * 100% - 10px));
	aspect-ratio: 1 / 1;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+7) {
	flex-basis: calc(40% - 5px);
	margin-left: -20%;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+7) .linkblock-item-content {
	position: absolute;
	left: 0px;
	top: 0%;
	width: 100%;
	height: 100%;
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+8) {
	flex-basis: calc(40% - 5px);
}

.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+8) .linkblock-item-content {
	position: absolute;
	left: 0px;
	top: 0%;
	width: 100%;
	height: 50%;
}


.p-linkblock .item-subline {
	display: table;
	position: absolute;
	z-index: 70;
	left: 30px;
	top: 0px;
	background: var(--schwarz);
	color: var(--weiss);
	text-transform: uppercase;
	font-weight: var(--bold);
	letter-spacing: var(--letterspacing);
	padding: 2px 20px;
	box-sizing: border-box;
	-webkit-transform: translateX(0%) translateY(-30%);
	-moz-transform: translateX(0%) translateY(-30%);
	transform: translateX(0%) translateY(-30%);
}

.p-linkblock .item-subline a,
.p-linkblock .item-subline a:visited {
	color: var(--weiss) !important;
}

.p-linkblock .item-subline a:hover,
.p-linkblock .item-subline a:active {
	color: var(--maincolor) !important;
}

.p-linkblock .item-discover {
	text-align: right;
	position: absolute;
	right: 30px;
	bottom: 30px;
	z-index: 1;
	font-size: 80%;
	line-height: var(--lineheight);
	z-index: 80;
}

.p-linkblock .item-discover a,
.p-linkblock .item-discover a:visited {
	display: block;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	color: var(--schwarz);
	font-style: italic;
	font-weight: bold;
	text-transform: uppercase;
}

.p-linkblock .item-discover a:hover,
.p-linkblock .item-discover a:active {
	color: var(--maincolor);
}

.p-linkblock .item-discover a:after {
	content: " ";
	display: block;
	width: 30px;
	height: 12px;
	margin-left: 10px;

	background-image: url("../images/arrow-right.svg");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 100%;
}

.p-linkblock .item-discover a:hover:after {
	background-image: url("../images/arrow-right-m.svg");
}


.p-linkblock .maincolor .item-discover a,
.p-linkblock .maincolor .item-discover a:visited {
	color: var(--weiss);
}

.p-linkblock .maincolor .item-discover a:hover,
.p-linkblock .maincolor .item-discover a:active {
	color: var(--schwarz);
}

.p-linkblock .maincolor .item-discover a:after {
	background-image: url("../images/arrow-right-w.svg");
}

.p-linkblock .maincolor .item-discover a:hover:after {
	background-image: url("../images/arrow-right.svg");
}


.p-linkblock .maincolor .item-textcontainer a,
.p-linkblock .maincolor .item-textcontainer a:visited {
	color: var(--weiss);
}

.p-linkblock .maincolor .item-textcontainer a:hover,
.p-linkblock .maincolor .item-textcontainer a:active {
	color: var(--schwarz);
}

.p-linkblock .grey a,
.p-linkblock .grey a:visited {
	color: var(--schwarz);
}

.p-linkblock .maincolor a:hover,
.p-linkblock .maincolor a:active {
	color: var(--maincolor);
}

.p-linkblock .maincolor .item-discover a:after {
	background-image: url("../images/arrow-right-w.svg");
}

.p-linkblock .maincolor .item-discover a:hover:after {
	background-image: url("../images/arrow-right.svg");
}

.linkblock-gray-image-only-contain .item-image {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 3;
}

.linkblock-gray-image-only-contain .item-image img {
	object-fit: contain;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}

.linkblock-image-only-cover .item-image {
	overflow: hidden;
	height: 100%;
}

.linkblock-image-only-cover .item-image img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}

.linkblock-gray-title-image .item-image img {
	width: 100%;
	height: auto;
}




.linkblock-grey-with-text-left-image-right .item-image img {
	object-fit: contain;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}

.p-linkblock .item-title {
	text-transform: uppercase;
	font-weight: var(--bold);
	font-size: 140%;
	line-height: 120%;
}

.p-linkblock  .linkblock-gray-title-image .item-title {
	font-size: 200%;
	line-height: 110%;
}

.linkblock-grey-with-text-left-image-right .item-title,
.linkblock-grey-with-text-left-image-right .item-text {
	
}

.linkblock-grey-with-text-left-image-right  {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.linkblock-grey-with-text-left-image-right > div {

}



.p-linkblock p {
	margin: 0px;
	padding: 0px;
}


.linkblock-gray-title-image.linkblock-item-content,
.linkblock-blue-with-title-or-text.linkblock-item-content {
	padding: 50px 30px 30px 30px;
	box-sizing: border-box;
}

.linkblock-grey-with-text-left-image-right.linkblock-item-content,
.linkblock-black-with-text.linkblock-item-content {
	padding: 50px 30px 70px 30px;
	box-sizing: border-box;
}

.linkblock-gray-image-only-contain {
}

.linkblock-image-only-cover {

}

.grey-with-text-left-image-right {
	
}


.linkblock-gray-title-image {
}

.linkblock-blue-with-title-or-text {
	color: var(--weiss);
}

.p-linkblock .grey {
	background: var(--bgcolor);
}

.p-linkblock .maincolor {
	background: var(--maincolor);
}


.linkblock-grey-with-text-left-image-right {
	box-sizing: border-box;
}



.linkblock-item .linkblockclass-discount .item-textcontainer {
	background-image: url('../images/register-now-block.png');
	background-repeat: no-repeat;
	background-position: right top;
	background-size: 50% auto;
}

.linkblock-item .linkblockclass-discount .item-title {
	font-size: 400%;
	line-height: 100%;
}

.linkblock-item .linkblockclass-discount .item-title .discount-value {
	font-size: 200%;
	line-height: 100%;
	display: block;
	clear: both;
}

.linkblock-item .linkblockclass-discount .item-text {
	text-transform: uppercase;
	font-weight: var(--bold);
	font-size: 120%;
	line-height: var(--lineheight);
	margin-top: var(--abstand3);
}

.linkblock-black-with-text {
	background: var(--schwarz);
	color: var(--weiss);
}

.p-image-text-container > div {
	box-sizing: border-box;
	margin-top: 10px;
}

.p-image-text-container > div:nth-child(2n+1):not(:last-child) {
	padding-right: 20%;
	flex-direction: row;
	align-items: flex-end;
}

.p-image-text-container > div:nth-child(2n+2):not(:last-child) {
	padding-left: 20%;
	flex-direction: row-reverse;
	align-items: flex-start;
}

.p-image-text-container > div:nth-child(2n+1):not(:last-child) .item-image {
	text-align: right;
}

.p-image-text-container > div:nth-child(2n+2):not(:last-child) .item-image {
	text-align: left;
}


.p-image-text-container > div:nth-child(2n+1):not(:last-child) .item-content{
	background: var(--maincolor);
}

.p-image-text-container > div:nth-child(2n+2):not(:last-child) .item-content {
	background: var(--schwarz);
}
 

.p-image-text-container > div:not(:last-child) {
	display: flex;
	justify-content: space-between;
}

.p-text-image-block .item-image {
	flex-basis: 55%;
}

.p-text-image-block .item-image img {
	width: 100%;
	height: auto;
}

.text-block-item-technologies .item-image img {
	max-width: 500px;
}

.text-block-item-technologies,
.text-block-item-certified {
	background-image: url("../images/arrow-down-s.svg");
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 15px auto;
}


.p-text-image-block .item-content {
	flex-basis: 45%;
	position: relative;
	padding: 60px 50px 50px 50px;
	box-sizing: border-box;
	text-transform: uppercase;
	font-weight: var(--regular);
	font-size: 120%;
	line-height: var(--lineheight);
	color: var(--weiss);
}

.p-text-image-block .item-content p {
	margin: 0px;
	padding: 0px;
}



.p-image-text-container > div:nth-child(2n+1):not(:last-child) .item-subline {
	background: var(--schwarz);
}

.p-image-text-container > div:nth-child(2n+2):not(:last-child) .item-subline {
	background: var(--maincolor);
}
 

.p-text-image-block .item-subline {
	display: table;
	position: absolute;
	z-index: 70;
	left: 30px;
	top: 0px;
	color: var(--weiss);
	text-transform: uppercase;
	font-weight: var(--bold);
	letter-spacing: var(--letterspacing);
	padding: 2px 20px;
	box-sizing: border-box;
	-webkit-transform: translateX(0%) translateY(-30%);
	-moz-transform: translateX(0%) translateY(-30%);
	transform: translateX(0%) translateY(-30%);
}

.p-text-image-block .item-subline a,
.p-text-image-block .item-subline a:visited {
	color: var(--weiss) !important;
}

.p-text-image-block .item-subline a:hover,
.p-text-image-block.item-subline a:active {
	color: var(--maincolor) !important;
}


.text-block-item-certified {
	text-align: center;
	color: var(--schwarz);
	padding-top: 200px;
	margin-top: var(--abstand7) !important;
}

.text-block-item-certified img {
	max-width: 200px;
	height: auto;
}

.text-block-item-certified .item-content {
	color: var(--schwarz);
	max-width: 60%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 30px;
}


/* !CONTENT */

.region-content .block-page-title-block {
	padding-top: var(--abstand5);
	padding-right: 25%;
	box-sizing: border-box;
}

.headerimage-left {
	position: absolute;
	left: calc(var(--seitenrand) + (var(--logowidth) / 1.1));
	top: 0px;
	width: 10vw;
	-webkit-transform: translateX(0%) translateY(15%) rotate(-10deg);
	-moz-transform: translateX(0%) translateY(15%) rotate(-10deg);
	transform: translateX(0%) translateY(15%) rotate(-10deg);
}

.headerimage-left img {
	width: 100%;
	height: auto;
}


.headerimage-right {
	position: absolute;
	right: var(--seitenrand);
	bottom: 0px;
	width: 30vw;
	-webkit-transform: translateX(0%) translateY(62%);
	-moz-transform: translateX(0%) translateY(62%);
	transform: translateX(0%) translateY(62%);
}

.page-node-7 .headerimage-right {
	width: 15vw;
	right: calc(var(--seitenrand) * 2);
}

.headerimage-right img {
	width: 100%;
	height: auto;
	max-width: 500px;
}

.actionblock.withbg {
	padding: 2rem 0px;
}

.actionblock-container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
}

.actionblock-container .actionblock-image {
	flex-basis: calc(30% - 20px);
	position: relative;
}

.actionblock-container .actionblock-content {
	flex-basis: calc(70% - 20px);
	text-transform: uppercase;
	display: flex;
	gap:3vw;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
}

.actionblock-container .actionblock-content > .actionblock-text {
	flex-basis: 100%;
	padding: var(--abstand5) 0px 0px 0px;
	box-sizing: border-box;
}
.actionblock-container .actionblock-content > .actionblock-button {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-end;
	padding-bottom: var(--abstand2);
	box-sizing: border-box;
}

.actionblock-container .socialmedialinks {
	margin-left: auto;
	margin-right: 0px;
	display: table;
	margin-bottom: var(--abstand5);
	margin-bottom: auto;
}

.actionblock-container .actionblock-social-media .actionblock-social-media-title {
	text-align: center;
	font-style: italic;
	margin-bottom: var(--abstand1);
	font-weight: var(--bold);
}

.bgcolor-maincolor .actionblock-container .actionblock-social-media .actionblock-social-media-title,
.bgcolor-black .actionblock-container .actionblock-social-media .actionblock-social-media-title {
	color: var(--weiss);
}


.actionblock-container h3.actionblock-title {
	margin: 0px;
	padding: 0px;
}

.actionblock-container .actionblock-content p {
	margin: 0px;
	padding: 0px;
}

.actionblock .actionblock-image {
	text-align: right;
}

.actionblock .actionblock-image img {
	width: auto;
	height: 180px;
	margin-top: 10px;
}


.actionblock-pricelist .actionblock-image img {
	position: absolute;
	right: 0px;
	top: 0px;
	height: 130%;
	width: auto;
}


.teamblock {
	
}

.teamblock .tns-outer .tns-nav {
	margin-top: var(--abstand2);
}

.teamblock .team-item {
	position: relative;
}

.teamblock .team-item-portrait {
	line-height: 0px;
	position: relative;
}

.teamblock .team-item-portrait img {
	width: 100%;
	height: auto;
}

.teamblock .team-item-portrait:after {
	content: " ";
	display: block;
	position: absolute;
	left: 0px;
	bottom: 0px;
	width: 100%;
	height: 50%;
	z-index: 8;
	background: #000000;
	background: linear-gradient(0deg,rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
}


.teamblock .team-content {
	position: absolute;
	z-index: 10;
	left: 20px;
	bottom: 20px;
	width: calc(100% - 40px);
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-end;
	color: var(--weiss);
	font-weight: var(--bold);
	text-transform: uppercase;
}


.teamblock .team-content > div:not(:last-child) {
	margin-right: 20px;
}

.teamblock .team-content .team-item-firstname {
	font-size: 330%;
	line-height: 115%;
}

.teamblock .team-content .team-profession {
	font-style: italic;
}

.teamblock .team-content .team-item-contacts {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
}

.teamblock .team-content .team-item-contacts > div:not(:last-child) {
	margin-right: 10px;
}

.team-item-contacts .teamlink {
	border: solid 1px var(--weiss);
	border-radius: 100%;
	width: 34px;
	aspect-ratio: 1 / 1;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0px 0px;
	white-space: nowrap;
	overflow: hidden;
	color: var(--weiss);
}

.team-item-contacts .teamlink:hover {
	color: var(--actioncolor);
	border: solid 1px var(--maincolor);
	color: var(--maincolor);
}

.team-item-contacts .teamlink a {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-left: 200px;
	overflow: hidden;
}


.offical-partners-block {
	text-align: center;
}

.offical-partners-block .logocontainer {
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
}

.offical-partners-block .logocontainer img {
	width: auto;
	height: 75px;
	margin: 0px 75px 20px 0px;
}


.offical-partners-block .views-field-operations {
	margin-left: auto !important;
	margin-right: auto !important;
	display: table;
}

.node--type-contact {
	margin-bottom: var(--abstand10);
}

.node--type-contact .field--name-field-company-name {
	font-weight: var(--bold);
}

.node--type-contact .field.field--label-inline {
	display: flex;
	flex-direction: row;
}

.node--type-contact .field.field--label-inline .field__label {
	margin-right: 8px;
}



/* !FORM-ELEMENTE */

*:focus {
	outline: none;
}


input[type=text],
input[type=tel],
input[type=email],
input[type=password] {
	border: solid 1px var(--linecolor);
	padding: 10px 20px;
	box-sizing: border-box;
	height: 50px;
	width: 100%;
	color: var(--schwarz);
	border-radius: 0px;
} 

select {
	height: 50px;
	border: solid 1px var(--linecolor);
	width: 100%;
	background-color: var(--weiss);
	padding: 0px 15px;
	box-sizing: border-box;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	color: var(--schwarz);
	border-radius: 0px;
	
	background-image: url("../images/select-arrow.svg");
	background-position: calc(100% - 20px) center;
	background-repeat: no-repeat;
	background-size: 13px 13px;
}

textarea {
	border: solid 1px var(--linecolor);
	padding: 10px 20px;
	box-sizing: border-box;
	color: var(--schwarz);
	border-radius: 0px;
	width: 100%;
}






input[type="checkbox"] {
	appearance: none;
	background-color: #fff;
	margin: 0;
	font: inherit;
	color: currentColor;
	width: 1.15em;
	height: 1.15em;
	border: 1px solid var(--schwarz);
	border-radius: 0.15em;
	transform: translateY(-0.075em);
	
	display: grid;
	float: left;
	margin-right: 7px;
	margin-top: 3px;
	place-content: center;
}

input[type="checkbox"]::before {
	content: "";
	width: 0.65em;
	height: 0.65em;
	transform: scale(0);
	transition: 120ms transform ease-in-out;
	box-shadow: inset 1em 1em var(--maincolor);
	
	/* Windows High Contrast Mode */
	background-color: CanvasText;
	
	transform-origin: bottom left;
	clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}

input[type="checkbox"]:checked::before {
	transform: scale(1);
}

input[type="checkbox"]:focus {
	outline: max(2px, 0.15em) solid currentColor;
	outline-offset: max(2px, 0.15em);
}


.form-type-radio {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	align-content: center;
}

input[type="radio"] {
	/* Add if not using autoprefixer */
	-webkit-appearance: none;
	appearance: none;
	/* For iOS < 15 to remove gradient background */
	background-color: #fff;
	/* Not removed via appearance */
	margin: 0;
	font: inherit;
	color: var(--actioncolor);
	width: 22px;
	height: 22px;
	border: 1px solid var(--actioncolor);
	border-radius: 50%;
	transform: translateY(-0.075em);
	display: grid;
	place-content: center;
	margin-right: 7px;
	top: 2px;
	position: relative
}

input[type="radio"]::before {
	content: "";
	width: 0.65em;
	height: 0.65em;
	border-radius: 50%;
	transform: scale(0);
	transition: 120ms transform ease-in-out;
	box-shadow: inset 1em 1em var(--actioncolor);
}

input[type="radio"]:checked::before {
	transform: scale(1);
}


input.js-form-submit {
	display: table;
	margin-top: 3vh;
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 20px;
	border: solid 1px var(--linecolor);
	background-color: var(--maincolor);
	color: var(--schwarz);
	border-radius: 30px;
	padding: 13px 30px 13px 30px;
	box-sizing: border-box;
	white-space: nowrap;
	font-weight: var(--bold);
	
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}

input.js-form-submit:hover {
	background-color: var(--schwarz);
	color: var(--weiss);
	
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}



::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: var(--bgcolor);
}
::-moz-placeholder { /* Firefox 19+ */
	color: var(--bgcolor);
}
:-ms-input-placeholder { /* IE 10+ */
	color: var(--bgcolor);
}
:-moz-placeholder { /* Firefox 18- */
	color: var(--bgcolor);
}




/* !WEBFORM */

.webformflex {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
}

.webformflex > div {
	flex-basis: calc(50% - 20px);
}

.webform label {
	margin-bottom: 5px;
	display: table;
}

.webform input[type=text],
.webform input[type=tel],
.webform input[type=email] {
	border: solid 1px var(--linecolor);
	padding: 10px 20px;
	box-sizing: border-box;
	height: 50px;
	width: 100%;
	color: var(--schwarz);
	border-radius: 0px;
} 

.webform select {
	height: 50px;
	border: solid 1px var(--lineheight);
	width: 100%;
	background-color: var(--weiss);
	padding: 0px 15px;
	box-sizing: border-box;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	color: var(--schwarz);
	border-radius: 0px;
	
	background-image: url("../images/select-arrow.svg");
	background-position: calc(100% - 20px) center;
	background-repeat: no-repeat;
	background-size: 13px 13px;
}

.webform textarea {
	border: solid 1px var(--linecolor);
	padding: 10px 20px;
	box-sizing: border-box;
	color: var(--schwarz);
	border-radius: 0px;
	width: 100%;
}

.webform .js-form-wrapper {
	margin: 0px 0px 0px 0px;
}

.webform .form-item {
	margin: 20px 0px 20px 0px;
}

.webform .wfleft {
	width: 50%;
	float: left;
}

.webform .wfleft input {
	width: calc(100% - 10px);
	float: left;
}

.webform .wfright {
	width: 50%;
	float: right;
}

.webform .form-item-datenschutz {
	margin-top: var(--abstand5);
	margin-bottom: var(--abstand5);
}


.webform .form-item-datenschutz a,
.webform .form-item-datenschutz a:visited {
	color: var(--grau);
}

.webform .form-item-datenschutz a:hover,
.webform .form-item-datenschutz a:active {
	color: var(--actioncolor);
}



.webform .messages--error {
	margin-bottom: 20px;
}
.webform .wfcont {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}


.webform .wfcont > div {
	flex-basis: 45%;
}

.webform .webform-actions input {

}
.webform-confirmation {
	background: red;
	padding: 20px;
	box-sizing: border-box;
}


/* UNPUBLISHED */
.node--unpublished {
	background-color: rgba(255, 0, 0, 0.2);
	padding: 60px 20px 20px 20px;
	position: relative;
}
.node--unpublished:before {
	content: "unpublished";
	display: block;
	position: absolute;
	left: 10px;
	top: 10px;
	font-size: 200%;
	color: rgba(255, 0, 0, 0.7);
	line-height: 100%;
}


/* !GMAP */

.wh-gmap {
	line-height: 0px;
	margin-top: var(--abstand7);
}

.wh-gmap iframe {
	border: 0px;
	width: 100%;
	height: 10vh;
	min-height: 400px;
}

.cookies-fallback--wrap.disabled {
	min-height: 400px;
}


/* !SOCIAL MEDIA LINKS */

.socialmedialinks {
	margin-left: var(--seitenrand);
	margin-right: var(--seitenrand);
	margin-bottom: var(--abstand7);
}

.socialmedialinks .view-content,
.socialmedialinks .field__items {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	align-content: center;
}


.socialmedialinks .views-row,
.socialmedialinks .field__item {
	align-self: center;
}

.socialmedialinks .views-row:not(:last-child),
.socialmedialinks .field__item:not(:last-child) {
	margin-right: 20px;
}

.socialmedialinks a,
.socialmedialinks a:visited {
	display: flex;
	width: var(--socialmediaicons);
	height: var(--socialmediaicons);
	justify-content: center;
	align-items: center;
	align-content: center;
	color: var(--weiss);
	font-size: calc(var(--socialmediaicons) / 1.8);
	background: var(--schwarz);
	border-radius: 100%;
	
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
}

.socialmedialinks a:hover,
.socialmedialinks a:active {
	color: var(--maincolor);
	-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;
} 

.actionblock-social-media .socialmedialinks a,
.actionblock-social-media .socialmedialinks a:visited {
	width: calc(var(--socialmediaicons) / 1.2);
	height: calc(var(--socialmediaicons) / 1.2);
	font-size: calc(var(--socialmediaicons) / 1.9);
}




.socialmedia-arrow-block {
	position: relative;
	margin-bottom: var(--abstand4);
	margin-top: var(--abstand5);
}

.follow-us-text {
	position: absolute;
	left: 0px;
	top: 45%;
	-webkit-transform: translateX(0%) translateY(-50%);
	-moz-transform: translateX(0%) translateY(-50%);
	transform: translateX(0%) translateY(-50%);
	width: 100%;
	text-align: center;
	background: var(--weiss);
	font-weight: var(--bold);
	font-style: italic;
	text-transform: uppercase;
	padding: 10px 0px;
	letter-spacing: var(--letterspacing);
}

.follow-us-arrow {
	width: var(--arrowidth);
	margin-left: auto;
	margin-right: auto;
}


/* !BREADCRUMB */

.path-frontpage .region-breadcrumb {
	display: none;
}

.region-breadcrumb {
	padding-top: var(--abstand7)
}

.breadcrumb {
	padding: 0px 0vw 0px 5vw;
	font-weight: var(--bold);
	font-style: italic;
	text-transform: uppercase;
	letter-spacing: var(--letterspacing);
	position: relative;
	display: table;
}

.breadcrumb:before {
	content: " ";
	display: block;
	width: 100%;
	height: 2px;
	background: var(--schwarz);
	position: absolute;
	left: 0px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 2;
}
.breadcrumb:after {
	content: " ";
	display: block;
	width: var(--arrowidth);
	height: var(--arrowidth);
	background-color: var(--weiss);
	background-image: url('../images/breadcrumb-arrow.svg');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	position: absolute;
	right: 0px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 2;
}


.breadcrumb ol {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: row;
	position: relative;
	z-index: 3;
}
.breadcrumb li {
	margin: 0px 5vw 0px 0px;
	padding: 0px;
}

.breadcrumb li:before {
	
}
.breadcrumb li:first-child:before {
	content: none;
}

.path-checkout .breadcrumb li:not(:nth-last-child(1)) {
	display: none;
}

.path-dplogin .breadcrumb li:not(:nth-last-child(1), :nth-child(1)) {
	display: none;
}


.breadcrumb a,
.breadcrumb a:visited,
.breadcrumb span {
	color: var(--schwarz);
	display: block;
	padding: 0px 15px;
	box-sizing: border-box;
	background: var(--weiss);
}

.breadcrumb a:hover,
.breadcrumb a:active {
	color: var(--maincolor);
}

.breadcrumb span {
	
}

/* !PRODUKTE */

.product-full {
	position: relative;
	box-sizing: border-box;
	padding-right: 55%;
	margin-top: var(--abstand5);
	margin-bottom: var(--abstand10);
}

.product-full .product-images {
	position: absolute;
	right: 0px;
	top: 0px;
	width: 45%;
	background: var(--bgcolor);
}

.product-full .product-images .tns-outer .tns-nav {
	position: absolute;
	left: 0px;
	bottom: 30px;
	width: 100%;
	margin: 0px !important;
}

.product-full .field--name-field-highlight-block {
	border: solid 2px var(--maincolor);
	padding: 30px;
	border-radius: 20px;
	box-sizing: border-box;
	display: table;
	margin-top: var(--abstand3);
}

.product-full .field--name-field-highlight-block p {
	margin: 0px;
	padding: 0px;
}

.product-full .field--name-body {
	margin-top: var(--abstand3);
}

.product-full .field--name-body .field__label {
	text-transform: uppercase;
	font-weight: var(--bold);
	letter-spacing: var(--letterspacing);
}


.product-add-to-cart-block .price-container {
	text-align: right;
}

.product-add-to-cart-block .field--name-list-price {
	font-weight: var(--bold);
	font-size: 160%;
	line-height: 100%;
	text-decoration: line-through;
}
.product-add-to-cart-block .wh-price {
	font-weight: var(--bold);
	color: var(--maincolor);
	font-size: 400%;
	line-height: 100%;
}

.product-slider {
	margin-bottom: var(--abstand10);
}

.product-slider .tns-inner > div {
	display: flex;
	flex-direction: row;
	align-items: stretch;
}


.product-slider .tns-outer .tns-nav {
	margin-top: var(--abstand3);
}

.product-slider .view-content {
	margin-top: var(--abstand7);
}

.product-slider .tns-item {
	box-sizing: border-box;
	position: relative;
	display: flex !important;
	flex-direction: row !important;
	justify-content: stretch !important;
	align-items: stretch !important;
	align-content: stretch !important;
	margin-top: 30px;
}

.product-slider-item {
	background: var(--bgcolor);
	padding: 30px;
	align-self: stretch;
}

.product-slider-item h3.product-slider-item-title {
	padding: 0px;
	margin: 0px;
	margin-bottom:30px;
	font-size:120%;
}

.product-slider-item h3.product-slider-item-title a,
.product-slider-item h3.product-slider-item-title a:visited {
	color: var(--schwarz);
}

.product-slider-item h3.product-slider-item-title a:hover,
.product-slider-item h3.product-slider-item-title a:active {
	color: var(--maincolor);
}

.product-slider-item .product-slider-item-title {
}

.product-slider-item .product-slider-item-image {
	margin-bottom: 30px;
	margin-top:auto;
}

.product-slider-item .product-slider-item-image img {
	object-fit: contain;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}

.product-slider-item .product-slider-item-discover {
	text-align: right;
	right: 50px;
	bottom: 30px;
	z-index: 1;
	font-size: 80%;
	line-height: var(--lineheight);
}

.product-slider-item .product-slider-item-discover a,
.product-slider-item .product-slider-item-discover a:visited {
	display: block;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	color: var(--schwarz);
	font-style: italic;
	font-weight: bold;
	text-transform: uppercase;
	
}

.product-slider-item .product-slider-item-discover a:hover,
.product-slider-item .product-slider-item-discover a:active {
	color: var(--maincolor);
}

.product-slider-item .product-slider-item-discover a:after {
	content: " ";
	display: block;
	width: 40px;
	height: 15px;
	margin-left: 10px;

	background-image: url("../images/arrow-right.svg");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 100%;
}

.product-slider-item .product-slider-item-discover a:hover:after {
	background-image: url("../images/arrow-right-m.svg");
}




.product-slider .shopflag {
	display: table;
	position: absolute;
	left: 30px;
	top: 0px;
	background: var(--schwarz);
	color: var(--weiss);
	text-transform: uppercase;
	font-weight: var(--bold);
	letter-spacing: var(--letterspacing);
	padding: 2px 20px;
	box-sizing: border-box;
	-webkit-transform: translateX(0%) translateY(-50%);
	-moz-transform: translateX(0%) translateY(-50%);
	transform: translateX(0%) translateY(-50%);
}

.product-slider .shopflag a,
.product-slider .shopflag a:visited {
	color: var(--weiss);
}

.product-slider .shopflag a:hover,
.product-slider .shopflag a:active {
	color: var(--maincolor);
}



.product-liste {
	margin-bottom: var(--abstand10);
}




.product-liste .view-content {
	margin-top: var(--abstand7);
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px;
}

.product-liste .views-row {
	background: var(--bgcolor);
	padding: 30px;
	align-self: stretch;
	box-sizing: border-box;
	flex-basis: calc((100% / 3) - 20px);
	position: relative;
}

.product-liste  .views-row > div {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	flex-basis: 100%;
}

.product-liste-item,
.product-slider-item {
	display:flex;
	flex-direction:column;
	justify-content:stretch;
	height:100%;
	box-sizing: border-box;
}

.product-liste-item h3.product-liste-item-title {
	padding: 0px;
	margin: 0px;
	margin-bottom:30px;
	font-size:120%;
}

.product-liste-item h3.product-liste-item-title a,
.product-liste-item h3.product-liste-item-title a:visited {
	color: var(--schwarz);
}

.product-liste-item h3.product-liste-item-title a:hover,
.product-liste-item h3.product-liste-item-title a:active {
	color: var(--maincolor);
}

.product-liste-item .product-liste-item-title {
}

.product-liste-item .product-liste-item-image {
	margin-bottom: 30px;
	margin-top: auto;
}

.product-liste-item .product-liste-item-image img {
	object-fit: contain;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}
.product-liste-item .product-liste-item-discover {
	text-align: right;
	right: 50px;
	bottom: 30px;
	z-index: 1;
	font-size: 80%;
	line-height: var(--lineheight);
}

.product-liste-item .product-liste-item-discover a,
.product-liste-item .product-liste-item-discover a:visited {
	display: block;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	color: var(--schwarz);
	font-style: italic;
	font-weight: bold;
	text-transform: uppercase;
}

.product-liste-item .product-liste-item-discover a:hover,
.product-liste-item .product-liste-item-discover a:active {
	color: var(--maincolor);
}

.product-liste-item .product-liste-item-discover a:after {
	content: " ";
	display: block;
	width: 40px;
	height: 15px;
	margin-left: 10px;

	background-image: url("../images/arrow-right.svg");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 100%;
}

.product-liste-item .product-liste-item-discover a:hover:after {
	background-image: url("../images/arrow-right.svg");
}


.product-liste .shopflag {
	display: table;
	position: absolute;
	left: 30px;
	top: 0px;
	background: var(--schwarz);
	color: var(--weiss);
	text-transform: uppercase;
	font-weight: var(--bold);
	letter-spacing: var(--letterspacing);
	padding: 2px 20px;
	box-sizing: border-box;
	-webkit-transform: translateX(0%) translateY(-50%);
	-moz-transform: translateX(0%) translateY(-50%);
	transform: translateX(0%) translateY(-50%);
}






/* !CHECKOUT */

.path-cart .region-content {
	min-height: 500px;
}

ol.checkout-progress {
	padding: 0px;
	margin: 0px 0px var(--abstand5) 0px;
	text-transform: uppercase;
	font-size: 85%;
	line-height: var(--lineheight);
}

ol.checkout-progress li a,
ol.checkout-progress li a:visited {
	color: var(--actioncolor);
}

ol.checkout-progress li a:hover,
ol.checkout-progress li a:active {
	color: var(--schwarz);
}

.wh-cart-form table {
	width: 100%;
	border-spacing: 0px;
	border-bottom: solid 1px var(--linecolor);
	margin-bottom: 20px;
}

.wh-cart-form table th {
	background: var(--bgcolor);
	text-align: left;
	border-right: solid 1px var(--weiss);
	box-sizing: border-box;
}


.wh-table-container {
	overflow: auto;
}


.wh-cart-form table th.views-field-total-price__number,
.wh-cart-form table td.views-field-total-price__number {
	text-align: right;
}

.wh-cart-form table td {
	border-top: solid 1px var(--linecolor);
	box-sizing: border-box;
	text-align: left;
}

.wh-cart-form table th,
.wh-cart-form table td {
	padding: 3px 10px;
	box-sizing: border-box;
}


.wh-cart-form table input.form-number {
	padding: 10px 10px;
	box-sizing: border-box;
	border-right: 0px;
	border: solid 1px var(--linecolor);
}


.wh-cart-form .delete-order-item {
	font-size: 80%;
	line-height: 100%;
	padding: 8px 10px;
	box-sizing: border-box;
	border: solid 1px var(--linecolor);
	
}

.view-commerce-cart-form .form-actions {
	
}

.view-commerce-cart-form .form-actions input {
	font-weight: var(--bold);
	text-transform: uppercase;
	letter-spacing: var(--letterspacing);
}

.view-commerce-cart-form .form-actions > input:nth-child(1) {
	padding: 8px 15px 8px 15px; 
	box-sizing: border-box;
	border-radius: 20px;
	background: var(--actioncolor);
	color: var(--weiss);
	border: 0px;
	font-size: 80%;
	line-height: var(--lineheight);
	font-weight: var(--bold);
}

.view-commerce-cart-form .form-actions > input:nth-child(1):hover {
	background: var(--maincolor);
}

.view-commerce-cart-form .form-actions > input:nth-child(2) {
	background: var(--maincolor);
	color: var(--weiss);
	border: 0px;
	font-weight: var(--bold);
	min-width: 260px;
}

.view-commerce-cart-form .form-actions > input:nth-child(2):hover {
	background: var(--maincolor);
}

.path-checkout .form-actions {
	margin-bottom: var(--abstand7);
}


.path-checkout .form-actions a {
	display: block;
	width: 100px;
	text-align: center;
	padding: 8px 15px 8px 15px; 
	border-radius: 20px;
	background: var(--actioncolor);
	color: var(--schwarz);
	border: 0px;
	line-height: var(--lineheight);
	font-weight: var(--bold);
	text-transform: uppercase;
}


.wh-undiscounted-price {
	font-size: 70%;
	line-height: var(--lineheight);
	display: block;
	color: var(--grau);
	text-decoration: line-through;
}

.path-checkout .region-content fieldset {
	border: solid 1px var(--linecolor);
	padding-top: var(--abstand2);
	margin-bottom: var(--abstand5);
}

.path-checkout .region-content fieldset > legend {
	background: var(--schwarz);
	color: var(--weiss);
	font-weight: var(--bold);
	text-transform: uppercase;
	padding: 6px 20px;
	box-sizing: border-box;
	border-radius: 0px;
}


.path-checkout .region-content fieldset.checkout-pane-payment-information {

	margin-left: 0px;
	margin-right: 0px;
}

.path-checkout .region-content fieldset.checkout-pane-payment-information  > legend {

}

.stripe-form {
	border: solid 1px var(--linecolor);
	padding: 20px;
	box-sizing: border-box;
	margin-bottom: var(--abstand5);
}

.path-checkout .region-content fieldset .form-item,
.commerce-payment-method-add-form  .form-item {
	margin: 0px 0px 15px 0px;
}
.path-checkout .region-content fieldset input.button,
.commerce-payment-method-add-form input.button {
	margin-bottom: 20px;
}

.path-checkout #edit-order-fieldscheckout {
	margin-top: var(--abstand5);
}

.path-checkout #edit-order-fieldscheckout .form-item  {
	margin-bottom: 10px;
}

.path-checkout .layout-region-checkout-main fieldset#edit-review-order-fieldscheckout,
.path-checkout .layout-region-checkout-main fieldset#edit-completion-message-order-fieldscheckout {
	display: none;
}

.path-checkout .profile {
	margin-top: var(--abstand3);
}

.path-checkout .profile .field--label-above {
	margin-bottom: var(--abstand2);
}

.path-checkout #edit-order-fieldscheckout a,
.path-checkout #edit-order-fieldscheckout a:visited {
	color: var(--actioncolor);
}

.path-checkout #edit-order-fieldscheckout a:hover,
.path-checkout #edit-order-fieldscheckout a:active {
	color: var(--schwarz);
}

.path-checkout fieldset.checkout-pane-stripe-review {
	border: 0px !important;
	margin-left: 0px;
	margin-right: 0px;
	padding-left: 0px;
	padding-right: 0px;
}

.path-checkout fieldset.checkout-pane-stripe-review legend {

}



#edit-login-returning-customer-forgot-password {
	display: block;
}


#edit-login-returning-customer-forgot-password {
	font-size: 85%;
	line-height: var(--lineheight);
	font-weight: var(--medium);
	text-transform: uppercase;
}


fieldset.checkout-pane-contact-information,
fieldset.form-wrapper__guest-checkout,
fieldset#edit-review-contact-information {
	margin-bottom: var(--abstand5);
}

.layout-checkout-form .form-item > label,
form.user-form .form-item > label {
	text-transform: uppercase;
	font-weight: var(--medium);
	font-size: 90%;
	line-height: var(--lineheight);
	display: block;
	margin-bottom: 5px;
}


.wh-cart-form.view-commerce-checkout-order-summary td,
.wh-cart-form.view-commerce-checkout-order-summary th {
	vertical-align: top;
}

.password-confirm-message,
.password-strength__title,
.password-suggestions {
	font-size: 80%;
	line-height: var(--lineheight);
}

.confirm-parent, .password-parent {
	max-width: 100% !important;
}

fieldset.form-wrapper__guest-checkout .form-item-login-register-name {
	display: none;
}

.form-item-payment-information-billing-information-field-codice-fiscal-0-value {
	/* display: none; */
}

.form-item-payment-information-billing-information-field-codice-fiscal-0-value input {
	text-transform: uppercase;
}

form.user-form {
	
}

form.user-form > details > summary {
	display: none;
}

form.user-form .form-item {
	margin-bottom: var(--abstand3);
}


form.user-form #edit-pass {
	background: var(--bgcolor);
	padding: 20px;
	box-sizing: border-box;
}

.path-dplogin .region-content table {
	width: 100%;
	border-spacing: 0px;
}
.path-dplogin .region-content table th {
	border-bottom: solid 1px var(--schwarz);
}

.path-dplogin .region-content table tbody tr:nth-child(odd) {
	background: var(--bgcolor);
}

.path-dplogin .region-content table td,
.path-dplogin .region-content table th {
	text-align: left;
	padding: 5px 5px;
	box-sizing: border-box;
}

.path-checkout .layout-region-checkout-secondary > h3 {
	margin-top: 0px;
	padding-top: 0px;
}


.checkout-complete {
	background: var(--bgcolor);
	padding: 20px;
	box-sizing: border-box;
	font-weight: var(--medium);
	margin-bottom: var(--abstand10);
}

.layout-region-checkout-main fieldset#edit-completion-message-payment-information {
	margin-top: var(--abstand5);
}


.form-item-payment-information-billing-information-copy-fields-enable {
	margin: var(--abstand3) 0px;
}

.profile-customer-address-book-add-form .field--name-address .form-item {
	margin-top: var(--abstand2);
}


a.address-book__add-link,
a.address-book__add-link:visited {
	display: table;
	color: var(--weiss);
	background-color: var(--maincolor);
	border-radius: 20px;
	padding: 5px 20px;
	box-sizing: border-box;
	white-space: nowrap;
	font-weight: var(--bold);
	letter-spacing: var(--letterspacing);
	-webkit-transition: all .35s ease;
	 transition: all .35s ease;
	 min-width: 200px;
	 text-align: center;
}

a.address-book__add-link:hover,
a.address-book__add-link:active {
	display: table;
	color: var(--weiss);
	background-color: var(--schwarz);
	cursor: pointer;
	
	-webkit-transition: all .35s ease;
	 transition: all .35s ease;
}


a.address-book__edit-link,
a.address-book__edit-link:visited,
a.address-book__delete-link,
a.address-book__delete-link:visited {
	display: table;
	color: var(--weiss);
	background-color: var(--schwarz);
	border-radius: 20px;
	padding: 5px 20px;
	box-sizing: border-box;
	white-space: nowrap;
	font-weight: var(--bold);
	letter-spacing: var(--letterspacing);
	-webkit-transition: all .35s ease;
	 transition: all .35s ease;
	 text-align: center;
}

a.address-book__edit-link:hover,
a.address-book__edit-link:active,
a.address-book__delete-link:hover,
a.address-book__delete-link:active {
	display: table;
	color: var(--weiss);
	background-color: var(--maincolor);
	cursor: pointer;
	
	-webkit-transition: all .35s ease;
	 transition: all .35s ease;
}

.address-book__operations {
	display: flex;
	flex-direction: row;
}

.address-book__operations > div:not(:last-child) {
	margin-right: 10px;
}

/* !ORDER */


.commerce-user-order {

}

.commerce-user-order .order-information {
	overflow-x: auto;
	padding-bottom: 20px;
}

.commerce-user-order .order-information table {
	min-width: 600px;
}

.commerce-user-order .view-commerce-order-item-table {
	margin-bottom: 10px;
}

.commerce-user-order .views-align-right {
	text-align: right !important;
}

.commerce-user-order .field--label-inline {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
}

.commerce-user-order .field--label-inline > .field__label,
.path-checkout .profile .field--label-above .field__label {
	margin-right: 10px;
	text-transform: uppercase;
	font-weight: var(--medium);
}

.commerce-user-order .field--label-inline > .field__label:after {
	content: ":"
}

.commerce-user-order .customer-billing {

}

.commerce-user-order .customer-billing .field__label {
	font-weight: var(--bold);
	margin: 20px 0px 3px 0px;
}

.commerce-user-order .order-information {
	margin-top: var(--abstand3);
}

.commerce-user-order .order-information .field--name-order-items {
	margin-top: var(--abstand3);
}






/* !RESPONSIVE */

@media all and (max-width: 1680px) {
	
	.copyright,
	.footermenu {
		font-size: 80%;
		line-height: var(--lineheight);
	}
		
}

@media all and (max-width: 1440px) {

	:root {
		--headerheight: 60px;
		--toplineheight: 40px;
		--logowidth: 220px;
		--footerlinks: 50px;
		--fontsize: 17px;
		--lineheight: 1.35;
	}

	
	h2.block-title {
		font-size: 420%;
		line-height: 100%;
	}
	
	h3 {
		font-size: 150%;
		line-height: 120%;
	}
	
	.likeh3 {
		font-size: 150%;
		line-height: 120%;
	}
	
	h4 {
		font-size: 130%;
		line-height: 120%;
	}
	
	.teamblock .team-content .team-item-firstname {
		font-size: 270%;
		line-height: 115%;
	}
	
	.footerlinks svg {
		height: calc(var(--footerlinks) - 25px);
	}
	
	.actionblock .actionblock-image img {
		height: 140px;
	}
	
}


@media all and (max-width: 1280px) {
	
	.view-headerimages .view-footer {
		display: none;
	}
	
	.block-system-branding-block {
		margin-right: 5vw;
	}
	
	.topmenu ul.level1 li > a,
	.topmenu ul.level1 li > a:visited {
		padding: 0px 15px;
	}
	
	h2.block-title {
		font-size: 370%;
		line-height: 100%;
	}
	
	h3 {
		font-size: 140%;
		line-height: 120%;
	}
	
	.likeh3 {
		font-size: 140%;
		line-height: 120%;
	}

	
	.linkblock-item .linkblockclass-discount .item-title {
		font-size: 260%;
		line-height: 100%;
	}


	.p-linkblock  .linkblock-gray-title-image .item-title {
		font-size: 180%;
		line-height: 110%;
	}
	
	.p-linkblock .item-title {
		font-size: 110%;
		line-height: 120%;
	}


	
	.linkblock-gray-title-image.linkblock-item-content,
	.linkblock-blue-with-title-or-text.linkblock-item-content {
		padding: 40px 20px 20px 20px;
		box-sizing: border-box;
	}
	
	.linkblock-grey-with-text-left-image-right.linkblock-item-content,
	.linkblock-black-with-text.linkblock-item-content {
		padding: 40px 20px 60px 20px;
		box-sizing: border-box;
	}
	
	.p-linkblock .item-discover {
		bottom: 20px;
	}
	
	.p-linkblock .item-subline {
		left: 20px;
		-webkit-transform: translateX(0%) translateY(-20%);
		-moz-transform: translateX(0%) translateY(-20%);
		transform: translateX(0%) translateY(-20%);
	}
	

	
	.footercontent {
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: flex-start;
		position: relative;
	}
	
	.footerlinks {
		position: absolute;
		right: 0px;
		top: 50%;
		
		-webkit-transform: translateX(0%) translateY(-50%);
		-moz-transform: translateX(0%) translateY(-50%);
		transform: translateX(0%) translateY(-50%);
	}
	
	.footermenu {
		flex-basis: 100%;
		margin-bottom: 30px;
	}
	
	footer ul.menu {
		justify-content: flex-start;
		margin-top: var(--abstand1);
	}
	
	.p-image-text-container > div:nth-child(2n+1):not(:last-child) {
		padding-right: 0%;
	}
	
	.p-image-text-container > div:nth-child(2n+2):not(:last-child) {
		padding-left: 0%;
	}
	
	.text-block-item-certified .item-content {
		max-width: 80%;
	}

	.actionblock-container {
		flex-direction: row-reverse;
		align-items: center;
	}
	
	.actionblock-container > div {
		align-self: center;
	}

	.actionblock-pricelist .actionblock-image img {
		position: relative;
		left: 0px;
		right: auto;
		height: 140px;
	}
	
	.actionblock-container .actionblock-content > .actionblock-text {
		padding: 0px
	}
	
	.actionblock-container .actionblock-content {
		flex-basis: 100%;
		display: block;
	}
	.actionblock-container .actionblock-image {
		flex-basis: initial;
	}

	.actionblock-container .actionblock-social-media .actionblock-social-media-title {
		text-align: left;
	}
	
	.actionblock-container .actionblock-content > .actionblock-button {
		justify-content: flex-start;
		flex-direction: row;
		margin-top: var(--abstand3);
	}
	
	.actionblock-container .actionblock-content > .actionblock-button > div:not(:last-child) {
		margin-right: 15px;
	}
	
	
	.text-block-item-certified img {
		max-width: 140px;
	}
	
}

@media all and (max-width: 1230px) {

	/* !MOBILEMENU */
	
	.mobile {
		display: block;
	}
	
	.desktop {
		display: none;
	}
	
	.lupe {
		right: calc(var(--seitenrand) + var(--klickmenuwidth) + 30px);
	}

}


@media all and (max-width: 1024px) {

	h1 {
		font-size: 190%;
		line-height: 125%;
	}
	
	h3 {
		font-size: 130%;
		line-height: 120%;
	}
	
	.likeh3 {
		font-size: 130%;
		line-height: 120%;
	}
	
	.p-linkblock  .linkblock-gray-title-image .item-title {
		font-size: 160%;
		line-height: 110%;
	}
	
	.linkblock-item .linkblockclass-discount .item-text {
		font-size: 110%;
		line-height: var(--lineheight);
	}
	
	.linkblock-item .linkblockclass-discount .item-text {
		margin-top: 10px;
	}
	
	.linkblock-item .linkblockclass-discount .item-title {
		font-size: 240%;
		line-height: 100%;
	}
	
	.linkblock-item .linkblockclass-discount .item-title .discount-value {
		font-size: 160%;
		line-height: 100%;
	}
	
	.actionblock .actionblock-image img {
		height: 110px;
	}
	
	
	.p-text-image-block .item-content {
		padding: 40px 30px 30px 30px;
		font-size: 110%;
		line-height: var(--lineheight);
	}
	
	.product-liste .view-content {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	
	.product-liste .views-row {
		background: var(--bgcolor);
		padding: 30px;
		align-self: stretch;
		box-sizing: border-box;
		flex-basis: calc((100% / 2) - 15px);
		position: relative;
	}
	
	.headerimage-left {
		width: 17%;
	}
	
	.headerimage-right {
		width: 40vw;
	}
	
	.page-node-7 .headerimage-right {
		width: 20vw;
	}
	
	.p-title h2 {
		-webkit-transform: translateY(16%);
		-moz-transform: translateY(16%);
		transform: translateY(16%);
	}
	
	.p-article-inline .tns-inner > div > .p-article  .article-image {
		height: calc((100vw - var(--seitenrand) - var(--seitenrand)) / 4);
	}
	
		
	.bausteinecontainer > .paragraph {
		margin-top: var(--abstand5);
	}

}


@media all and (max-width: 980px) {
	
	.lupe {
		right: calc(var(--seitenrand) + var(--klickmenuwidth) + 10px);
	}
	
	.product-full {
		padding-right: 0px;
	}
	
	.product-full .product-images {
		position: relative;
		margin-top: var(--abstand3);
		margin-bottom: var(--abstand3);
		width: 100%;
	}
	.product-add-to-cart-block .price-container {

		margin-bottom: var(--abstand2);
	}
	
	.product-full .product-add-to-cart-block {
		margin-bottom: var(--abstand4);
	}
	
	.product-full .field--name-field-highlight-block {
		display: block;
	}
	
	.search {
		width: 60vw;
	}
	
	.p-linkblock .linkblock-container {
		justify-content: space-between;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+1) {
		flex-basis: calc(70% - 5px);
		margin-right: 0px;
		margin-bottom: 30px;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+2) {
		flex-basis: calc(30% - 5px);
		margin-left: 0px;
		margin-bottom: 30px;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+3) {
		flex-basis: calc(50% - 5px);
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+4) {
		flex-basis: calc(50% - 5px);
		margin-right: 0px;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) {
		flex-basis: calc(50% - 5px);
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+6) {
		flex-basis: 100%;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+6) .linkblock-item-content {
		right: auto;
		left: 0px;
		top: 0px;
		width: calc(50% - 5px);
		height: 183px;
		-webkit-transform: translateX(0%) translateY(calc(-1 * 100% - 20px));
		-moz-transform: translateX(0%) translateY(calc(-1 * 100% - 20px));
		transform: translateX(0%) translateY(calc(-1 * 100% - 20px));
		position: absolute;
		aspect-ratio: 1 / 1;
		border-top: solid 10px var(--weiss);
		/*
		width: calc(50% - 0px);
		height: calc(50% - 5px);
		position: absolute;
		right: -49%;
		top: 0px;
		-webkit-transform: translateX(0%) translateY(0);
		-moz-transform: translateX(0%) translateY(0);
		transform: translateX(0%) translateY(0);
		aspect-ratio: 1 / 1;
		border: solid 3px yellow;
		*/
	}
		
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+7) {
		flex-basis: calc(50% - 5px);
		margin-left: 0%;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+8) {
		flex-basis: calc(50% - 5px);
	}
	
	.text-formatted p,
	.article-text p {
		line-height: 155%;
		text-wrap:pretty;
	}


}

@media all and (max-width: 890px) {
	
	h1, h2, h3,
	.likeh2 p, .likeh3 p {
		text-wrap: initial;
	
	}
	
	.mobilemenu ul.level1 > li a,
	.mobilemenu ul.level1 > li a:visited {
		font-size: 290%;
		line-height: var(--lineheight);
	}
	.actionblock .actionblock-image img {
		height: 100px;
	}

	footer ul.menu {
		flex-wrap: wrap;
		width: 70%;
	}
	
	footer ul.menu li:not(:first-child) {
		margin-left: 0px;
	}
	footer ul.menu li:not(:last-child) {
		margin-right: 15px;
		margin-bottom: 5px;
	}

}


@media all and (max-width: 834px) {

	:root {
		--headerblockheight: 40vh;

	}
	
	.actionblock-container {
		flex-wrap: wrap;
	}
	
	.actionblock-container .actionblock-image {
		flex-basis: 100%;
	}

	.p-article-inline .tns-inner > div > .p-article  .article-image {
		height: calc((100vw - var(--seitenrand) - var(--seitenrand)) / 3);
	}
	

}



@media all and (max-width: 768px) {
	
	.user-login-form .form-item-name,
	.user-login-form .form-item-pass {
		width: 100%;
		float: none;
	}
	
	.node--type-legal .node__content {
		overflow-x: hidden;
	}
	
	.p-article-inline .tns-inner > div > .p-article:not(:last-child)  .article-title:after {

		-webkit-transform: translateX(0%) translateY(0%);
		-moz-transform: translateX(0%) translateY(0%);
		transform: translateX(0%) translateY(0%);
	}
	
	.layout-region-checkout-secondary {
		margin-top: var(--abstand7);
	}
	
	.page-node-type-legal .node__content a {
	
		/* These are technically the same, but use both */
		overflow-wrap: break-word;
		word-wrap: break-word;
	
		-ms-word-break: break-all;
		/* This is the dangerous one in WebKit, as it breaks things wherever */
		word-break: break-all;
		/* Instead use this non-standard one: */
		word-break: break-word;
	
		/* Adds a hyphen where the word breaks, if supported (No Blink) */
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
	
	}
	
}


@media all and (max-width: 766px) {
	.headerimage-mobile {
		display: block;
	}
	.headerimage-desktop {
		display: none;
	}
}



@media all and (max-width: 750px) {
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+1) {
		flex-basis: calc(60% - 5px);
		margin-right: 0px;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+2) {
		flex-basis: calc(40% - 5px);
		margin-left: 0px;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+2) .linkblock-item-content {
		padding-bottom: 60px;
		aspect-ratio: initial;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+3) {
		flex-basis: 100%;
		aspect-ratio: initial;
		height: 200px;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+3) .linkblock-item-content {
		height: 100%;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+4) {
		flex-basis: calc(50% - 5px);
		margin-right: 0px;
	}
	
	
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) {
		flex-basis: calc(50% - 5px);
		
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) .item-image {
		background: var(--bgcolor);
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+6) {
		flex-basis: 100%;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+6) .linkblock-item-content {
		position: relative;
		-webkit-transform: translateX(0%) translateY(0px);
		-moz-transform: translateX(0%) translateY(0px);
		transform: translateX(0%) translateY(0px);
		width: 100%;
		flex-basis: 100%;
		height: auto;
		max-height: 30vh;

		aspect-ratio: initial;
		border-top: solid 0px var(--weiss);
		/*
		width: calc(50% - 0px);
		height: calc(50% - 5px);
		position: absolute;
		right: -49%;
		top: 0px;
		-webkit-transform: translateX(0%) translateY(0);
		-moz-transform: translateX(0%) translateY(0);
		transform: translateX(0%) translateY(0);
		aspect-ratio: 1 / 1;
		border: solid 3px yellow;
		*/
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+6) .linkblock-item-content .item-image {
		height: auto;
		height: 30vh;
	}
		
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+7) {
		flex-basis: 100%;
		margin-left: 0%;
		aspect-ratio: initial;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+7) .linkblock-item-content,
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+8) .linkblock-item-content,
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+4) .linkblock-item-content {
		position: relative;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+8) {
		flex-basis: 100%;
		aspect-ratio: initial;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+8) .linkblock-item-content {
		height: 100%;
	}
	
	.linkblock-grey-with-text-left-image-right .item-textcontainer {
		flex-basis: calc(65% - 10px);
	}
	
	.linkblock-grey-with-text-left-image-right .item-image {
		flex-basis: calc(35% - 10px);
	}
	
	.linkblock-item .linkblockclass-discount .item-textcontainer {
		background-size: 35% auto;
	}
	
	.text-formatted p,
	.article-text p {
		line-height: 155%;
		text-wrap: initial;
	}
	
		
	.p-linkblock  .linkblock-gray-title-image .item-title {
		font-size: 140%;
		line-height: 110%;
	}
	
	
}


@media all and (max-width: 667px) {
	
	

	
	.headerimage-left {
		width: 20%;
	}
	
	
	.page-node-7 .headerimage-right {
		width: 27vw;
	}
	
	.headerimage-right {
		width: 44vw;
		-webkit-transform: translateX(0%) translateY(42%);
		-moz-transform: translateX(0%) translateY(42%);
		transform: translateX(0%) translateY(42%);
	}
	
	.region-content .block-page-title-block {
		padding-right: 0px;
	}
	
	.p-image-text-container > div {
		flex-wrap: wrap;
	}
	
	.p-text-image-block .item-image {
		flex-basis: 100%;
	}
	
	.p-text-image-block .item-content {
		flex-basis: 100%;
	}
	
	.text-block-item-certified .item-content {
		width: 100%;
		padding: 20px 0px 0px 0px;
	}

	.actionblock .actionblock-image img {
		height: 120px;
	}
	
	.linkblock-gray-title-image.linkblock-item-content,
	.linkblock-blue-with-title-or-text.linkblock-item-content {
		padding: 40px 20px 40px 20px;
		box-sizing: border-box;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+4) {
		aspect-ratio: initial;
	}
	
	
	.p-gallery {
		padding-bottom: var(--abstand4);
	}
	
	.p-gallery .gallery-container {
		justify-content: space-between;
	}
	
	.p-gallery .gallery-container .gallery-item {
		margin-right: 0px !important;
		margin-left: 0px !important;
	}
	
	.p-gallery .gallery-container .gallery-item img {
		object-fit: cover;
		object-position: center center;
		width: 100% !important;
		height: 100% !important;
		position: relative;
	}
	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+1) {
		flex-basis: calc(60% - 5px);
	}

	.p-gallery .gallery-container .gallery-item:nth-child(6n+2) {
		flex-basis: calc(40% - 5px);
	}
	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+3) {
		flex-basis: calc(40% - 5px);
	}
	
	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+3) picture {
		position: relative;
		left: 0px;
		top: 0px;
		width: 100%;
		height: 100%;
	}
	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+4) {
		flex-basis: calc(60% - 5px);
	}

	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+5) {
		flex-basis: 100%;
		display: flex;
		text-align: right;
		position: relative;
		margin-bottom: 10px;
	}
	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+5) picture {
		width: 100%;
		position: relative;
		left: 0px;
		top: 0px;
		-webkit-transform: translateX(0%) translateY(0px);
		-moz-transform: translateX(0%) translateY(0px);
		transform: translateX(0%) translateY(0px);
		aspect-ratio: initial
	}
	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+5) img {
		object-fit: cover;
		object-position: center center;
		width: calc(100% - 0px);
		height: calc(100% - 0px);
		position: relative;
	}
	
	
	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+6) {
		flex-basis: 100%;
		display: flex;
		text-align: left;
	}
	
	.p-gallery .gallery-container .gallery-item:nth-child(6n+6) picture {
		width: 100%;
		margin-left: 0px;
	}
	
	
	.footercontent > div {
		flex-basis: 100%;
	}
	
	.footerlinks {
		position: relative;
		right: auto;
		left: 0px;
		margin-bottom: var(--abstand3);
		top: 0%;
		
		-webkit-transform: translateX(0%) translateY(0%);
		-moz-transform: translateX(0%) translateY(0%);
		transform: translateX(0%) translateY(0%);
	}
	
	.product-liste .views-row {
		background: var(--bgcolor);
		padding: 30px;
		align-self: stretch;
		box-sizing: border-box;
		flex-basis: 100%;
		position: relative;
	}

	footer ul.menu {
		width: 100%;
	}
	
	.page-node-8 .p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5),
	.page-node-8 .p-linkblock .linkblock-container .linkblock-item:nth-child(6n+7) {
		display: none;
	}
	
	.page-node-8 .p-linkblock .linkblock-container .linkblock-item:nth-child(6n+4) {
		flex-basis: 100%;
	}
	
	.webform .wfleft {
		width: 100%;
		float: none;
		clear: both;
	}
	
	.webform .wfleft input {
		width: 100%;
		float: none;
		clear: both;
	}
	
	.webform .wfright {
		width: 100%;
		float: none;
		clear: both;
	
	}
	
	.webform .wfright input,
	.webform .wfright select {
		width: 100%;
		float: none;
		clear: both;
	}
	
}


@media all and (max-width: 550px) {
	
	:root {
		--abstand1: 10px;
		--abstand2: 20px;
		--abstand3: 30px;
		--abstand4: 40px;
		--abstand5: 50px;
		--abstand7: 60px;
		--abstand8: 70px;
		--abstand9: 80px;
		--abstand10: 90px;
		
		--seitenrand: 30px;
	}
	
	h2.block-title {
		font-size: 250%;
		line-height: 100%;
	}
	
	.teamblock .team-content .team-item-firstname {
		font-size: 230%;
		line-height: 115%;
	}
	
	.mobilemenu ul.level1 > li a,
	.mobilemenu ul.level1 > li a:visited {
		font-size: 210%;
		line-height: 120%;
		white-space: wrap;
	}


	.p-article-inline .tns-inner > div > .p-article  .article-image {
		height: calc((100vw - var(--seitenrand) - var(--seitenrand)) / 2);
	}
	
	.headerimage-left {
		width: 20%;
	}

	
	.page-node-7 .headerimage-right {
		width: 35vw;
	}
	
	.headerimage-right {
		width: 54vw;
		-webkit-transform: translateX(0%) translateY(32%);
		-moz-transform: translateX(0%) translateY(32%);
		transform: translateX(0%) translateY(32%);
	}
	
	.p-article-inline .tns-inner > div > .p-article .article-text {
		padding: 0px;
	}
	
	.offical-partners-block .logocontainer img {
		width: auto;
		height: 40px;
		margin: 1px 20px 10px 20px;
	}
	
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+4) {
		flex-basis: 100%;
		margin-right: 0px;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) {
		flex-basis: 100%;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) .linkblock-item-content {
		position: relative;
		aspect-ratio: initial;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) .linkblock-item-content,
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+5) .linkblock-item-content .item-image {
		height: 30vh;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+1),
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+2),
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+3),
	.p-linkblock .linkblock-container .linkblock-item {
		margin-bottom: 20px;
	}
	

	.p-linkblock .linkblock-container .linkblock-item {

	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+1) {
		flex-basis: 100%;
		margin-right: 0px;
	}
	
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+2) {
		flex-basis: 100%;
		margin-left: 0px;
		aspect-ratio: initial;
	}
	
	.linkblock-gray-image-only-contain .item-image,
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+1) .linkblock-item-content,
	.p-linkblock .linkblock-container .linkblock-item:nth-child(6n+2) .linkblock-item-content {
		position: relative;
	}
	
	.p-article-inline .tns-inner > div > .p-article:not(:last-child)  .article-title:after {
		content: " ";
		display: block;
		width: 100px;
		height: 15px;
		position: absolute;
		top: -30px;
		right: auto;
		left: 50%;
		-webkit-transform: translateX(-50%) translateY(0%);
		-moz-transform: translateX(-50%) translateY(0%);
		transform: translateX(-50%) translateY(0%);
	}
	
	.breadcrumb li:not(:nth-child(1)) {
		display: none;
	}
	
	.product-add-to-cart-block .wh-price {
		font-size: 300%;
		line-height: 100%;
	}
	
	.p-title {
		padding-top: 1rem;
	}
	
	.linkblock-item .linkblockclass-discount .item-textcontainer {
		background-size: 45% auto;
	}
	
	.text-block-item-certified img {
		max-width: 100px;
	}
	 

}


	


@media all and (max-width: 414px) {
	
	:root {
		--logowidth: 180px;
	}
	
	h1 {
		font-size: 170%;
		line-height: 125%;
	}
	
	.block-system-branding-block {
		margin-top: 10px;
	}
	
	.lupe {
		width: calc(var(--headerheight) / 2.5);
		height: calc(var(--headerheight) / 2.5);

	}
	
	.actionblock .actionblock-image img {
		height: 100px;
	}
	
	.headerimage-left {
		width: 30%;
		left: calc(var(--seitenrand) + 0px);
	}
	
	
	.page-node-7 .headerimage-right {
		width: 35vw;
	}
	
	.headerimage-right {
		width: 60vw;
		-webkit-transform: translateX(0%) translateY(32%);
		-moz-transform: translateX(0%) translateY(32%);
		transform: translateX(0%) translateY(32%);
	}
	

}

@media all and (max-width: 375px) {

	:root {
		--logowidth: 165px;
		--headerheight: 60px;
		--klickmenuwidth: 70px;
	}
	
	.mobilemenu ul.level1 > li a,
	.mobilemenu ul.level1 > li a:visited {
		font-size: 190%;
		line-height: 120%;
		white-space: wrap;
	}
	
	.block-system-branding-block {
		margin-top: 15px;
	}
}

@media all and (max-width: 320px) {

	:root {
		--logowidth: 135px;
		--headerheight: 60px;
		--klickmenuwidth: 70px;
		--seitenrand: 20px;
	}

}







@media only screen and (min-device-width: 768px) and (max-device-width: 1366px) and (orientation:landscape) {
	


	
	
	
}


@media only screen and (max-width: 736px) and (orientation:landscape)  {
	

	
}

