/*
Theme Name: buckstay
Author: Fabian Genthner
Version: 1.12
2019-11-05: Kai von Essen -> additions for custom post type template 'single-job.php'
*/

/* 3rd party packages */

/*! normalize.css v8.0.1 | 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;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
    display: block;
}

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

h1 {
    font-size: 2em;
    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 */
    -webkit-text-decoration: underline dotted;
    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;
}

/* SASS and Global'ish Stuff */

@font-face {
    font-family: 'Buckstay Icons';
    src: url('fonts/BuckstayIcons.ttf') format('truetype');
}

@font-face {
    font-family: 'FFKievitWeb';
    src: url('fonts/3558CD_1_0.eot');
    src: url('fonts/3558CD_1_0.eot?#iefix') format('embedded-opentype'),
    url('fonts/3558CD_1_0.woff2') format('woff2'),
    url('fonts/3558CD_1_0.woff') format('woff'),
    url('fonts/3558CD_1_0.ttf') format('truetype');
    font-weight: 400;
}

@font-face {
    font-family: 'FFKievitWeb Medium';
    src: url('fonts/3558CD_2_0.eot');
    src: url('fonts/3558CD_2_0.eot?#iefix') format('embedded-opentype'),
    url('fonts/3558CD_2_0.woff2') format('woff2'),
    url('fonts/3558CD_2_0.woff') format('woff'),
    url('fonts/3558CD_2_0.ttf') format('truetype');
    font-weight: 500;
}

@font-face {
    font-family: 'FFKievitWeb Bold';
    src: url('fonts/3558CD_0_0.eot');
    src: url('fonts/3558CD_0_0.eot?#iefix') format('embedded-opentype'),
    url('fonts/3558CD_0_0.woff2') format('woff2'),
    url('fonts/3558CD_0_0.woff') format('woff'),
    url('fonts/3558CD_0_0.ttf') format('truetype');
    font-weight: 700;
}

/* COLORS */

/* WIDTHS & HEIGHTS */

* {
    box-sizing: border-box;
}

.no-scroll {
    margin: 0;
    height: 100%;
    overflow: hidden;
}

body {
    height: 100%;
    font-family: 'FFKievitWeb', Helvetica, Arial, sans-serif;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #222;
    overflow-x: hidden;
}

.main-content--padding-top {
    padding-top: 3rem;
}

@media (min-width: 960px) {

    .main-content--padding-top {
        padding-top: 0
    }
}

a {
    text-decoration: none;
    color: #9daea4;
}

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

ul {
    list-style: none;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    -webkit-margin-before: 0;
    margin-block-start: 0;
    -webkit-margin-after: 0;
    margin-block-end: 0;
}

strong {
    font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
}

.aligncenter {
    text-align: center;
}

/* Override default text selection color */

::-moz-selection {
    background: #ff3434; /* WebKit/Blink Browsers */
    color: #fff;
}

::selection {
    background: #ff3434; /* WebKit/Blink Browsers */
    color: #fff;
}

::-moz-selection {
    background: #ff3434; /* Gecko Browsers */
    color: #fff;
}

@media print {
    body, h1, h2, h3, ol, ul, div {
        float: none;
        border: 0;
        padding: 0;
        position: static;
        overflow: visible;
        background-color: white!important;
        color: black;
    }

    h1 {
        font-size: 24pt;
    }

    h2, h3, h4 {
        font-size: 14pt;
        margin-top: 25px;
    }

    .col {
        page-break-inside: avoid;
    }

    .accordion__item {
        page-break-inside: avoid;
    }

    .page-section {
        page-break-inside: avoid;
        margin: 0;

    }

    h1, h2, h3, h4, h5, h6 {
        page-break-after:avoid;
        page-break-inside:avoid
    }

    img {
        page-break-inside:avoid;
        page-break-after:avoid;
    }

    table, pre {
        page-break-inside:avoid;
    }

    ul, ol, dl  {
        page-break-before:avoid;
    }

    .reveal-item {
        opacity: 1!important;
    }

    .site-header, .site-footer, .btn {
        display: none;
    }
    .accordion__item__panel {
        display: block!important;
        height: auto!important;
    }

    @page {
        margin: 2cm;
    }
}

/* BEM Blocks */

.anchor {
    display: block;
    line-height: 0;
    font-size: 0;
    color: transparent;
    position: relative;
    top: -3rem;
}

.fader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999999;
    pointer-events: none;
    background-color: white;
    opacity: 1;
    -webkit-transition: opacity 1s ease-out;
    transition: opacity 1s ease-out;
}

.fader--fade-out {
    opacity: 0;
}

.accordion {
    width: 100%;
}

.accordion__item {
    width: 100%;
    -webkit-box-flex: 0;
    flex: 0 0 100%;
}

.accordion__item__header {
    cursor: pointer;
    padding: 1rem 1.5rem 1rem 0;
    position: relative;
}

.accordion__item__header h3 {
    margin-bottom: .5rem;
}

@media (min-width: 767px) {

    .accordion__item__header h3 {
        margin-bottom: 0
    }
}

.accordion__item__header::after {
    content: '+';
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%) scale(.85);
    transform: translateY(-50%) scale(.85);
    font-size: 2rem;
    opacity: .5;
    -webkit-transition: -webkit-transform .2s ease;
    transition: -webkit-transform .2s ease;
    transition: transform .2s ease;
    transition: transform .2s ease, -webkit-transform .2s ease;
}

.accordion__item__header--open::after {
    -webkit-transform: translateY(-50%) rotate(45deg) scale(1);
    transform: translateY(-50%) rotate(45deg) scale(1);

}

.accordion__item__header .param-list {
    font-size: 1rem;
}

.accordion__item__header .param-list li {
    display: inline-block;
    margin-right: .5rem;
}

.accordion__item__header .param-list li strong {
    font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
}

.accordion__item__panel {
    display: none;
    padding-right: 1rem;
}

.accordion__item__panel .row {
    padding-bottom: 2rem!important;
}

.accordion__item__panel .job-contact {
    background-color: rgb(79, 87, 82);
    padding: 1rem;
}

.accordion__item__panel .job-contact__image {
    display: none;
}

.accordion__item__panel .job-contact__info {
    color: white;
    margin-bottom: .5rem;
    padding: 0 12px;
}

@media (min-width: 767px) {

    .accordion__item__panel .job-contact {
        padding: 0 1rem 0 0;
        -webkit-box-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        align-items: center;
        display: -webkit-box;
        display: flex
    }

    .accordion__item__panel .job-contact__image {
        display: block;
        width: 130px;
        height: auto;
    }

    .accordion__item__panel .job-contact__info {
        margin-bottom: 0;
    }

    .accordion__item__panel .job-contact__info h4 {
        margin-bottom: 0;
    }
}

.accordion--white .accordion__item:not(:last-child) {
    margin-bottom: 2rem;
}

.accordion--white .accordion__item__header {
    background-color: white;
    padding: 1rem;
}

.accordion--white .accordion__item__header::after {
    right: 1rem;
}

.accordion--white .accordion__item__panel {
    background-color: rgba(255, 255, 255, 0.66);
    padding-right: 0;
}

.accordion--white .accordion__item__panel .generic-content {
    padding: 1rem 2rem 1rem 1rem;
}

@media (min-width: 960px) {
    .back-to-top {
        position: fixed;
        bottom: 0;
        right: 2rem;
        width: 2.8rem;
        height: 2.8rem;
        background-color: rgba(11, 42, 60, 0.5);
        -webkit-transition: background-color .2s ease;
        transition: background-color .2s ease;
    }

    .back-to-top::after {
        content: '';
        display: block;
        width: 25%;
        height: 25%;
        border-top: 3px solid white;
        border-left: 3px solid white;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -33%) rotate(45deg);
        transform: translate(-50%, -33%) rotate(45deg);
    }

    .back-to-top:hover {
        background-color: rgba(11, 42, 60, 0.75);
    }
}

.banner__video {
    display: none;
}

.banner__image {
    display: block;
    margin-top: 3rem;
    width: 100%;
}

.banner .wpml-ls {
    display: none;
}

.banner__brand {
    display: none;
}

.banner__link {
    display: none;
}

@media (min-width: 960px) {
    .banner {
        position: relative;
        width: 100vw;
        height: 100vh;
        overflow: hidden;
    }

    .banner__video {
        display: block;
        position: absolute;
        top: 0;
        height: 100%;
        width: auto;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        z-index: -1;
        -o-object-fit: contain;
        object-fit: contain;
    }

    .banner__video--ultrawide {
        width: 100%;
        height: auto;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    .banner__image {
        display: none;
    }

    .banner .wpml-ls {
        display: block;
    }

    .banner__brand {
        display: block;
        width: 50%;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

    .banner__brand__logo {
        width: 100%;
    }

    .banner__brand__claim {
        font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
        color: white;
        font-size: 3.3vw;
        margin: -1.8rem 0 0 0;
    }

    .banner__link {
        display: block;
        width: 2.8rem;
        height: 2.8rem;
        background-image: url('images/arrow-down.svg');
        background-size: cover;
        opacity: .4;
        position: absolute;
        bottom: 29px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    .banner__link:hover {
        opacity: .8;
    }
}

.boss-box {
    background: white;
    margin-bottom: 2rem;
    font-size: 1rem;
}

.boss-box__image {
    height: 30rem;
    overflow: hidden;
}

.boss-box__text {
    padding: 1.5rem;
}

@media (min-width: 767px) {

    .boss-box {
        margin-bottom: 4rem;
        display: -webkit-box;
        display: flex;
        -webkit-box-align: center;
        align-items: center
    }

    .boss-box__image {
        height: auto;
        overflow: visible;
        -webkit-box-flex: 1;
        flex: 1;
    }

    .boss-box:nth-child(odd) .boss-box__image {
        -webkit-box-ordinal-group: 3;
        order: 2;
    }

    .boss-box__image img {
        display: block;
    }

    .boss-box__text {
        -webkit-box-flex: 2;
        flex: 2;
        padding: 2rem;
        font-size: 1.5vw;
    }
}

@media (min-width: 1100px) {
    .boss-box__text {
        padding: 2.5rem;
        font-size: 1.2rem;
    }
}

.btn {
    display: inline-block;
    background-color: #ff3434;
    border: 1px solid #ff3434;
    color: white;
    padding: .8rem 2rem;
    font-size: 1rem;
    font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.navigation.navigation--secondary div.widget div.textwidget a.btn.btn--small.btn--outline {
    display:block;
}

.btn:hover {
    background-color: white;
    color: #ff3434;
}

.btn--small {
    padding: .5rem 1.2rem;
}

.btn--outline {
    background-color: #fff;
    border: 1px solid #ff3434;
    color: #ff3434!important;
}

.btn--outline:hover {
    background-color: #ff3434;
    color: white!important;
}

.btn--aligncenter {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

/* styles for cookie notice generated by plugin "COOKIE NOTICE" by dFactory */

.cookie-notice-container {
    padding: 1rem;
    font-size: 1rem;
    line-height: 1.3;
}

.cookie-notice-container #cn-notice-text {
    display: block;
    margin-bottom: .75rem;
}

.cookie-notice-container .cn-button {
    display: inline-block;
    background-color: #ff3434;
    border: 1px solid #ff3434;
    color: white;
    padding: .5rem .75rem;
    margin: 0 .5rem;
    font-size: 1rem;
    font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    margin-bottom: .5rem;
}

.cookie-notice-container .cn-button:hover {
    background-color: white;
    color: #ff3434;
}

.generic-content ul {
    list-style: disc;
    margin-left: 1.2rem;
    -webkit-margin-before: 1rem;
    margin-block-start: 1rem;
    -webkit-margin-after: 1rem;
    margin-block-end: 1rem;
}

.generic-content p {
    -webkit-margin-before: 1rem;
    margin-block-start: 1rem;
    -webkit-margin-after: 1rem;
    margin-block-end: 1rem;
    -webkit-margin-before: 0;
}
/* kve: remove top and bottom margin for paragraphs on new startpage with blocks */
body.home .generic-content p {
    -webkit-margin-before: 0;
    margin-block-start: 0;
    -webkit-margin-after: 0;
    margin-block-end: 0;
    -webkit-margin-before: 0;
}

.generic-content .skyline {
    text-transform: uppercase;
    display: block;
    margin-bottom: .25rem;
    font-size: 1rem;
    font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
}

.generic-content table {
    border: 0;
}

.generic-content table tr, .generic-content table td {
    border: 0;
    padding: 0;
}

.row {
    flex-wrap: wrap;
}

.row .col {
    margin-bottom: 2rem;
}

.row .col--vertical-align {
    margin-bottom: 1rem;
}

.row .col--bg-white {
    background-color: white;
    color: #222;
}

.row .col--padding {
    padding: 1rem;
}

.row--overlap .col {
    margin-bottom: 0!important;
}

@media (min-width: 530px) {

    .row {
        display: -webkit-box;
        display: flex
    }

    .row .col {
        margin-bottom: 4rem;
    }

    .row .col--1-of-3 {
        -webkit-box-flex: 0;
        flex: 0 0 30%;
        margin-right: 4%;
    }

    .row .col--2-of-3 {
        -webkit-box-flex: 0;
        flex: 0 0 66%;
    }
}

@media (min-width: 960px) {

    .row {
        margin-bottom: 0;
        display: -webkit-box;
        display: flex
    }

    .row:not(:last-child) {
        padding-bottom: 6rem;
    }

    .row .col {
        margin-bottom: 0;
    }

    .row .col--1-of-2 {
        -webkit-box-flex: 0;
        flex: 0 0 48%;
    }

    .row .col--1-of-2:not(:last-child) {
        margin-right: 4%;
    }

    .row .col--1-of-3 {
        -webkit-box-flex: 0;
        flex: 0 0 30%;
        margin-right: 0;
    }

    .row .col--2-of-3 {
        -webkit-box-flex: 0;
        flex: 0 0 70%;
    }

    .row .col--1-of-4 {
        -webkit-box-flex: 0;
        flex: 0 0 16%;
    }

    .row .col--1-of-4:not(:last-child) {
        margin-right: 12%;
    }

    .row .col--padding {
        padding: 2rem 3rem;
    }

    .row .col--vertical-align {
        display: -webkit-box;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        flex-direction: column;
        -webkit-box-pack: center;
        justify-content: center;
        margin-bottom: 0;
    }
    .row--small-padding-bottom:not(:last-child) {
        padding-bottom: 3rem;
    }

    .row--overlap {
        -webkit-box-align: end;
        align-items: flex-end;
    }

    .row--overlap .col--1-of-2 {
        -webkit-box-flex: 0;
        flex: 0 0 50%;
    }

    .row--overlap .col--1-of-2:first-child {
        -webkit-box-flex: 0;
        flex: 0 0 calc(50% + 6rem);
        margin-right: 0;
    }

    .row--overlap .col--1-of-2:first-child img {
        margin-bottom: 6rem;
    }

    .row--overlap .col--1-of-2:last-child {
        margin: 0 0 0 -6rem;
    }
    .row--overlap:first-child .col:first-child {
        margin-bottom: 5rem;
    }
    .row--overlap:nth-child(2) .col:first-child {
        margin-bottom: 6rem;
    }
    .row--overlap:nth-child(3) .col:first-child {
        margin-bottom: 6rem;
    }
    .row--overlap:nth-child(4) .col:first-child {
        margin-bottom: 3rem;
    }
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
}

h1 {
    font-size: 2rem;
    line-height: 1.2;
}

h2 {

    font-size: 1.5rem;
    line-height: 1.25;
    margin-bottom: 1rem;
}

h3 {
    font-size: 1.25rem;
    line-height: 1.25;
}

h4 {
    font-size: 1rem;
    margin-bottom: 1rem;
}

@media (min-width: 960px) {
    h1 {
        font-size: 3.2rem;
    }

    h2 {

        font-size: 2.4rem;
        line-height: 1.25;
        margin-bottom: 1rem;
    }

    h3 {
        font-size: 1.7rem;
        line-height: 1.25;
    }

    h4 {
        font-size: 1.4rem;
        margin-bottom: 1rem;
    }
}

.image--fullwidth {
    width: 100%;
    display: block;
}

.logo-wall {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
}

.logo-wall .logo {
    -webkit-box-flex: 0;
    flex: 0 0 45%;
    margin: 0 2.5% 1rem 2.5%;

}

@media (min-width: 767px) {
    .logo-wall .logo {
        -webkit-box-flex: 0;
        flex: 0 0 28%;
        margin: 0 2.6666666667% 1rem 2.6666666667%;
    }
}

@media (min-width: 960px) {
    .logo-wall .logo {
        -webkit-box-flex: 0;
        flex: 0 0 18%;
        margin: 0 1% 1rem 1%;
    }
}

.acf-map {
    width: 100%;
    height: 40vh;
}

.nav-icon {
    position: fixed;
    top: .75rem;
    right: 1rem;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
    z-index: 20;
}

.nav-icon span {
    display: block;
    position: absolute;
    height: 5px;
    width: 100%;
    background-color: #969696;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

.nav-icon span:nth-child(1) {
    top: 0px;
}

.nav-icon span:nth-child(2) {
    top: 10px;
}

.nav-icon span:nth-child(3) {
    top: 20px;
}

.nav-icon--close-x span {
    background-color: white;
}

.nav-icon--close-x span:nth-child(1) {
    top: 10px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

.nav-icon--close-x span:nth-child(2) {
    opacity: 0;
    left: -60px;
}

.nav-icon--close-x span:nth-child(3) {
    top: 10px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

@media (min-width: 960px) {
    .nav-icon {
        display: none;
    }
}

.navigation--main {
    display: none;
}

.navigation--secondary {
    display: none;
}

.navigation--offcanvas {
    position: fixed;
    background-color: rgba(0, 58, 95, 0.95);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 15;
    text-align: center;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-transition: all .4s ease-out;
    transition: all .4s ease-out;
}

.navigation--offcanvas--is-visible {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.navigation--offcanvas ul {
    padding-top: 20%;
    line-height: 2.2;
}

.navigation--offcanvas li {
    font-size: 1.5rem;
    font-family: 'FFKievitWeb Medium', Arial, Helvetica, sans-serif;
    position: relative;
}

.navigation--offcanvas li a {
    color: white;
}

.navigation--offcanvas li.wpml-ls-menu-item {
    display: inline-flex;
    margin: 0;
    padding: 0;
}

.navigation--offcanvas li.wpml-ls-menu-item:not(:last-child)::after {
    content: '|';
    display: inline-block;
    margin: 0 .75rem;
    color: white;
}

.navigation--offcanvas li.current-menu-item a {
    color: #ff3434;
}

@media (min-width: 960px) {
    .navigation li {
        display: inline-block;
    }

    .navigation li a {
        color: #969696;
        -webkit-transition: color .2s ease;
        transition: color .2s ease;
    }

    .navigation li:hover > a, .navigation li.current-menu-parent > a, .navigation li.current-menu-item > a {
        color: #003A5F;
    }

    .navigation li:not(:last-child) {
        margin-right: 1rem;
    }

    .navigation li .sub-menu {
        display: none;
        font-size: 1rem;
        position: absolute;
        font-family: 'FFKievitWeb Medium', Arial, Helvetica, sans-serif;
        margin-top: -.2rem;
        background-color: white;
        padding: 0 .5rem .25rem .5rem;
        margin-left: -.5rem;
    }

    .navigation li .sub-menu li {
        display: block;
    }

    .navigation li:hover .sub-menu {
        display: block;
    }

    .navigation--main {
        display: block;
        font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
        font-size: 1.0rem;
        letter-spacing: .02rem;
        margin-top: .75rem;
    }

    .navigation--secondary {
        display: flex;
        font-size: 1rem;
        text-align: right;
        margin-top: .75rem;
    }

    .navigation--secondary div:first-child {
/*        margin-bottom: .3rem; */
    }

    .navigation--secondary div:first-child ul {
        margin-right: 16px;
        margin-top: 0.75rem;
    }

    .navigation--secondary div:first-child li:not(:last-child) {
        margin-right: .5rem;
    }

    .navigation--offcanvas {
        display: none;
    }
}

@media (min-width: 1021px) {
    .navigation--main {
        font-size: 1.25rem;
    }
}
.page-section {
    padding: 2rem 0;
    overflow-y: hidden;
}

.page-section--dark {
    background-color: #003A5F;
    color: white;
    letter-spacing: .01rem;
}

.page-section--dark a {
    color: white;
}

.page-section--pistache {
    background-color: #BAC5BE; /* #9daea4; */
}

.page-section--pistache a {
    color: white;
}

.page-section--fullheight {
    height: 100%;
}

@media (min-width: 960px) {

    .page-section {
        padding: 5rem 0
    }

    .page-section--no-padding-bottom {
        padding-bottom: 0;
    }
}

.portfolio__filter {
    margin-bottom: 2rem;
}

.portfolio__filter ul {
    text-align: center;
    line-height: 2;
}

.portfolio__filter .button:hover, .portfolio__filter .button--active {
    color: #9daea4;
}

.page-section--pistache .portfolio__filter .button:hover, .page-section--pistache .portfolio__filter .button--active {
    color: white;
}

.portfolio__content {
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
}
.portfolio__content .tile {
    margin-bottom: 2rem;
    background-color: white;
    color: #222;
    font-size: 1rem;
    /* transform: scale(0); */
    /* transition: transform 350ms ease; */
    display: none;
}

.portfolio__content .tile__image {
    width: 100%;
    height: auto;
}

.portfolio__content .tile--show {
    /* transform: scale(1); */
    display: block;
}

.portfolio__content .tile__text {
    padding: 1rem 0 0.6rem 1.5rem;
}

.portfolio__content .tile__text h3 {
    margin-bottom: 0;
}

.portfolio__content .tile__text .generic-content a {
    color: #222;
}

.portfolio__content .tile__text .generic-content ul {
    -webkit-margin-before: .7rem;
    margin-block-start: .7rem;
    -webkit-margin-after: .7rem;
    margin-block-end: .7rem;
}

.portfolio__content .tile__text .generic-content p {
    -webkit-margin-before: .7rem;
    margin-block-start: .7rem;
    -webkit-margin-after: .7rem;
    margin-block-end: .7rem;
}

@media (min-width: 767px) {
    .portfolio .tile {
        background-color: transparent;
    }
    .portfolio .tile__image {
        margin-top: 2rem;
        width: auto;
        height: 216px;
        float: left;
    }

    .portfolio .tile__text {
        float: right;
        background-color: white;
    }

    .portfolio .tile::after {
        content: '';
        display: block;
        clear: both;
    }
    .portfolio__filter ul {
        list-style: none;
        text-align: center;
    }

    .portfolio__filter .button, input, button {
        display: inline-block;
        cursor: pointer;
        margin: 0 .5rem;
        font-size: 1rem;
        -webkit-transition: color .2s ease;
        transition: color .2s ease;
    }

    .portfolio__filter input, button {
        padding-top: 3px;
    }

    .portfolio__filter .button:hover, .portfolio__filter .button--active {
        color: #9daea4;
    }

    .page-section--pistache .portfolio__filter .button:hover, .page-section--pistache .portfolio__filter .button--active {
        color: white;
    }

    .portfolio__content {
        display: grid;
        grid-template-columns: repeat(1, minmax(570px, 570px));
        grid-column-gap: 20px;
        justify-content: center;
        max-width: unset;
    }

    .portfolio__content .tile {
        background-color: white;
        font-size: 1rem;
        -webkit-box-flex: 0;
        flex: 0 0 48.666667%;
        margin-left: 0.6666666667%;
        margin-right: 0.6666666667%;
    }

    .portfolio__content .tile__image {
        margin-top: 0;
        float: left;
    }

    .portfolio__content .tile__text {
        margin-top: 20px;
        float: left;
    }

    .portfolio__content--special {
        -webkit-box-pack: start;
        justify-content: flex-start;
    }

    .portfolio__content--special .tile {
        margin-right: 2%;
    }

    .portfolio__content--special .tile:nth-child(3n) {
        margin-right: 0;
    }
}
@media (min-width: 1260px) {
    .portfolio__content {
        grid-template-columns: repeat(2, minmax(570px, 570px));
    }
    .contacts-headline {
        margin-bottom: 40px;
    }
}
.reveal-item {
    opacity: 0;
    -webkit-transition: opacity 1.5s ease-out;
    transition: opacity 1.5s ease-out;
}

.reveal-item--is-visible {
    opacity: 1;
}

.site-footer {
    padding: 2rem 0;
    background-color: #003A5F;
    color: white;
    border-top: 5px solid #ff3434;
}

.site-footer .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
}

.site-footer .col {
    margin-bottom: 1.5rem;
    padding-right: 15px;
}

.site-footer a {
    color: white;
}

.site-footer ul {
    margin-top: 0;
    padding-left: 0;
}

/*
body.home footer.site-footer {
    border-top: none;
}
*/
@media (min-width: 767px) {

    .site-footer {
        padding: 4rem 2rem;
        font-size: 1rem
    }

    .site-footer .row {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        flex-direction: row;
        -webkit-box-pack: justify;
        justify-content: space-between;
    }


    .site-footer p {
        margin-top: 0;
    }
}

.site-header {
    position: fixed;
    top: 0;
    background-color: white;
    width: 100%;
    padding: .5rem 1rem;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    align-items: center;
    z-index: 10;
}

.site-header .brand {
    margin: 0;
    text-indent: -9999px;
}

.site-header .brand a {
    display: block;
    width: 8rem;
    height: 2rem;
    background-image: url(images/logo.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
}

@media (min-width: 960px) {
    .container {
        height: 6rem;
    }

    .site-header {
        height: 6rem;
        position: relative;
        padding: .5rem 2rem;
    }
    .site-header .brand a {
        width: 11rem;
        height: 2.6rem;
    }

    .site-header--sticky {
        position: fixed;
        z-index: 999;
        box-shadow: 0 0 5px #969696;
    }
}

.teaser {
    background-color: rgba(255, 255, 255, 0.66);
    color: #222!important;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
    display: block;
    position: relative;
    padding: 1.5rem;
}

.teaser__text {
    font-size: 1rem;
}

.teaser__link {
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 100%;
    background-color: #003A5F;
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem;
}

.teaser__link::after {
    content: '>';
    color: white;
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.teaser {
    background-color: white;
}
.col-half {
    width: 50%;
}
@media (max-width: 766px) {
    .col-half {
        width: 100%;
    }
}
.service h2, .benefits h2 {
    padding-bottom: 32px;
}

.service {
    display: flex;
    align-items: center;
}
.service-icon {
    margin-right: 1em;
    text-align: center;
}
.service-icon img {
    max-height: 65px;
    max-width: 65px;
}
@media (min-width: 460px) {
    .service-icon, .service-link {
        float: left;
    }
}
@media (min-width: 750px) {
    .service-icon, .service-link {
        float: left;
    }
}
.service-link h4 {
    color: #000;
    margin-block-end: unset;
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
}
.service-link h4:after {
    content: '>';
    margin-left: 20px;
}
.service-link h4:hover {
    /*    color: #ff3434; */
    color: #fff;
}
.service-link {
    transition: all ease-out 0.3s;
}
.benefits {
}
.wpcf7 {
    color: white;
}
.wpcf7-text, .wpcf7-textarea {
    width: 100%;
    padding: .5rem;
    margin-bottom: .5rem;
    background-color: rgba(255, 255, 255, 0.1);
    outline: none;
    border: none;
    color: white;
}
.wpcf7-submit {
    border: none;
    cursor: pointer;
}

::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.5);
    font-size: 1rem;
}

::-moz-placeholder {
    color: rgba(255, 255, 255, 0.5);
    font-size: 1rem;
}

:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.5);
    font-size: 1rem;
}

::-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.5);
    font-size: 1rem;
}

::placeholder {
    color: rgba(255, 255, 255, 0.5);
    font-size: 1rem;
}

.wpml-ls {
    position: absolute;
    top: 1rem;
    right: 2rem;
    font-weight: bold;
}

.wpml-ls li:first-child {
    border-right: 2px solid white;
}

.wpml-ls a {
    color: white;
}

.wpml-ls-current-language a {
    color: #ff3434;
}

.wrapper {
    margin: 0 auto;
    width: 100%;
    max-width: 70rem;
    padding: 0 1rem;
}

.wrapper--narrow {
    max-width: 55rem;
}

.wrapper--extra-narrow {
    max-width: 35rem;
    margin-top: 1.5rem;
}

.wrapper--wide {
    max-width: 80rem;
}

@media (min-width: 960px) {
/*
    .wrapper {
        padding: 0 2rem
    }
*/
    .wrapper--padding-bottom {
        padding-bottom: 4rem;
    }
}

/* custom post type single-job template */
.single-job-header {
    background-color: white;
    padding: 1rem;
}
.single-job-header h3 {
    margin-bottom: 0;
}
.single-job-header .param-list {
    font-size: 1rem;
}
.single-job-header .param-list li {
    display: inline-block;
    margin-right: .5rem;
}
.job-panel {
    background-color: rgba(255, 255, 255, 0.66);
    padding-right: 0;
}
.job-panel .generic-content {
    padding: 1rem 2rem 1rem 1rem;
}
.job-panel .job-contact {
    background-color: rgb(79, 87, 82);
    padding: 1rem;
}
.job-panel .job-contact__image {
    display: none;
}
.job-panel .job-contact__info {
    color: white;
    margin-bottom: .5rem;
}
@media (min-width: 767px) {
    .job-panel .job-contact {
        padding: 0 1rem 0 0;
        justify-content: space-between;
        align-items: center;
        display: flex;
    }
    .job-panel .job-contact__image {
        display: block;
        width: 7rem;
        height: auto;
    }
}

/* styles for page template 'Leistung' */
.left_col_border {
    /*    width: 84%;
    */    min-width: 21%;
    border-right: 1px solid #000;
    flex: auto;
    float: left;
}
@media (max-width: 788px) {
    .left_col_border {
        min-width: 10%;
    }
}
.right_col_border {
    flex: auto;
    float: right;
    padding-left: 8%;
    margin-top: 28px;
}
.col_border_container {
    display: flex;
    width: 100%;
    margin-top: 56px;
}
.leistung a {
    color:#222;
    position: relative;
    left: 20px;
    top: -12px;
}
.leistung a:hover {
    color:#fff;
}
.downloadable_docs_area {
    padding-top: 20px;
}
.downloadable_doc_link:hover div {
    color: #9daea4;
}
.downloadable_doc_link:hover div img{
    background-color: #9daea4;
}
.downloadable_doc_link a {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}
.downloadable_doc_link img{
    height: 40px;
    max-width: 40px;
}
.download_image, .download_text {
    flex:auto;
}
.download_image {
    flex:unset;
    margin-right: 30px;
}
.more_docs {
    display: none;
}
.more_docs_link img {
    opacity: 0;
}
.more_docs_link:hover {
    opacity: 0.8;
}
.contact_card {
    margin: 40px 0 20px;
    display: flex;
    align-items: center;
    background-color: #fff;
    max-width: 685px;
}
.contact_picture {
    display: flex;
    align-self: center;
}
.contact_picture img{
    height: 200px;
    width: auto;
}
.contact_details {
    background-color: #fff;
    font-size: 1rem;
    padding-top: 0.7rem;
    padding-left: 60px;
    padding-right: 60px;
}
.contact_details h3 {
    margin-bottom: 0px;
}
.contact_details p {
    -webkit-margin-before: .7rem;
    margin-block-start: .7rem;
    -webkit-margin-after: .7rem;
    margin-block-end: .7rem;
}
.contact_details a {
    color: #222222;
}
/* update for optional subtitles 2022-08-31 kve*/
.contact-two_titles {
    margin: -13px 0 -6px;
    line-height: 19px;
}
@media (max-width: 766px) {
    .contact_card {
        display: table;
        margin: 40px auto 20px;
    }
    .contact_picture, .contact_details {
        width: 300px;
    }
    .contact_details {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }
    .contact_picture img {
        width: 100%;
        height: 100%;
    }
}
/* fix for side effects of job search and filter css 2024-03-12 kve */
.wpcf7-form-control-wrap input {
    margin: 0;
}
input.wpcf7-submit {
    margin: 0;
}
/* overrides for page-about */
.boss-wrapper {
    margin-top: 36px;
}

@media (min-width: 767px) {
    .boss-box {
        /* margin-bottom: 4rem; */
        /* display: -webkit-box; */
        /* display: flex; */
        /* -webkit-box-align: center; */
        /* align-items: center; */
        display: block;
        width: 46%;
        float: left;
        margin: 0 2%;
    }
    .boss-wrapper {
        display: flex;
        margin-top: 60px;
    }
}
.boss-box__text.generic-content p {
    -webkit-margin-before: .7rem;
    margin-block-start: .7rem;
    -webkit-margin-after: .7rem;
    margin-block-end: .7rem;
}
.boss-box__text h3 {
    margin-bottom: 0;
}
.about_download_link {
    text-align: center;
    margin-top: 2rem;
    position: relative;
    top: 20px;
}
.about_download_link .btn {
    display:inline-flex;
    justify-content: flex-start;
}
.about_download_link .btn > div {
    display: flex;
    align-items: center;
}

@media (max-width: 959px) {
    .about_download_link {
        top: 0px;
    }
}

/* overrides for page-personal */
.customer_and_projects_link {
    position: relative;
    top: 10px;
}
.page-section--small-padding-bottom {
    padding-bottom: 3rem;
}
/*
.page-section--personal-top {
    background: #0B2A3C url("images/Gitter.svg") no-repeat;
    height: 993px;
    background-position-y: calc(908px - 50vw);
    background-position-x: -20px;
}
*/
.page-section--personal-top .row .generic-content {
    color: white;
    background-color: #003A5F;
    padding: 0 20px;
}
.experts_download_link {
    margin-top: 20px;
}
.experts_download_symbol:before {
    content: "";
    display: block;
    background: url("images/icon-download.png") no-repeat;
    background-size: contain;
    height: 24px;
    width: 18px;
    float: left;
    margin: 0 15px 0 0;
}
.btn:hover .experts_download_symbol:before {
    background: url("images/icon-download-red.png") no-repeat;
    background-size: contain;
    height: 24px;
    width: 18px;
}
.btn.experts_download_link {
    display:inline-flex;
    justify-content: flex-start;
}
.btn.experts_download_link > div {
    display: flex;
    align-items:center;
}

@media screen and (min-width:960px) {
    .page-section--personal-top {
        background: #003A5F url("images/Gitter.svg") no-repeat;
        background-position: right calc(42vw) top calc(6vw);
        height: 800px;
    }
    .page-section--personal-top .row .generic-content {
        margin-left: 42%;
        margin-top: 5%;
    }
}
@media screen and (min-width:1440px) {
    .page-section--personal-top {
        background-position: left -18px top +20px;
    }
}
.wrapper-ultra-wide {
    width: 100%;
    padding: 0 5%;
}
.personal-services {
    display: grid;
    grid-template-columns: repeat(1, minmax(260px, 1fr));
    grid-gap: 40px;
}
@media screen and (min-width:960px) {
    .personal-services {
        grid-template-columns: repeat(2, minmax(260px, 600px));
        justify-content: center;
    }
}

/* frontpage hack for internet explorer */
@media screen and (min-width:960px) and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .row .col--1-of-2 {
        -webkit-box-flex: 0;
        flex: 0 0 44%;
    }
    .row .col {
        margin-bottom: 4rem;
    }
}
/* WordPress admin bar fix */
.admin-bar .site-header--sticky {
    top: 32px;
}

@media screen and (max-width: 782px) {
    .admin-bar .site-header--sticky {
        top: 46px;
    }
    .admin-bar .nav-icon {
        top: 55px;
    }
}

/**** fix for page-template page-referenzen after update 2021-06-12 ****/
.page-template-page-referenzen .portfolio__content {
    max-width: unset;
    grid-column-gap: 0px;
}
.page-template-page-referenzen .portfolio__content .tile__text {
    padding: 1rem;
}
@media (min-width: 960px) {
    .page-template-page-referenzen .portfolio__content .tile {
        flex: 0 0 32%;
    }
}
@media (min-width: 767px) {
    .page-template-page-referenzen .portfolio .tile__text {
        width: 50%;
    }

    .page-template-page-referenzen .portfolio__content {
        width: 100%;
        display: -webkit-box;
        display: flex;
        flex-wrap: wrap;
        -webkit-box-pack: start;
        justify-content: flex-start;
    }

    .page-template-page-referenzen .portfolio__content .tile {
        background-color: white;
        font-size: 1.2rem;
        -webkit-box-flex: 0;
        margin-left: 0.6666666667%;
        margin-right: 0.6666666667%;
    }

    .page-template-page-referenzen .portfolio__content .tile__image {
        width: 100%;
        height: unset;
        margin-top: 0;
        float: none;
        margin-bottom: 0;
    }

    .page-template-page-referenzen .portfolio__content .tile__text {
        width: auto;
        float: none;
        padding: 1.5rem;
        font-size: 1rem;
    }
    .page-template-page-referenzen .portfolio__content .tile__text h3 {
        font-size: 1.5rem;
    ;
    }
}
@media (min-width: 1260px) {
    .page-template-page-referenzen .portfolio__content {
        grid-template-columns: unset;
    }
}
/**** fix for page-template page-referenzen after update 2021-06-12 ****/
.page-template-page-jobboerse .portfolio__content {
    max-width: unset;
    grid-column-gap: 0px;
}
.accordion--white .accordion__item__header {
    padding: 1rem 2rem 1rem 1rem;
}
@media (min-width: 767px) {
    .page-template-page-jobboerse .portfolio__content {
        width: 100%;
        display: -webkit-box;
        display: flex;
        flex-wrap: wrap;
        -webkit-box-pack: start;
        justify-content: flex-start;
    }
}

/**** page-template page-personal ***/
.references-link {
    margin-top: 2rem;
}
@media (min-width: 960px) {
    .references-link {
        margin-top: 5rem;
    }
}

.job-id {
/*
    font-size: 10px;
 */
}

/**** jobboerse filter ****/
.filter-wrapper {
    grid-template-columns: repeat(3, minmax(260px, 1fr));
    display: grid;
    grid-gap: 40px;
    margin-bottom: 40px;
}

.multiselect {
    width: 100%;
}

.selectBox {
    position: relative;
}

.selectBox select {
    width: 100%;
}

.overSelect {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

#mySelectOptions {
    display: none;
    border: 0.5px #7c7c7c solid;
    background-color: #ffffff;
    max-height: 150px;
    overflow-y: scroll;
}

#mySelectOptions label {
    display: block;
    font-weight: normal;
    display: block;
    white-space: nowrap;
    min-height: 1.2em;
    background-color: #ffffff00;
    padding: 0 2.25rem 0 .75rem;
}

input#job-search.search--filter {
    width: 270px;
}

input#job-search.search--filter:focus-visible {
    outline-style: dashed;
}

button#job-search-button, input#job-search.search--filter {
    border: 1px solid darkgray;
    border-radius: 4px;
}

.job-item {
    padding: 1rem 2rem 1rem 1rem;
    background-color: white;
    cursor: pointer;
    position: relative;
    width: 100%;
    margin-bottom: 2rem;
}
.job-item:after {
    content: '>';
    position: absolute;
    top: 50%;
    right: 1rem;
    -webkit-transform: translateY(-50%) scale(.85);
    transform: translateY(-50%) scale(.85);
    font-size: 3rem;
    font-weight: bold;
    opacity: .5;
    transition: transform .2s ease, -webkit-transform .2s ease;
}
.job-item h3 {
    margin-bottom: 0;
}
.job-item .param-list {
    font-size: 1rem;
}
.job-item .param-list li {
    display: inline-block;
    margin-right: 0.5rem;
}
.job-item  .param-list li strong {
    font-family: 'FFKievitWeb Medium', Helvetica, Arial, sans-serif;
}
.portfolio__content a {
    color: black;
    -webkit-box-flex: 0;
    flex: 0 0 100%;
}
.hidden-job-description {
    display: none !important;
}

input#job-search.search--filter.search-active {
    background-color: #ff3434;
    color: white;
}
.job-search-block {
    text-align: center;
    margin-top: 1rem;
}
/*** overwriting above rule for accordion items ***/
@media (min-width: 300px) {
    .page-template-page-jobboerse .portfolio__content {
        width: 100%;
        display: -webkit-box;
        display: flex;
        flex-wrap: wrap;
        -webkit-box-pack: start;
        justify-content: flex-start;
    }
}

@media (min-width: 767px) {
    .intro-text {
        padding: 0 4rem;
    }
}

/* switcher for mobile/desktop sizes */
@media (max-width: 767px) {
	.hide-on-mobile {
		display: none !important;
	}
}
@media (min-width: 768px) {
	.hide-on-desktop {
		display: none !important;
	}
}

/* styling for standard Gutenberg Blocks */
.wp-block-separator {
    border-bottom: 1px solid;
}
.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots) {
  height: 1px;
}

/* avoid stacking of columns on mobile view if required */
@media (max-width: 767px) {
    .no-mobile-stack > .stk-row {
        flex-wrap:nowrap;
	}
}
/* same for tablets */
@media (min-width: 768px) and (max-width: 1024px) {
    .no-tablet-stack > .stk-row {
        flex-wrap:nowrap;
	}
}

/* fix for logo slider manual movement */
/* Erlaubt Touch-Gesten auf der Ticker-Spur */
.dbw-slider-track {
    touch-action: pan-x !important;
}

/* Verhindert, dass Bilder markiert statt verschoben werden */
.dbw-slider-track img {
    user-select: none !important;
    -webkit-user-drag: none !important;
}

@media (max-width: 767px) {
  .dbw-slider-item img {
   max-height: unset;
    height: 76px;
  }
}


