/*
Theme Name: Elbnetz
Template: Impreza
Version: 1.0
Author:	Elbnetz GmbH
Theme URI: https://elbnetz.com/
Author URI: https://elbnetz.com/
*/

/*Add your own styles here:*/
:root {
  --radius: 0.5rem;
  --blur: blur(40px);
	--border: 2px;
	
  --glasbox-shadow: 0px 0px 7px 0px var(--color-shadowlight);
	--glasbox-border: 1px solid var(--color-glas-white);

/* Berechnungs-Erklärung siehe oben */
	/*0.4-0.7rem z.B. Glasbox */
  --radius-box:clamp(0.4rem, 0.085rem + 0.738vw, 0.7rem);
	/*0.2-0.5rem*/
	--radius-img: clamp(0.2rem, -0.115rem + 0.738vw, 0.5rem); 
	/*btn dot*/
	--radius-dot: 50px;
	/*btn normal*/
	--radius-btn: 0.5rem;
 
	
	/*60-80px*/
	--padding-2xl: clamp(3.333rem, 2.168rem + 2.732vw, 4.444rem);
	/*50-60px*/
	--padding-xl: clamp(2.778rem, 2.195rem + 1.366vw, 3.333rem);
	/*40-50px*/
	--padding-l: clamp(2.222rem, 1.639rem + 1.366vw, 2.778rem);
	/*30-40px*/
	--padding-m: clamp(1.667rem, 1.084rem + 1.366vw, 2.222rem);
	/*20-30px*/
	--padding-s: clamp(1.111rem, 0.528rem + 1.366vw, 1.667rem);
	/*15-20px*/
	--padding-xs: clamp(0.833rem, 0.542rem + 0.683vw, 1.111rem);
}

.en_p20 {
	font-size: clamp(1rem, 0.883rem + 0.273vw, 1.111rem);
}
.en_p22 {
	font-size: clamp(1.111rem, 0.995rem + 0.273vw, 1.222rem);
}
/* ---
* Theme-Korrektur 
* —-- */
/* Fix für feststehende Bilder mobil iOS */
@media only screen and (max-device-width: 1300px) {
	.state_mobiles section {
	background-attachment: initial!important;
	}
}
body {
 -webkit-tap-highlight-color: transparent!important;
}

/* Horizontales Seitenscrolling verhindern */
.l-canvas {
	overflow: clip;
}

/* Farben für Markierungen */
::-moz-selection { 
	background: var(--color-wblue);
	color: var(--color-white)!important;
}
::selection { 
	background: var(--color-wblue);
	color: var(--color-white);
}

h1.type_fadeIn {
	overflow: hidden; 
  text-overflow: ellipsis;
  white-space: nowrap;
}
.state_mobiles h1.type_fadeIn span {
	display: block;
}

/* ---
 * Schriften 
 * --- */
/* --- Wortumbruch - hyphens/Silbentrennung --- */
h1, h2, h3, h4  {
  -moz-hyphens: auto;
  -o-hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto; 
	-ms-hyphenate-limit-chars: 12 3 4; 
  hyphenate-limit-chars: 12 3 4;
	
	
	-webkit-hyphenate-limit-before: 3; /* For Safari */
  -webkit-hyphenate-limit-after: 4; /* For Safari */
}

/* --- Uppercase --- */
span.en_uppercase {
	text-transform: uppercase;
}
/* --- Links --- */
p > a {
	text-decoration: underline;
	text-underline-offset: 2px;
}
/* --- Overtitle --- */
body .en_overtitle {
	font-size: clamp(0.833rem, 0.658rem + 0.41vw, 1rem)!important;
}
/* --- Subline --- */
body .en_subline {
	font-weight: bold;
	font-size: clamp(1rem, 0.767rem + 0.546vw, 1.222rem)!important;
}


/* --- H1 --- */
.en_like_h1 {
	font-size: clamp(1.5rem, 0.451rem + 2.459vw, 2.5rem);!important;
}

/* --- H2 --- */
.en_like_h2 {
	font-size: clamp(1.4rem, 0.77rem + 1.475vw, 2rem)!important;
}

/* --- H3 --- */
.en_like_h3 {
	font-size: clamp(1.2rem, 0.885rem + 0.738vw, 1.5rem)!important;
}

.en_like_h4 {
	font-size: clamp(1.2rem, 0.885rem + 0.738vw, 1.5rem)!important;
}

/* --- 
 * Design Standards
 * --- */
/* --- Abstände --- */
.state_default .en_textabstand > .vc_column-inner > .wpb_wrapper,
.state_laptops .en_textabstand > .vc_column-inner > .wpb_wrapper {
	padding-left: var(--padding-l);
}
/* --- Blur --- */
.en_blur,
.en_blur_kasten .vc_column-inner {
	-webkit-backdrop-filter: var(--blur);
	backdrop-filter: var(--blur);
}

/* --- Icons --- */
.en_kontakt_icon i:before {
	color: var(--color-orange);
}

/* --- 
 * Glasbox 
 * --- */
.en_glasbox {
	padding: var(--padding-m);
	border: var(--glasbox-border);
	border-radius: var(--radius-box);
	-webkit-backdrop-filter: var(--blur);
	backdrop-filter: var(--blur);
	background: var(--color-glas-white)!important;
	box-shadow: var(--glasbox-shadow);
}
.state_tablets .en_glasbox,
.state_mobiles .en_glasbox {
	margin: 0 0!important;
}

/* --- Kleine Icon-Box --- */
.en_glasbox.w-iconbox.iconpos_left {
	align-items: center;
}
.en_glasbox.w-iconbox.iconpos_left .w-iconbox-title {
	font-weight: 600;
}

.en_anfrage_section .en_glasbox > .vc_column-inner,
.state_tablets .en_glasbox > .vc_col-sm-6 > .vc_column-inner,
.state_mobiles .en_glasbox > .vc_col-sm-6 > .vc_column-inner {
	padding: 0!important;
}


/* ---
 * Buttons 
 * --- */
.en_blur_button {
	-webkit-backdrop-filter: var(--blur);
	backdrop-filter: var(--blur);
}



/* --- Dot-Button --- */
.en_dot_btn {
	display: flex;
	align-items: center;
}
.en_dot_btn i {
	transition: all 0.3s ease-in-out;
	
	background: var(--color-orange);
	min-width: 40px;
	min-height: 40px;
	line-height: 40px;
	border-radius: 50px;
}
.en_dot_btn:hover i {
	background: var(--color-hellblau-2);
}
.en_dot_btn:hover i:not(.fa-arrow-down) {
	margin-left: 20px;
}


/* ---
 * Header 
 * --- */
.l-header {
	-webkit-backdrop-filter: var(--blur);
backdrop-filter: var(--blur);
}
/* --- Logo --- */
/* --- Menü 1. Ebene --- */
/* --- Submenu --- */
nav.type_desktop .en_hide_desktop  {
	display: none;
}
/* --- Burger-Menu --- */
/* --- Mehrsprachigkeit --- */

/* ---
 * Footer
 * --- */
.state_tablets .en_footer_zertifizierung,
.state_mobiles .en_footer_zertifizierung {
	margin-left: 0!important;
}
/* --- Footer-Menu --- */

/* ---
 * Opener
 * --- */

/* ---
 * CTA
 * --- */
.state_tablets .en_cta,
.state_mobiles .en_cta {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.state_tablets .en_cta .en_cta_text .vc_column-inner {
	padding-left: 2.5rem!important;
	padding-right: 2.5rem!important;
}


.state_tablets .en_cta .vc_col-sm-12,
.state_mobiles .en_cta .vc_col-sm-12 {
	margin-top: 0!important;
}

.state_tablets .en_cta .en_textabstand > .vc_column-inner > .wpb_wrapper,
.state_mobiles .en_cta .en_textabstand > .vc_column-inner > .wpb_wrapper{
	padding: var(--padding-m);
	border: var(--glasbox-border);
	border-radius: var(--radius-box);
	-webkit-backdrop-filter: var(--blur);
	backdrop-filter: var(--blur);
	background: var(--color-glas-white)!important;
	box-shadow: var(--glasbox-shadow);
}


/* Nachtrag CTA Bild rechts */
.state_tablets .en_cta .w-btn,
.state_mobiles .en_cta .w-btn {
	padding-left: 0;
}
.en_cta .w-btn span {
	text-align: left;
}

/* --- 
 * Filter
 * --- */
.w-filter-item-values {
	gap: 0.5rem;
}
.w-filter:not(.state_mobile)  .w-filter-item-value {
	background: var(--color-hellblau-2)!important;
	border-radius: var(--radius-img);
}
.w-filter:not(.state_mobile) .w-filter-item-value.selected {
	border-bottom: 0!important;
	background: var(--color-wblue)!important;
	color: var(--color-white)!important;
}
.state_mobile .w-filter-list, 
.state_mobile .w-filter-list-panel {
	background: var(--color-hellblau-2)!important;
	box-shadow: none;
}
/* --- 
 * Karussell / Slider 
 * --- */
/* --- Button --- */
/* --- Dots --- */
.dotstyle_circle .owl-dot span {
	width: 35px;
	height: 10px;
	border-radius: 50px;
	background: var(--color-wblue);
	box-shadow: none;
	transition: all 0.4s ease-in-out;
	opacity: 1;
}
.dotstyle_circle .owl-dot.active span {
	width: 45px;
	background: var(--color-orange)!important;
	box-shadow: none;
}


/* ---
 * Teaser (Raster / Karussell)
 * --- */
/* --- Seiten-Teaser --- */
/*
.en_seiten_teaser .owl-carousel .owl-item, 
.en_seiten_teaser  .owl-carousel .owl-wrapper,
.en_seiten_teaser  .owl-carousel .owl-stage {
	backface-visibility: visible!important;
}
*/
.en_teaser .w-grid-item-h {
	background: var(--color-glas-white);
	-webkit-backdrop-filter: var(--blur);
	backdrop-filter: var(--blur);
	border-radius: var(--radius-box);
	border: var(--glasbox-border);
	box-shadow: var(--glasbox-shadow);
}
.en_teaser .en_overflow_hide {
	overflow: hidden;
}

.en_teaser i {
	display: flex;
	align-items: center;
	line-height: 40px;
}

.en_partnerlogo_bild img {
	object-fit: contain!important;
}
/* --- 
 * Galerie 
 * --- */

/* ---
 * Bilder
 * --- */

/* --- 
 * Akkordeon / FAQ 
 * --- */
.en_acc .w-tabs-section {
	border-color: var(--color-black);
}

.en_acc .w-tabs-section-title {
	font-weight: 600;
	text-transform: none;
	color: var(--color-wblue)!important;
}

.en_acc .w-tabs-section button:hover,
.en_acc .w-tabs-section button:focus {
	background: var(--color-wblue);
	outline: none;
}
.en_acc .w-tabs-section button:hover .w-tabs-section-title,
.en_acc .w-tabs-section button:focus .w-tabs-section-title{
	color: var(--color-white)!important;
} 
.en_acc .w-tabs-section-control  {
	color: var(--color-orange);
}

/* Akkordeon Anfahrt */
.en_anfahrt_akk .w-tabs-section-control {
	color: var(--color-orange);
	margin-left: 5px;
	margin-right: 28px!important;
}
.en_anfahrt_akk .w-tabs-section-control:before {
	width: 5px!important;
}
.en_anfahrt_akk .w-tabs-section-control:after {
	height: 5px!important;
	top: .4em!important;
	left: 1px!important;
}
.en_anfahrt_akk .w-tabs-section-title {
	text-decoration: underline;
	text-underline-offset: 2px;
	color: var(--color-content-link);
}
/* ---
 * Preisliste
 * --- */
.en_preisliste .w-pricing-item,
.en_preisliste .w-pricing-item .w-pricing-item-h {
	padding: 0.5rem;
}
.en_preisliste .w-pricing-item-header,
.en_preisliste .w-pricing-item-features,
.en_preisliste .w-pricing-item-footer {
	text-align: left!important;
}

.en_preisliste .type_featured .w-pricing-item-h {
	margin-top: -2rem;
	box-shadow: var(--glasbox-shadow);
}
.en_preisliste .type_default .w-pricing-item-h {
	border: var(--glasbox-border);
	-webkit-backdrop-filter: var(--blur);
	backdrop-filter: var(--blur);
	background: var(--color-lightblue);
	box-shadow: var(--glasbox-shadow);
}

/* Header */
.en_preisliste .w-pricing-item.type_default .w-pricing-item-title {
	color: var(--color-wblue);
}

.en_preisliste .w-pricing-item-title .en_preistext {
	display: block;
	font-weight: var(--font-weight);
	font-size: var(--font-size);
	line-height: var(--line-height);
	margin: 2rem 0 1rem 0;
	color: var(--color-content-text);
}
.en_preisliste .type_featured .w-pricing-item-title .en_preistext {
	color: var(--color-alt-content-text);
}

.en_preisliste .w-pricing-item-price {
	font-weight: 600;
	font-size: 3rem;
}

.en_preisliste .w-pricing-item-price small {
	display: inline-block;
	margin-left: 1rem;
}
.en_preisliste .type_featured .w-pricing-item-header {
	position: relative;
}
.en_preisliste .type_featured .w-pricing-item-header::after {
	content: "Beliebt";
	position: absolute;
	top: 0.5rem;
	right: -0.5rem;
	padding: 0.5rem 0.7rem 0.5rem 1rem;
	border-radius: var(--radius-img) 0 0 var(--radius-img);
	background: var(--color-orange);
	font-size: 13px;
	line-height: 15px;
	border: var(--glasbox-border);
}
/* Auflistung */
.en_preisliste .w-pricing-item-features .w-pricing-item-feature {
	display: flex;
}
.en_preisliste .w-pricing-item-features i {
	margin-right: 10px;
	font-size: 1.4rem!important;
}
.en_preisliste .type_default .w-pricing-item-features i {
	color: var(--color-wblue);
	
}
.en_preisliste .w-pricing-item-features .w-pricing-item-feature:first-child {
	font-weight: 600!important;
}
/* Button */
.en_preisliste .w-pricing-item-footer {
	padding: 1.5rem;
}

/* ---
 * Person
 * --- */
.en_team_column .vc_column-inner > .wpb_wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
}
.en_team_column .w-person {
	width: calc(33% - 1.5rem);
	margin: 0!important;
}

.state_tablets .en_team_column .w-person {
	width: calc(50% - 1.5rem);
}
.state_mobiles .en_team_column .w-person {
	width: calc(100%);
}

.w-person img {
	border-radius: var(--radius);
	aspect-ratio: 3/2;
	object-fit: cover;
}

.w-person-image img[title="Favicon"] {
	aspect-ratio: 3/2;
	object-fit: cover!important;
}

.w-person h3 {
	font-weight: bold;
	text-transform: none;
}

/* --- 
 * Kontaktformular
 * --- */
::-ms-input-placeholder { /* Edge 12-18 */
  color: var(--color-black);
  /*opacity: 1;*/
}

::placeholder {
  color: var(--color-black);
  /*opacity: 1;*/
}

.gform_required_legend {
	display: none;
}
form .gfield {
	margin-top: var(--padding-xs);
}
form legend {
	margin-bottom: 0!important;
}
form .gfield_description {
	margin-top: 0!important;
	padding-top: 0!important;
}
form .gfield--type-consent .ginput_container_consent {
	font-size: 14px;
	line-height: 18px;
}
.ginput_container_consent {
	display: flex;
}

.en_gf_dsgvo legend {
	margin-bottom: 8px!important;
}
.en_gf_dsgvo .ginput_container {
	margin-bottom: 1rem;
}


/* --- CO2 Bestellung --- */
.ginput_container_singleproduct input[type="number"] {
	display: block!important;
	width: 100%!important;
}

.en_gf_anzahl .gfield_description {
	padding: 0!important;
}

.en_gf_infokasten {
	border: 1px solid var(--color-orange);
	border-radius: var(--radius);
	padding: 1rem;
	font-size: 15px;
}

.ginput_product_price_wrapper {
	display: none!important;
}

/* ---
 * Einzel Beitrag (... Template)
 * --- */
.en_beitrag_inhalt a {
	text-decoration: underline;
	text-underline-offset: 3px;
}
.en_beitrag_inhalt h4,
.en_beitrag_inhalt h3 {
	margin-bottom: var(--h2-margin-bottom, 1.5rem);
	padding-top: 1.5rem;
}
/* ---
 * Produktseite (... Template)
 * --- */

/* ---
 * Archiv-Seite (... Template)
 * --- */


/* ---
 * Barrierefreiheit
 * --- */
/* --- Impreza-Standard */
a:focus, button:focus, input[type=checkbox]:focus + i, input[type=checkbox]:focus + .w-color-switch-box, input[type=submit]:focus {
	outline: 2px solid var(--color-focus)!important; 
}
/* --- Grids/Raster & Karussell --- */
article .w-grid-item-h:focus-within  {
	border: var(--border) solid var(--color-focus)!important;
}
/* Dots & Arrows */

/* --- Links --- */
p > a:focus {
	outline: 1px solid var(--color-focus)!important;
	color: var(--color-focus);
}
/* --- Button --- */
.w-btn:focus  {
	outline: 2px solid var(--color-focus)!important;
}
/* --- Menus --- */
/* --- Header */
/* --- Footer */

