
@import url("https://use.typekit.net/yzj7psn.css");

*{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(22,25,31,0)
    
}

/* X-Small devices (portrait phones, less than 576px) */
/* No media query for `xs` since this is the default in Bootstrap */

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
    
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    
}

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
    
}
body {
    margin: 0;
    font-family: "chaparral-pro", serif !important;
    color: #16191f;
    /* font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; */
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    background-color: #fff
}

.login-remember {
    display: none !important;
}

/***************************************************/
/* Colors */

/***************************************************/
/* Typography */
h1, h2, h3, h4, h5, h6{
    font-family: "roc-grotesk-condensed",sans-serif;
    line-height: 2rem;
    color: #121212;
}
h1 {
    font-family: "roc-grotesk", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 2.5rem;
    line-height: 1.02;
    padding: 1rem 0;
}

h1 span, h1 em {
    color:#157673;
}


h2 {
    font-family: "roc-grotesk", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 2.0rem;
    line-height: 1.02;
    color: #121212;
    text-transform: uppercase;
}

h2 span {
    color:#157673;
}
h3 {
    font-family: "roc-grotesk", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 2rem;
    line-height: 1.02;
    color: #157673;
}

h4 {
    font-family: "roc-grotesk", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 1.5rem;
    line-height: 2.2rem;
    color: #121212;
    text-transform: uppercase;
}

h5 {
    font-family: "roc-grotesk", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 1.4rem;
    line-height: 2.1rem;
    color: #121212;
    text-transform: uppercase;
}

p {
    font-size: 1.5rem;
    line-height: 1.53;
    letter-spacing: normal;
    font-family: "chaparral-pro", serif;
    color: #121212;
    margin: 1.5rem 0;
}

a, a:hover {
    color: #157673;
}

ul,ol {
    font-size: 1.5rem;
    line-height: 1.53;
    letter-spacing: normal;
    font-family: "chaparral-pro", serif;
    color: #121212;
    margin: 1.5rem 0;
}

span, span em  {
    color: #157673;
}


.btn:focus {
    border: 0;
    box-shadow: none;
}

.nopadl {
    padding-left: 0;
}
.nopadr {
    padding-right: 0;
}
.nopad {
    padding: 0;
}
.nomg {
    margin-right: 0;
    margin-left: 0;
}


/***************************************************/
/* Header */
#header {
    min-height: 95px;
}

.page {
    margin: inherit;
}

.logo, .logo:hover {
    font-size: 1.75rem;
    font-family: "roc-grotesk", sans-serif;
    font-weight: 600;
    line-height: 1.04;
    color: #16191f;
    margin: 40px 0px 0px 40px;
}

.col {
    padding-left: 16px;
    padding-right: 16px;
}

.xlink-head {
    font-family: "roc-grotesk", sans-serif;
    font-size: 1rem;
    line-height: 1.75;
    letter-spacing: normal;
    color: #16191f;
    text-decoration: none;
    float: right;
    margin: 40px 0px;
}

.xlink-head:hover {
    color: #157673;
    text-decoration: underline;
}

/***************************************************/
/* Hauptnavigation + LOGO*/
.mainnav {
    margin-top: 3.75rem;
    padding-left: 4.7rem;
    font-family: "roc-grotesk", sans-serif;
}

.mainnav ul {
    list-style-type: none;
}
.mainnav ul li a {
    font-size: 1.5rem;
    color: #16191f;
    text-decoration: none;
    padding: 0.75rem 0.75rem 0.75rem 0;
    line-height: 3rem;
    font-family: "roc-grotesk", sans-serif;
    font-weight: 400;
}
.mainnav ul li a:hover {
    text-decoration: underline;
    color: #157673;
}
.services {
padding-left: 8rem !important;
padding-right: 3rem;
padding-top: 5rem;
}



.traffic a{
    font-family: "roc-grotesk", sans-serif;;
    font-size: 1.125rem;
    line-height: 1.625rem;
    color: #16191f;
    text-decoration: none;
}

.traffic a:hover{
    color: #157673;
    text-decoration: none;
}
/***************************************************/
/* Grid */
/* Grid Specials */
.mrn {
    margin-right: -1rem !important;
}



/***************************************************/
/* Buttons */



.cta, .button {
    background-color: #B2F2DB;
    font-family: "roc-grotesk", sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    text-transform: uppercase;
    border-radius: 0;
    border: 0!important;
    padding: 10px 20px 10px 20px;
    margin-bottom: 40px;
    

}

.wppb-gdpr-checkbox {
    font-size: 0.8rem!important;
}

.feedback, .feedback:hover {
    color:#B2F2DB;
    text-decoration: none;
}


.feedback:before {
    content: "";
    display: block;
    background: url("../img/Sprechblase.svg") no-repeat;
    width: 30px;
    height: 30px;
    float: left;
    margin: 2px 6px 0 0;
}

.gform_button {
    background-color: #B2F2DB;
    font-family: "roc-grotesk", sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    text-transform: uppercase;
    border-radius: 0;
    border: 0!important;
    padding: 10px 20px 10px 20px;
    margin-bottom: 40px;
}

#file-upload-button {
    background-color: #B2F2DB;
    font-weight: bold;
    text-transform: uppercase;
    border-radius: 0;
    padding: 10px 20px 10px 20px;
    margin-bottom: 40px;
    font-size: 1.5rem;
    Border: 0;
}



/***************************************************/
/* Dividers */

hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 2px solid rgba(255, 255, 255, 1);
    opacity: 1;
}

.divider {
    border-top: 1px solid #bec0c3;
    height: 1px;
    padding-top: 1rem;
    margin-top: 1rem;
}

/***************************************************/
/* Content */
/* Content Specials */
#content {}

.boxed {
    background-color: #eef2ee;
    padding: 4rem 2.5rem 1rem;
    margin: 70px 0;
}

#main {
    z-index: 100;
    flex-basis: auto;
    max-width: 700px
}

.bg-image {
    margin: 0px 0px 44px 0px;
    padding: 74px 0px 40px 0px;
}

.contact {
    background-color: #eef2ee;
    padding: 10px 40px;
}

.contact a{
    text-decoration: none;
    font-family: "roc-grotesk", sans-serif;
}
.contact p{
    text-decoration: none;
    font-family: "roc-grotesk", sans-serif;
}
.contact p.meta{
    text-decoration: none;
    font-family: "roc-grotesk", sans-serif !important;
    font-size: 1rem;
}
.contact p.serif{
    text-decoration: none;
    font-family: "chaparral-pro", serif;
    
}
.contact img {
    margin: 1.5rem 0;
}

.copyright {
    float: right; 
    margin: -36px 44px 0px 0px;
}
/*Accordion*/
.accordion {
    margin-bottom: 30px;
    border-bottom: 1px solid #B2F2DB;
    border-top: 1px solid #B2F2DB;
}
.accordion-button {
    font-size: 1.25rem;
    line-height: 1.9375rem;
    font-weight: bold;
    text-transform: uppercase;
    border-bottom-color: #B2F2DB;

}
.accordion-button::after {
    display: none;
}
.accordion-button.collapsed::before {
    flex-shrink: 0;
    width: 2.25rem;
    height: 1rem;
    content: "";
    background-image: url('../img/Plus-Icon.svg');
    background-repeat: no-repeat;
    transition: transform .2s ease-in-out;
    margin: 0px;
}
.accordion-button:before {
    flex-shrink: 0;
    width: 2.25rem;
    height: 1rem;
    content: "";
    background-image: url('../img/Minus-Icon.svg');
    background-repeat: no-repeat;
    transition: transform .2s ease-in-out;
    margin: 10px 0px 0px 0px;
}
.accordion-button:not(.collapsed) {
    color: #000;
    background-color: #fff;
    box-shadow: inset 0 -1px 0 rgb(0 0 0 / 13%);
}

.accordion-button:focus {
    border: 0;
    border-color: transparent;
    box-shadow: none;
}

.accordion-body {
    padding: 1rem 1.25rem;
    margin: 0 2rem;
}


/* Gravity Forms*/

.gfield h3 {
    display: none;
}

.gfield_label {
    font-family: "roc-grotesk", sans-serif;
    font-weight: 400 !important;
    margin-top: 15px;
}

.gform_title {
    color: #157673;
}

.gform_wrapper.gravity-theme .gfield_label {
    font-size: 1.4rem !important;
    font-weight: 700;
    margin-bottom: 8px;
    display: inline-block;
    padding: 0;
    text-transform: uppercase;
}

.gform_wrapper.gravity-theme .gfield textarea {
    width: 100%;
    background-color: #ffffff;
    border: 1;
    height: 220px !important;
}

.gform_wrapper.gravity-theme .gfield textarea.large {
    
}

.gfield input,
.gform_wrapper.gravity-theme .gfield input, .gform_wrapper.gravity-theme .gfield select{
    border: 1;
}

.gform_wrapper .gfield_required .gfield_required_custom, .gform_wrapper .gfield_required .gfield_required_text {
    font-style: normal!important;
    font-weight: 700!important;
}

.gform_wrapper .gfield_required {
    color: #c02b0a!important;
    font-size: 23px!important;
}

.gform_required_legend{display:none!important;}

/****************************************************
/* RAPIDMAIL */

.vFormRadio {
    display: block;
}
.formgender p{
    width: 50%;
}

.vFormRadio--stacked {
    
    
}
.vFormRadio__input {
    float: left;
    width: 20px;
    height: 80px !important;
}
.vFormRadio__label {
    float: left;
}


.vFormRadio__input {
    border: 0px;
    height: 80px !important;
    min-width: 30px;
    background-color: #B2F2DB;
    font-family: azo-sans-web, sans-serif;
    font-weight: 300;
    font-style: normal;
    padding: 0px 30px;
    float: left;
    margin: 0px 20px 0px 0px;

}

.comp__input {
    border: 0px;
    background-color: #B2F2DB;
    height: 81px;
    font-family: azo-sans-web, sans-serif;
    font-weight: 300;
    font-style: normal;
    padding: 0px 30px;
    width: 100%;

}

.vFormCheckbox__input {
    border: 0px;
    height: 81px !important;
    min-width: 30px;
    background-color: #B2F2DB;
    height: 81px;
    font-family: azo-sans-web, sans-serif;
    font-weight: 300;
    font-style: normal;
    padding: 0px 30px;
    margin: 0px 30px 10px 0px;
    float: left;
}

.rmBase__comp--cta { 
    Border: 0px;
    background-color: transparent;

}

/* .rmBase__el--input p{
    display: none;
} */

/*************************************/
/* WPBP */
#wppb_register_pre_form_message {
    display: none;
}


/***************************************************/
/* Single */

/***************************************************/
/* Footer */

.footer {
    align-items: center;
    padding: 2rem 0;
    background-color: #fff;
    width: 100%;
    min-height: 20.191rem;
    box-shadow: 0 10px 10px 0 rgb(0 0 0 / 16%) inset;
    font-family: "roc-grotesk", sans-serif;
}

#footer .container {
    margin-left: 4rem!important;
}

.footer-brand {
    margin-top: 4.5rem;
    margin-left: 4rem;
        font-size: 1.35rem;
        line-height: 1.11;
        letter-spacing: normal;
    font-weight: 500;
    -webkit-tap-highlight-color rgba(22, 25, 31, 0);
    font-family: "roc-grotesk", sans-serif;
}

#menu-footernavigation {
    margin-top: 5rem;
    list-style-type: none;
    font-family: "roc-grotesk", sans-serif;
}
#menu-footernavigation li {
    float: left;
}

#menu-footernavigation li a{
    font-size: 1.35rem;
    line-height: 1.5;
    letter-spacing: normal;
    margin-left: 1rem;
    margin-right: 1rem;
    position: relative;
    display: inline-flex;
    padding: 0;
    color: #16191f !important;
    text-decoration: none;
    
}

.footer__image {
    width: 240px;
    min-width: 240px;

}

/***************************************************/
/* Footernavigation */

/***************************************************/
/* Cookie Disclaimer */
#cookieChoiceDismissIcon{
    display:none!important;
}
#cookieChoiceInfo{
    padding:0px!important;
    font-size: 1rem;
}
#cookieChoiceInfo div{
    padding:0 20px!important;
}
#cookieChoiceInfo a{
    text-decoration:none;
    display:inline-block;
    padding:5px 25px;
    color:#000000;
    background-color:#d1d3d4;
    text-transform:uppercase;
}
#cookieChoiceInfo a#cookieChoiceDismiss{
    background-color:#00d48a;
    color:#FFFFFF;
    text-transform:uppercase;}
#cookieChoiceDismiss{
    margin-left:1px!important;
}

/***************************************************/

.wppb-user-forms input[type="text"],
.wppb-user-forms input[type="email"],
.wppb-user-forms input[type="password"]{
    border: 0px!important;
}

.select2-container--default .select2-selection--single {
    border: 0px solid #aaa!important;
    border-radius: 0!important;
    height: 43px!important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 38px!important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    margin-top: 4px!important;
}

.wppb-front-end-logout span {
    color: #121212!important;
}

.wppb-front-end-logout a,
.wppb-alert a{
    background-color: #B2F2DB;
    color: #121212;
    font-family: "roc-grotesk", sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    text-transform: uppercase;
    border-radius: 0;
    border: 0!important;
    padding: 10px 20px 10px 20px;
    margin-bottom: 40px;
    text-decoration: none;
    margin-left: 15px;
}

/***************************************************/
.brow {
    margin: 50px 0;
}

.brow .inner {
    padding: 5px;
    border-top: 1px solid #bec0c3;
    display: flex;
    gap: 15px;
}

.brow .inner:hover {
    background-color: rgba(0,0,0,0.05);
}

.brow .inner .entry.full {
    flex: 2.5;
}

.brow .inner .entry.half {
    flex: 1.8;
}

.brow .inner a {
    color: #157673;
    text-decoration: none;
}

.brow .inner a:hover {
    color: #16191f;
    text-decoration: none;
}

.paging .nav-links{
    margin: auto;
}

.paging .nav-links a {
    padding: 2px 7px;
    background-color: #FFFFFF;
    color: #157673;
    margin: 0 3px;
    text-decoration: none;
}

.paging .nav-links span.current {
    padding: 2px 7px;
    background-color: #157673;
    color: #FFFFFF;
    margin: 0 5px;
    text-decoration: none;
}

/***************************************************/
/* Responsive */

/* X-Small devices (portrait phones, less than 576px) */
/* No media query for `xs` since this is the default in Bootstrap */

/* Small devices (landscape phones, 576px and up) */
@media (max-width: 575px) {
    .py-1 {
        padding-top: 0.15rem!important;
        padding-bottom: 0.15rem!important;
    }
    .logo {
        font-size: 0.9rem;
        margin: 30px 10px 10px 10px;
    }

    .logo svg{
        font-size: 0.75rem;
        width:35px;
        height: 40px;
    }

    .xlink-head {
        font-size: 0.75rem;
        line-height: 1.rem;
        float: right;
        margin: 0;
        position: absolute;
        top: 10px;
        right: 0px;
    }

    .cta, .button {
        
        
        font-size: 1rem;
        font-weight: 400;
        text-transform: uppercase;
        border-radius: 0;
        border: 0!important;
        padding: 10px 20px 10px 20px;
        margin-bottom: 20px;
    }
    #footer .container {
        margin-left: 10px !important;
    }

    .footer__image {
        width: 100px;
        min-width: 70%;
        margin: 10px;
    }

    .footer-brand {
        margin: 0;
        text-align: center;
    }
}
@media (min-width: 576px) {
    
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .copyright {
        float: right; 
        margin: -36px 0px 0px 0px
    }
    .footer__image {
        width: 200px;
        min-width: 200px;
    }
    
}

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .main-header {
        flex-basis:auto;
        max-width: 43.75rem
    }
    .copyright {
        float: right; 
        margin: -36px 0px 0px 0px
    }
    .footer__image {
        width: 200px;
        min-width: 200px;
    }
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
    #main {
        min-height:1000px
    }
    .main-header {
        max-width:27.875rem
    }

    .copyright {
        float: right; 
        margin: -36px 0px 0px 0px;
    }
    
}

@media (min-width: 1680px) {
    #main {
        flex-basis:auto;
        max-width: 928px
    }
    .main-header {
        max-width:28.25rem
    }
    .copyright {
        float: right; 
        margin: -36px 44px 0px 0px;
    }
}

@media (min-width: 1920px) {
    .main-header {
        max-width:37rem
    }
    .copyright {
        float: right; 
        margin: -36px 44px 0px 0px;
    }
}