/*!
Theme Name: Avenir
Theme URI: http://underscores.me/
Author: Avenir
Author URI: https://www.avenirgroup.ch
Description: Wordpress Theme für den Website-Launch 2019.
Version: 1.0.0
Text Domain: avenir

Avenir is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
@ NORMALIZE
# BASE
	# Typography
	# Links
	# Backgrounds
	# Clearings
	# Alignments
	# Forms
	# Lists
	# Captions
# LAYOUT
    # Header
    # Content
    	## Header
    	## Section
    # Footer
# MODULES
	# Recurring
	    ## Contact
	    ## Content Hub
	    	### Metabox
    # Pages
        ## Home
        ## Geschaeftsfeld / Dienstleistung
        ## Wissen (Content Hub)
        ## Team [Page]
        ## Team [Single]
        ## Kontakt
        ## Datenschutz
	# Plugins
		## insites-cookie-consent
--------------------------------------------------------------*/

/*==============================================================
@ NORMALIZE
================================================================*/

/* normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 1em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/*==============================================================
# BASE
==============================================================*/

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  /* Fallback for when there is no custom background color defined. */
  background: #fff;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */
}

table {
  width: 100%;
}

embed,
iframe,
object {
  /* Make sure embeds and iframes fit their containers. */
  max-width: 100%;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
@font-face {
  font-family: "Avenir";
  src: url("./fonts/Avenir-Book.woff2") format("woff2"),
    url("./fonts/Avenir-Book.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: "Avenir";
  src: url("./fonts/Avenir-Roman.woff2") format("woff2"),
    url("./fonts/Avenir-Roman.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "Avenir";
  src: url("./fonts/Avenir-Medium.woff2") format("woff2"),
    url("./fonts/Avenir-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: "Avenir";
  src: url("./fonts/Avenir-Heavy.woff2") format("woff2"),
    url("./fonts/Avenir-Heavy.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}

body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: "Avenir", "Helvetica Neue", Helvetica, "Segoe UI", Arial,
    freesans, sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}

h3 {
  margin-top: 2em;
  font-size: 2em;
}

h4 {
  margin-top: 2.25rem;
  margin-bottom: 0.75rem;
  font-size: 1.125rem;
  line-height: 1.75rem;
}

p {
  margin: 0 0 0.75rem 0;
  line-height: 1.625rem;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

pre {
  background: #eee;
  font-family: "Courier New", Courier, monospace;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: Consolas, Monaco, "Andale Mono", monospace;
  font-size: 0.9375rem;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/*--------------------------------------------------------------
# Links
--------------------------------------------------------------*/
a {
  color: #404040;
  text-decoration: none;
}

a.button,
input.button {
  display: inline-block;
  padding: 0.875em 1.5em;
  background-color: #cfd627;
  border: none;
  color: #fff;
  font-family: inherit;
  font-size: 0.875em;
  letter-spacing: 0.063em;
  text-transform: uppercase;
}

a.button:hover {
  border: none;
  background-color: #a4aa21;
  transition: background-color 0.2s linear;
}

main a {
  border-bottom: 2px dotted #e3e691;
  padding-bottom: 1px;
}

main a:hover {
  border-bottom: 2px solid #cfd627;
  color: #000;
}

html {
  font-size: 100%;
}

/*--------------------------------------------------------------
# Images
--------------------------------------------------------------*/
img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
  display: block;
  /* Make surrounding container same height as image */
}

/* Litespeed: Before Lazy Load */
img[data-lazyloaded] {
  opacity: 0;
}

/* Litespeed: Upon Lazy Load */
img.litespeed-loaded {
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  opacity: 1;
}

/*--------------------------------------------------------------
# Backgrounds
--------------------------------------------------------------*/
.bg-grn {
  background-color: rgb(207, 214, 39);
}

.bg-grn80 {
  background-color: rgb(217, 222, 99);
}

.bg-grn60 {
  background-color: rgb(227, 230, 145);
}

.bg-grn40 {
  background-color: rgb(236, 239, 186);
}

.bg-grn20 {
  background-color: rgb(246, 247, 223);
}

.bg-gry {
  background-color: rgb(192, 192, 192);
}

.bg-gry80 {
  background-color: rgb(204, 204, 204);
}

.bg-gry60 {
  background-color: rgb(220, 220, 220);
}

.bg-gry40 {
  background-color: rgb(230, 230, 230);
}

.bg-gry20 {
  background-color: rgb(244, 244, 244);
}

.bg-gry20-dots-gry60 {
  background: linear-gradient(90deg, rgb(244, 244, 244) 47px, transparent 1%)
      center,
    linear-gradient(rgb(244, 244, 244) 47px, transparent 1%) center,
    rgb(220, 220, 220);
  background-size: 50px 50px;
  background-position: 3px 3px;
}

.bg-wht-dots-grn {
  background: linear-gradient(90deg, white 29px, transparent 1%) center,
    linear-gradient(white 29px, transparent 1%) center, rgb(207, 214, 39);
  background-size: 32px 32px;
  background-position: 3px 3px;
}

.bg-wht-dots-grn60 {
  background: linear-gradient(90deg, white 60px, transparent 1%) center,
    linear-gradient(white 60px, transparent 1%) center, rgb(227, 230, 145);
  background-size: 63px 63px;
  background-position: 3px 3px;
}

.top-arc {
  clip-path: circle(5400px at 50% 5400px);
}

@supports (-ms-ime-align: auto) {
  /* IE10+ CSS styles go here */
  .top-arc {
    border-top: 10px solid rgb(244, 244, 244);
    border-top-left-radius: 50% 80px;
    border-top-right-radius: 50% 80px;
  }
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.hidden {
  display: none;
}

.alignright {
  float: right;
}

.alignleft {
  float: left;
}

.aligncenter,
.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

img.alignright {
  float: right;
  margin: 0 0 1em 1em;
}

img.alignleft {
  float: left;
  margin: 0 1em 1em 0;
}

img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 0;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  font-size: 0.75rem;
  line-height: 0.875rem;
  padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Lists
--------------------------------------------------------------*/
ul,
ol {
  margin: 0;
}

ul {
  list-style: square;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

ul.inline {
  display: inline-block;
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.inline li {
  display: inline-block;
}

ul.inline li:after {
  content: " , ";
}

ul.inline li:last-child:after {
  content: "";
}

/*--------------------------------------------------------------
# Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*==============================================================
# LAYOUT
==============================================================*/

html {
  overflow-y: scroll;
  box-sizing: border-box;
  font-size: 100%;
}

#page {
  position: relative;
  max-width: 90rem;
  /* 1440px */
  margin: 0 auto;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
header#masthead {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 100;
}

header#masthead .nav-wrapper {
  display: flex;
  height: 4rem;
  margin: 1.25rem 10% 0;
  background-color: #fff;
  box-shadow: 2px 5px 15px rgba(0, 0, 0, 0.1);
}

#site-logo {
  width: 11.25rem;
  padding: 1rem 2rem;
}

#site-logo img {
  width: 100%;
}

#site-navigation {
  position: relative;
  flex-grow: 1;
  margin-left: 2rem;
}

/* Level 1 */
#site-navigation ul {
  /* nav .primary-menu */
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
  background-color: #fff;
}

#site-navigation ul li {
  position: relative;
  float: left;
  font-size: 0.875rem;
  line-height: 4rem;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
  user-select: none;
}

#site-navigation ul#primary-menu > li:not(:last-child) {
  margin-right: 2.5rem;
}

#site-navigation ul li a {
  display: inline-block;
  text-decoration: none;
}

#site-navigation ul li a:hover {
  color: #cfd627;
}

#site-navigation ul#primary-menu > li.menu-item-has-children > a:hover {
  cursor: default;
  color: black;
}

/* Level 2 */
#site-navigation ul ul {
  position: absolute;
  z-index: 100;
  left: -999em;
  padding: 1.25rem 2rem;
  border-top: 0.375rem solid transparent;
  background-clip: padding-box;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

#site-navigation ul li:hover > ul,
#site-navigation ul li.focus > ul {
  left: -2.5rem;
}

#site-navigation ul ul li {
  float: none;
  margin: 0.5rem 0;
  line-height: normal;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
}

#site-navigation ul ul li > a {
  padding: 0.375rem 0.5rem;
}

/* Level 3 / Leistungen */
#site-navigation li.leistungen {
  position: static;
}

#site-navigation li.leistungen > ul {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: flex-start;
  width: calc(100% + 2.5rem + 127px);
  max-width: 61.25rem;
  height: 37rem;
}

#site-navigation li.leistungen > ul > li {
  max-width: 13.75rem;
  letter-spacing: 2px;
  text-transform: uppercase;
}

#site-navigation li.leistungen > ul > li:not(:last-child) {
  margin-right: 2.5rem;
  margin-bottom: 2.0625rem;
}

#site-navigation li.leistungen > ul > li:nth-child(5) {
  margin-bottom: 0;
}

#site-navigation li.leistungen > ul > li > a {
  margin-bottom: 0.5rem;
}

#site-navigation li.leistungen ul ul {
  position: static;
  padding: 0;
  box-shadow: none;
  border: none;
}

#site-navigation li.leistungen ul ul li {
  margin: 0.25rem 0;
  letter-spacing: normal;
  text-transform: none;
  white-space: normal;
}

#site-navigation li.leistungen ul ul li a {
  line-height: 1.375rem;
}

/* Nav Menu Widgets */
#site-navigation .menu-item-type-yawp_wim {
  margin-bottom: 1.5rem !important;
}

#site-navigation .avenir_navmenu_widget .svg-wrapper {
  margin-bottom: 0.5rem;
}

#site-navigation .avenir_navmenu_widget .svg-wrapper svg {
  height: auto;
}

#site-navigation .avenir_navmenu_widget a:hover .svg-wrapper svg {
  fill: #cfd627 !important;
}

#site-navigation .avenir_navmenu_widget .text {
  line-height: 1.375rem;
  text-transform: none;
  letter-spacing: normal;
  white-space: normal;
}

#site-navright {
  display: flex;
  align-items: center;
  margin-right: 1rem;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Header
--------------------------------------------------------------*/
.page-header .header-img,
.entry-header .header-img {
  width: 100%;
  min-height: 7rem;
  background-color: #e3e691;
  opacity: 0.85;
}

.page-header .header-img img,
.entry-header .header-img img {
  width: 1440px;
  height: 475px;
  object-fit: cover;
}

.page-header .header-img.grn-overlay img,
.entry-header .header-img.grn-overlay img {
  mix-blend-mode: multiply;
  opacity: 0.6;
}

.page-header .entry-title,
.entry-header .entry-title {
  padding: 0 10%;
  margin: 7rem 0 3.5rem;
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.25;
}

/*--------------------------------------------------------------
## Intro
--------------------------------------------------------------*/
.entry-content .intro {
  font-size: 1.375rem;
  font-weight: 300;
  line-height: 2.5rem;
}

.entry-content .intro-tagline {
  display: flex;
  margin-bottom: 4rem;
}

.entry-content .intro-tagline .content {
  width: 60%;
}

.entry-content .intro-tagline .content p {
  margin: 0 0 0.75rem;
  line-height: inherit;
}

.entry-content .intro-tagline .tagline {
  width: 21rem;
  height: 100%;
  padding-bottom: 2.5rem;
  margin: 1rem 0 auto auto;
  background-image: url("./img/arc.svg");
  background-size: 11.25rem;
  background-repeat: no-repeat;
  background-position: bottom;
  text-align: center;
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 2.688rem;
  text-transform: uppercase;
  letter-spacing: 0.063rem;
}

/*--------------------------------------------------------------
## Section
--------------------------------------------------------------*/
main section {
  padding: 0 10%;
  margin-bottom: 5rem;
}

main section:last-child {
  margin-bottom: 7rem;
}

.arc-heading {
  padding-bottom: 0.75rem;
  margin: 0;
  margin-bottom: 2.5rem;
  background-image: url("./img/arc.svg");
  background-size: 5rem;
  background-repeat: no-repeat;
  background-position: left bottom;
  color: #7c7c7c;
  font-size: 1.525rem;
  font-weight: 500;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
}

.bg-left {
  position: absolute;
  top: 0;
  left: 0;
  height: 50%;
  width: 15%;
}

.bg-right {
  position: absolute;
  right: 0;
  bottom: 0;
  height: 50%;
  width: 15%;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Newsletter
--------------------------------------------------------------*/
footer .newsletter {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 90%;
  padding: 2rem 4.5rem;
  margin: 0 5%;
  height: 10rem;
  color: white;
}

footer .newsletter p,
footer .newsletter .heading {
  margin: 0;
}

footer .newsletter .heading {
  font-size: 1.5rem;
  font-weight: 800;
  margin-bottom: 0.5rem;
}

footer .newsletter .textwidget {
  width: 60%;
  line-height: 1.75rem;
  margin-right: 2rem;
}

footer .newsletter form {
  display: table;
  width: calc(40% - 2rem);
  height: 100%;
}

footer .newsletter form > * {
  display: table-cell;
  vertical-align: middle;
}

footer .newsletter p.notification {
  margin-bottom: 1.25rem;
}

footer .newsletter p.notification.error {
  display: table-row;
}

footer .newsletter p:nth-last-child(2) {
  width: 100%;
  padding-right: 0.5rem;
}

footer .newsletter input {
  float: left;
  height: 3rem;
  padding: 1rem 1.25rem;
  font-size: 0.875rem;
  outline-color: #808500;
}

footer .newsletter input[type="email"] {
  width: 100%;
  border: 0;
  border-radius: 0;
}

footer .newsletter input[type="email"]::placeholder {
  color: #bbbaba;
}

footer .newsletter input[type="submit"] {
  border: 1px solid white;
  background-color: transparent;
  color: white;
  text-transform: uppercase;
  letter-spacing: 0.063em;
}

footer .newsletter input[type="submit"]:hover {
  cursor: pointer;
  background-color: #cfd627;
}

/*--------------------------------------------------------------
## Bottom
--------------------------------------------------------------*/
footer .bottom {
  display: flex;
  position: absolute;
  z-index: -10;
  width: 100%;
  height: 21.75rem;
  padding: 6.125rem 10% 3rem;
  margin: 0;
  margin-top: -2.5rem;
  background-color: #4d4d4d;
  font-weight: 300;
  font-size: 0.875rem;
  color: #c0c0c0;
}

footer .bottom > div {
  line-height: 2.125rem;
  letter-spacing: 0.03125rem;
}

footer .bottom .nav-heading {
  text-transform: uppercase;
  margin-bottom: 1.5rem;
  letter-spacing: 0.1875rem;
  line-height: 0.875rem;
}

footer .bottom ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

footer .bottom a {
  color: #c0c0c0;
}

footer .bottom a:hover {
  color: #cfd627;
}

footer .bottom .footer-1 {
  position: relative;
  max-width: 20%;
  line-height: 1.5rem;
}

footer .bottom .footer-1 img {
  width: 7.25rem;
  margin-bottom: 1.875rem;
}

footer .bottom .footer-1 img:hover {
  width: 7.25rem;
  margin-bottom: 1.875rem;
}

footer .bottom .footer-1 .slogan {
  margin-bottom: 1rem;
  min-width: 230px;
}

footer .bottom .footer-1 .contact {
  position: absolute;
  bottom: 0;
  left: 0;
}

footer .bottom .wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  width: 100%;
}

footer .bottom .wrapper > div:not(:first-child):not(:last-child) {
  margin-left: 9%;
}

footer .bottom .footer-6 {
  position: absolute;
  bottom: 2.875rem;
  font-size: 0.75rem;
  line-height: 1.5rem;
}

footer .bottom .footer-6 p {
  margin: 0;
}

/*==============================================================
# MODULES
==============================================================*/

/*--------------------------------------------------------------
# Recurring
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Cards
--------------------------------------------------------------*/
.cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
  margin: 0;
  list-style: none;
}

.cards.cols-2 li {
  width: 48.4375%;
  /* 558px */
}

.cards.cols-3 li {
  width: 31.25%;
  /* 360px */
}

.cards.cols-4 li {
  width: 22.396%;
  /* 258px */
}

.cards li.ghost {
  margin: 0 !important;
}

.cards li > a {
  border-bottom: 0;
  padding-bottom: 0;
}

.cards .thumbnail {
  position: relative;
  background-color: rgb(250, 250, 250);
}

.cards .thumbnail.no-thumb {
  padding-bottom: 66.666666%;
  background-color: #ecefba;
  background-image: url("./img/logo-overlay.svg");
  background-position: center;
  background-size: 50%;
  background-repeat: no-repeat;
}

.cards .thumbnail.video:before {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  background-image: url("img/play.svg");
  background-size: 17%;
  background-position: center 40%;
  background-repeat: no-repeat;
  opacity: 0.8;
  transition: opacity 0.2s linear;
}

.cards .thumbnail:hover.video:before,
.cards .overlay:hover ~ .thumbnail.video:before {
  opacity: 1;
  transition: opacity 0.2s linear;
}

.cards .overlay {
  position: relative;
  margin: -10% 5% 0;
  background-color: white;
  box-shadow: 0 0.125rem 1rem rgba(0, 0, 0, 0.075);
}

.cards .inner {
  padding: 8% 10%;
}

.cards .more {
  display: block;
  width: 100%;
  padding: 0.5rem 10% 8%;
  margin-top: 1.5rem;
  border-bottom: 0;
  color: #cfd627;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.063em;
  text-transform: uppercase;
}

.cards .more.video {
  padding-left: calc(10% + 2.25rem);
  background-image: url("./img/video.svg");
  background-repeat: no-repeat;
  background-position: 10% 0.4375rem;
  background-size: 1.75rem;
  line-height: 1.75rem;
}

.cards .border {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.375rem;
  background-color: white;
}

.cards li > a:hover .border,
.cards a.more:hover ~ .border {
  border-bottom: 0.375rem solid #cfd627;
  transition: border-bottom-width 0.2s linear;
}

/*--------------------------------------------------------------
## Contact
--------------------------------------------------------------*/
.contact-team {
  padding: 5rem 10%;
  background-position: -3px 0px;
}

.contact-team .cards.two {
  justify-content: space-around;
}

.contact-team .cards.two li {
  width: 36.45833333%;
}

.contact-team .cards .title {
  font-size: 1.625rem;
  font-weight: 400;
  line-height: 2.25rem;
}

.contact-team .cards .role {
  height: 3.5rem;
  font-size: 0.875rem;
  line-height: 1.5rem;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
  color: #7c7c7c;
}

.contact-team .cards .link:not(:last-child) {
  margin-bottom: 0.625rem;
}

.contact-team .cards .link.email .short {
  display: none;
}

/*--------------------------------------------------------------
## Content Hub
--------------------------------------------------------------*/
.contenthub .arc-heading span {
  white-space: nowrap;
}

.contenthub .arc-heading span {
  white-space: nowrap;
}

.contenthub .cards li {
  position: relative;
}

.contenthub .cards .event-date-flag {
  position: absolute;
  z-index: 5;
  top: -0.75rem;
  right: 5%;
  width: 4rem;
  height: 5rem;
  padding: 0.625em;
  background-color: #cfd627;
}

.contenthub .cards .event-date-flag div {
  color: #fff;
  width: 100%;
  text-align: center;
}

.contenthub .cards .event-date-flag .day {
  font-size: 1.625em;
  line-height: 1.375rem;
}

.contenthub .cards .event-date-flag .month {
  font-size: 1em;
}

.contenthub .cards .event-date-flag .year {
  font-size: 0.8125em;
  line-height: 1em;
}

.contenthub .cards .overlay {
  overflow-y: hidden;
  height: 16.625rem;
}

.contenthub .cards .meta {
  color: #7c7c7c;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.0625rem;
}

.contenthub .cards .meta time:before {
  content: ", ";
  margin-left: -0.1875rem;
}

.contenthub .cards .title {
  margin: 0.75rem 0;
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.75rem;
}

.contenthub .cards .subtitle {
  font-weight: bold;
}

.contenthub .cards .content {
  line-height: 1.75rem;
}

.contenthub .cards .border {
  height: 2rem;
  box-shadow: 0 -1rem 1.5rem 0 white;
}

.contenthub .cards li.focus {
  display: flex;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 4rem;
}

.contenthub .cards li.focus .event-date-flag {
  top: 2rem;
  right: 3%;
}

.contenthub .cards li.focus > a {
  max-width: 53.38541666%;
}

.contenthub .cards li.focus .thumbnail.video:before {
  background-size: 12%;
  background-position: center;
}

.contenthub .cards li.focus .overlay {
  width: 52%;
  max-width: 65.625%;
  height: auto;
  margin: 3rem 0 0 -3rem;
}

.contenthub .cards li.focus .inner {
  padding-bottom: 0;
}

.contenthub .cards li.focus .title {
  margin-top: 1rem;
  font-size: 1.5rem;
}

.contenthub .cards li.focus .content {
  margin-top: 1.5rem;
}

.contenthub .cards li.focus .border {
  height: 0.375rem;
  box-shadow: none;
}

.contenthub .cards li.focus:hover .border {
  border: 0;
}

.contenthub .cards li.focus a:hover ~ .overlay .border,
.contenthub .cards li.focus .more:hover ~ .border {
  border-bottom: 0.375rem solid #cfd627;
  transition: border-bottom-width 0.2s linear;
}

/*--------------------------------------------------------------
## Link collection
--------------------------------------------------------------*/
.linkcollection {
  display: flex;
  flex-wrap: wrap;
}

.linkcollection .category {
  width: 50%;
  margin-bottom: 3.5rem;
}

.linkcollection h2 {
  margin: 0 0 0.875rem;
}

.linkcollection ul {
  list-style: none;
  padding-left: 0;
}

.linkcollection li {
  margin-bottom: 0.375rem;
}

.linkcollection li a {
  font-weight: bold;
}

.linkcollection li .text {
  display: inline-block;
  margin-left: 0.75rem;
}

.linkcollection .brokenlink {
  padding-left: 2.25rem;
  background-image: url("./img/brokenlink.svg");
  background-repeat: no-repeat;
}

.linkcollection .brokenlink a {
  font-size: 0.875rem;
  border: 0;
}

.linkcollection .brokenlink a:hover {
  border-bottom: 2px solid #cfd627;
}

/*--------------------------------------------------------------
# Pages
--------------------------------------------------------------*/
form.post-password-form {
  padding: 5rem 0;
  margin: 0 auto;
  text-align: center;
}

form.post-password-form .label {
  margin-bottom: 1.5rem;
}

form.post-password-form input[type="password"] {
  height: 2.375rem;
  vertical-align: middle;
}

form.post-password-form .button {
  height: 2.375rem;
  vertical-align: middle;
  padding: 0.875em 1.5em;
  background-color: #cfd627;
  border: none;
  color: #fff;
  margin-left: 0.5rem;
}

/*--------------------------------------------------------------
## Home
--------------------------------------------------------------*/
.home .arc-heading {
  padding-bottom: 0.75rem;
}

.home .subheading {
  max-width: 65rem;
  margin-bottom: 3.75rem;
  font-size: 1.625rem;
  font-weight: 300;
  line-height: 2.75rem;
}

.home ul {
  list-style: none;
  padding: 0;
}

/* Hero */
.home .hero {
  position: relative;
  padding: 0;
  margin-bottom: 0;
}

.home .hero .image:before {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  background: linear-gradient(to right, white, transparent);
  opacity: 0.7;
}

.home .hero .slogan {
  position: absolute;
  top: 29%;
  left: 16%;
  width: 45rem;
}

.open-modal img {
  margin-top: 5%;
}

@media screen and (max-width:880px) {
  .open-modal img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 20%;
  }

}

@media screen and (max-width:800px) {
  .modal video, .geschaeftsfelder video {
    width: 320px;
  }

}

@media screen and (min-width:880px) and (max-width:1110px) {
  .slogan {
    margin-top: -13%;
  }

}

@media screen and (max-width:1110px) {

  .imfokus {
    display: none;
  }
}

.zitat blockquote {
  margin-left: 0; 
  margin-right: 0;
}

.home .hero .slogan .row-1 {
  font-size: 4.875rem;
  font-weight: 300;
  line-height: 4.75rem;
  letter-spacing: 0.0625rem;
  margin-bottom: 1rem;
}

.home .hero .slogan .row-2 {
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 2.875rem;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
}
/* Schlüsselwerte */

.schluesselwerte {
  background-color: #cfd627;
  padding-top: 2%;
  padding-bottom: 2%;
}

.schluesselwerte .wert {
  color: #ffffff;
  font-size: 35px;
  font-family: "Inter", sans-serif;
  font-weight: 700;
}

.schluesselwerte .beschriftung {
  color: #ffffff;
  font-size: 13px;
  font-weight: 600;
}

.schluesselwerte img {
  max-width: 100px;
}

/* .Schlüsselwerte */

/* Im Fokus */
.home .contenthub.imfokus {
  position: relative;
  padding: 0;
}

.home .contenthub.imfokus .cards {
  position: absolute;
  right: 10%;
  margin-top: -8%;
}

.home .contenthub.imfokus .cards li.focus {
  width: auto;
}

.home .contenthub.imfokus .cards li.focus .event-date-flag {
  top: -0.5rem !important;
  width: 3rem;
  height: 4.7rem;
  padding: 0.75em;
  font-size: 0.875rem;
}

.home .contenthub.imfokus .cards li.focus .thumbnail {
  float: left;
  width: auto;
}

.home .contenthub.imfokus .cards li.focus .thumbnail img {
  max-width: 15rem;
  height: auto;
}

.home .contenthub.imfokus .cards li.focus .thumbnail.video:before {
  background-size: 20%;
  background-position: center;
}

.home .contenthub.imfokus .cards li.focus .overlay {
  position: relative;
  float: left;
  width: 27rem;
  margin: 0;
  margin-top: 1rem;
  margin-left: -1rem;
  overflow-y: hidden;
}

.home .contenthub.imfokus .cards li.focus .meta:before {
  content: "Im Fokus";
  color: #7c7c7c;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.125rem;
}

.home .contenthub.imfokus .cards li.focus .meta * {
  display: none;
}

.home .contenthub.imfokus .cards li.focus .title {
  font-size: 1.125rem !important;
  margin: 0.75rem 0 1.25rem;
}

.home .contenthub.imfokus .cards li.focus .content {
  display: none;
}

.home .contenthub.imfokus .cards li.focus .more {
  margin-top: 0;
}

.home .contenthub.imfokus .cards li.focus:hover .border {
  border: 0;
}

.home
  .contenthub.imfokus
  .cards
  li.focus
  .thumbnail.video:hover
  ~ .overlay
  .border,
.home .contenthub.imfokus .cards li.focus .more:hover ~ .border {
  border-bottom: 0.375rem solid #cfd627;
  transition: border-bottom-width 0.2s linear;
}

/* Geschäftsfelder */
.home .geschaeftsfelder {
  padding: 0;
  margin-top: 10rem;
}

.home .geschaeftsfelder .arc-heading,
.home .geschaeftsfelder .subheading {
  margin-left: 10%;
  margin-right: 10%;
}

.home .geschaeftsfelder .subheading {
  margin-bottom: 7.5rem;
}

.home .geschaeftsfelder li {
  overflow: hidden;
  display: flex;
  justify-content: space-between;
}

.home .geschaeftsfelder li:not(:last-child) {
  margin-bottom: 10rem;
}

.home .geschaeftsfelder li .graphics {
  position: relative;
  width: 56.25%;
  height: 460px;
}

.home .geschaeftsfelder li:nth-child(even) .graphics {
  order: 2;
}

.home .geschaeftsfelder li .graphics .thumbnail {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 76%;
}

.home .geschaeftsfelder li:nth-child(even) .graphics .thumbnail {
  left: 0;
}

.home .geschaeftsfelder li .graphics .background {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 86.5%;
  height: 300px;
  background-color: #ecefba;
}

.home .geschaeftsfelder li:nth-child(even) .graphics .background {
  right: 0;
  left: auto;
}

.home .geschaeftsfelder li:nth-child(2) .graphics .background,
.home .geschaeftsfelder li:nth-child(3) .graphics .background,
.home .geschaeftsfelder li:nth-child(5) .graphics .background {
  background: linear-gradient(90deg, #fff 29px, transparent 1%) center,
    linear-gradient(#fff 29px, transparent 1%) center, #cfd627;
  background-size: 32px 32px;
}

.home .geschaeftsfelder li .text {
  width: 30%;
}

.home .geschaeftsfelder li:nth-child(odd) .text {
  margin-right: 10%;
}

.home .geschaeftsfelder li:nth-child(even) .text {
  margin-left: 10%;
}

.home .geschaeftsfelder li .text .title {
  font-size: 3.625em;
  font-weight: 300;
  margin: 0 0 10px 0;
}

.home .geschaeftsfelder li .text .content {
  font-size: 1.125em;
  font-weight: 400;
  line-height: 1.75em;
  margin-bottom: 1.5rem;
}

/* Content Hub */
.home .contenthub {
  padding: 5rem 10%;
  background-position: 22px 0;
}

.home .contenthub .cards {
  padding-bottom: 3.75rem;
}

.home .contenthub .cards .thumbnail.no-thumb {
  background-color: #ecefba;
}

/* Testimonials */
#testimonialExample {
  margin: 0px 40px;
}

.home .testimonials .cards .inner {
  padding-bottom: 10%;
}

.home .testimonials .cards .title {
  display: none;
  font-size: 1.75rem;
  line-height: 2.2rem;
  margin: 0 0 0.875rem 0;
}

.home .testimonials .cards .logo {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 4.25rem;
  padding: 0 15%;
  margin-bottom: 0.625rem;
}

.home .testimonials .cards .logo img {
  max-height: 2.875rem;
  height: 100%;
}

/* START: Schindler Aufzuege */
.home .testimonials .cards .testimonial-3343 .logo {
  height: 6.25rem;
}

.home .testimonials .cards .testimonial-3343 .logo img {
  max-height: 4.875rem;
}

.home .testimonials .cards li:first-child.testimonial-3343 .logo {
  height: 7.25rem;
  padding-top: 0;
  margin-bottom: 0.5rem;
}

.home .testimonials .cards li:first-child.testimonial-3343 .logo img {
  max-height: 5.875rem;
}

/* END: Schindler Aufzuege */

.home .testimonials .cards .content {
  margin: 0;
  font-style: italic;
}

.home .testimonials .cards .content:before {
  content: "\00ab\00a0";
}

.home .testimonials .cards .content:after {
  content: "\00a0\00bb";
}

.home .testimonials .cards .attestant {
  display: flex;
  align-items: center;
  margin-top: 1.25rem;
  font-size: 0.75rem;
}

.home .testimonials .cards .wrapper {
  max-width: 90%;
  margin-left: 0.75rem;
}

.home .testimonials .cards .attestant .photo {
  flex-grow: 0;
  flex-shrink: 0;
  width: 3.75rem;
  height: 3.75rem;
  margin-left: 0.75rem;
}

.home .testimonials .cards .attestant .name {
  width: 100%;
  margin-bottom: 0.25rem;
  font-weight: 600;
}

.home .testimonials .cards .attestant .jobtitle:after {
  content: ",";
}

.home .testimonials .cards li:first-child {
  width: 100%;
  margin-bottom: 4rem;
}

.home .testimonials .cards li:first-child .thumbnail {
  float: right;
  width: 53.385416%;
}

.home .testimonials .cards li:first-child .overlay {
  width: 52.517361%;
  margin: 0;
  margin-top: 5%;
  background-color: #ecefba;
  box-shadow: none;
}

.home .testimonials .cards li:first-child .inner {
  padding: 8%;
}

.home .testimonials .cards li:first-child .logo {
  padding: 0.5rem 8rem;
  margin-bottom: 1rem;
}

.home .testimonials .cards li:first-child .logo img {
  max-height: 4rem;
}

.home .testimonials .cards li:first-child .content {
  font-size: 1.125rem;
  line-height: 1.875rem;
}

.home .testimonials .cards li:first-child .border {
  display: none;
}

/* Contact */
.home .contact-team {
  background-position: 30px 4px;
  margin-bottom: 2rem;
}

.home .contact-team ul {
  padding-bottom: 3.75rem;
}

/*--------------------------------------------------------------
## Geschaeftsfeld
--------------------------------------------------------------*/
.single-geschaeftsfeld .intro {
  margin-bottom: 5rem;
}

.single-geschaeftsfeld .dienstleistungen li {
  background: linear-gradient(180deg, #ecefba 15rem, #fff 0);
  margin-bottom: 5%;
}

.single-geschaeftsfeld .dienstleistungen li:not(:last-child) {
  margin-bottom: 4rem;
}

.single-geschaeftsfeld .dienstleistungen li:nth-child(1),
.single-geschaeftsfeld .dienstleistungen li:nth-child(5),
.single-geschaeftsfeld .dienstleistungen li:nth-child(8) {
  background: linear-gradient(180deg, #ecefba 15rem, #fff 0);
}

.single-geschaeftsfeld .dienstleistungen li:nth-child(2) {
  background: linear-gradient(180deg, #e6e6e6 15rem, #fff 0);
}

.single-geschaeftsfeld .dienstleistungen li:nth-child(3),
.single-geschaeftsfeld .dienstleistungen li:nth-child(6) {
  background: linear-gradient(180deg, #f4f4f4 15rem, #fff 0);
}

.single-geschaeftsfeld .dienstleistungen li:nth-child(4),
.single-geschaeftsfeld .dienstleistungen li:nth-child(7) {
  background: linear-gradient(180deg, #f6f7df 15rem, #fff 0);
}

.single-geschaeftsfeld .dienstleistungen li .thumbnail {
  background-color: transparent;
}

.single-geschaeftsfeld .dienstleistungen .title {
  min-height: 10rem;
  padding: 2.25rem 1.875rem 1.5rem;
  margin: 0;
  font-size: 2.5rem;
  font-weight: 300;
  line-height: 3rem;
}

/* HR Governance & HR Politik */
.single-geschaeftsfeld .dienstleistungen li.dienstleistung-387 .title,
/* Outsourcing Lohn & HR Admin */
.single-geschaeftsfeld .dienstleistungen li.dienstleistung-433 .title {
  max-width: 27rem;
}

.single-geschaeftsfeld .dienstleistungen .overlay {
  margin: 0 5% 0;
}

.single-geschaeftsfeld .dienstleistungen .overlay .inner {
  padding-bottom: 4%;
}

.single-geschaeftsfeld .dienstleistungen .overlay .content {
  margin: 0;
}

.single-geschaeftsfeld .contact-team {
  background-position: -3px 6px;
  margin-bottom: 5.625rem;
}

/*--------------------------------------------------------------
## Dienstleistung
--------------------------------------------------------------*/
.single-dienstleistung .breadcrumb {
  padding: 0 10%;
  margin-top: 4.125rem;
}

.single-dienstleistung .breadcrumb a {
  color: #919191;
  border: none;
  font-size: 1.25rem;
}

.single-dienstleistung .breadcrumb a:hover {
  color: #cfd627;
}

.single-dienstleistung .entry-title {
  margin-top: 1rem;
}

.single-dienstleistung .text {
  position: relative;
  padding-right: 0;
}

.single-dienstleistung .text .content {
  padding-right: 25%;
  font-size: 1.125rem;
}

.single-dienstleistung .text .content h3 {
  margin-top: 4rem;
}

.single-dienstleistung .text .content li {
  padding-left: 0.5rem;
}

.single-dienstleistung .text .content li:not(:last-child) {
  margin-bottom: 1rem;
}

.single-dienstleistung .text .content p {
  line-height: 2rem;
}

.single-dienstleistung .contact-team {
  background-position: -3px 6px;
  margin-bottom: 5.625rem;
}

.single-dienstleistung .contenthub {
  padding-top: 0;
}

/*--------------------------------------------------------------
## Wissen (Content Hub)
--------------------------------------------------------------*/
.page-wissen .contenthub.focus {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.page-wissen .contenthub .cards li:not(.ghost) {
  position: relative;
  margin-bottom: 5em;
}

.page-wissen .contenthub .cards li.focus {
  margin-bottom: 0;
}

.single-post .entry-title,
.single-book .entry-title,
.single-video .entry-title,
.single-event .entry-title {
  font-size: 3.25rem;
}

.entry-meta {
  padding: 0 10%;
  margin: 1rem 0 3rem;
}

.entry-meta div {
  display: inline-block;
}

.entry-meta a.gf {
  font-weight: bold;
  border-bottom: 0;
}

.entry-meta a.gf:hover {
  color: #cfd627;
}

.entry-meta a.gf:after {
  content: ",";
  margin-right: 0.25rem;
  color: #000000;
}

.entry-meta a.gf:last-child:after {
  content: "|";
  margin: 0 0.5rem;
  color: #000000;
}

.entry-meta .authors:after {
  content: "–";
  margin: 0 0.5rem;
}

.linked {
  margin-top: 5rem;
}

.linked .team ul {
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

.linked .team li {
  display: flex;
  justify-content: space-between;
  width: 48%;
  margin-bottom: 2.5rem;
}

.linked .team li:only-child {
  width: 70%;
}

.linked .team .thumbnail {
  width: 240px;
  flex-shrink: 0;
  background-color: transparent;
}

.linked .team .overlay {
  margin: 1.5rem 0 0 -2rem;
}

.linked .team .overlay .inner {
  height: 10.5rem;
  padding-bottom: 0;
  overflow-y: hidden;
}

.linked .team .overlay .name {
  margin: 0 0 0.75rem;
  font-size: 1.25rem;
  font-weight: 300;
}

.linked .team .more {
  background-color: white;
  box-shadow: 0 -1rem 1.5rem 0 white;
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 6%;
}

/*--------------------------------------------------------------
### Post
--------------------------------------------------------------*/
.single-post .entry-title {
  margin-bottom: 1rem;
}

.single-post .text {
  display: flex;
  overflow-y: hidden;
}

.single-post .left {
  width: 70%;
}

.single-post .right {
  width: 30%;
}

.single-post .leadtext {
  margin-bottom: 3rem;
  font-size: 1.375rem;
  font-weight: 300;
  line-height: 2.125rem;
}

.single-post .content h2 {
  margin: 3rem 0 1rem;
  font-size: 1.75rem;
  font-weight: 500;
}

.single-post .content h3 {
  margin: 3rem 0 1rem;
  font-size: 1.5rem;
  font-weight: 500;
}

.single-post .content p {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.single-post .content ul {
  margin-bottom: 1rem;
}

.single-post .content li {
  margin-bottom: 0.5rem;
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.single-post .graphic {
  margin: 4rem 0;
}

.single-post .graphic img {
  width: 100%;
  max-width: 100%;
}

.single-post .flex-wrapper {
  display: flex;
  flex-direction: column;
}

.single-post .source {
  float: right;
  width: 80%;
  margin: 0.25rem 0 7rem;
}

.single-post .source .heading {
  font-size: 1.25rem;
  font-weight: 300;
  margin-bottom: 1.25rem;
}

.single-post .source .thumbnail {
  margin-bottom: 1rem;
}

.single-post .source .thumbnail img {
  border: 1px solid #e0e0e0;
  width: auto;
  max-height: 18rem;
}

.single-post .source .text-wrapper {
  margin-left: 0.25rem;
}

.single-post .source .line {
  display: flex;
  margin-bottom: 0.25rem;
  white-space: nowrap;
}

.single-post .source .prefix {
  width: 4.75rem;
  padding-bottom: 3px;
}

.single-post .dots {
  float: right;
  width: 80%;
  height: 100%;
}

/*--------------------------------------------------------------
### Buch
--------------------------------------------------------------*/
.single-book .entry-title {
  margin-bottom: 1rem;
}

.single-book .subtitle {
  padding: 0 10%;
  margin-top: 0;
  margin-bottom: 1rem;
  font-weight: 300;
}

.single-book .book-wrapper {
  display: flex;
  margin-top: 4rem;
}

.single-book .book-wrapper .thumbnail {
  flex-shrink: 0;
  margin-right: 8%;
}

.single-book .book-wrapper .thumbnail img {
  box-sizing: content-box;
  width: auto;
  max-height: 615px;
  border: 1px solid #e0e0e0;
}

.single-book .book-wrapper .text {
}

.single-book .book-wrapper .book-meta {
  margin-top: 3rem;
}

.single-book .book-wrapper .book-meta .line {
  display: flex;
  margin-bottom: 0.5rem;
}

.single-book .book-wrapper .book-meta .prefix {
  display: inline-block;
  width: 7.5rem;
  flex-shrink: 0;
}

.single-book .book-wrapper .book-meta .buttons {
  margin-top: 1.75rem;
}

.single-book .book-wrapper .book-meta .buttons a:first-child {
  margin-right: 1rem;
}

/*--------------------------------------------------------------
### Video
--------------------------------------------------------------*/
.single-video .entry-title {
  margin-bottom: 1rem;
}

.single-video #darken {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.75);
  z-index: 101;
}

.single-video .entry-content {
  padding: 0 10%;
}

.single-video .entry-meta {
  padding: 0;
}

.single-video .oembed {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto;
  margin-bottom: 3.5rem;
}

.single-video .oembed iframe,
.single-video .oembed object,
.single-video .oembed embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 200;
}

.single-video .text {
  padding-left: 2%;
  padding-right: 2%;
}

.single-video .text .content p {
  font-size: 1.125rem;
  line-height: 1.875rem;
}

.single-video .linked {
  padding: 0;
}

.single-video .contenthub.linked {
  padding: 0;
}

/*--------------------------------------------------------------
## Ueber uns
--------------------------------------------------------------*/
.page-ueber-uns .entry-header {
  background-image: none !important;
}

.page-ueber-uns .entry-content {
  position: relative;
}

.page-ueber-uns .intro {
  width: 47.29166666666667%;
  padding-right: 4rem;
}

.page-ueber-uns .partnerbild {
  position: absolute;
  right: 10%;
  width: 42.70833333333333%;
  margin-top: calc(-11rem - 20%);
}

.page-ueber-uns .content {
  padding-top: 1rem;
  padding-bottom: 0;
}

.page-ueber-uns .content li {
  margin-bottom: 0.5rem;
}

.page-ueber-uns .values ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
  list-style: none;
}

.page-ueber-uns .values li {
  width: 30%;
}

.page-ueber-uns .values .icon {
  width: 60px;
  height: auto;
  margin: 0 auto;
}

.page-ueber-uns .values h3 {
  margin: 1.5rem 0 1.5rem;
  text-align: center;
}

/*--------------------------------------------------------------
## Jobs
--------------------------------------------------------------*/
/* Portal */
.page-jobs .portal {
  margin-top: 2rem;
  text-align: center;
  font-size: 1.5rem;
}

.page-jobs .portal .wrapper {
  border: 3px solid #cfd627;
  padding: 1rem 2rem;
  display: inline-block;
}

.page-jobs .portal .wrapper p {
  display: inline-block;
  margin-right: 1.5rem;
  margin-bottom: 0;
}

.page-jobs .portal .wrapper .link {
  padding-left: 2.25rem;
  background-image: url("./img/arrow-right.svg");
  background-repeat: no-repeat;
  background-position: left center;
  font-weight: bold;
}

/* Angebote */
.page-jobs .offers ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
  list-style: none;
}

.page-jobs .offers li {
  width: 22%;
}

.page-jobs .offers .icon {
  width: 60px;
  height: auto;
  margin: 0 auto;
}

.page-jobs .offers h3 {
  margin: 1.5rem 0 1.5rem;
  text-align: center;
}

/* Stats */
.page-jobs .stats .wrapper {
  display: flex;
  flex-wrap: wrap;
}

.page-jobs .stats .wrapper h3 {
  margin-top: 0;
}

.page-jobs .stats .wrapper h3 ~ div {
  user-select: none;
}

.page-jobs .stats .total,
.page-jobs .stats .gender {
  margin-right: 8%;
}

.page-jobs .stats .total .count {
  margin-top: 2.5rem;
  text-align: center;
  font-size: 3rem;
}

.page-jobs .stats .gender .bars {
  display: inline-block;
}

.page-jobs .stats .gender .bars > div {
  display: flex;
  align-items: center;
}

.page-jobs .stats .gender .female {
  margin-top: 1rem;
}

.page-jobs .stats .gender .percentage {
  margin-right: 0.5rem;
  font-size: 2rem;
}

.page-jobs .stats .gender .icon img {
  float: left;
  margin-right: -6px;
}

.page-jobs .stats .age {
  flex-grow: 2;
}

.page-jobs .stats .age .range {
  display: flex;
  align-items: flex-end;
  text-align: center;
}

.page-jobs .stats .age .range > div:not(:last-child) {
  margin-right: 1.5rem;
}

.page-jobs .stats .age .circle {
  height: 3rem;
  width: 3rem;
  margin-bottom: 0.5rem;
  border-radius: 50%;
  background-color: #cfd627;
  line-height: 3rem;
  color: white;
}

.page-jobs .stats .age .circle[data-size="5"] {
  width: 3.5rem;
  height: 3.5rem;
  line-height: 3.5rem;
}

.page-jobs .stats .age .circle[data-size="10"] {
  width: 4rem;
  height: 4rem;
  line-height: 4rem;
}

.page-jobs .stats .age .circle[data-size="15"] {
  width: 4.5rem;
  height: 4.5rem;
  line-height: 4.5rem;
}

.page-jobs .stats .age .circle[data-size="20"] {
  width: 5rem;
  height: 5rem;
  line-height: 5rem;
}

.page-jobs .stats .age .circle[data-size="25"] {
  width: 5.5rem;
  height: 5.5rem;
  line-height: 5.5rem;
}

.page-jobs .stats .age .circle[data-size="30"] {
  width: 6rem;
  height: 6rem;
  line-height: 6rem;
}

.page-jobs .stats .age .circle[data-size="35"] {
  width: 6.5rem;
  height: 6.5rem;
  line-height: 6.5rem;
}

.page-jobs .stats .age .circle[data-size="40"] {
  width: 7rem;
  height: 7rem;
  line-height: 7rem;
}

/*--------------------------------------------------------------
## Team [Page]
--------------------------------------------------------------*/
/*--------------------------------------------------------------
### Page
--------------------------------------------------------------*/
.page-team .show-filter:before {
  background-image: url("./img/filter.svg");
  background-size: cover;
}

.page-team .hide-filter:before {
  background-image: url("./img/filter-hide.svg");
}

.page-team .show-filter,
.page-team .hide-filter {
  display: none;
  width: 8.875rem;
  margin: 0 auto;
  margin-bottom: 2rem;
  text-align: left;
  color: #ccc;
}

.page-team .show-filter:before,
.page-team .hide-filter:before {
  content: "";
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1.125rem;
  padding-left: 1.75rem;
}

.page-team .show-filter:hover,
.page-team .hide-filter:hover {
  color: #cfd627;
  cursor: pointer;
}

.page-team .filter {
  display: flex;
  margin-bottom: 3rem;
}

.page-team .filter .gf {
  display: flex;
  padding: 0;
  list-style: none;
}

.page-team .filter .gf li {
  padding: 0.5rem 1rem;
  user-select: none;
  transition: background-color 0.1s linear;
}

.page-team .filter .gf li:not(:last-child) {
  margin-right: 1rem;
}

.page-team .filter .gf li.active {
  background-color: #cfd627;
  color: #fff;
  transition: all 0.1s linear;
}

.page-team .filter .gf li.active:hover {
  cursor: default;
}

.page-team .filter .gf li:hover:not(.active) {
  cursor: pointer;
  background-color: #f6f7df;
}

.page-team .filter .name {
  margin-left: auto;
  padding: 0.5rem 1rem;
  border: none;
}

.page-team .filter .name.set {
  outline: 2px solid #cfd627;
}

.page-team .filter .name::placeholder {
  color: #ccc;
}

.page-team .filter .name:focus {
  outline: 2px solid #cfd627;
}

.page-team .cards li {
  margin-bottom: 2rem;
}

.page-team .cards li.hide-gf,
.page-team .cards li.hide-name {
  display: none;
}

.page-team .cards .thumbnail.no-thumb {
  padding-bottom: 100%;
  background-color: #f3f3f3;
  background-position: center 40%;
}

.page-team .cards .overlay {
  min-height: 6.5rem;
  margin: -17% 10% 0 0;
  box-shadow: none;
}

.page-team .cards .name {
  font-size: 1.125rem;
  margin-bottom: 0.25rem;
}

/* Kathrin Schneckenburger */
.page-team .cards li#team-331 .name {
  font-size: 1.1rem;
}

.page-team .cards .role {
  color: #7c7c7c;
  font-size: 0.8125rem;
  text-transform: uppercase;
}

.page-team .cards .apply {
  padding: 0 2rem 3rem;
}

.page-team .cards .apply .link {
  padding-left: 2.25rem;
  margin-top: 2rem;
  background-image: url("./img/arrow-right.svg");
  background-repeat: no-repeat;
  background-position: left top;
}

.page-team .cards .apply a {
  display: inline;
  padding-bottom: 1px;
  border-bottom: 2px dotted #e3e691;
  font-weight: bold;
}

.page-team .cards .apply a:hover {
  border-bottom: 2px solid #cfd627;
}

/*--------------------------------------------------------------
### Single
--------------------------------------------------------------*/
.single-team .scroll-icon {
  display: none;
}

.single-team .entry-title {
  margin-bottom: 0;
}

.single-team .profile-wrapper {
  display: flex;
  margin-bottom: 5rem;
}

.single-team .profile {
  max-width: 59%;
  padding-right: 5rem;
  margin-bottom: 5%;
}

.single-team .profile .mobile-title {
  display: none;
  margin: 0;
  font-size: 3rem;
  font-weight: 300;
  line-height: 1.25;
}

.single-team .profile .title,
.single-team .profile .role {
  margin-top: 0.5rem;
  color: #7c7c7c;
}

.single-team .profile .role {
  letter-spacing: 0.05rem;
}

.single-team .profile .role {
  text-transform: uppercase;
}

.single-team .profile .bio {
  margin: 3rem 0;
}

.single-team .profile .flex {
  display: flex;
  margin-bottom: 0.5rem;
}

.single-team .profile .prefix {
  flex-shrink: 0;
}

.single-team .profile .contact .prefix,
.single-team .profile .languages .prefix {
  width: 5.5rem;
}

.single-team .profile .link-gf {
  margin-top: 2rem;
}

.single-team .profile .link-gf,
.single-team .profile .link-dl,
.single-team .profile .tags {
  margin-bottom: 1rem;
}

.single-team .profile .link-gf .prefix,
.single-team .profile .link-dl .prefix,
.single-team .profile .tags .prefix {
  width: 9rem;
}

/* Eliminate spaces */
.single-team .inline {
  font-size: 0;
}

.single-team .inline li {
  display: inline-block;
  margin-bottom: 0.25rem;
  font-size: 1rem;
  white-space: nowrap;
}

.single-team .inline li:not(:last-child):after {
  content: ",";
  margin: 0 0.375rem 0 0.125rem;
  border-bottom: white;
}

.single-team .photo {
  margin-top: -5rem;
}

.single-team .photo img {
  width: 100%;
  max-width: 450px;
  height: auto;
}

/*--------------------------------------------------------------
### Kontakt
--------------------------------------------------------------*/

.page-kontakt .intro {
  margin-bottom: 3rem;
}

.page-kontakt .locations {
  padding: 0 10%;
}

.page-kontakt .locations ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-kontakt .locations li {
  width: 20%;
  margin-bottom: 2.5rem;
}

.page-kontakt .locations li:nth-child(3) {
  width: 60%;
}

.page-kontakt .locations li.ghost {
  order: 2;
  margin-bottom: 0;
}

.page-kontakt .locations li .city {
  height: 1.75rem;
  margin-bottom: 1rem;
}

.page-kontakt .locations li h4 {
  font-size: 1.25rem;
}

.page-kontakt .locations li .link {
  margin-top: 0.625rem;
}

.page-kontakt .locations li .phone {
  background-image: url("./img/phone.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1.25rem;
  padding-left: 1.75rem;
}

.page-kontakt .locations li .gmaps {
  background-image: url("./img/location.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1.25rem;
  padding-left: 1.75rem;
}

.page-kontakt .locations li .gmaps:before {
}

.page-kontakt .form {
  overflow: hidden;
}

.page-kontakt .form .wrapper {
  float: left;
  width: 65%;
}

.page-kontakt .af-form .af-field {
  padding-right: 0;
  padding-left: 0;
  border-top: none;
}

.page-kontakt .af-form .acf-input-wrap {
  height: auto;
}

.page-kontakt .af-form .acf-input-wrap input {
  height: auto;
  padding: 10px;
}

.page-kontakt .af-form .af-input textarea {
  height: auto;
  padding: 10px;
}

.page-kontakt .af-form .af-submit {
  padding-right: 0;
  padding-left: 0;
}

.page-kontakt .af-form .af-submit-button {
  padding: 0.875em 1.5em;
  background-color: #cfd627;
  border: none;
  color: #fff;
  font-family: inherit;
  font-size: 0.875em;
  letter-spacing: 0.063em;
  text-transform: uppercase;
}

.page-kontakt .af-form .af-submit-button:hover {
  cursor: pointer;
  background-color: #a4aa21;
  transition: background-color 0.2s linear;
}

.page-kontakt .filler {
  float: right;
  width: 23%;
  height: 480px;
}

/*--------------------------------------------------------------
### Datenschutz
--------------------------------------------------------------*/

.page-datenschutz .privacy-intro {
  margin: 0 0 2rem;
}

.page-datenschutz .accordion {
  padding: 0;
}

.page-datenschutz .accordion li {
  list-style: none;
  margin-bottom: 1.5rem;
  border: 1px solid #ddd;
}

.page-datenschutz .accordion li > div {
  padding: 0 1rem 0.25rem;
}

.page-datenschutz .accordion .title {
  padding: 1rem 3.5rem 1rem 1rem;
  margin: 0;
  border: white;
  background-image: url("./img/plus.svg");
  background-repeat: no-repeat;
  background-position: right 20px top 1.25rem;
  background-size: 24px;
  user-select: none;
}

.page-datenschutz .accordion .title:hover {
  cursor: pointer;
  box-shadow: inset 0 -6px 0 #cfd627;
  transition: box-shadow 0.2s linear;
}

.page-datenschutz .accordion .title.open {
  background-image: url("./img/cross.svg");
  background-size: 20px;
  background-position: right 22px top 1.25rem;
}

.page-datenschutz .accordion .title.open:hover {
  box-shadow: none;
  transition: box-shadow 0s;
}

.page-datenschutz .accordion .showmore {
  margin-bottom: 1rem;
  font-weight: bold;
  user-select: none;
}

.page-datenschutz .accordion .showmore:hover {
  cursor: pointer;
}

.page-datenschutz .accordion .hidden {
  display: none;
}

.page-datenschutz .accordion .hidden {
  display: none;
}

/*--------------------------------------------------------------
### 404
--------------------------------------------------------------*/

.error404 .not-found {
  width: 75%;
  padding-top: 15rem;
  padding-bottom: 15rem;
  margin: 0 auto;
  text-align: center;
  background-image: url("./img/404.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 30%;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## insites-cookie-consent
--------------------------------------------------------------*/
[aria-label="cookieconsent"] .cc-btn {
  background-color: #cfd627 !important;
}

[aria-label="cookieconsent"] {
  font-family: "Avenir", "Helvetica Neue", Helvetica, "Segoe UI", Arial,
    freesans, sans-serif;
}

.accordion {
  float: left;
  width: 100%;
}

.accordion-item.left {
  float: left;
  width: 70%;
  clear: both;
  padding: 20px;
  background: #d8d8d8;
  position: relative;
  margin: 30px 0;
}

.accordion-item.left::after {
  content: "";
  background: #d8d8d8;
  position: absolute;
  width: 120px;
  height: 100%;
  right: -52px;
  top: 0;
  transform: skew(10deg);
  z-index: -1;
}

.accordion-item.right {
  float: right;
  width: 70%;
  clear: both;
  padding: 20px;
  background: #abd7e5;
  position: relative;
  margin: 30px 0;
}

.accordion-item.right::after {
  content: "";
  background: #abd7e5;
  position: absolute;
  width: 100%;
  height: 100%;
  left: -52px;
  top: 0;
  transform: skew(-10deg);
  z-index: -1;
}

.accordion-item .testi-body {
  float: left;
  width: 100%;
  margin-top: 20px;
  display: none;
}

.accordion-item .testi-main-div.show .testi-body {
  display: block;
}

.accordion-item .testi-body .testi-media {
  float: left;
  width: 45%;
}

.accordion-item .testi-body .testi-media img,
.accordion-item .testi-body .testi-media iframe {
  width: 100%;
}

.accordion-item .testi-body .testi-content {
  float: right;
  width: 50%;
  font-style: italic;
}

.accordion-item .testi-heading-bottom {
  float: left;
  width: 100%;
  margin-top: 20px;
  display: flex;
}

.accordion-item.left .testi-heading-bottom {
  flex-direction: row-reverse;
}

.accordion-item .testi-open {
  float: left;
  width: 30%;
  display: flex;
  align-items: center;
  cursor: pointer;
}

.accordion-item .testi-open span {
  color: #3b5f9e;
  font-style: italic;
}

.accordion-item .testi-open span.open,
.accordion-item .testi-open.show span.close {
  display: none;
}

.accordion-item .testi-open.show span.open,
.accordion-item .testi-open span.close {
  display: block;
}

.accordion-item .testi-open .angle-icon {
  background: #e5e6eb;
  border-radius: 50%;
  padding: 15px;
  width: 45px;
  margin-right: 10px;
}

.accordion-item .testi-open.show .angle-icon {
  transform: rotate(180deg);
}

.accordion-item .testi-userinfo {
  float: left;
  width: 70%;
  display: flex;
  align-items: center;
}

.accordion-item .testi-userimage {
  margin-right: 10px;
}

.accordion-item .testi-userimage img {
  border-radius: 50%;
}

.accordion-item .testi-designation p {
  margin: 0;
  font-style: italic;
}

.page-template-page-testimonial h1.entry-title {
  margin-top: 50px;
  margin-bottom: 30px;
}

@media (max-width: 991px) {
  .accordion-item.left,
  .accordion-item.right {
    width: 75%;
  }
}

@media (max-width: 767px) {
  .accordion-item.left,
  .accordion-item.right {
    width: 100%;
    margin: 0;
  }

  .accordion-item .testi-body .testi-content {
    width: 100%;
    margin-top: 10px;
  }

  .accordion-item.left::after,
  .accordion-item.right::after {
    content: none;
    display: none;
  }

  .accordion-item .testi-open,
  .accordion-item .testi-userinfo {
    width: 50%;
  }

  .accordion-item .testi-body .testi-media {
    float: left;
    width: 100%;
  }

  .page-template-page-testimonial h1.entry-title {
    margin-top: 50px;
    margin-bottom: 30px;
  }
}

@media (max-width: 480px) {
  #accordionExample .accordion-item {
    margin-top: 20px;
  }

  .page-template-page-testimonial h1.entry-title {
    margin-bottom: 10px;
    margin-top: 30px;
  }
}

.testimonial .testimonial-item {
  width: 100%;
  display: block;
  margin: 140px 0;
}

.testimonial .testimonial-item .col-6 {
  display: inline-block;
  width: 48%;
}

.testi-content {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.15);
  padding: 60px 30px 30px 30px;
  position: relative;
  top: 80px;
  margin-bottom: 50px;
}

.testi-userimage {
  position: absolute;
  top: -50px;
  border: 4px solid #56afcd;
  border-radius: 50%;
  overflow: hidden;
  width: 90px;
  height: 90px;
  text-align: center;
}

.testimonial-item.left .testi-userimage {
  right: 40px;
}

.testimonial-item.right .testi-userimage {
  left: 40px;
}

.testimonial-item.left .testi-content {
  left: -80px;
}

.testimonial-item.right .testi-content {
  right: -80px;
  z-index: 99;
}

.testi-designation {
  margin-top: 30px;
  color: #56afcd;
}

.testi-userimage img {
  width: 100%;
  height: 100%;
}

.testi-media img {
  width: 100%;
}

.page-template-page-testimonial h1.entry-title {
  display: none;
}

.testimonial .testimonial-item .col-6 {
  position: relative;
}

.testimonial .testimonial-item.left .dot {
  background-image: url("images/dot-horizontal.jpg");
  width: 140px;
  height: 75px;
  position: absolute;
  left: 20px;
  top: -30px;
}

.testimonial .testimonial-item.right .dot {
  background-image: url("images/dot-vertical.jpg");
  width: 77px;
  height: 162px;
  position: absolute;
  right: 40px;
  top: -50%;
}

@media (max-width: 991px) {
  .testimonial .testimonial-item .col-6 {
    width: 100%;
  }

  .testimonial-item.left .testi-content {
    left: 0;
    top: 0;
    margin-bottom: 0;
  }

  .testimonial-item.right .testi-content {
    right: 0;
    top: 0;
    margin-bottom: 0;
  }

  .testimonial .testimonial-item.right {
    display: flex;
    flex-direction: column-reverse;
  }

  .testimonial .testimonial-item {
    margin: 50px 0;
  }

  .testimonial .testimonial-item .dot {
    display: none;
  }
}

@media (max-width: 767px) {
  .testi-content {
    padding: 40px 20px 20px 20px;
  }

  .testimonial-item.right .testi-userimage {
    left: 20px;
  }

  .testimonial-item.left .testi-userimage {
    right: 20px;
  }
}

/* Dynamic 2 Col Layout */
.neupos_row {
  display: flex;
  flex-wrap: wrap;
}

.neupos_row_right {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.neupos_column {
  flex: 50%;
}

.neupos_col-3 {
  flex: 30%;
}

.neupos_col-2 {
  flex: 50%;
}

.neupos_col-4 {
  flex: 25%;
}

.neupos_col-75 {
  flex: 75;
}

.neupos_box {
  position: relative;
  border-radius: 4px;
  border: 2px solid #e9e9e8;
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -1px rgb(0 0 0 / 6%);
  margin: 1%;
  margin-left: 0px;
  padding: 20px;
  flex: 32%;
}

.neupos_box_werte {
  position: relative;
  margin-left: 0px;
  padding: 20px;
  flex: 25%;
  color: white;
}

@media (max-width: 991px) {
  .neupos_box { 
    flex: 100%;
  }

  .neupos_box_werte {
    flex: 50%;
  }
}

@media (max-width: 800px) {
  .neupos_box_werte {
    flex: 100%;
  }
}

.geschcontactform {
  padding-left: 10%;
  padding-right: 10%;
  overflow: hidden;
}

/* Style Front Kontakt Form */
.geschcontactform .acf-fields > .acf-field {
  padding: 0px;
}

.geschcontactform .acf-field .acf-label {
  margin: 0px;
  padding-top: 10px;
}

.geschcontactform .acf-field-655b0b118660d .acf-label {
  padding-top: 0px;
}

/* Style Kontakt Video */

.neupos_video_row {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap !important;
  background-color: #cfd627;
  padding: 3%;
}

.content-column, .video-column {
  box-sizing: border-box;
  width: 47.5% !important;
}

.video-column {
  display: flex;
  align-items: center;
}

@media (max-width: 768px) {
  .content-column, .video-column {
      width: 100% !important;
  }
}

/* .border-radius,
.modal {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
} */
.box-shadow,
.modal {
  -webkit-box-shadow: 0 0 10px #121212;
  -moz-box-shadow: 0 0 10px #121212;
  -o-box-shadow: 0 0 10px #121212;
  -ms-box-shadow: 0 0 10px #121212;
  box-shadow: 0 0 10px #121212;
}
.transition,
.modal a.close-modal,
.modal #modal-link a:hover {
  transition: 0.3s ease-in-out;
}
/* .button-radius,
.modal #modal-link a {
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
} */
.blocker {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  z-index: 9998;
  padding: 20px;
  box-sizing: border-box;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  text-align: center;
}
.blocker:before {
  content: "
 ";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.05em;
}
.blocker.behind {
  background-color: transparent;
}
.modal {
  /* display: inline-block;
  vertical-align: middle;
  position: relative;
  z-index: 2;
  max-width: 60%;
  box-sizing: border-box;
  background: #fff;
  padding: 50px;
  text-align: left; */
  margin-top: 5%;
}
.modal a.close-modal {
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  position: absolute;
  font-size: 26px;
  font-weight: normal;
  top: 16px;
  right: 18px;
}
.modal a.close-modal:hover {
  opacity: 0.6;
  cursor: pointer;
}
.modal p {
  font-size: 16px;
  line-height: inherit;
  color: inherit;
}
.modal #modal-link a {
  background-color: #555;
  color: #fff;
  font-size: 13px;
  text-transform: uppercase;
  font-weight: 600;
  text-align: center;
  transition: ease-in-out 0.5;
  padding: 12px 26px;
  display: inline-block;
}
.modal #modal-link a:hover {
  opacity: 0.7;
}
@media screen and (min-width: 0px) and (max-width: 767px) {
  .modal {
    /* max-width: 100%; */
    /* padding: 20px; */
  }
}

.close-modal {
  display: none;
}

@media screen and (min-width: 0px) and (max-width: 767px) {
  .open-modal img {
    margin-top: 2%;
    width: 50px;
    height: 50px;
  }
}

blockquote {
  background-color: #ECEFBA;
  border-left: 8px solid #CFD627;
  padding: 0.5rem 1rem;
}