/*
Theme Name: Pharmaton Child
Theme URI: http://webdesign-finder.com/pharmaton
Template: pharmaton
Author: MWTemplates
Author URI: http://modernwebtemplates.com/
Description: Lab-on-Fiber child theme
Version: 1.4.7
*/

/* Header / Footer wie live */
.lof-topline {
	background: #f2f2f2;
	border-bottom: 1px solid #e7eaeb;
	color: #666;
	font-size: 12px;
	line-height: 30px;
}

.lof-topline .container {
	max-width: 1170px;
	margin: 0 auto;
	padding: 5px 15px;
}

.lof-topline-meta {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
}

.lof-topline-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.lof-topline-item i {
	color: #19bcdb;
	font-size: 16px;
}

.lof-topline-item a {
	color: #666;
	text-decoration: none;
}

.lof-topline-item a:hover {
	color: #19bcdb;
}

.lof-header {
	background: #fff !important;
	border-top: 1px solid #e7eaeb;
	position: relative;
	z-index: 1000;
	overflow: visible;
}

.lof-header > .container {
	max-width: 1170px;
	margin: 0 auto;
	padding: 0 15px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	overflow: visible;
}

.lof-header .logo {
	flex: 0 0 auto;
	position: relative;
	z-index: 2;
}

.lof-header .logo img {
	max-width: 300px;
	max-height: none;
	width: auto;
	height: auto;
}

.lof-header #overlay {
	pointer-events: none;
}

body.top-menu-active .lof-header #overlay {
	pointer-events: auto;
}

/* Desktop wie live: ab 992px, Parent-Off-Canvas (1199) überschreiben */
@media (min-width: 992px) {
	#header.lof-header #nav_toggle {
		display: none !important;
	}

	.lof-header .top-nav {
		display: block !important;
		position: static !important;
		flex: 1 1 auto;
		width: auto !important;
		height: auto !important;
		max-width: none;
		margin-left: auto;
		padding: 0 !important;
		overflow: visible !important;
		opacity: 1 !important;
		visibility: visible !important;
		background: transparent !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		z-index: auto;
		text-transform: none;
		font-weight: 500;
	}

	.lof-header .top-menu {
		display: flex;
		align-items: stretch;
		justify-content: flex-end;
		flex-wrap: nowrap;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.lof-header .top-menu > li {
		position: relative;
		display: block;
		margin: 0;
		padding: 0;
		overflow: visible !important;
		white-space: nowrap;
	}

	.lof-header .top-menu > li > a {
		display: block;
		padding: 28px 18px;
		margin: 0;
		color: #11333a;
		font-size: 16px;
		font-weight: 500;
		line-height: 1.2;
		text-decoration: none;
		text-transform: none;
	}

	.lof-header .top-menu > li > a:hover,
	.lof-header .top-menu > li.current-menu-item > a,
	.lof-header .top-menu > li.current-menu-parent > a,
	.lof-header .top-menu > li.current-menu-ancestor > a {
		color: #19bcdb;
	}

	.lof-header .top-menu .sub-menu {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		z-index: 20;
		min-width: 16em;
		margin: 0;
		padding: 15px 0;
		list-style: none;
		background: #fff;
		box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
		text-align: left;
		text-transform: none;
	}

	.lof-header .top-menu > li:hover > .sub-menu,
	.lof-header .top-menu > li:focus-within > .sub-menu {
		display: block;
		opacity: 1;
		visibility: visible;
		height: auto;
		overflow: visible;
	}

	.lof-header .top-menu .sub-menu a {
		display: block;
		padding: 8px 30px;
		color: #11333a;
		font-size: 16px;
		font-weight: 500;
		white-space: nowrap;
		text-decoration: none;
	}

	.lof-header .top-menu .sub-menu a:hover,
	.lof-header .top-menu .sub-menu .current-menu-item > a {
		color: #19bcdb;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.lof-header .logo img {
		max-width: 240px;
	}

	.lof-header .top-menu > li > a {
		padding: 28px 12px;
		font-size: 15px;
	}
}

/* Mobile: Hamburger + dunkles Panel wie live, Theme-JS (active) */
@media (max-width: 991px) {
	/* Parent setzt overflow:hidden — das feuert scroll und schließt das Menü sofort */
	body.top-menu-active {
		height: auto !important;
		overflow: visible !important;
	}

	#header.lof-header #nav_toggle {
		display: block !important;
		position: relative;
		z-index: 1003;
		margin-left: auto;
		flex: 0 0 auto;
	}

	body.top-menu-active #header.lof-header #nav_toggle {
		position: fixed;
		top: 8px;
		right: 8px;
		z-index: 1005;
	}

	body.top-menu-active #header.lof-header #nav_toggle span,
	body.top-menu-active #header.lof-header #nav_toggle span:before,
	body.top-menu-active #header.lof-header #nav_toggle span:after {
		background: #fff;
	}

	.lof-header .top-nav {
		display: block !important;
		position: fixed !important;
		top: 0;
		right: 100%;
		bottom: 0;
		left: 0;
		z-index: 1002;
		width: 0;
		padding: 70px 20px 20px 20px;
		overflow: auto;
		background: #1f232b !important;
		opacity: 0;
		visibility: hidden;
		text-transform: uppercase;
		text-align: left;
		transition: opacity 0.3s ease, visibility 0.3s ease, right 0.3s ease, width 0.3s ease;
	}

	.lof-header .top-nav.active {
		right: 0;
		width: 100%;
		opacity: 1;
		visibility: visible;
	}

	.lof-header .top-menu {
		display: block;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.lof-header .top-menu > li {
		display: block;
		position: relative;
		margin: 0;
		padding: 10px 15px;
	}

	.lof-header .top-menu > li + li > a {
		border: 0;
	}

	.lof-header .top-menu a {
		display: block;
		padding: 8px 10px;
		color: #fff !important;
		font-size: 16px;
		font-weight: 400;
		text-decoration: none;
	}

	.lof-header .top-menu a:hover,
	.lof-header .top-menu .current-menu-item > a {
		color: #19bcdb !important;
	}

	.lof-header .top-menu .sub-menu {
		display: none;
		position: static;
		margin: 0;
		padding: 0 0 0 10px;
		min-width: 0;
		height: auto;
		background: transparent;
		box-shadow: none;
		text-transform: none;
	}

	.lof-header .top-menu .active-submenu > .sub-menu {
		display: block;
		height: auto;
		opacity: 1;
		overflow: visible;
	}

	/* Parent: li:before "-" sitzt in eigener Zeile, weil a display:block ist */
	.lof-header .top-nav .menu-many-items .sub-menu > li {
		padding: 0;
		margin: 0;
	}

	.lof-header .top-nav .menu-many-items .sub-menu > li:before,
	.lof-header .top-nav ul ul li:before {
		content: none;
		display: none;
		margin: 0;
	}

	.lof-header .top-nav .menu-many-items .active-submenu .sub-menu > li:first-child {
		margin-top: 4px;
	}

	.lof-header .top-menu .sub-menu a,
	#body .header-1.lof-header .top-menu ul.sub-menu li a {
		display: block;
		padding: 6px 10px;
		margin: 0;
		font-weight: 300;
		text-transform: none;
	}

	.lof-header .top-menu .sub-menu a:before {
		content: "-";
		padding-right: 8px;
	}

	.lof-header .top-menu .toggle_submenu {
		color: #fff;
	}

	.lof-header .top-menu .toggle_submenu:before {
		color: #fff;
	}

	.lof-header .top-nav .menu-many-items .active-submenu > .toggle_submenu {
		transform: rotate(0deg);
	}
}

.lof-footer {
	background: #f2f2f2 !important;
	color: #666;
	padding: 100px 0 65px;
}

.lof-footer .container {
	max-width: 1170px;
	margin: 0 auto;
	padding: 0 15px;
}

.lof-footer-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
	align-items: start;
}

.lof-footer-logo img {
	max-width: 220px;
	height: auto;
}

.lof-footer-title {
	font-size: 20px;
	color: #071c1f;
	margin: 0 0 24px;
	font-weight: 500;
}

.lof-footer-line {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 14px;
	line-height: 1.5;
}

.lof-footer-line i {
	color: #19bcdb;
	width: 16px;
	margin-top: 4px;
	text-align: center;
}

.lof-footer a {
	color: #666;
	text-decoration: none;
}

.lof-footer a:hover {
	color: #19bcdb;
}

#copyright,
#copyright.l {
	background: #ececec !important;
	color: #666;
}

@media (max-width: 991px) {
	.lof-header .logo img {
		max-width: 200px;
	}
}

@media (max-width: 767px) {
	.lof-topline-meta {
		justify-content: center;
	}

	.lof-footer {
		padding: 50px 0;
	}

	.lof-footer-grid {
		grid-template-columns: 1fr;
	}
}

.lof-content .container {
	width: 100%;
	max-width: 1170px;
	margin: 0 auto;
	padding-left: 15px;
	padding-right: 15px;
}

.lof-content .container-fluid {
	width: 100%;
	padding-left: 15px;
	padding-right: 15px;
}

.lof-content > .alignfull,
.lof-content .wp-block-group.alignfull,
.lof-content .fw-main-row {
	left: auto;
	right: auto;
	margin-left: 0;
	margin-right: 0;
	margin-inline: 0;
	max-width: none;
	width: 100%;
}

.lof-content .wp-block-group {
	margin-top: 0;
	margin-bottom: 0;
}

.lof-content .wp-block-group__inner-container {
	display: contents;
}

.lof-content .wp-block-columns.row {
	gap: 0;
}

.lof-content .wp-block-columns.row > .wp-block-column {
	flex-grow: 0;
	flex-basis: auto !important;
}

.lof-content .row {
	display: flex;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px;
}

.lof-content .row > [class*="col-"] {
	padding-left: 15px;
	padding-right: 15px;
	box-sizing: border-box;
	width: 100%;
}

@media (min-width: 768px) {
	.lof-content .row > .col-sm-6 { width: 50%; }
	.lof-content .row > .col-sm-10 { width: 83.333%; }
	.lof-content .row > .col-sm-offset-1 { margin-left: 8.333%; }
	.lof-content .row > .col-sm-offset-3 { margin-left: 25%; }
}

@media (min-width: 992px) {
	.lof-content .row > .col-md-3 { width: 25%; }
	.lof-content .row > .col-md-4 { width: 33.333%; }
	.lof-content .row > .col-md-8 { width: 66.666%; }
	.lof-content .row > .col-md-12 { width: 100%; }
	.lof-content .row > .col-md-offset-0 { margin-left: 0; }
	.lof-content .row > .col-md-offset-2 { margin-left: 16.666%; }
}

@media (min-width: 1200px) {
	.lof-content .row > .col-lg-4 { width: 33.333%; }
}

@media (min-width: 992px) {
	.lof-content .lof-features .row > .col-lg-4.col-md-12,
	.lof-content #features .row > .col-lg-4.col-md-12 {
		width: 33.333%;
	}
}

.lof-content .ls {
	background: #fff;
	color: #666666;
}

.lof-content .ls h1,
.lof-content .ls h2,
.lof-content .ls h3,
.lof-content .ls h4,
.lof-content .ls h5,
.lof-content .ls h6,
.lof-content .ls .section_header {
	color: #11333a;
}

.lof-content .ls a {
	color: #19bcdb;
}

.lof-content .ls a:hover {
	color: #1f232b;
}

.lof-content .ds,
.lof-content .ds.color {
	background-color: #11333a;
	color: #919899;
}

.lof-content .ds a,
.lof-content .ds.color a {
	color: #fff;
}

.lof-content .ds a:hover,
.lof-content .ds.color a:hover {
	color: #19bcdb;
}

.lof-content .ds h1,
.lof-content .ds h2,
.lof-content .ds h3,
.lof-content .ds h4,
.lof-content .ds h5,
.lof-content .ds h6,
.lof-content .ds .section_header,
.lof-content .ds .wp-block-heading,
.lof-content .ds.color .section_header,
.lof-content .ds.color .wp-block-heading {
	color: #fff;
}

.lof-content .ds p,
.lof-content .ds .wp-block-paragraph,
.lof-content .ds.color p,
.lof-content .ds.color .wp-block-paragraph {
	color: #919899;
}

.lof-content .parallax {
	background-size: cover;
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-attachment: fixed;
	position: relative;
}

.lof-content #products.parallax,
.lof-content .lof-products.parallax {
	background-image: url("/wp-content/uploads/2017/10/features.jpg");
}

.lof-content .parallax.ds.color:after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-color: #11333a;
	opacity: 0.9;
	pointer-events: none;
}

.lof-content .parallax > .container,
.lof-content .parallax .container {
	position: relative;
	z-index: 1;
}

@media (max-width: 767px) {
	.lof-content .parallax {
		background-attachment: scroll;
	}
}

@media (min-width: 992px) {
	.lof-content .table_section_md > .container > .row {
		align-items: center;
	}
}

.lof-content .section_padding_top_50 { padding-top: 50px; }
.lof-content .section_padding_top_130 { padding-top: 130px; }
.lof-content .section_padding_top_150 { padding-top: 150px; }
.lof-content .section_padding_bottom_0 { padding-bottom: 0; }
.lof-content .section_padding_bottom_50 { padding-bottom: 50px; }
.lof-content .section_padding_bottom_150 { padding-bottom: 150px; }

.lof-content .section_header {
	font-size: 30px;
	line-height: 0.95;
	margin: 0 0 35px;
	font-weight: 500;
	word-wrap: break-word;
}

@media (min-width: 1200px) {
	.lof-content .section_header {
		font-size: 40px;
	}
}

.lof-content .text-center .section_header + p {
	margin-bottom: 30px;
	margin-left: auto;
	margin-right: auto;
	max-width: 780px;
}

.lof-content .text-center { text-align: center; }
.lof-content .text-left { text-align: left; }
.lof-content .highlight { color: #19bcdb; }

.lof-content .teaser {
	overflow: visible;
	position: relative;
	margin-bottom: 30px;
}

.lof-content .teaser.with_border {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.lof-content .teaser.with_padding {
	padding: 20px;
}

@media (min-width: 400px) {
	.lof-content .teaser.with_padding {
		padding: 35px;
	}
}

@media (min-width: 1200px) {
	.lof-content .teaser.with_padding.big-padding {
		padding: 55px;
	}
}

.lof-content .teaser.with_border {
	border: 2px solid #e7eaeb;
	border-radius: 5px;
	height: 100%;
	background: #fff;
}

.lof-content .teaser.rounded {
	border-radius: 5px;
}

.lof-content .with_corner_border {
	position: relative;
	z-index: 1;
}

.lof-content .with_corner_border:before,
.lof-content .with_corner_border:after,
.lof-content .with_corner_border .bottom_corners:before,
.lof-content .with_corner_border .bottom_corners:after {
	content: "";
	position: absolute;
	width: 30px;
	height: 30px;
	border: 2px solid #11333a;
	pointer-events: none;
}

.lof-content .with_corner_border:before {
	top: -2px;
	left: -2px;
	border-width: 2px 0 0 2px;
	border-radius: 5px 0 0 0;
}

.lof-content .with_corner_border:after {
	top: -2px;
	right: -2px;
	border-width: 2px 2px 0 0;
	border-radius: 0 5px 0 0;
}

.lof-content .with_corner_border .bottom_corners:before {
	bottom: -2px;
	left: -2px;
	border-width: 0 0 2px 2px;
	border-radius: 0 0 0 5px;
}

.lof-content .with_corner_border .bottom_corners:after {
	bottom: -2px;
	right: -2px;
	border-width: 0 2px 2px 0;
	border-radius: 0 0 5px 0;
}

.lof-content .teaser h4 {
	margin: 0;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.2;
}

.lof-content .teaser h4 a {
	color: inherit;
	text-decoration: none;
}

.lof-content .ls h4.hover-color2 a:hover {
	color: #ec5c42;
}

.lof-content .content-3lines-ellipsis {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: 16px;
	height: 72px;
	line-height: 24px;
	margin: 16px auto 0;
	overflow: hidden;
	text-overflow: ellipsis;
}

#about .row > [class*="col-md-4"],
#about .row > [class*="col-sm-6"],
.lof-about .row > [class*="col-md-4"],
.lof-about .row > [class*="col-sm-6"] {
	display: flex;
}

#about .teaser.with_border,
.lof-about .teaser.with_border {
	width: 100%;
}

#about iframe,
#about .wp-block-embed,
.lof-about iframe,
.lof-about .wp-block-embed {
	display: block;
	margin: 0 auto 30px;
	max-width: 560px;
}

.lof-content .teaser.media {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: flex-start;
	margin-top: 33px;
	margin-bottom: 0;
	gap: 20px;
}

.lof-content .col-md-4 > .teaser.media:first-child,
.lof-content .col-sm-6 > .teaser.media:first-child {
	margin-top: 0;
}

.lof-content .media-left {
	padding-right: 20px;
	flex-shrink: 0;
}

.lof-content .media-body {
	flex: 1 1 auto;
	min-width: 0;
	overflow-wrap: break-word;
}

.lof-content .teaser.media h5 {
	font-size: 20px;
	font-weight: 500;
	margin: 0 0 10px;
	line-height: 1.25;
	overflow-wrap: break-word;
}

.lof-content .ls .teaser.media h5 a {
	color: inherit;
	text-decoration: none;
}

.lof-content .ls .teaser.media h5 a:hover {
	color: #ec5c42;
}

.lof-content .teaser_icon {
	display: inline-block;
	line-height: 1;
	text-align: center;
	flex-shrink: 0;
	transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
}

.lof-content .teaser.media .teaser_icon.size_small {
	box-sizing: border-box;
	display: flex !important;
	align-items: center;
	justify-content: center;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	font-size: 24px;
	line-height: 0;
	border-radius: 5px;
	background: #19bcdb;
	color: #fff;
	padding: 0;
}

.lof-content .teaser.media > p.teaser_icon,
.lof-content .teaser.media > .wp-block-lof-icon {
	margin: 0;
	padding: 0;
}

.lof-content .teaser.media .teaser_icon.size_small i,
.lof-content .teaser.media .teaser_icon.size_small span {
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	line-height: 1 !important;
	text-align: center;
}

.lof-content .teaser.media.hover_icon:hover .teaser_icon.main_bg_color {
	background-color: #ec5c42;
	animation: scaleDisappear 0.5s;
}

#features .col-lg-4 img,
.lof-features .col-lg-4 img,
.lof-features img {
	display: block;
	width: 100% !important;
	max-width: 100%;
	height: auto;
}

@media (min-width: 992px) {
	.lof-content .columns_margin_bottom_30 .row > [class*="col-"] {
		margin-bottom: 30px;
	}
}

.lof-content p.teaser_icon.size_big,
.lof-content .wp-block-lof-icon.size_big {
	display: block;
	margin: 0 0 20px;
	width: 100%;
}

.lof-content .teaser_icon.size_big {
	font-size: 70px;
	line-height: 1;
	width: 100%;
	height: auto;
	margin: 0 auto;
	background: none;
	border-radius: 5px;
	color: #19bcdb;
}

.lof-content .teaser_icon [class*="rt-icon"],
.lof-content .teaser_icon [class*="fa"] {
	display: inline-block;
	position: static !important;
	top: 0 !important;
	font-size: 1em !important;
	line-height: 1 !important;
	padding: 0 !important;
}

.lof-content .teaser_icon.size_big.highlight {
	color: #19bcdb;
	background: none;
}

.lof-content .teaser.hover_icon:hover .teaser_icon.size_big {
	animation: scaleDisappear 0.5s;
}

.lof-content .teaser.hover_icon:hover .teaser_icon.size_big.highlight {
	color: #ec5c42;
}

.lof-content img {
	max-width: 100%;
	height: auto;
}

.lof-content .product-card {
	text-align: center;
	margin-bottom: 30px;
}

.lof-content .product-card img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
	margin: 0 auto 15px;
}

.lof-content .product-card a {
	display: block;
	font-weight: 500;
	text-decoration: none;
}

.lof-content .thumbnail {
	margin-bottom: 2rem;
}

.lof-content .thumbnail img {
	border-radius: 4px;
}

.lof-content .caption h3 {
	margin: 0.75em 0 0.25em;
}

.lof-content iframe {
	max-width: 100%;
}

.lof-content .wpforms-container {
	text-align: center;
}

.lof-content .form-wrapper .wpforms-field-container {
	display: grid;
	grid-template-columns: 1fr;
	gap: 15px 30px;
	text-align: left;
}

@media (min-width: 768px) {
	.lof-content .form-wrapper .wpforms-field-container {
		grid-template-columns: 1fr 1fr;
	}

	.lof-content .form-wrapper .wpforms-field-textarea {
		grid-column: 1 / -1;
	}

	.lof-content .form-wrapper .wpforms-field-select {
		grid-column: 1 / -1;
	}

	#contact-form .form-wrapper .wpforms-field-select,
	.lof-contact-form .form-wrapper .wpforms-field-select {
		grid-column: auto;
	}
}

.lof-content .form-wrapper .wpforms-field-label,
.lof-content .form-wrapper .wpforms-field-description {
	display: none;
}

#contact-form #wpforms-1056-field_6-container,
.lof-contact-form #wpforms-1056-field_6-container {
	display: none;
}

.lof-content .form-wrapper .wpforms-field {
	padding: 0 !important;
	margin: 0 !important;
	float: none;
	width: 100%;
	max-width: none;
}

.lof-content .form-wrapper .wpforms-field input,
.lof-content .form-wrapper .wpforms-field select,
.lof-content .form-wrapper .wpforms-field textarea {
	box-sizing: border-box;
	display: block;
	width: 100% !important;
	max-width: none !important;
	background: #fff;
	border: 2px solid #e7eaeb;
	border-radius: 3px;
	box-shadow: none;
	color: #1f232b;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	height: 50px !important;
	line-height: 46px;
	padding: 0 20px !important;
	text-align: center;
}

.lof-content .form-wrapper .wpforms-field textarea {
	height: 150px !important;
	line-height: 1.5;
	padding: 14px 20px !important;
	resize: vertical;
}

.lof-content .form-wrapper .wpforms-field select {
	-webkit-appearance: none;
	appearance: none;
	background-color: #fff;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2311383a' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 12px 8px;
	line-height: 1.2;
	padding-top: 13px !important;
	padding-bottom: 13px !important;
	padding-left: 20px !important;
	padding-right: 40px !important;
	text-align: center;
	text-align-last: center;
	cursor: pointer;
}

.lof-content .form-wrapper .wpforms-field select option {
	font-style: normal;
	text-align: left;
}

/* Parent wrappt jedes select und setzt einen cyanen ::after-Chevron.
   WPForms setzt position:static auf Form-Nachfahren — der Pfeil landet dann
   oben rechts in der Spalte (neben der Überschrift). Eigenen Select-Pfeil behalten. */
.lof-content .form-wrapper .select-wrap::after {
	content: none;
	display: none;
}

.lof-content .form-wrapper .wpforms-field input:focus,
.lof-content .form-wrapper .wpforms-field select:focus,
.lof-content .form-wrapper .wpforms-field textarea:focus {
	border-color: #19bcdb;
	outline: none;
}

.lof-content .form-wrapper .wpforms-field input::-webkit-credentials-auto-fill-button,
.lof-content .form-wrapper .wpforms-field input::-webkit-contacts-auto-fill-button,
.lof-content .form-wrapper .wpforms-field input::-webkit-strong-password-auto-fill-button,
.lof-content .form-wrapper .wpforms-field input::-webkit-caps-lock-indicator,
.lof-content .form-wrapper .wpforms-field input::-webkit-list-button,
.lof-content .form-wrapper .wpforms-field input::-webkit-calendar-picker-indicator,
.lof-content .form-wrapper .wpforms-field input::-ms-reveal,
.lof-content .form-wrapper .wpforms-field input::-ms-clear {
	display: none !important;
	visibility: hidden;
	pointer-events: none;
	margin: 0;
	width: 0;
	height: 0;
}

.lof-content .form-wrapper .wpforms-submit-container {
	margin-top: 20px;
	text-align: center;
}

#body .lof-content .form-wrapper div.wpforms-container .wpforms-form button.wpforms-submit {
	min-width: 170px;
	padding: 16px 55px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1;
	color: #fff;
	background: #19bcdb;
	border: 2px solid #19bcdb;
	border-radius: 5px;
	cursor: pointer;
}

#body .lof-content .form-wrapper div.wpforms-container .wpforms-form button.wpforms-submit:hover,
#body .lof-content .form-wrapper div.wpforms-container .wpforms-form button.wpforms-submit:focus {
	color: #19bcdb;
	background: transparent;
}

#partners-carousel img,
.lof-partners img {
	display: inline-block;
	max-width: min(1223px, 100%);
	height: auto;
}

.lof-content .lof-news-query {
	margin-top: 10px;
}

.lof-content .lof-news-grid,
.lof-content .wp-block-post-template.is-layout-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 30px;
	padding: 0;
	list-style: none;
}

@media (min-width: 768px) {
	.lof-content .lof-news-grid,
	.lof-content .wp-block-post-template.is-layout-grid {
		grid-template-columns: 1fr 1fr;
	}
}

.lof-content .lof-news-card {
	height: 100%;
	padding: 35px;
	border: 2px solid #e7eaeb;
	border-radius: 5px;
	background: #fff;
	box-sizing: border-box;
}

.lof-content .lof-news-card .wp-block-post-title {
	margin: 0 0 8px;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.2;
}

.lof-content .lof-news-card .wp-block-post-title a {
	color: #11333a;
	text-decoration: none;
}

.lof-content .lof-news-card .wp-block-post-title a:hover {
	color: #19bcdb;
}

.lof-content .lof-news-card .wp-block-post-date {
	display: block;
	margin: 0 0 16px;
	color: #919899;
	font-size: 12px;
}

.lof-content .lof-news-card .wp-block-post-excerpt p {
	margin: 0;
	color: #919899;
}

.lof-content .lof-news-more {
	margin-top: 50px;
	margin-bottom: 0;
	text-align: center;
}

.lof-content .ls .lof-news-more a.theme_button {
	color: #fff;
	background-color: #19bcdb;
	border-color: #19bcdb;
	text-decoration: none;
	margin-right: 0;
	margin-bottom: 0;
}

.lof-content .ls .lof-news-more a.theme_button:hover,
.lof-content .ls .lof-news-more a.theme_button:focus {
	color: #19bcdb;
	background-color: transparent;
}

#copyright .copyright-text a {
	color: inherit;
}

/* Standardseiten (Imprint, Privacy, Produkte): Container 1170 + Abstände wie live */
.page .title.title-3 > .container {
	max-width: 1170px;
	padding: 75px 15px;
}

.page #main > .container {
	padding-left: 15px;
	padding-right: 15px;
}

#layout.layout-page .entry-content {
	max-width: 100%;
	line-height: 1.7;
}

#layout.layout-page .entry-content img {
	max-width: 100%;
	height: auto;
}

#layout.layout-page .entry-content .aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

#layout.layout-page .entry-content .wp-block-columns.lof-product-media {
	margin: 0 0 1.5em;
	align-items: center;
	gap: 24px;
}

#layout.layout-page .entry-content .lof-product-media .wp-block-image {
	margin: 0;
}

#layout.layout-page .entry-content .lof-product-media img {
	width: 100%;
	height: auto;
	display: block;
}

#layout.layout-page .entry-content .wp-block-image.lof-product-media-single {
	max-width: 520px;
	margin: 0 auto 1.5em;
}

#layout.layout-page .entry-content p,
#layout.layout-page .entry-content li {
	margin-bottom: 1em;
}

#layout.layout-page .entry-content ul,
#layout.layout-page .entry-content ol {
	margin: 0 0 1.25em 1.25em;
	padding: 0;
}

#layout.layout-page .entry-content .lof-quote-cta {
	margin-top: 1.5em;
	margin-bottom: 0;
	text-align: center;
}

#layout.layout-page .entry-content a.theme_button {
	text-decoration: none;
	text-transform: none;
	white-space: normal;
	max-width: 100%;
	line-height: 1.45;
}

#layout.layout-page .entry-content a.theme_button:hover,
#layout.layout-page .entry-content a.theme_button:focus {
	text-decoration: none;
}

@media (max-width: 767px) {
	.page .title.title-3 > .container {
		padding: 50px 15px;
	}
}

/* News / Blog-Archiv wie live */
.title.title-3.lof-blog-title {
	background-color: #11333a;
	background-image: url("/wp-content/uploads/2017/10/features.jpg");
	background-size: cover;
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-attachment: fixed;
	position: relative;
	color: #fff;
}

.title.title-3.lof-blog-title:after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-color: #11333a;
	opacity: 0.9;
	pointer-events: none;
}

.title.title-3.lof-blog-title > .container {
	position: relative;
	z-index: 1;
	max-width: 1170px;
	padding: 75px 15px;
}

.title.title-3.lof-blog-title h1 {
	color: #fff;
	display: inline;
	font-size: 30px;
	font-weight: 500;
	line-height: 1;
	margin: 0;
	word-wrap: break-word;
}

.title.title-3.lof-blog-title .breadcrumb {
	background: transparent;
	border-radius: 0;
	color: inherit;
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
	font-weight: 300;
	justify-content: center;
	list-style: none;
	margin: 20px 0 0;
	padding: 0;
}

.title.title-3.lof-blog-title .breadcrumb > li + li:before {
	color: #fff;
	content: "/";
	font-size: 12px;
	padding: 0 10px 0 6px;
	position: relative;
	top: -1px;
}

.title.title-3.lof-blog-title .breadcrumb a {
	color: #19bcdb;
}

.title.title-3.lof-blog-title .breadcrumb a:hover {
	color: #fff;
}

.title.title-3.lof-blog-title .breadcrumb .last-item {
	color: #e16297;
}

.blog #main > .container,
.archive #main > .container {
	padding-top: 100px;
	padding-bottom: 100px;
}

.blog #layout article.lof-post-card,
.archive #layout article.lof-post-card {
	background: #fff;
	border: 2px solid #e7eaeb;
	border-radius: 5px;
	overflow: hidden;
}

.blog #layout article.lof-post-card + article.lof-post-card,
.archive #layout article.lof-post-card + article.lof-post-card {
	margin-top: 50px;
}

.blog .lof-post-card .item-content,
.archive .lof-post-card .item-content {
	background: #fff;
	padding: 30px 20px;
}

.blog .lof-post-card .entry-header,
.archive .lof-post-card .entry-header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	flex-wrap: nowrap;
}

.blog .lof-post-card .categories-links,
.archive .lof-post-card .categories-links {
	display: block;
	width: 100%;
}

.blog .lof-post-card .categories-links a,
.archive .lof-post-card .categories-links a {
	color: #e16297;
	font-size: 14px;
	font-weight: 500;
}

.blog .lof-post-card:nth-child(even) .categories-links a,
.archive .lof-post-card:nth-child(even) .categories-links a {
	color: #19bcdb;
}

.blog .lof-post-card .entry-title,
.archive .lof-post-card .entry-title {
	width: 100%;
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	margin: 15px 0 0;
}

.blog .lof-post-card .entry-title a,
.archive .lof-post-card .entry-title a {
	color: inherit;
}

.blog .lof-post-card .entry-title a:hover,
.archive .lof-post-card .entry-title a:hover {
	color: #e16297;
}

.blog .lof-post-card:nth-child(even) .entry-title a:hover,
.archive .lof-post-card:nth-child(even) .entry-title a:hover {
	color: #19bcdb;
}

.blog .lof-post-card .entry-meta,
.archive .lof-post-card .entry-meta {
	width: 100%;
	font-size: 12px;
	font-weight: 500;
	margin-top: 12px;
	margin-bottom: 20px;
}

.blog .lof-post-card .entry-meta a,
.archive .lof-post-card .entry-meta a {
	color: #919899;
}

.blog .lof-post-card .entry-meta a:hover,
.archive .lof-post-card .entry-meta a:hover {
	color: #e16297;
}

.blog .lof-post-card:nth-child(even) .entry-meta a:hover,
.archive .lof-post-card:nth-child(even) .entry-meta a:hover {
	color: #19bcdb;
}

.blog .lof-post-card .rightpadding_5,
.archive .lof-post-card .rightpadding_5 {
	margin-right: 5px;
}

.blog .lof-post-card .entry-content,
.archive .lof-post-card .entry-content {
	color: #919899;
}

.blog .lof-post-card .entry-content p,
.archive .lof-post-card .entry-content p {
	margin-bottom: 1em;
}

.blog .lof-post-card .entry-content img,
.archive .lof-post-card .entry-content img {
	height: auto;
	max-width: 100%;
}

.lof-recent-posts .widget-title {
	margin-top: 0 !important;
}

.lof-recent-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.lof-recent-list li + li {
	margin-top: 20px;
}

.lof-recent-list h4 {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	margin: 0 0 5px;
}

.lof-recent-list h4 a {
	color: inherit;
}

.lof-recent-list h4 a:hover {
	color: #19bcdb;
}

.lof-recent-meta {
	color: #919899;
	font-size: 12px;
	font-weight: 500;
}

.lof-recent-meta i {
	margin-right: 5px;
}

.column-aside .widget_search .search-submit {
	background-color: #19bcdb !important;
	border: none;
	border-radius: 0 5px 5px 0;
	opacity: 1;
}

.column-aside .widget_search .search-submit .fa.fa-search {
	color: #fff;
}

.column-aside .widget_search .search-submit:hover {
	opacity: 1;
}

.column-aside .widget_search .search-submit:hover .fa.fa-search {
	color: #11333a;
}

@media (min-width: 400px) {
	.blog .lof-post-card .item-content,
	.archive .lof-post-card .item-content {
		padding: 35px;
	}
}

@media (min-width: 768px) {
	.title.title-3.lof-blog-title .breadcrumb > li + li:before {
		padding: 0 25px 0 21px;
	}
}

@media (min-width: 992px) {
	.title.title-3.lof-blog-title h1 {
		font-size: 40px;
	}
}

@media (min-width: 1200px) {
	.blog .lof-post-card .item-content,
	.archive .lof-post-card .item-content {
		padding: 55px;
	}
}

@media (max-width: 1200px) {
	.blog #main > .container,
	.archive #main > .container {
		padding-top: 75px;
		padding-bottom: 75px;
	}
}

@media (max-width: 767px) {
	.title.title-3.lof-blog-title {
		background-attachment: scroll;
	}

	.title.title-3.lof-blog-title > .container {
		padding: 50px 15px;
	}
}

/* Desktop: Slider füllt den Viewport unter Topline/Header */
@media (min-width: 992px) {
	.home .page_slider.intro_section,
	.home .page_slider.intro_section .flexslider,
	.home .page_slider.intro_section .flex-viewport,
	.home .page_slider.intro_section .slides,
	.home .page_slider.intro_section .slides > li {
		height: var(--lof-slider-h, calc(100dvh - 8.5rem)) !important;
	}

	.home .page_slider.intro_section {
		background: #11333a;
	}

	.home .page_slider.intro_section .slides > li {
		overflow: hidden;
	}

	.home .page_slider.intro_section .slides img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}
}

.home .page_slider.intro_section li .slide-heading,
.home .page_slider.intro_section h2 {
	font-family: "Roboto", sans-serif;
	line-height: 1.25;
}

.home .page_slider.intro_section .flex-control-nav {
	z-index: 11;
}

@media (max-width: 991px) {
	.home .page_slider.intro_section .slides > li > img {
		width: 100%;
		height: auto;
		aspect-ratio: 3 / 2;
		object-fit: cover;
		object-position: center;
	}

	.home .page_slider.intro_section .flex-direction-nav .flex-next,
	.home .page_slider.intro_section .flex-direction-nav .flex-prev {
		display: block;
		top: var(--lof-arrow-top, 50%);
	}
}

/* Move-to-top erst nach Scrollen (Parent zeigt sonst 10px am unteren Rand) */
#to-top:not(.visible),
#to-top:not(.visible):hover {
	bottom: -80px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

@media (max-width: 768px) {
	#to-top:not(.visible),
	#to-top:not(.visible):hover {
		bottom: -60px;
	}
}

/* Consent banner */
.lof-consent {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10050;
	padding: 16px;
	pointer-events: none;
}

.lof-consent[hidden] {
	display: none !important;
}

.lof-consent-panel {
	pointer-events: auto;
	max-width: 1170px;
	margin: 0 auto;
	background: #fff;
	color: #444;
	border: 1px solid #e7eaeb;
	box-shadow: 0 -8px 32px rgba(17, 51, 58, 0.18);
	padding: 20px 24px;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 32px;
	align-items: flex-end;
	justify-content: space-between;
}

.lof-consent-title {
	margin: 0 0 8px;
	font-size: 18px;
	font-weight: 500;
	color: #11333a;
}

.lof-consent-text {
	margin: 0 0 12px;
	font-size: 14px;
	line-height: 1.5;
	max-width: 62em;
}

.lof-consent-text a {
	color: #19bcdb;
}

.lof-consent-options {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 20px;
}

.lof-consent-option {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	margin: 0;
	font-weight: 400;
	cursor: pointer;
}

.lof-consent-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

.lof-consent-btn {
	appearance: none;
	border: 1px solid #11333a;
	background: #fff;
	color: #11333a;
	padding: 8px 16px;
	font-size: 14px;
	line-height: 1.3;
	cursor: pointer;
	border-radius: 2px;
}

.lof-consent-btn-primary {
	background: #19bcdb;
	border-color: #19bcdb;
	color: #fff;
}

.lof-consent-btn:hover,
.lof-consent-btn:focus {
	opacity: 0.9;
}

.lof-consent-embed {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 200px;
	height: 100%;
	padding: 24px 16px;
	background: #11333a;
	color: #fff;
	text-align: center;
}

.wp-block-embed__wrapper .lof-consent-embed {
	position: absolute;
	inset: 0;
	min-height: 0;
}

.lof-consent-embed-title {
	margin: 0;
	font-size: 16px;
	font-weight: 500;
}

.lof-consent-embed-text {
	margin: 0 0 8px;
	font-size: 14px;
	line-height: 1.45;
	max-width: 36em;
}

@media (max-width: 767px) {
	.lof-consent-panel {
		padding: 16px;
	}

	.lof-consent-actions {
		width: 100%;
	}

	.lof-consent-btn {
		flex: 1 1 auto;
	}
}

/* Single-News: Prev/Next als schmale Textnavigation statt dunkler Kacheln */
#body.single-post .post-nav {
	max-width: none;
	margin: 36px 0 8px;
	padding-top: 20px;
	border-top: 1px solid #e7eaeb;
	gap: 16px 32px;
	align-items: flex-start;
}

#body.single-post .post-nav > div:first-child {
	margin-right: 0;
}

#body.single-post .post-nav a {
	display: block;
	text-decoration: none;
	color: inherit;
}

#body.single-post .post-nav > div .post-nav-item,
#body.single-post .post-nav-item.bg-item {
	height: auto;
	min-height: 0;
	padding: 0;
	background: none !important;
	background-image: none !important;
	border-radius: 0;
	justify-content: flex-start;
	align-items: center;
	gap: 6px;
}

#body.single-post .post-nav .prev-item {
	text-align: left;
}

#body.single-post .post-nav .next-item {
	text-align: right;
	justify-content: flex-end;
}

#body.single-post .post-nav .has-image,
#body.single-post .post-nav .no-image {
	color: inherit;
	background-color: transparent;
}

#body.single-post .post-nav > div .post-nav-item::before,
#body.single-post .post-nav .background-overlay:before {
	content: none;
	display: none;
}

#body.single-post .post-nav .post-nav-thumb {
	display: none;
}

#body.single-post .post-nav .post-nav-arrow {
	display: block;
	position: static;
	left: auto;
	right: auto;
	margin: 0;
	flex-shrink: 0;
	line-height: 0;
	opacity: 0.4;
}

#body.single-post .post-nav .post-nav-arrow svg {
	width: 14px;
	height: 14px;
	max-width: 14px;
	max-height: 14px;
}

#body.single-post .post-nav .post-nav-arrow path {
	fill: #919899;
}

#body.single-post .post-nav > div .post-nav-item .post-nav-words-wrap {
	padding: 0;
	text-align: inherit;
	max-width: calc(100% - 20px);
}

#body.single-post .post-nav .post-nav-word {
	color: #919899;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.3;
	text-transform: uppercase;
}

#body.single-post .post-nav .post-nav-title {
	color: #11333a;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.35;
	margin-top: 2px;
	min-height: 0;
}

#body.single-post .post-nav a:hover .post-nav-word,
#body.single-post .post-nav a:hover .post-nav-title {
	color: #19bcdb;
}

#body.single-post .post-nav a:hover .post-nav-arrow {
	opacity: 0.85;
}

#body.single-post .post-nav a:hover .post-nav-arrow path {
	fill: #19bcdb;
}

@media screen and (max-width: 767px) {
	#body.single-post .post-nav {
		margin: 28px 0 0;
		padding-top: 16px;
	}

	#body.single-post .post-nav > div .post-nav-item {
		padding: 0;
	}
}

@media screen and (max-width: 575px) {
	#body.single-post .post-nav > *:last-child {
		border-top: 0;
	}

	#body.single-post .post-nav > div:first-child {
		margin-bottom: 12px;
	}
}
