/*
 Theme Name:   Divi Child
 Theme URI:    http://www.elegantthemes.com/gallery/divi/
 Description:  Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
 Author:       Elegant Themes
 Author URI:   http://www.elegantthemes.com
 Template:     Divi
 Version:      3.17.2
 License:      GNU General Public License v2
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         responsive-layout, one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-background, custom-colors, featured-images, full-width-template, post-formats, rtl-language-support, theme-options,
 Text Domain:  divi-child
*/


/* ---------- */
/* Properties */
/* ---------- */
:root {
  --color-green: #86bd34; /* 91c846 */
  --color-green-alt: #91c846; /* 43b649 */
  --color-text: #555;
  --color-border: #d9d9d9;

  --transition-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);

  --padding-indent: 0.5em 2em;
  --padding-indent-focus: 0.5em 1.25em;

  --border-radius: 3px;
  --border-bottom_et_pb_button: 0.15em;
  --border-bottom_et_pb_button-light: 0.15em;

  --shadow-default: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}


/*
 * Body
 */
body {
  overflow-x: hidden;
}

a {
  cursor: pointer;
}


/*
 * Main content
 */
div#main-content {
  min-height: 50vh;
}


/* ---------- */
/* Navigation */
/* ---------- */
header#main-header {
  transition: background-color 0.4s, color 0.4s, transform 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s, box-shadow 0.4s ease-in-out;

  background-image: url(/wp-content/uploads/2018/10/hexagons-background.svg);
  background-position: 50% 50%;
  background-size: cover;
}

header#main-header #et-top-navigation {
  font-weight: inherit;
  padding-left: 0 !important;
}

#top-menu li.mega-menu.downloads > ul > li > a:first-child {
  font-weight: inherit;
}

#top-menu li, #top-menu li a {
  padding-right: 7px;
}

@media print {
header#main-header {
  display: none;
}
}

/* Language Switcher *//*
header#main-header #top-menu > li:last-child ul.sub-menu,
header#main-header #top-menu > li:last-child ul.sub-menu li a {
  width: 60px;
  text-align: center;
}*/


/* Shop Menu Item */
/* Item Hover */
header#main-header #top-menu > li > a[href^="https://shop.hybridsupply."] {
    padding-left: 20px;
}
header#main-header #top-menu > li > a[href^="https://shop.hybridsupply."]::before {
    position: absolute;
    left: 0;
    font-family: ETmodules;
    font-size: 16px;
    font-weight: 800;
    content: "";
    color: rgba(0, 0, 0, 0.5);
}

header#main-header #mobile_menu li.current-menu-item > a,
header#main-header #top-menu li.current-menu-item > a,
header#main-header #top-menu li.et-hover > a,
header#main-header #top-menu li.current-menu-ancestor > a {
  transition: 0.5s all var(--transition-bounce);
  color: var(--color-green);
}

header#main-header #top-menu > li:not(.mega-menu) > ul.sub-menu {
  left: -15px;
  padding: 0;
  border-bottom-right-radius: var(--border-radius);
  border-bottom-left-radius: var(--border-radius);
}

/* Mega Menu */
.nav li ul {
  width: auto;
  min-width: 140px;
}

header#main-header #top-menu > li.mega-menu ul.sub-menu {
  padding: 6px 0 0 0;
  border-bottom-right-radius: var(--border-radius);
  border-bottom-left-radius: var(--border-radius);
}

header#main-header #top-menu li.mega-menu > ul > li > a:first-child {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

header#main-header #top-menu ul.sub-menu li {
  display: block;
  padding: 0;
}

header#main-header #top-menu ul.sub-menu li a {
  width: auto;
  padding: 5px 15px;
}

header#main-header #top-menu ul.sub-menu li a[href="#"] {
  cursor: default;
}

header#main-header #top-menu ul.sub-menu li a[href="#"]:hover {
  opacity: 1;
}

header#main-header #top-menu > li.mega-menu ul.sub-menu > li ul.sub-menu {
  padding: 0;
}

header#main-header #top-menu li.mega-menu > ul > li {
  width: 50%;
}
/* --------- */


/* Mega Menu: Downloads */
header#main-header #top-menu > li.mega-menu.downloads ul.sub-menu > li ul.sub-menu li:last-of-type {
  margin-bottom: 2em;
}
/* -------------------- */


/**
 * Fixing the Divi Header Menu Magnifying Glass Issue
 * @see https://divibooster.com/fixing-the-divi-header-menu-magnifying-glass-issue/
 *//*
@media only screen and (min-width: 981px) {
  .et_header_style_left #et_top_search {
    position: absolute !important;
    right: 0px;
  }
  .et_header_style_left #et-top-navigation {
    padding-right: 40px !important;
  }
  .et_header_style_centered #et_top_search {
    position: absolute !important;
    right: -20px;
    top: 10px;
  }
  .et_header_style_centered #et-top-navigation {
    padding-right: 0px !important;
  }
}*/


/* Mobile Menu */
.et_mobile_menu {
  padding: 0;
}


/* ---- */
/* Body */
/* ---- */
body {

}

hr {
  border: none;
  border-bottom: 1px solid #d9d9d9;
  border-bottom: 1px solid var(--color-border);
  margin: 2em 0 1em 0;
}
/*
div.et_pb_module:not(.nolink) .et_pb_slide_content p a:not(.et_pb_button),
div.et_pb_module:not(.nolink) .et_pb_code_inner p a:not(.et_pb_button),
div.et_pb_module:not(.nolink) .et_pb_text_inner p a:not(.et_pb_button),
div.et_pb_module:not(.nolink) .et_pb_text_inner ul a:not(.et_pb_button),
.link, .privacy-policy-link {
  transition: all 0.2s ease-out;
  color: inherit;

  text-decoration: underline;
  text-decoration-style: dotted;
  text-decoration-color: inherit;
  cursor: pointer;
}

#et-main-area div.et_pb_module:not(.nolink) .et_pb_slide_content:not(.nolink) p a:not(.et_pb_button):hover,
#et-main-area div.et_pb_module:not(.nolink) .et_pb_code_inner:not(.nolink) p a:not(.et_pb_button):hover,
#et-main-area div.et_pb_module:not(.nolink) .et_pb_text_inner:not(.nolink) p a:not(.et_pb_button):hover,
#et-main-area div.et_pb_module:not(.nolink) .et_pb_text_inner:not(.nolink) ul a:not(.et_pb_button):hover,
#et-main-area .link:hover,
#et-main-area .privacy-policy-link:hover,
#et-main-area .nobutton:hover {
  color: var(--color-green) !important;
  text-decoration-color: var(--color-green);
}
*/
#et-main-area ::selection {
  background-color: #91c84699;
  color: #333;
}


/* -------- */
/* Headings */
/* -------- */
h1 { font-size: 1.90em; color: inherit; line-height: 1.0; }
h2 { font-size: 1.75em; color: inherit; line-height: 1.1; }
h3 { font-size: 1.60em; color: inherit; line-height: 1.2; }
h4 { font-size: 1.45em; color: inherit; line-height: 1.3; }
h5 { font-size: 1.30em; color: inherit; line-height: 1.4; }
h6 { font-size: 1.15em; color: inherit; line-height: 1.5; }

#et-main-area h1.hs-title::selection { color: #777; background-color: #ffffff99; }
#et-main-area h2.hs-title::selection { color: #777; background-color: #ffffff99; }
#et-main-area h3.hs-title::selection { color: #777; background-color: #ffffff99; }
#et-main-area h4.hs-title::selection { color: #777; background-color: #ffffff99; }
#et-main-area h5.hs-title::selection { color: #777; background-color: #ffffff99; }
#et-main-area h6.hs-title::selection { color: #777; background-color: #ffffff99; }

.hs-title {
  display: inline-block;
  padding: 0.2em 0.1875em 0.2em 0.75em;
  line-height: 1.25;

  color: #ffffff;
  text-transform: uppercase;
  text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.125);
  filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.075));

  font-weight: bold;
  position: relative;
}

.hs-title::after {
  background: none;

  content: '';
  z-index: -1;
  display: inline-block;

  position: absolute;
  top: 0;
  right: -0.5em; /* needed for multiline headings */
  width: 1.25em;
  height: 100%;

  transform: skewX(-15deg);
  padding: 0;
}

.hs-title.green {
  /* IE11 */
  background: var(--color-green);
  background: -moz-linear-gradient(290deg, var(--color-green-alt) 1.25em, var(--color-green) 55%, var(--color-green) 100%) no-repeat 100% 100%;
  background: -webkit-linear-gradient(290deg, var(--color-green-alt) 1.25em, var(--color-green) 55%, var(--color-green) 100%) no-repeat 100% 100%;
  background: linear-gradient(290deg, var(--color-green-alt) 1.25em, var(--color-green) 55%, var(--color-green) 100%) no-repeat 100% 100%;
}

.hs-title.green::after {
  background-color: var(--color-green-alt);
}

.hs-title.red {
  background: #e02b20;
  background: -moz-linear-gradient(to top right, #c00 0%, #e02b20 55%, #e02b20 100%) no-repeat 100% 100%;
  background: -webkit-linear-gradient(to top right, #c00 0%, #e02b20 55%, #e02b20 100%) no-repeat 100% 100%;
  background: linear-gradient(to top right, #c00 0%, #e02b20 55%, #e02b20 100%) no-repeat 100% 100%;
}

.hs-title.red::after,
.hs-title.red::selection {
  background-color: #e02b20;
}

@media print {
.hs-title {
  padding: 0;
  text-shadow: none;
}

.hs-title.green,
.hs-title.red {
  background: none;
}

.hs-title::after {
  display: none;
}
}


/* ------ */
/* Footer */
/* ------ */
.et_pb_widget a {
  text-decoration: underline;
  text-decoration-style: dotted;
}

.bottom-nav li {
  font-weight: 500;
}

.bottom-nav {
  padding: 1vh 0;
}

.bottom-nav li.current-menu-item > a {
  color: var(--color-green);
}

@media print {
footer#main-footer {
  display: none;
}
}

/* ---- */
/* DIVI */
/* ---- */

/* Reset */
.et_pb_widget select {
  height: unset;
  width: 1080px !important;
  max-width: 100%;
  padding: 0.5em 2em;
}

#footer-widgets .footer-widget li::before {
  position: unset;
  border: 0;
}

#footer-widgets .footer-widget li {
  padding-left: 0
}
/* */

a.more-link {
  display: inline-block;
}

a.more-link:first-letter {
  text-transform: uppercase;
}

img {
  width: auto;
}

/* Images: Popup */
.mfp-figure::after {
    background: #fff;
}

/* Border: Round */
.rounded {
  border-radius: var(--border-radius);
  overflow: hidden;
}

.border {
  cursor: default;

  border: 1px solid #d9d9d9;
  border: 1px solid var(--color-border);
}

.border_bottom {
  border-bottom: 1px solid var(--color-border);
}

.border.clickable {
  cursor: pointer;

  transition: box-shadow 0.5s ease-in-out, border-bottom 0.2s 0.5s ease-out, border-color 0.5s, margin-bottom 0.5s;

  border-bottom: 0.25em solid #d9d9d9;
  border-bottom: 0.25em solid var(--color-border);
  text-decoration: none;
  background-color: #fff;
}

.border.clickable:hover {
  border-color: #fff;
  border-bottom-color: var(--color-green);

  box-shadow: 0.125vw 0.125vh 0.25vw 0 var(--color-border);
  box-shadow: var(--shadow-default);
  box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}

.border.clickable.img a[title]::after {
  transition: margin 0.5s, opacity 0.2s, line-height 0.5s, margin 0.5s;
  content: attr(title);
  color: var(--color-text);
  opacity: 0;
  text-align: left;
  display: block;
  font-size: 0.9rem;
}

.border.clickable.img a[title]:hover::after {
  opacity: 1;
  line-height: 1.7;
  margin: 0.5em 0.75em;
}


.border.red:hover {
  border-bottom-color: #e02b20 !important;
}

.padded { padding: 1em; }
.padded-top { padding: 1em 2em 0 2em; }
.padded-2x { padding: 2em; }
.padded-2x1 { padding: 1em 2em; }

.scroll table {
  display: block;
  max-height: 60vh;
  overflow: auto;
}

.scroll table thead {
  position: sticky;
  top: 0;
  background-color: #fff;
}

span.email::after {
  display: inline-block;
  content: '@';
}

@media print {
div.et_pb_column.print {
  width: auto;
  width: 100%;
  margin-bottom: 0;
}

.noprint {
  display: none;
}
}
/* ------------ */

/*
 * Divi Builder
 */
.et-db #et-boc .et-l .et-fb-option--tiny-mce .et-fb-tinymce-html-input {
  font-weight: 500;
  font-family: monospace;
}

/* External: Shop Links */
.et_pb_text_inner a:not(.et_pb_button)[href^="https://shop.hybridsupply"] {
  transition: 0.2s all ease-in-out;

  margin: 0 0.3125em 0 0.3125em;
  padding: 0 0.3125em 0 0.3125em;
  text-decoration: underline dotted #555;
  text-decoration: underline dotted var(--color-text);
}

.et_pb_text_inner a.table:not(.et_pb_button)[href^="https://shop.hybridsupply"] {
  margin: 0 1.25em 0 0;
  padding: 0;
}

.et_pb_text_inner a:not(.et_pb_button)[href^="https://shop.hybridsupply"]:hover {
  margin: 0;
  padding: 0;
  color: var(--color-green);
  text-decoration-color: inherit;
}

.et_pb_text_inner a:not(.et_pb_button)[href^="https://shop.hybridsupply"]:before {
  transition: 0.2s all ease-in-out;
  font-family: ETmodules;
  content: "";
  color: rgba(0, 0, 0, 0.5);
  margin: 0 -1em 0 0;
  opacity: 0;
}

.et_pb_text_inner a:not(.et_pb_button)[href^="https://shop.hybridsupply"]:hover:before {
  margin: 0 0.25em 0 0;
  opacity: 1;
}
/* --------------- */

#et-main-area input,
#et-main-area textarea {
  transition: all 0.2s ease-out, border-color 1s;
}

#et-main-area label {
  display: block;
}

#et-main-area input[type="search"],
#et-main-area input[type="file"],
#et-main-area input[type="text"],
#et-main-area input[type="password"],
#et-main-area input[type="email"],
#et-main-area input[type="tel"],
#et-main-area input[type="url"],
#et-main-area input[type="date"],
#et-main-area input[type="month"],
#et-main-area textarea,
#et-main-area select,
#et-main-area div#cookie-content {
  width: 100%;
  max-width: 100%;
  padding: 0.5em 2em;

  border: 1px solid var(--color-border);;
  border-radius: var(--border-radius);

  color: #333;
  line-height: 1.7;
  font-size: 1em;
}

/* Fileupload */
#et-main-area input[type="file"] {
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #d9d9d9;
  border: 1px solid var(--color-border);
  padding: 1em 2em;
  width: initial;
}

#et-main-area select {
  transition: 0.25s all ease-in-out;
}
/*
#et-main-area input[type="search"]:empty,
#et-main-area input[type="text"]:empty,
#et-main-area input[type="password"]:empty,
#et-main-area input[type="email"]:empty,
#et-main-area input[type="tel"]:empty,
#et-main-area input[type="url"]:empty,
#et-main-area input[type="date"]:empty,
#et-main-area textarea:empty {
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
*/
#et-main-area input[type="search"]:focus,
#et-main-area input[type="text"]:focus,
#et-main-area input[type="password"]:focus,
#et-main-area input[type="email"]:focus,
#et-main-area input[type="tel"]:focus,
#et-main-area input[type="url"]:focus,
#et-main-area input[type="date"]:focus,
#et-main-area input[type="month"]:focus,
#et-main-area textarea:focus {
  background-color: #fff;
  padding: var(--padding-indent-focus);
}

/*
#et-main-area input[type="search"]:active,
#et-main-area input[type="text"]:active,
#et-main-area input[type="password"]:active,
#et-main-area input[type="email"]:active,
#et-main-area input[type="tel"]:active,
#et-main-area input[type="url"]:active,
#et-main-area input[type="date"]:active,
#et-main-area input[type="month"]:active,
#et-main-area textarea:active {
  color: #d9d9d9;
  color: var(--color-border);
}
*/
#et-main-area select:focus {
  padding-left: 0.25em;
  padding-right: 0.25em;

  border-color: rgba(0, 0, 0, 0.25);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
/*
#et-main-area input[type="search"]:invalid,
#et-main-area input[type="text"]:invalid,
#et-main-area input[type="password"]:invalid,
#et-main-area input[type="email"]:invalid,
#et-main-area input[type="tel"]:invalid,
#et-main-area input[type="url"]:invalid,
#et-main-area input[type="date"]:invalid,
#et-main-area textarea:invalid {
  border-bottom-color: #e02b20;
}
*/

#et-main-area ul.display-posts-listing {
  list-style-type: none;
}

#et-main-area ul.display-posts-listing li {
  line-height: 2.5;
}

#et-main-area input[type="submit"],
#et-main-area input[type="button"],
#et-main-area .wpas-btn,
#et-main-area ul.display-posts-listing li a {
  padding: 0.3em 1em;
  background-color: #f4f4f4;

  color: #555;
  color: var(--color-text);
  border-radius: 0.5rem;
  border-radius: var(--border-radius);
  border-width: 1px;
  border-style: solid;
  border-color: #d9d9d9;
  border-color: var(--color-border);
  border-bottom-color: rgba(0, 0, 0, 0.25);

  text-align: center;
  white-space: nowrap;
  cursor: pointer;
}

#et-main-area input[type="submit"]:hover,
#et-main-area input[type="submit"]:active,
#et-main-area input[type="submit"]:focus,
#et-main-area input[type="button"]:hover,
#et-main-area input[type="button"]:active,
#et-main-area input[type="button"]:focus,
#et-main-area .wpas-btn:hover,
#et-main-area .wpas-btn:active,
#et-main-area .wpas-btn:focus,
#et-main-area ul.display-posts-listing li a:hover,
#et-main-area ul.display-posts-listing li a:active,
#et-main-area ul.display-posts-listing li a:focus {
  color: #777;
  border-color: #d9d9d9;
  border-color: var(--color-border);
  background-color: #f9f9f9;
}

/* This can't be grouped */
#et-main-area input:-moz-read-only { color: #777; }
#et-main-area input:read-only { color: #777; }

/* Image: Overlay */
.et_overlay {
  border: 0;
}

/* Button */
.et_pb_button {
  transition: all 0.3s ease, background-position 0.3s 0.3s ease-out !important;

  display: inline-block;

  font-size: inherit;
  cursor: pointer;
  padding-bottom: calc(0.3em + var(--border-bottom_et_pb_button));
  color: inherit;

  border-width: 1px;
  border-color: #d9d9d9;
  border-color: var(--color-border);

  background-image:
    linear-gradient(90deg, var(--color-border) 50%, var(--color-green) 50%),
    linear-gradient(135deg, #f4f4f4, #fff);
  background-position:
    0% calc(-100% - var(--border-bottom_et_pb_button)),
    50% 50%;
  background-size: 200% 200%;
  background-color: #f4f4f4;
}

.et_pb_module .et_pb_button:hover,
.et_pb_button:hover {
  padding-bottom: calc(0.3em + var(--border-bottom_et_pb_button));

  border-color: #d9d9d9;
  border-color: var(--color-border);
  border-width: 1px;
  border-bottom-color: transparent;

  background-position:
    100% calc(-100% - var(--border-bottom_et_pb_button)),
    50% 50%;
  background-color: #f9f9f9;
}

.et_pb_module .et_pb_button:active {
  opacity: 0.5;
}

.et_pb_button.dark {
  border-color: transparent;
  color: #333;
}
/* */

/* Button Primary */
div.et_pb_module.primary .et_pb_button,
div.et_pb_module .et_pb_button.primary,
.et_pb_button.primary {
  padding-bottom: 0.3em;

  background-color: #82bb3f;
  background-image: linear-gradient(135deg, var(--color-green-alt), var(--color-green));
  background-position: initial;

  color: #f4f4f4;
  border: 0;

  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.075);
  text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.125);
}

div.et_pb_module.primary .et_pb_button::before,
div.et_pb_module.primary .et_pb_button::after,
div.et_pb_module .et_pb_button.primary::before,
div.et_pb_module .et_pb_button.primary::after,
.et_pb_button.primary::before,
.et_pb_button.primary::after {
  text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.125);
}

div.et_pb_module .et_pb_button.primary:hover,
.et_pb_button.primary:hover {
  background-color: var(--color-green);
  background-position: initial;
  border: 0;
}
/* */

/* Button Promo */
div.et_pb_module .et_pb_button.et_pb_promo_button,
.et_pb_button.et_pb_promo_button {
  padding-top: 0.5em;
  padding-bottom: calc(0.5em + var(--border-bottom_et_pb_button));
  font-size: 16px;
}
/* */

/* Button Promo Primary */
div.et_pb_module.primary .et_pb_button.et_pb_promo_button,
div.et_pb_module .et_pb_button.et_pb_promo_button.primary,
.et_pb_button.et_pb_promo_button.primary {
  padding-bottom: 0.5em;
}
/* */

/* Button Full Width */
.et_pb_promo_button.full {
  width: 100%;
  max-width: 100%;
  text-align: center;
}
/* */

/* Buttons with extra Icon */
a.et_pb_button.icon,
div.et_pb_module a.et_pb_button.icon,
div.et_pb_module.icon a.et_pb_button {
  padding-right: 0.7em;
  padding-left: 2.35em;
}
/* */

a.et_pb_button.icon::before,
div.et_pb_module a.et_pb_button.icon::before,
div.et_pb_module.icon a.et_pb_button::before {
  display: inline-block;
  font-family: 'ETmodules';
  opacity: 0.75;
  margin: 0.3em 0 0 -1.5em;
  font-size: 1.15em;
}

a.et_pb_button.icon:hover,
div.et_pb_module a.et_pb_button.icon:hover,
div.et_pb_module.icon a.et_pb_button:hover {
  padding-right: 2.35em;
  padding-left: 0.7em;
}

a.et_pb_button.icon:hover::before,
div.et_pb_module a.et_pb_button.icon:hover::before,
div.et_pb_module.icon a.et_pb_button:hover::before {
  opacity: 0;
  margin-left: 0;
}

div.et_pb_module.icon.download .et_pb_button::before,
.et_pb_button.download::before {
  content: '';
}

div.et_pb_module.icon.kontakt .et_pb_button::before,
.et_pb_button.icon.kontakt::before {
  content: '';
}

div.et_pb_module.icon.print .et_pb_button::before,
.et_pb_button.print::before {
  content: '';
}

div.et_pb_module.icon.cart .et_pb_button::before,
.et_pb_button.cart::before {
  content: '';
}
/* */

/* Button Promo with extra Icon */
div.et_pb_module.icon a.et_pb_button.et_pb_promo_button,
a.et_pb_button.et_pb_promo_button.icon {
  padding-right: 1.7em;
  padding-left: 3.2em;
}

div.et_pb_module.icon a.et_pb_button.et_pb_promo_button:hover,
a.et_pb_button.et_pb_promo_button.icon:hover {
  padding-right: 3.2em;
  padding-left: 1.7em;
}
/* */

.et_pb_module .et_pb_button.et_pb_promo_button {
  color: inherit;
}

div.et_pb_module.custom.et_pb_promo {
  overflow: visible;
}

.et_pb_button::after, .et_pb_button::before {
  font-size: 25px;
}

.et_pb_more_button {
  color: inherit !important;
}

.et_pb_button.custom {
  display: inline-block;
  font-size: 1em;
}

.et_pb_button::after {
  font-size: 1.5em;
  padding-left: 0.15em;
  line-height: 1.15;
}

.et_pb_button.custom.full {
  width: 100%;
  text-align: center;
}

.et_pb_button.light {
  padding-bottom: calc(0.3em + var(--border-bottom_et_pb_button-light));

  background-position:
    0% calc(-100% - var(--border-bottom_et_pb_button-light)),
    50% 50%;

  border-color: #f0f0f0;
}

.et_pb_button.light:hover {
  padding-bottom: calc(0.3em + var(--border-bottom_et_pb_button-light));

  background-position:
    100% calc(-100% - var(--border-bottom_et_pb_button-light)),
    50% 50%;
}
/* -------------- */

/* Tables */
.et_pb_module table {
    width: 100%;
    margin: 0 0 15px 0;
    border: 1px solid #eee;
    text-align: left;
}

.et_pb_module tr td {
    padding: 6px 24px;
    border-top: 1px solid #eee;
}

/* Section */
div.et_pb_section.et_pb_with_background.et_pb_inner_shadow:last-of-type {
  margin-bottom: 15vh;
}

@media print {
div.et_pb_section {
  padding: 0;
}

div#et-boc div.et_pb_section.et_pb_with_background {
  background: none !important;
  box-shadow: none;
}
}
/* -------------- */

/* Custom: Heading */
.et_pb_section .et_pb_row_inner.heading,
.et_pb_section.heading,
.et_pb_row.heading {
  padding-bottom: 0;
}

.et_pb_column_1_3 h2,
.et_pb_column_1_4 h2,
.et_pb_column_1_5 h2,
.et_pb_column_1_6 h2,
.et_pb_column_2_5 h2 {
    font-size: 1.75em;
}

/* Custom: Shadow */
.et_pb_module.shadow img {
  -webkit-filter: drop-shadow(calc(0.1vw + 0.1vh) calc(0.1vw + 0.1vh) calc(0.1vw + 0.1vh) #777);
  filter: drop-shadow(calc(0.1vw + 0.1vh) calc(0.1vw + 0.1vh) calc(0.1vw + 0.1vh) #777);
}



/* Custom: Row */
.et_pb_row.custom {
  transition: background-color 0.5s ease-in-out, background-position 2.5s 0.75s ease-in-out, border 0.5s, border-bottom 0.5s, box-shadow 0.5s;

  padding: 100px;
  background-position: 50% 50%;
  overflow: hidden;
  cursor: default;
}

.et_pb_row.custom h1 {
  font-size: 3em;
  font-weight: 300;
  border-bottom: 1px solid #555;
  border-bottom: 1px solid var(--color-text);
}

/* Animation */
@keyframes imagepan {
  0% {
    background-position: 50% 50%;
  }

  33% {
    background-position: 50% 100%;
  }

  66% {
    background-position: 50% 0%;
  }

  100% {
    background-position: 50% 50%;
  }
}

.et_pb_row.custom:hover {
  cursor: default;
  background-color: #000;
  /* background-position: 50% 55%; */
  animation: imagepan 10s infinite normal;
}

.et_pb_row.custom:not(.nofade) > div > div {
  transition: all 1s var(--transition-bounce);
  position: relative;
  top: 0px;
}

.et_pb_row.custom:not(.nofade):hover > div > div:first-of-type {
  top: -100px;
  opacity: 0;
}

.et_pb_row.custom:not(.nofade):hover > div > div:last-of-type {
  top: 100px;
  opacity: 0;
}

/* IE10 & IE11 */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.et_pb_row.custom {
  background: none;
  padding: 0;
  border: 0;
}

.et_pb_row.custom:hover {
  background-color: #fff;
}

.et_pb_row.custom:not(.nofade):hover > div > div:first-of-type {
  top: 0px;
  opacity: 1;
}

.et_pb_row.custom:not(.nofade):hover > div > div:last-of-type {
  top: 0px;
  opacity: 1;
}
}
/* */

@media print {
  .et_pb_row {
    width: 100%;
    padding: 0;
  }

  .et_pb_row.custom {
    padding: 0 !important;
    background: none;
    border: 0;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .container,
  .et_pb_row {
    width: 90%;
  }
}
/* ----------- */



/* Custom: Slider */
.et_pb_slide {
  padding: 0;
}

.et_pb_slide_description .et_pb_slide_title {
  font-size: 41px;
}

.et_pb_slider.custom .et_pb_slides .et_pb_slide {
  transition: all 0.75s ease-in-out;
}

.et_pb_slider.custom:hover .et_pb_slides .et_pb_slide {
  background-color: rgba(255, 255, 255, 0);
}

/* Custom: Promo */
.et_pb_promo.custom .et_pb_button {
  padding: 0.5em 2em calc(0.5em + var(--border-bottom_et_pb_button)) 2em;
}

.et_pb_promo.custom .et_pb_button.light {
  padding: 0.5em 2em calc(0.5em + var(--border-bottom_et_pb_button-light)) 2em;
}

.et_pb_promo.custom .et_pb_button:hover {
  padding: 0.5em 2.5em calc(0.5em + var(--border-bottom_et_pb_button)) 1.5em;

  background-color: #f9f9f9;
}

.et_pb_promo.custom .et_pb_button.light:hover {
  padding: 0.5em 2.5em calc(0.5em + var(--border-bottom_et_pb_button-light)) 1.5em;
}

/* Custom: List */
.et_pb_module.list ol,
.et_pb_module.list ul {
  margin-left: 1.25em;
}


/* Tablet */
@media (max-width: 1024px) {
  .et_pb_row.custom {
    padding: 7.5vh 10vw;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .et_pb_row.full,
  .et_pb_section:not(.padding-top):first-of-type {
    padding: 0;
    margin: 0;
    width: 100%;
  }

  .et_pb_row.custom {
    width: 100%;
    padding: 5vh 5vw;
  }

  .et_pb_row.custom p {
    font-size: 0.95em;
    line-height: 1.5;
  }
}
/* ----------- */

/* Color */
span.color {
  border: 1px solid #555;
  border: 1px solid var(--color-text);
  border-radius: 50%;
  display: inline-block;
  width: 2em;
  height: 2em;
  vertical-align: middle;
  margin-right: 0.5em;
}

span.color.red { background-color: red; }
span.color.brown { background-color: brown; }
span.color.yellow { background-color: yellow; }
span.color.green { background-color: green; }
span.color.black { background-color: black; }
span.color.white { background-color: white; }
span.color.grey { background-color: grey; }
span.color.blue { background-color: blue; }
span.color.gold { background-color: gold; }
span.color.violet { background-color: violet; }


/* Custom: Slider */
.et-pb-arrow-next, .et-pb-arrow-prev {
  color: #333 !important;
  -webkit-filter: drop-shadow(calc(0.1vw + 0.1vh) calc(0.1vw + 0.1vh) calc(0.1vw + 0.1vh) #000);
  filter: drop-shadow(0 0 0.05rem #000);
}
/* -------------- */


/* Custom: Image */
.et_pb_image.preview img {
    max-height: 25vh;
}

.percent-value {
  text-shadow: 0.01em 0.02em 0.01em rgba(0, 0, 0, 0.5);
  white-space: nowrap;
}


/* ---- -*/
/* Posts */
/* ----- */

/* 404 Page */
article#post-0.et_pb_post {
  margin: 60px auto;
}

article#post-0.et_pb_post div.entry {
  min-height: 25vh;
}
/* */

div#left-area article.et_pb_post.post div.entry-content div.et_pb_section {
  padding: 0;
}

div#left-area article.et_pb_post.post a.entry-featured-image-url {
  margin: -2em -2em 0 -2em;
}

div#left-area article.et_pb_post.post a.entry-featured-image-url + h2 {
  padding-top: 1.5em;
}

div#left-area article.et_pb_post.post p a.more-link {
  margin-top: 1.5em;
}




/* ---------------------- */
/* Plugin: Contact Form 7 */
/* ---------------------- */
label.required::before {
  content: '*';
  margin: 0 0.25em 0 0;
  color: var(--color-green);
}

label + p {
  font-size: 10pt;
  opacity: 0.75;
}

div.nomargin span.wpcf7-list-item {
  margin: 0;
}

span.wpcf7-list-item label {
  cursor: pointer;
}

span.wpcf7-list-item label input {
  display: none;
}

span.wpcf7-list-item label input + span::before {
  font-family: ETmodules;
  margin: 0 0.25em 0 0;
  content: 'V';
  vertical-align: bottom;
  font-size: 1.5em;
}

span.wpcf7-list-item label input:checked + span::before {
  content: 'Z';
}

span.wpcf7-list-item:hover {
  color: #777;
}

div.wpcf7-mail-sent-ok {
  border: 2px solid var(--color-green);
}

div.wpcf7 .spaced { padding: 1em 0; }
div.wpcf7 .spaced-top { padding: 1em 0 0 0; }
div.wpcf7 .spaced-bottom { padding: 0 0 1em 0; }

div.wpcf7 .spaced-3x { padding: 3em 0; }
div.wpcf7 .spaced-3x-bottom { padding: 0 0 3em 0; }

span.wpcf7-form-control-wrap span.wpcf7-form-control span.wpcf7-list-item.last label {
  margin-bottom: 1em;
}

/*
div.wpcf7-response-output {
  margin: 0;
}
*/
/* Plugin: Contact Form 7 > Honeypot */
div.cf7-custom-fields,
span.wpcf7-form-control-wrap.accept-968-wrap,
span.wpcf7-form-control-wrap.email-324-wrap,
span.wpcf7-form-control-wrap.comment-324-wrap {
  position: absolute;
  z-index: -1;
  left: -1000vw;
}
/* */


/* Plugin: Contact Form 7 > R115/EAB Bestellung */
.steps {
  counter-reset: currentstep;
}

.steps span:last-of-type input {
  margin: 0;
}

.steps .step {
  background-color: #f4f4f4;
  padding: calc(2vw + 2vh);
}

.steps .step.version {
  display: inline-block;
  float: right;
  padding: calc(0.2vw + 0.2vh) calc(2vw + 2vh);
}

.steps .step.version p {
  font-size: 0.8em;
}

.steps .step input {
  margin: 0 0 0.5em 0;
}

.steps .step h3 + p {
  border-bottom: 1px solid #d9d9d9;
  border-bottom: 1px solid var(--color-border);
  padding-bottom: 0.5rem;
  margin-bottom: 3rem;
}

.steps .step .question {
  margin: 1em 0 2em 0;
}

.steps .step .question:last-of-type {
  margin: 1em 0 0 0;
}

.steps .step .question a.help-link + span.wpcf7-form-control-wrap input {
  margin: 0 0 1.25em 0;
}

.steps .step .question > label {
  font-weight: 600;
  margin: 0 0 0.5em 0;
}

.steps .step .question > label::before {
  transition: 0.5s all var(--transition-bounce);

  counter-increment: currentstep;
  content: counter(currentstep);

  background-color: #555;
  background-color: var(--color-text);
  border-radius: 50%;

  display: inline-block;
  width: 2em;
  height: 2em;

  text-align: center;
  position: absolute;
  left: -1.0em;
  color: #fff;

  line-height: 2;
  margin: -0.30em 0 0 0;
}

.steps .step .question:hover label::before {
  width: 2.5em;
  height: 2.5em;
  line-height: 2.55;
  left: -1.25em;
  margin: -0.55em 0 0 0;
  background-color: var(--color-green);
}

.steps .step .question a.help-link {
  color: inherit;
  margin: 0 0 0 2em;
  text-decoration: underline dotted #555;
  text-decoration: underline dotted var(--color-text);
}

.steps .step .question a.help-link:hover {
  color: var(--color-green);
  text-decoration-color: var(--color-green);
}


/* Tablet */
@media (max-width: 1024px) {

}

/* Mobile */
@media (max-width: 768px) {
  .steps .step .question label::before {
    display: none;
  }

  .steps .step {
    background-color: unset;
    padding: 0;
    border: 0;
    border-radius: 0;
  }
}
/* */

/* Plugin: Contact Form 7 > Report */
input[type="submit"].nobutton {
  padding: 0;
  background-color: unset;
  color: inherit;
  border: 0;
  border-radius: initial;

  font-size: inherit;
  text-align: inherit;
  text-decoration: underline;
  text-decoration-style: dotted;
  text-decoration-color: inherit;
}

/* Plugin: Contact Form 7 > Newsletter Anmeldung */
div#newsletter-anmeldung span.wpcf7-list-item {
  display: block;
}
/* */

/* Plugin: Contact Form 7 > SEPA-Lastschriftmandat */
form.wpcf7-form div.field_row {
  display: flex;
  justify-content: space-between;
  margin: -1em;
}

form.wpcf7-form div.field_row > * {
  flex: 1 1 50%;
  margin: 1em !important;
}

form.wpcf7-form div.field_group {
  margin: 1.5em 0 1em 0;
}

form.wpcf7-form div.field_group span.wpcf7-acceptance span.wpcf7-list-item,
form.wpcf7-form div.field_group span.wpcf7-list-item.first {
  margin: 0;
}

form.wpcf7-form div.field_group.block span.wpcf7-acceptance span.wpcf7-list-item,
form.wpcf7-form div.field_group.block span.wpcf7-list-item {
  margin: 0;
  display: block;
}

form.wpcf7-form div.signature_group {
  display: flex;
  justify-content: space-between;
  margin: 2em -1em -1em -1em;
}

form.wpcf7-form div.signature_group > div {
  border-top: 1px solid #d9d9d9;
  flex: 1 1 auto;
  margin: 1em;
  font-size: 10pt;
}
/* */


/* --------------------- */
/* Plugin: Display Posts */
/* --------------------- */
div.display-posts-listing {
  display: grid;
  grid-gap: 1em;
  grid-template-columns: repeat(1, 1fr);
  grid-auto-rows: auto;
  align-items: start;
}

div.display-posts-listing.stretch,
div.display-posts-listing.compact {
  align-items: stretch;
}

div.display-posts-listing.col-2 {
  grid-template-columns: repeat(2, 1fr);
}

div.display-posts-listing.col-3 {
  grid-template-columns: repeat(3, 1fr);
}

div.display-posts-listing div.listing-item {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: max-content 1fr;
  grid-auto-rows: auto;
  grid-gap: 1em;
  padding: 1em;
}

div.display-posts-listing.compact div.listing-item {
  grid-template-rows: max-content;
}

div.display-posts-listing.col-2 div.listing-item,
div.display-posts-listing.col-3 div.listing-item {
  grid-template-columns: repeat(1, 1fr);
}

div.display-posts-listing.col-2 div.listing-item {
  grid-template-rows: repeat(1, max-content);
}

div.display-posts-listing.col-3 div.listing-item {
  grid-template-rows: max-content auto max-content;
}

div.display-posts-listing div.listing-item a.image {
  grid-row: 1/3;
  align-self: center;
  justify-self: center;

  min-width: 270px;
  min-height: 180px;
  margin: -1em 0 -1em -1em;

  position: relative;

  display: flex;
  align-items: center;
  justify-content: center;
}

div.display-posts-listing div.listing-item a.image img {
  vertical-align: bottom;
}

div.display-posts-listing div.listing-item a.image img[alt=""] {

}

div.display-posts-listing.compact div.listing-item a.image {
  grid-row: 1/2;
}

div.display-posts-listing.col-2 div.listing-item a.image,
div.display-posts-listing.col-3 div.listing-item a.image {
  grid-row: 1/2;

  margin: -1em -1em 0 -1em;
}

div.display-posts-listing div.listing-item a.title {
  grid-column: 2/4;
  align-self: baseline;

  color: #555;
  font-size: 1.5rem;
  line-height: 1.3;
}

div.display-posts-listing.compact div.listing-item a.title {
  font-size: 1.25rem;
}


div.display-posts-listing.col-2 div.listing-item a.title,
div.display-posts-listing.col-3 div.listing-item a.title {
  grid-column: 1/2;
}

div.display-posts-listing div.listing-item span.excerpt {
  grid-row: 2/3;
  grid-column: 2/4;

  display: flex;
  justify-content: space-between;
  flex-flow: column;
  align-items: baseline;
}

div.display-posts-listing.compact div.listing-item span.excerpt {
  display: none;
}

div.display-posts-listing.col-2 div.listing-item span.excerpt,
div.display-posts-listing.col-3 div.listing-item span.excerpt {
  grid-row: 3/4;
  grid-column: 1/2;

  background-color: #f4f4f4;
  padding: 1em;
  margin: 0 -1em -1em -1em;
  border-top: 1px dashed #d9d9d9;
}

div.display-posts-listing div.listing-item span.excerpt a {
  margin-top: 1em;
}

/* Tablet */
@media (max-width: 1024px) {
  div.display-posts-listing,
  div.display-posts-listing.col-2,
  div.display-posts-listing.col-3 {
    grid-template-columns: repeat(2, 1fr);
  }

  div.display-posts-listing div.listing-item {
    grid-template-columns: 1fr;
    grid-template-rows: max-content auto max-content;
  }

  div.display-posts-listing div.listing-item a.image {
    grid-row: 1/2;

    margin: -1em -1em 0 -1em;
  }

  div.display-posts-listing div.listing-item a.title {
    grid-column: 1/2;
    grid-row: 2/3;
  }

  div.display-posts-listing div.listing-item span.excerpt {
    grid-row: 3/4;
    grid-column: 1/2;
  }
}

/* Mobile */
@media (max-width: 768px) {
  div.display-posts-listing,
  div.display-posts-listing.col-2,
  div.display-posts-listing.col-3 {
    grid-template-columns: repeat(1, 1fr);
  }

  div.display-posts-listing div.listing-item {
    grid-template-rows: max-content auto max-content;
  }
}

/**
 * Breadcrumbs
 */
#breadcrumbs {
  --colourLight: #bbb;

  font-size: 0.8em;

  background-color: #d9d9d9;
}

#breadcrumbs .et_pb_row,
#breadcrumbs #et-boc .et_pb_row {
  padding: 0.4em;
}

#breadcrumbs a {
  color: inherit;

  text-decoration: underline dotted var(--colourLight);
}

#breadcrumbs .breadcrumbs__separator {
  color: var(--colourLight);
}


/* ----------------------- */
/* WPML Message */
/* ----------------------- */
div#wpml_message {
  transition: top 0.4s ease-in-out, box-shadow 0.4s ease-in-out;

  position: sticky;
  top: 80px;

  width: 100%;
  max-width: 100%;
  padding: 0;

  z-index: 10;
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  background-color: rgba(200, 200, 200, 0.2);
  backdrop-filter: blur(4px);
}

header#main-header.et-fixed-header + div#et-main-area div#wpml_message {
  top: 54px;
  box-shadow: 0 0 8px rgba(200, 200, 200, 0.8);
}

body.admin-bar header#main-header.et-fixed-header + div#et-main-area div#wpml_message {
  top: 86px;
}

div#wpml_message div {
  display: block;

  padding: 1.2em 0;
  font-size: calc(0.8em + 0.16vw);
}

div#wpml_message div a {
  margin: 0 0.1em;
  padding: 0.4em 0.8em;

  color: inherit;
  white-space: nowrap;
  border: 1px solid #fff;
  border-radius: var(--border-radius);
  background-color: rgba(255,255,255,0.8);
  box-shadow: 0 0 1px rgb(100, 100, 100);
}

div#wpml_message div a img {
  vertical-align: baseline;
  max-height: 1em;
}


/* Mobile */
@media (max-width: 768px) {
  div#wpml_message div {
    padding: 0.8em 0;
  }
}


/* Divi */
@media (max-width: 980px) {
  header#main-header.et-fixed-header + div#et-main-area div#wpml_message {
    top: 0;
  }
}

a.large {
  display: block;
  max-width: 512px;

  padding: 1em;

  color: inherit;
  border: 1px solid #d9d9d9;
  font-size: 16pt;
}

a.large[href]::after {
  transition: opacity 0.4s ease;

  position: absolute;
  right: 1em;

  font-family: 'ETmodules';
  font-size: 1.2em;
  opacity: 0.2;
}

a.large[href^="#"]::after {
  content: '';
}

a.large[href]:hover::after {
  opacity: 1;
}