/*
 Theme Name:   Osmosis Child
 Theme URI:    http://wolkenhart.com
 Description:  Osmosis Child Theme
 Version:      1.1.0
 Author:       Webagentur Wolkenhart
 Author URI:   http://wolkenhart.com
 Template:     osmosis
*/

@import url("assets/css/typography.css");
@import url("assets/css/colorscheme.css");
@import url("assets/css/slick.css");
@import url("assets/css/slick-theme.css");


/*-------------------------------------------------------------------------*/
/*	# Boxed Layout
/*-------------------------------------------------------------------------*/
body.fwbw-boxed {
    background-color: var(--fwbw-grey-light);
}
body.fwbw-boxed #grve-theme-wrapper {
    max-width: 1400px;
    margin: 0 auto;
    overflow: initial;
}
body.fwbw-boxed #grve-header #grve-inner-header .grve-container {
    max-width: 1400px;
    background-color: #fff;
    -webkit-box-shadow: 0 0.25em 0.5em rgba(0,0,0,0.2);
    -moz-box-shadow: 0 0.25em 0.5em rgba(0,0,0,0.2);
    box-shadow: 0 0.25em 0.5em rgba(0,0,0,0.2);
}
@media only screen and (max-width: 1200px) {
    body.fwbw-boxed #grve-header:not(.grve-logo-top) #grve-inner-header .grve-logo img {
        height: 40px !important;
        max-height: 46.66% !important;
    }
}

#grve-theme-wrapper .grve-section[data-section-type="fullwidth-boxed"],
#grve-theme-wrapper .grve-section[data-section-type="fullwidth-wide"] {
    visibility: hidden;
    overflow: hidden;
}
#grve-theme-wrapper .grve-section[data-section-type="fullwidth-wide"] .fwbw-in-grid {
    padding-left: calc(100% / 2 - 585px);
    padding-right: calc(100% / 2 - 585px);
}
@media only screen and (max-width: 1200px) {
    #grve-theme-wrapper .grve-section[data-section-type="fullwidth-wide"] .fwbw-in-grid {
        padding-left: calc(100% / 2 - 450px);
        padding-right: calc(100% / 2 - 450px);
    }
}
@media only screen and (max-width: 959px) {
    #grve-theme-wrapper .grve-section[data-section-type="fullwidth-wide"] .fwbw-in-grid {
        padding-left: calc(100% / 2 - 360px);
        padding-right: calc(100% / 2 - 360px);
    }
}
@media only screen and (max-width: 767px) {
    #grve-theme-wrapper .grve-section[data-section-type="fullwidth-wide"] .fwbw-in-grid {
        padding-left: calc(100% / 2 - 95% / 2);
        padding-right: calc(100% / 2 - 95% / 2);
    }
    .overflow-mobile {
        overflow: initial !important;
    }
}

/*-------------------------------------------------------------------------*/
/*	# New Header
/*-------------------------------------------------------------------------*/
body #grve-header {
    z-index: 1000;
}
#grve-header #grve-inner-header .grve-container {
    width: 100%;
    max-width: 1462px;
}
#fwbw-header-wrapper {
    height: 100%;
    padding: 0 calc(100% / 2 - 585px);
}
#grve-header[data-logo-background="transparent"] .grve-logo {
    padding-left: 0;
    padding-right: 15px;
}
@media only screen and (max-width: 1200px) {
    .grve-container {
        width: 900px;
    }
    #fwbw-header-wrapper {
        padding: 0 calc(100% / 2 - 450px);
    }
}
@media only screen and (max-width: 959px) {
    .grve-container {
        width: 720px;
    }
    #fwbw-header-wrapper {
        padding: 0 calc(100% / 2 - 360px);
    }
}
@media only screen and (max-width: 767px) {
    .grve-container {
        width: 95%;
    }
    #fwbw-header-wrapper {
        padding: 0 calc(100% / 2 - 95% / 2);
    }
}

/*-------------------------------------------------------------------------*/
/*	# Footer
/*-------------------------------------------------------------------------*/
#grve-footer {
    z-index: 999;
}
#grve-footer-bar .grve-social {
    font-size: 12px;
}

/*-------------------------------------------------------------------------*/
/*	# Menu
/*-------------------------------------------------------------------------*/

/**
 * Switch to responsive earlier
 */
@media only screen and (max-width: 10000px) {

    /*-------------------------------------------------------------------------*/
    /*	# MAIN MENU
    /*-------------------------------------------------------------------------*/
    #grve-header .grve-responsive-menu-button,
    #grve-header .grve-responsive-menu-text	{
        display: block;
    }
    #grve-main-menu {
        display: none;
    }
    #grve-inner-header .grve-menu-options {
        display: none;
    }

}

/**
 * Menu changes
 */
#grve-header.grve-default .grve-menu-button {
    -webkit-transition: background .2s ease-in-out 0s;
    -moz-transition: background .2s ease-in-out 0s;
    -o-transition: background .2s ease-in-out 0s;
    -ms-transition: background .2s ease-in-out 0s;
    transition: background .2s ease-in-out 0s;
}
a.drk-menu-hidden,
#grve-header.grve-default #grve-main-menu ul li.current-menu-item > a.drk-menu-hidden,
#grve-header.grve-default #grve-main-menu > ul > li.megamenu > ul > li > a.drk-menu-hidden,
#grve-header.grve-default #grve-main-menu > ul > li.megamenu > ul > li > a.drk-menu-hidden:hover {
    color: #000;
    cursor: default;
}
body #grve-header #grve-main-menu li ul {
    padding-left: 0;
}
body #grve-header #grve-main-menu ul li ul li a {
}
body #grve-header #grve-main-menu ul li:not(.megamenu) ul {
    min-width: 280px;
    padding-top: 9px;
    background: #000;
}

.fwbw-menu-items-desktop {
    float: right;
    display: block;
}
.fwbw-menu-items-responsive {
    display: none;
    padding: 0 25px 0 20px;
}
.fwbw-menu-items-desktop .grve-btn {
    display: inline-block;
    margin-left: 22px;
}
.fwbw-menu-items-responsive .grve-btn::after{
    content: "\A";
    white-space: pre;
}
.fwbw-menu-items .grve-btn:first-child {
    margin-left: 0;
}
@media only screen and (max-width: 767px) {
    .fwbw-menu-items .grve-btn + .grve-btn {
        margin-top: 0;
    }
}
@media only screen and (max-width: 600px) {
    .fwbw-menu-items-desktop {
        display: none;
    }
    .fwbw-menu-items-responsive {
        display: block;
        margin-top: 26px;
    }
}

/*-------------------------------------------------------------------------*/
/*	# General Elements
/*-------------------------------------------------------------------------*/
.let-overflow {
    overflow: visible !important;
}
.grve-top-btn {
    z-index: 999;
}

/**
 * Buttons
 */
body .grve-btn, input[type="submit"], input[type="reset"], input[type="button"], button {
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 10px 12px;
    letter-spacing: initial;
    line-height: 16px;
}
body .grve-btn.grve-btn-medium,
input[type="submit"].grve-btn-medium,
input[type="reset"].grve-btn-medium,
input[type="button"].grve-btn-medium,
button.grve-btn-medium {
    font-size: 20px !important;
    padding: 14px 15px;
    line-height: 20px;
}

/**
 * Call Button
 */
a.framed-button {
    display: inline-block;
    background: #fff;
    color: var(--fwbw-red);
    border: 3px solid var(--fwbw-red);
    font-size: 20px;
    font-weight: 700;
    line-height: 44px;
    padding: 0 0.75em;
    -webkit-transition: .15s all ease;
    -moz-transition: .15s all ease;
    -o-transition: .15s all ease;
    -ms-transition: .15s all ease;
    transition: .15s all ease;
}
a.call-button {
    padding: 0 0.75em 0 0;
}
a.framed-button:hover {
    background: var(--fwbw-red);
    color: #fff;
}
a.call-button:before {
    content: '';
    display: inline-block;
    height: 44px;
    width: 2em;
    padding: 0 4px;
    vertical-align: top;
    margin-right: 0.75em;
    margin-top: 0;
    color: #fff;
    background: var(--fwbw-red) url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3e%3cpath fill='%23ffffff' d='M39.8 42.65q-6.25 0-12.4-3.05t-11.075-7.95Q11.4 26.75 8.35 20.575 5.3 14.4 5.3 8.2q0-1.25.85-2.1.85-.85 2.05-.85h7q1.2 0 1.975.675Q17.95 6.6 18.2 7.8l1.35 5.85q.2 1.05-.025 1.85t-.825 1.4l-5.15 4.85q2.6 4.3 5.775 7.425Q22.5 32.3 26.45 34.45l4.9-5q.7-.75 1.575-1.025.875-.275 1.875-.025l5.35 1.25q1.2.3 1.875 1.125T42.7 32.8v6.9q0 1.25-.85 2.1-.85.85-2.05.85Z'/%3e%3c/svg%3e") no-repeat center center / auto 75%;
}
@media only screen and (max-width: 767px) {

    a.framed-button {
        font-size: 16px;
        line-height: 34px;
    }
    a.call-button:before {
        height: 34px;
    }
}

/**
 * Image Captions
 */
body .wp-caption {
    position: relative;
}
body .wp-caption .wp-caption-text {
    position: absolute;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.8);
    padding: 5px 10px;
}

/*-------------------------------------------------------------------------*/
/*	# Sidebar
/*-------------------------------------------------------------------------*/
@media only screen and (max-width: 1200px) {
    body #grve-main-content #grve-sidebar-wrapper {
        width: 25% !important;
    }
    body #grve-main-content #grve-sidebar,
    body #grve-main-content #grve-sidebar.grve-fixed-sidebar {
        width: 25% !important;
    }
    body #grve-main-content #grve-sidebar-wrapper #grve-sidebar.grve-fixed-sidebar {
        width: 100% !important;
    }
}
@media only screen and (max-width: 1023px) {
    body #grve-main-content #grve-sidebar-wrapper {
        width: 100% !important;
    }
    body #grve-main-content #grve-sidebar,
    body #grve-main-content #grve-sidebar.grve-fixed-sidebar,
    body #grve-main-content #grve-sidebar-wrapper #grve-sidebar.grve-fixed-sidebar{
        width: 100% !important;
        display: flex;
        flex-wrap: wrap;
        gap: 30px;
    }
    body #grve-main-content #grve-sidebar .widget,
    body #grve-main-content #grve-sidebar .widget {
        width: 100%;
        max-width: calc(50% - 15px);
    }
}
@media only screen and (max-width: 600px) {
    body #grve-main-content #grve-sidebar,
    body #grve-main-content #grve-sidebar.grve-fixed-sidebar {
        display: flex;
        gap: 30px;
    }
    body #grve-main-content #grve-sidebar .widget,
    body #grve-main-content #grve-sidebar .widget {
        max-width: 100%;
    }

}

/*-------------------------------------------------------------------------*/
/*	# VC / WPB Blocks
/*-------------------------------------------------------------------------*/

/**
 * Block: Accordion
 */
.vc_tta-panels .vc_tta-panel {
    margin-bottom: 16px;
}
.vc_tta-panels .vc_tta-panel:last-child {
    margin-bottom: 0;
}

.vc_tta-accordion .vc_tta-panel-title,
#grve-main-content .vc_tta-accordion .vc_tta-panel-title {
    line-height: 20px;
    background-color: var(--fwbw-text);
    margin-bottom: 0;
}
.vc_tta-accordion .vc_tta-panel-title > a {
    position: relative;
    display: block;
    padding: 19px 37px;
    color: #fff;
}
.vc_tta-accordion .vc_tta-panel-title > a:hover,
.vc_tta-accordion .vc_active .vc_tta-panel-title > a:hover {
    color: #fff;
}
.vc_tta-accordion .vc_tta-panel-title > a > i {
    display: inline-block;
    height: 12px;
    width: 12px;
    position: absolute;
    top: 50%;
    right: 37px;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
.vc_tta .vc_tta-controls-icon.vc_tta-controls-icon-chevron:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    left: 2px;
    right: 2px;
    top: 2px;
    bottom: 2px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg) translate(-25%,-25%);
    border-color: #fff;
}
.vc_tta .vc_active .vc_tta-controls-icon.vc_tta-controls-icon-chevron:before {
     transform: rotate(225deg) translate(-25%,-25%);
 }

.vc_tta-panel-body {
    height: 0;
    overflow-y: hidden;
    padding: 0 37px;
}
.vc_tta-panel.vc_active .vc_tta-panel-body {
    height: auto;
    padding: 19px 37px 37px;
}

/**
 * Block: Counter
 */
.grve-counter .grve-counter-content h1.grve-counter-title,
.grve-counter .grve-counter-content h2.grve-counter-title,
.grve-counter .grve-counter-content h3.grve-counter-title,
.grve-counter .grve-counter-content h4.grve-counter-title,
.grve-counter .grve-counter-content h5.grve-counter-title,
.grve-counter .grve-counter-content h6.grve-counter-title {
    font-weight: 300;
    line-height: 1.4em;
    letter-spacing: initial;
}
.grve-counter .grve-counter-item {
    font-weight: 600;
    letter-spacing: 0.05em;
}

/**
 * Block: Callout
 */
.grve-callout {
    width: 100%;
}
.grve-callout h1,
.grve-callout h2,
.grve-callout h3,
.grve-callout h4,
.grve-callout h5,
.grve-callout h6 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 0;
}
.grve-callout .grve-callout-wrapper p {
    font-size: 18px;
}
.grve-callout .grve-callout-content + p {
    margin-top: 0.400em;
}
.grve-callout .grve-leader-text p, .grve-callout p.grve-leader-text {
    font-size: 28px;
    margin-top: 0.200em;
}
@media only screen and (max-width: 1023px) {
    body .grve-element.grve-callout .grve-callout-wrapper,
    body .grve-element.grve-callout .grve-button-wrapper {
        text-align: center;
    }
}

/**
 * Block: Blog
 */
.grve-blog-item.grve-isotope-item .grve-isotope-item-inner {
    background-color: var(--fwbw-blue-light);
}
.grve-blog-item.grve-isotope-item .grve-post-content {
    padding: 0 24px 16px;
}
#grve-main-content .grve-blog-item.grve-isotope-item a .grve-post-title {
    color: var(--fwbw-red);
}
#grve-main-content .grve-blog-item.grve-isotope-item a:hover .grve-post-title {
    color: var(--fwbw-red-hover);
}
#grve-main-content .grve-read-more {
    color: var(--fwbw-mid-blue);
}
#grve-main-content .grve-read-more:hover {
    color: var(--fwbw-text);
}

/**
 * Block: Bite Header
 */
.fwbw-bite-header-grid {
    display: grid;
    grid-template-columns: auto 292px;
    width: 100%;
    max-width: 1122px;
    margin: 0 auto;
}
.fwbw-bite-header-grid p {
    margin: 0;
}
.fwbw-bite-header-grid .fwbw-bh-title {
    grid-column: 1 / span 2;
    grid-row: 1;
    font-size: 80px;
    line-height: 104px;
    font-weight: 800;
    color: #fff;
    background-color: rgba( 0,0,0, 0.4);
    padding: 0 25px 4px;
}
.fwbw-bite-header-grid .fwbw-bh-subtitle {
    grid-column: 1 / span 1;
    grid-row: 2 / span 1;
    font-size: 32px;
    line-height: 42px;
    font-weight: 600;
    color: #fff;
    font-style: italic;
    padding: 25px 25px 55px;
}
.fwbw-bite-header-grid .fwbw-bh-buttons {
    grid-column: 1 / span 1;
    grid-row: 3 / span 1;
}
.fwbw-bite-header-grid .fwbw-button-angle {
    display: none;
    position: absolute;
    top: 50%;
    right: 9px;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);
    font-size: 20px;
}
.fwbw-bite-header-grid .fwbw-bh-buttons .grve-btn {
    line-height: 20px;
    padding: 19px 37px;
    display: inline-block;
    margin: 0 32px 32px 0;
    position: relative;
}
.fwbw-bite-header-grid .fwbw-bh-buttons .grve-btn:last-child {
    margin-right: 0;
}
.fwbw-bite-header-grid .joboffers-table {
    grid-column: 2 / span 1;
    grid-row: 2 / span 3;
}
body .bite-container--foot--btn:hover, body .joboffers-table .bite-container--foot--btn:hover, body #grve-theme-wrapper .joboffers-table .bite-container--foot--btn:hover,
body .bite-container--foot--reset-btn:hover, body .joboffers-table .bite-container--foot--reset-btn:hover, body #grve-theme-wrapper .joboffers-table .bite-container--foot--reset-btn:hover{
    background-color: var(--fwbw-text) !important;
}

@media only screen and (max-width: 1023px) {
    .fwbw-bite-header-grid .fwbw-bh-title {
        font-size: 60px;
        line-height: 80px;
        font-weight: 700;
    }
}
@media only screen and (max-width: 700px) {
    .fwbw-bite-header-grid {
        grid-template-columns: auto;
    }
    .fwbw-bite-header-grid .fwbw-bh-title {
        grid-column: 1 / span 1;
        grid-row: 1;
        font-size: 40px;
        line-height: 50px;
        font-weight: 700;
        -moz-hyphens: auto;
        -o-hyphens: auto;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
        padding: 13px 16px 16px;
    }
    .fwbw-bite-header-grid .fwbw-bh-subtitle {
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        font-size: 28px;
        line-height: 38px;
        -moz-hyphens: auto;
        -o-hyphens: auto;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
        padding: 25px 16px 25px;
    }
    .fwbw-bite-header-grid .fwbw-bh-buttons {
        grid-column: 1 / span 1;
        grid-row: 3 / span 1;
        margin-bottom: 50px;
    }
    .fwbw-bite-header-grid .fwbw-button-angle {
        display: inline-block;
    }
    .fwbw-bite-header-grid .fwbw-bh-buttons .grve-btn {
        display: inline-block;
        width: calc(50% - 16px);
        margin: 0 32px 32px 0;
        padding: 1.6em 32px;
    }
    .fwbw-bite-header-grid .fwbw-bh-buttons .grve-btn:last-child {
        margin-right: 0;
    }
    .fwbw-bite-header-grid .joboffers-table {
        grid-column: 1 / span 1;
        grid-row: 4 / span 1;
        grid-row-start: 4;
        grid-row-end: span 1;
    }
}
@media only screen and (max-width: 600px) {
    .fwbw-bite-header-grid .fwbw-bh-buttons .grve-btn {
        display: block;
        width: 100%;
        margin: 0 32px 32px 0;
    }
}
@media only screen and (max-width: 500px) {
    .fwbw-bite-header-grid .fwbw-bh-title {
        font-size: 30px;
        line-height: 40px;
    }
    .fwbw-bite-header-grid .fwbw-bh-subtitle {
        font-size: 22px;
        line-height: 32px;
    }
}

/**
 * Block: DRK Stage
 */
.fwbw-vc-stage-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    align-items: center;
}
.fwbw-vc-stage-grid .content-col {
    grid-column: 1;
    grid-row: 1;
}
.fwbw-vc-stage-grid .content-col .content {
    padding: 0 32px 0 calc(100% - 585px);
}
.fwbw-vc-stage-grid .image-col {
    grid-column: 2;
    height: 100%;
    grid-row: 1;
}
.fwbw-vc-stage-grid .image-col img {
    width: 100%;
    height: auto;
}
.fwbw-vc-stage-grid .image-col img.mobile {
    display: none;
}
@media only screen and (max-width: 1200px) {
    .fwbw-vc-stage-grid .content-col .content {
        padding: 0 32px 0 calc(100% - 450px);
    }
}
@media only screen and (max-width: 959px) {
    .fwbw-vc-stage-grid .content-col .content {
        padding: 0 32px 0 calc(100% - 360px);
    }
}
@media only screen and (max-width: 767px) {
    .fwbw-vc-stage-grid {
        grid-template-columns: 1fr;
        gap: 32px;
        align-items: start;
    }
    .fwbw-vc-stage-grid .content-col {
        grid-column: 1;
        grid-row: 2;
    }
    .fwbw-vc-stage-grid .image-col {
        grid-column: 1;
        height: auto;
        grid-row: 1;
    }
    .fwbw-vc-stage-grid .content-col .content {
        padding: 0 calc(100% / 2 - 95% / 2);
    }
    .fwbw-vc-stage-grid .image-col img.desktop {
        display: none;
    }
    .fwbw-vc-stage-grid .image-col img.mobile {
        display: block;
    }
}

/**
 * Block: DRK CTA Questions
 */
.fwbw-cta-questions {
    background-color: var(--fwbw-grey-light);
    padding-top: 200px;
}
    .fwbw-ctaq-inner {
        background-color: #fff;
        font-size: 20px;
        padding-bottom: 40px;
    }
    .fwbw-ctaq-header {
    }
    .fwbw-ctaq-header img {
        width: 100%;
        height: auto;
        margin-top: -72px;
    }
    .fwbw-ctaq-header .mobile {
        display: none;
    }
    body h3.fwbw-ctaq-title {
        font-weight: 700;
        font-size: 30px;
        text-transform: none;
        margin: 26px 0;
    }
    .fwbw-ctaq-wrap {
        margin: 48px 0 0;
    }
    .fwbw-ctaq-button a {
        margin-top: 12px;
        margin-right: 30px;
    }
    .button-with-content .fwbw-ctaq-wrap {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 30px;
        align-items: start;
    }
    .button-with-content .fwbw-ctaq-button {
        padding-top: 10px;
        grid-column: 1;
    }
    .button-with-content .fwbw-ctaq-button a {
        margin-bottom: 26px;
    }
    .button-with-content .fwbw-ctaq-content {
        grid-column: 2 / span 2;
    }
@media only screen and (max-width: 959px) {
    .button-with-content .fwbw-ctaq-wrap {
        grid-template-columns: 1fr 1fr;
    }
    .button-with-content .fwbw-ctaq-button {
        padding-top: 10px;
        grid-column: 1;
    }
    .button-with-content .fwbw-ctaq-content {
        grid-column: 2 / span 1;
    }
}
@media only screen and (max-width: 767px) {
    .fwbw-cta-questions {
        padding-top: 116px;
    }
    body h3.fwbw-ctaq-title {
        font-size: 26px;
        margin: 0 0 26px;
    }
    .fwbw-ctaq-inner {
        position: relative;
        font-size: 16px;
        padding-top: 26px;
    }
    .fwbw-ctaq-header {
        display: flex;
        position: absolute;
        top: -116px;
        left: 0;
        height: 116px;
        width: 100%;
        padding: 0 15px;
    }
    .fwbw-ctaq-header img {
        margin-top: 0;
    }
    .fwbw-ctaq-header .desktop {
        display: none;
    }
    .fwbw-ctaq-header .mobile {
        display: block;
        max-width: 320px;
        margin: 0 auto;
    }
    .fwbw-ctaq-wrap {
        margin: 30px 0 0;
    }
    .button-with-content .fwbw-ctaq-wrap {
        grid-template-columns: 1fr;
    }
    .button-with-content .fwbw-ctaq-button {
        padding-top: 0;
        grid-column: 1;
        grid-row: 2;
    }
    .button-with-content .fwbw-ctaq-content {
        grid-column: 1;
        grid-row: 1;
    }
}

/**
 * Block: DRK News Carousel
 */
.drk-news-carousel {
    margin: 90px -30px;
}
.drk-news-slideinner {
    margin: 0 30px;
}
.drk-news-slide a {
    display: block;
    color: var(--fwbw-text);
    background-color: transparent;
    -webkit-transition: all .2s linear 0s;
    -moz-transition: all .2s linear 0s;
    -o-transition: all .2s linear 0s;
    -ms-transition: all .2s linear 0s;
    transition: all .2s linear 0s;
}
.drk-news-slide a:hover {
    color: var(--fwbw-text);
}
.drk-news-slide .drk-slide-image {
    background-color: var(--fwbw-text);
    margin-bottom: 28px;
}
.drk-news-slide .drk-slide-image img {
    vertical-align: top;
    opacity: 1;
    -webkit-transition: opacity .2s linear 0s;
    -moz-transition: opacity .2s linear 0s;
    -o-transition: opacity .2s linear 0s;
    -ms-transition: opacity .2s linear 0s;
    transition: opacity .2s linear 0s;
}
.drk-news-slide a:hover .drk-slide-image img {
    opacity: 0.9;
}
.drk-news-slide p.drk-slide-date {
    margin-bottom: 0;
    font-size: 14px;
}
.drk-news-slide .drk-slide-title {
    min-height: 2.8em;
    margin-bottom: 16px;
}

@media screen and (max-width: 1320px) {
    .drk-news-carousel {
        padding-top: 80px;
    }
}
@media screen and (max-width: 768px) {
    .drk-news-carousel {
        margin-top: 0;
        margin-bottom: 30px;
    }
}

/**
 * Block: DRK Image Text
 */
.drk-vc-imagetext {
    display: block;
    margin-top: 32px;
    margin-bottom: 64px;
}
.title-col {
    margin-bottom: 24px;
}
.drk-vc-imagetext .title-inline {
    display: none;
}
@media screen and (min-width: 769px) {
    .drk-vc-imagetext {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
        align-items: start;
        margin-bottom: 32px;
    }
    .title-col {
        display: none;
    }
    .drk-vc-imagetext .title-inline {
        display: block;
    }
    .image-col {
        grid-row: 1 / span 2;
    }
    .drk-it-right .image-col {
        grid-column: 2;
    }
    .drk-it-right .content-col {
        grid-column: 1;
    }
    .drk-it-left .image-col {
        grid-column: 1;
    }
    .drk-it-left .content-col {
        grid-column: 2;
    }
}

/*-------------------------------------------------------------------------*/
/*	# Widgets
/*-------------------------------------------------------------------------*/
#grve-main-content .widget,
#grve-main-content .widget_drk_teaser {
    background-color: var(--fwbw-blue-light);
    color: var(--fwbw-text);
    padding: 16px 24px;
}
#grve-main-content .grve-widget-title,
body #grve-main-content .widget_drk_teaser .grve-widget-title {
    color: var(--fwbw-text);
    padding: 0;
    margin: 12px 0 6px;
    font-size: 24px;
    line-height: 30px;
    font-weight: 700;
    text-transform: uppercase;
}
body #grve-main-content .widget_drk_teaser .fwbw-widget-teaser-content {
    color: var(--fwbw-text);
    padding: 0;
    margin: 0 0 20px;
    font-size: 16px;
    line-height: 24px;
}
body #grve-main-content .widget_drk_teaser .fwbw-widget-teaser-button {
    display: block;
    color: #fff;
    background-color: var(--fwbw-red);
    padding: 10px 12px;
    margin: 0;
    font-size: 16px;
    line-height: 16px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
}
body #grve-main-content .widget_drk_teaser .fwbw-widget-teaser-button:hover {
    background-color: var(--fwbw-text);
}

/**
 * Caldera Forms
 */
body #grve-main-content .caldera-grid h4,
body #grve-main-content .caldera-grid h5 {
    margin-top: 30px;
}
body #grve-main-content .caldera-grid p,
body #grve-main-content .caldera-grid .help-block {
    font-family: "Open Sans";
    font-weight: 400;
    font-style: normal;
    font-size: 14px !important;
    margin: 20px 0 15px;
}
body #grve-main-content .caldera-grid .help-block {
    margin: 0;
}
body .caldera-grid label {
    line-height: 30px;
    font-size: 14px !important;
    color: var(--fwbw-text);
    font-weight: 400;
    text-transform: none;
}
body #grve-main-content .caldera-grid .checkbox label,
body #grve-main-content .caldera-grid .radio label,
body #grve-main-content .caldera-grid label.radio-inline,
body #grve-main-content .caldera-grid label.checkbox-inline {
    text-transform: none;
}
body .caldera-grid .form-group, body .cf-color-picker .form-group {
    margin-bottom: 15px;
}
body .caldera-grid a {
    color: var(--fwbw-mid-blue);
    font-weight: 700;
}
body .caldera-grid a:hover {
    color: var(--fwbw-red-hover);
    font-weight: 700;
    text-decoration: underline;;
}
body .caldera-grid input[type=text], body .caldera-grid input[type=email], body .caldera-grid input[type=tel],
body .caldera-grid input[type=password], body .caldera-grid input[type=number], body .caldera-grid input[type=search],
body .caldera-grid input[type=phone], body .caldera-grid input[type=url] {
    width:100%!important;
    height: auto;
    padding: 15px 10px;
    max-width:100%;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: 0 0 0 0 rgba(255,255,255,1);
    -moz-box-shadow: 0 0 0 0 rgba(255,255,255,1);
    box-shadow: 0 0 0 0 rgba(255,255,255,1);
}
body .intl-tel-input {
    display: block;
}
body .caldera-grid textarea,
body .caldera-grid textarea.form-control {
    width:100%;
    max-width:100%;
    padding: 15px 10px;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: 0 0 0 0 rgba(255,255,255,1);
    -moz-box-shadow: 0 0 0 0 rgba(255,255,255,1);
    box-shadow: 0 0 0 0 rgba(255,255,255,1);
}
select, body .caldera-grid select, body .caldera-grid select.form-control {
    max-width:100%;
    height: auto;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: 0 0 0 0 rgba(255,255,255,1);
    -moz-box-shadow: 0 0 0 0 rgba(255,255,255,1);
    box-shadow: 0 0 0 0 rgba(255,255,255,1);
}
body .caldera-grid .form-control:focus {
    -webkit-box-shadow: 0 0 0 0 rgba(255,255,255,1);
    -moz-box-shadow: 0 0 0 0 rgba(255,255,255,1);
    box-shadow: 0 0 0 0 rgba(255,255,255,1);
    outline: none !important;
    border-color: #ccc;
}
body .caldera-grid input[type=submit], body .caldera-grid input[type=button], body .caldera-grid input[type=reset],
body .caldera-grid .button, body .caldera-grid .uploadButton, body .caldera-grid .btn,
body .caldera-grid .form-control.cf2-file .btn {
    background: var(--fwbw-red);
    color:#fff;
    font-style: normal;
    text-transform: uppercase;
    border: 0 none;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 10px 12px;
    letter-spacing: initial;
    line-height: 16px;
}
body .caldera-grid .form-control.cf2-file .btn {
    background: #333;
    padding: 12px 4.000em;
}
input[type=submit]:hover, input[type=button]:hover, body .button:hover, .uploadButton:hover,
body .caldera-grid input[type=submit]:hover, body .caldera-grid input[type=button]:hover, body .caldera-grid input[type=reset]:hover,
body .caldera-grid .button:hover, body .caldera-grid .uploadButton:hover, body .caldera-grid .btn:hover,
body .caldera-grid .form-control.cf2-file .btn:hover,
body .wp-block-button__link:active, body .wp-block-button__link:focus, body .wp-block-button__link:hover, body .wp-block-button__link:visited {
    background-color: var(--fwbw-text);
    color: #fff;
}
body .caldera-grid .form-control.cf2-file .btn:hover {
    background: var(--fwbw-text);
}

body .cf2-dropzone ul {
    margin-left: 0;
    list-style: none;
    margin-bottom: 14px;
}
body body .cf2-dropzone ul li {
    margin-bottom: 10px;
}
body .caldera-grid ul.cf2-list-files .cf2-file-listed .cf2-file-control {
    font-size: 14px;
    line-height: 20px;
}
body .caldera-grid ul.cf2-list-files .cf2-file-listed progress.cf2-file-progress-bar {
    margin-top: 6px;
}
body .caldera-grid ul.cf2-list-files .cf2-file-listed .cf2-file-extra-data {
    margin-top: -12px;
    color: var(--fwbw-text);
}
#grve-theme-wrapper input[type="checkbox"], #grve-theme-wrapper input[type="radio"] {
    position: absolute;
    margin-left: 0;
    left: 0;
    top: 9px;
}
#grve-theme-wrapper .checkbox-inline input[type="checkbox"] {
    top: 7px;
}
#grve-theme-wrapper .checkbox-inline.caldera-forms-consent-field input[type="checkbox"] {
    top: 9px;
}
.checkbox-inline.caldera-forms-consent-field label {
    margin-left: 0 !important;
}
.checkbox-inline.caldera-forms-consent-field p {
    display: block;
    margin-bottom: 0;
}
.checkbox-inline.caldera-forms-consent-field p, .checkbox-inline.caldera-forms-consent-field a {
    font-weight: 400;
}
.checkbox-inline.caldera-forms-consent-field > span {
    position: absolute;
    left: 100%;
    top: 0;
}

.caldera-check-rows > div {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}
body .caldera-check-rows > div > div.checkbox,
body .caldera-check-rows > div > div.radio,
body .caldera-grid .caldera-check-rows .checkbox + .checkbox,
body .caldera-grid .caldera-check-rows .radio + .radio {
    margin-top: 0;
}
body .caldera-grid .checkbox-inline + .checkbox-inline, body .caldera-grid .radio-inline + .radio-inline {
    margin-left: 20px;
}

body .caldera-grid .has-error .checkbox, body .caldera-grid .has-error .checkbox-inline,
body .caldera-grid .has-error .help-block, body .caldera-grid .has-error .radio, body .caldera-grid .has-error .radio-inline {
    color: var(--fwbw-red);
}
body .caldera-grid .has-error .control-label,
body .caldera-grid .has-error.checkbox label, body .caldera-grid .has-error.checkbox-inline label, body .caldera-grid .has-error.radio label,
body .caldera-grid .has-error.radio-inline label {
    color: var(--fwbw-red);
}
body input.form-control.parsley-success,
body input.parsley-success {
    color: var(--fwbw-text);
}
body .caldera-grid .form-control {
    border-color: var(--fwbw-mid-blue);
}
body .caldera-grid .form-control::placeholder {
    color: var(--fwbw-text);
}
@media screen and (max-width: 1200px) and ( min-width: 768px) {
    body .caldera-grid .fbw-label-height label {
        min-height: 60px;
    }
}

@media screen and (max-width: 768px) {
    .caldera-check-rows > div {
        display: grid;
        grid-template-columns: 1fr;
    }
}

#grve-main-content .grve-sidebar-colored {}

body .grve-sidebar .widget, body .grve-sidebar .widgets {
    margin-bottom: 30px;
}

/**
 * Bite Content
 */
#bite-map-container {
    height: 450px;
}

.bite-container--head, .joboffers-table .bite-container--head, body #grve-theme-wrapper .joboffers-table .bite-container--head {
    background-color: var(--fwbw-text) !important;
}
.bite-container--foot--reset-btn, .joboffers-table .bite-container--foot--reset-btn, body #grve-theme-wrapper .joboffers-table .bite-container--foot--reset-btn {
    padding: 0 15px 0 0 !important;
}
.widget .bite-container--head, .widget .joboffers-table .bite-container--head, body #grve-theme-wrapper .widget .joboffers-table .bite-container--head {
    background-color: transparent !important;
    color: var(--fwbw-text);
    padding: 0;
    margin: 12px 0 24px;
    font-size: 24px;
    line-height: 30px;
    font-weight: 700;
    text-transform: uppercase;
}
.widget .bite-container--cnt, .widget .joboffers-table .bite-container--cnt, body #grve-theme-wrapper .widget .joboffers-table .bite-container--cnt {
    background-color: transparent !important;
    padding: 0;
}
body .widget .bite-container--block-100, body .widget .joboffers-table .bite-container--block-100, body #grve-theme-wrapper  .widget .joboffers-table .bite-container--block-100 {
    margin-top: 16px !important;
}
.widget .bite-container--foot, .widget .joboffers-table .bite-container--foot, body #grve-theme-wrapper .widget .joboffers-table .bite-container--foot {
    margin-top: 16px;
}
.widget .bite-container--foot--arrow, .widget .joboffers-table .bite-container--foot--arrow, body #grve-theme-wrapper .joboffers-table .widget .bite-container--foot--arrow {
    display: none !important;
}

body #grve-theme-wrapper .bite-container input {
    font-family:Open Sans,sans-serif;
    font-weight:400;
    font-size:16px;
    color:#000;
    text-transform:uppercase
}
body #grve-theme-wrapper .bite-container input::-webkit-input-placeholder {
    font-family:inherit!important;
    font-size:16px;
    color:#000;
    opacity: 1;
}
body #grve-theme-wrapper .bite-container input::-moz-placeholder {
    font-family:inherit!important;
    font-size:16px;
    color:#000;
    opacity: 1;
}
body #grve-theme-wrapper .bite-container input:-ms-input-placeholder {
    font-family:inherit!important;
    font-size:16px;
    color:#000;
    opacity: 1;
}
body #grve-theme-wrapper .bite-container input::-ms-input-placeholder {
    font-family:inherit!important;
    font-size:16px;
    color:#000;
    opacity: 1;
}
body #grve-theme-wrapper .bite-container input::placeholder {
    font-family:inherit!important;
    font-size:16px;
    color:#000;
    opacity: 1;
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block {
    width:100%;
    border:0;
    position:relative;
    overflow:visible
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block:first-child {
    margin-right:0
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block input {
    width:100%;
    height:50px;
    border:1px solid #000;
    outline:0;
    line-height:50px;
    padding:0 10px
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .child {
    color:#000;
    background-color:#fff;
    cursor:pointer;
    padding:5px 7px;
    height:50px;
    font-size:16px;
    border:1px solid #000;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    text-transform:uppercase
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .child:after {
    content:"";
    width:10px;
    height:10px;
    display:block;
    position:absolute;
    right:12px;
    top:15px;
    -webkit-transform:none;
    transform:none
}
body #grve-theme-wrapper .bite-container--cnt .bite-select-block.bite-dropdown-select--block .child::after {
    content: "";
    width: 0;
    height: 0;
    display: block;
    position: absolute;
    right: 10px;
    top: 20px;
    border-top: 10px solid #000;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    -webkit-transform: none;
    transform: none;
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .ul {
    position:absolute;
    top:49px;
    margin:0!important;
    padding:0!important;
    width:100%;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    background-color:#fff;
    color:#000;
    border-color:#000;
    border-style:solid;
    border-width:0 1px;
    -webkit-transition-duration:0s,0s;
    transition-duration:0s,0s;
    text-transform:none;
    font-size:14.62px
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .ul .li {
    border:0;
    margin:0;
    padding:5px 7px;
    color:#000;
    cursor:pointer;
    background-color:#fff;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    border-bottom:1px solid #000
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .ul .li:last-child {
    border-bottom:0
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .ul .li:before {
    content:""
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .ul .li:hover {
    color:#e60005;
    background-color:#fff
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .ul .li.active {
    font-weight:700;
    color:#e60005;
    background-color:#fff
}
body #grve-theme-wrapper .bite-container .bite-select-block.bite-dropdown-select--block .ul.active {
    border-top-width:1px;
    border-bottom-width:1px;
    max-height:190px!important;
    overflow-y:auto
}
body #grve-theme-wrapper .bite-container--block-40 {
    width:calc(40% - 50px);
    padding-right:1rem;
    position:relative
}
body #grve-theme-wrapper .bite-container--block-40 input {
    width:100%;
    border:1px solid #000;
    padding:0 10px 0 40px;
    line-height:50px;
    outline:0;
    height:50px
}
body #grve-theme-wrapper .bite-container--block-40:after {
    content:"";
    position:absolute;
    width:30px;
    height:30px;
    top:10px;
    left:5px;
    background-image:url(https://cs-assets.b-ite.com/drk-aalen-freiwilligendienste/images/search.svg);
    background-repeat:no-repeat;
    background-size:18px;
    background-position:50%
}
body #grve-theme-wrapper .bite-container--block-10 {
    width:50px;
    height:50px;
    background-color:#e60005;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    cursor:pointer
}
body #grve-theme-wrapper .bite-container--block-10 img {
    display:block;
    width:18px;
    margin:auto;
    -webkit-transform:rotate(90deg);
    transform:rotate(90deg)
}
body #grve-theme-wrapper .bite-container--location-row {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
    -ms-flex-direction:row;
    flex-direction:row
}
body #grve-theme-wrapper .bite-container--location-row .bite-select-block.bite-dropdown-select--block.bite-radius {
    width:60px;
    margin-left:-1px
}
body #grve-theme-wrapper .bite-container--block-30 {
    width:30%;
    padding-right:1rem
}
body #grve-theme-wrapper .bite-container--drop-filter .bite-select-block.bite-dropdown-select--block .child {
    padding-left:40px
}
body #grve-theme-wrapper .bite-container--drop-filter .bite-select-block.bite-dropdown-select--block .child:after {
    content:"";
    position:absolute;
    width:30px;
    height:100%;
    top:0;
    left:5px;
    background-image:url(https://cs-assets.b-ite.com/drk-aalen-freiwilligendienste/images/arrow-filter.svg);
    background-repeat:no-repeat;
    background-size:18px;
    background-position:50%
}
body #grve-theme-wrapper .bite-container--search-widget .bite-container--cnt {
    display: grid;
    grid-template-columns: auto 80px;
    grid-gap: 15px;
}
body #grve-theme-wrapper .bite-container--search-widget .bite-container--cnt > div {
    width: auto;
    padding: 0;
    margin: 0;
}
body #grve-theme-wrapper .bite-container--search-widget .bite-container--cnt > div:first-child {
    grid-column: 1 / span 1;
    grid-row: 1 / span 1;
}
body #grve-theme-wrapper .bite-container--search-widget .bite-container--cnt > div:nth-child(2) {
    grid-column: 2 / span 1;
    grid-row: 1 / span 1;
}
body #grve-theme-wrapper .bite-container--search-widget .bite-container--cnt > div:last-child {
    grid-column: 1 / span 2;
    grid-row: 2 / span 1;
}
body #grve-theme-wrapper .bite-container--search-widget .bite-container--cnt > div:nth-child(2) .bite-select-block.bite-dropdown-select--block .child::after {
    display: none;
}
body #grve-theme-wrapper .bite-container--search-widget .bite-container--cnt > div:nth-child(2) .bite-select-block .bite-select-block-header {
    justify-content: center;
}

body #grve-theme-wrapper .fwbw-bite-header-grid .bite-container input::placeholder {
    color: #fff;
}
body #grve-theme-wrapper .fwbw-bite-header-grid .bite-container .bite-select-block.bite-dropdown-select--block input {
    background-color: rgba(0,0,0,0.4);
    border-color: rgba(0,0,0,0.0);
    color: #fff;
}
body #grve-theme-wrapper .fwbw-bite-header-grid .bite-container .bite-select-block.bite-dropdown-select--block .child {
    background-color: rgba(0,0,0,0.4);
    border-color: rgba(0,0,0,0.0);
    color: #fff;
}
body #grve-theme-wrapper .fwbw-bite-header-grid .bite-container--cnt .bite-select-block.bite-dropdown-select--block .child::after {
    border-top-color: #fff;
}

#fwbw-contact-float {
    position: fixed;
    top: 11rem;
    right: -19.5rem;
    width: 22.5rem;
    z-index: 9990;
    transition: right 0.4s;
}
#fwbw-contact-float.active {
    right: 0;
    z-index: 1000;
}
#fwbw-contact-float p.fwbw-ctctf-title {
    -webkit-writing-mode: vertical-lr;
    writing-mode: vertical-lr;
    transform: rotate(180deg);
    flex-shrink: 0;
    width: 3rem;
    line-height: 3rem;
    margin: 0;
    padding: 1rem 0;
    font-weight: 300;
    font-size: 1.5rem;
    color: var(--fwbw-text);
    border: 1px solid #F7F7F7;
    border-width: 1px 0 1px 1px;
    background-color: #FFFFFF;
    box-shadow: 0.125em -0.125em 0.25em -0.125em rgba(0,0,0,0.2);
    cursor: pointer;
    z-index: 1;
}
#fwbw-contact-float .fwbw-ctcf-content {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 0;
}
#fwbw-contact-float .fwbw-ctcf-body {
    flex-grow: 1;
    max-height: calc(100vh - 12rem);
    padding: 1rem;
    overflow-y: auto;
    border: 1px solid #F7F7F7;
    border-width: 1px 0 1px 1px;
    background-color: #FFFFFF;
    transition: box-shadow 0.1s ease 0.4s;
}
#fwbw-contact-float.active .fwbw-ctcf-body {
    box-shadow: -0.125em 0.125em 0.25em -0.125em rgba(0,0,0,0.2);
    transition: box-shadow 0.1s;
}
#fwbw-contact-float .fwbw-ctcf-body .widget {
    color: var(--fwbw-text);
    padding: 0;
    margin: 0 0 20px;
    font-size: 14px;
    line-height: 22px;
}
#fwbw-contact-float .fwbw-ctcf-body .widget a {
    color: var(--fwbw-mid-blue);
}
#fwbw-contact-float .fwbw-ctcf-body .widget a:hover {
    color: var(--fwbw-red-hover);
}
#fwbw-contact-float .fwbw-widget-title {
    color: var(--fwbw-text);
    padding: 0;
    margin: 12px 0 6px;
    font-size: 24px;
    line-height: 30px;
    font-weight: 700;
    text-transform: uppercase;
}
@media screen and (max-width: 768px) {
    body #grve-theme-wrapper .fwbw-bite-header-grid .bite-container .bite-select-block.bite-dropdown-select--block .child {
        white-space: initial !important;
    }
}
@media screen and (max-width: 350px) {
    #fwbw-contact-float {
        display: none;
    }
}
