/* =============================================================================
 * css variables (custom elements abhängig)
 * ========================================================================== */
.bg-custom-1 {
    background-color: var(--customColor1);
}

.bg-custom-2 {
    background-color: var(--customColor2);
}


/* =============================================================================
 * Fonts (Local)
 * ========================================================================== */

/* source-sans-3-200 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 200;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-200.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-200italic - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 200;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-200italic.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-300 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 300;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-300.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-300italic - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 300;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-300italic.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-regular - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 400;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-regular.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-italic - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 400;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-italic.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-500 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 500;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-500.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-500italic - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 500;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-500italic.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-600 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 600;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-600.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-600italic - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 600;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-600italic.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-700 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 700;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-700.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-700italic - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 700;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-700italic.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-800 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 800;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-800.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-800italic - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 800;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-800italic.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-900 - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 900;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-900.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* source-sans-3-900italic - latin */
@font-face {
    font-display: swap;
    /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Source Sans 3';
    font-style: italic;
    font-weight: 900;
    src: url('/files/cto_layout/fonts/source_sans_3/source-sans-3-v19-latin-900italic.woff2') format('woff2');
    /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* =============================================================================
 * Hilfsklassen
 * ========================================================================== */
@media only screen and (min-width: 768px) {
    .overflow-visible {
        overflow: visible;
    }
}

.position-relative {
    position: relative;
}

.grid-row-max-height {
    height: calc(100% - 180px);
}

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

    /** order classes **/
    .order_1_m {
        order: 1;
    }

    .order_2_m {
        order: 2;
    }

    .order_3_m {
        order: 3;
    }

    .order_4_m {
        order: 4;
    }

    .order_5_m {
        order: 5;
    }

    .order_6_m {
        order: 6;
    }
}

.display-inline {
    display: inline;
}


/* =============================================================================
 * Typo-Hilfsklassen
 * ========================================================================== */
.font-weight-100 {
    font-weight: 100 !important;
}

.font-weight-200 {
    font-weight: 200 !important;
}

.font-weight-300 {
    font-weight: 300 !important;
}

.font-weight-350 {
    font-weight: 350 !important;
}

.font-weight-400 {
    font-weight: 400 !important;
}

.font-weight-500 {
    font-weight: 500 !important;
}

.font-weight-600 {
    font-weight: 600 !important;
}

.font-weight-700 {
    font-weight: 700 !important;
}

.font-weight-800 {
    font-weight: 800 !important;
}

.font-weight-900 {
    font-weight: 900 !important;
}


@media only screen and (max-width: 768px) {
    .h-align-right-m {
        text-align: right;
    }
}

/*Rechtstexte*/

.erecht_24 p{
    margin-bottom:40px;
    font-size:19px;
}

.erecht_24 h2{
    font-size:32px;
}

.erecht_24 h3{
    font-size:28px;
}
.erecht_24 h2, .erecht_24 h3 ,.erecht_24 h4{
    margin-bottom:16px;
}
/* =============================================================================
 * PCT Korrekturen
 * ========================================================================== */

@media only screen and (max-width: 768px) {
    .ce_shift_wrapper_start[data-position-absolute-mob="none"] {
        position: relative;
    }
}


/* ===========================================
 * Trennlinie
 * ============================================ */
.ce_divider_extended.version1.engel_custom {
    background: var(--customColor2);
    width: 250px;
    height: 5px;
}

.ce_divider_extended.version1.engel_custom.invert {
    background: white;
}

@media only screen and (max-width: 767px) {
    .ce_divider_extended.align-right_m {
        margin-left: auto;
    }
}

/* ===========================================
 * Fancybox
 * ============================================ */

.fancy_box_color_default.engel-custom {
    background: white;
    color: var(--secondColor);
    box-shadow: 12px 10px 8px 5px #30303020;
}

.fancy_box_color_default.engel-custom .overlay {
    display: none;
}

.fancy_box_color_default.engel-custom .attribute.ce_headline.headline {
    color: var(--secondColor);
}

.fancy_box_color_default.engel-custom .text>.attribute.ce_headline.headline:after {
    content: "";
    height: 5px;
    width: 160px;
    background: var(--customColor2);
    position: relative;
    margin-top: 10px;
    margin-bottom: 10px;
    display: block;
}

.fancy_box_color_default.engel-custom:after {
    background: var(--accentColor);
}

.fancy_box_color_default.engel-custom .image_container {
    float: right;
}

.fancy_box_color_default.engel-custom .icon {
    position: absolute;
    width: 100%;
    top: -30px;
}

.fancy_box_color_default.engel-custom .link_text {
    font-size: 1em;
    font-weight: 500;
}

/* ===========================================
 * Newsteaser
 * ============================================ */

.mod_newslist.engel-custom .image_container a {
    display: block;
}

.mod_newslist.engel-custom .info {
    display: none;
}

.mod_newslist.engel-custom .teaser {
    color: var(--secondColor);
    line-height: 1.4;
    margin-top: 10px;
}

.mod_newslist.engel-custom .subline:before {
    content: "";
    height: 5px;
    width: 100%;
    background: var(--customColor2);
    position: relative;
    margin-top: 10px;
    margin-bottom: 10px;
    display: block;
}

.mod_newslist.engel-custom a.buttonlink {
    display: inline-block;
    color: var(--secondColor);
    font-weight: 500;
    border: 1px solid var(--secondColor);
    padding: 8px 20px;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.mod_newslist.engel-custom a.buttonlink:hover {
    background-color: var(--secondColor);
    color: white;
}


/* ===========================================
 * Hyperlink extended
 * ============================================ */

.ce_hyperlink.h-align-inline {
    margin-right: 20px;
}

.ce_hyperlink-extended.btn-white-outline a:hover {
    background: white;
}

.ce_hyperlink-extended.btn-white-outline a:hover span {
    color: var(--secondColor);
}


/* ===========================================
 * Hyperlink extended
 * ============================================ */
.ce_testimonial_slider .swiper-slide {
    width: 100%;
}

.ce_testimonial_slider .swiper-slide .swiper-content {
    max-width: 768px;
    margin-left: auto;
    margin-right: auto;
}

.ce_testimonial_slider .text {
    background: unset !important;
    color: var(--secondColor) !important;
    border: 1px solid var(--secondColor) !important;
    box-shadow: unset !important;
    border-radius: unset !important;
    padding: 7% !important;
}

.ce_testimonial_slider .text:before {
    display: none;
}

.ce_testimonial_slider[data-style="style1"] .swiper-content .text .bottom-arrow {
    border-left: 1px solid var(--secondColor);
    border-top: 1px solid var(--secondColor);
    background: white;
    border-radius: unset;
    height:22px;
    width:22px;
    top: calc(100% + 9px);
    left: 30%;
}

.ce_testimonial_slider[data-style="style1"] .swiper-content .text .bottom-arrow:after {
    background-color: white !important;
    border-radius: 0;
    border: unset;
}

.ce_testimonial_slider .swiper-slide .name {
    color: var(--secondColor) !important;
    text-align: left!important;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    font-size:19px!important;
    font-weight:500;
}

.ce_testimonial_slider .swiper-slide .info {
    color: var(--secondColor) !important;
    text-align: left!important;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
}

/* ===========================================
 * Productbox
 * ============================================ */
.ce_productbox.version1 .ce_hyperlink {display: block;margin-top:15px;}
.ce_productbox.version1 .ce_hyperlink a {background:var(--secondColor);border:unset; }
.ce_productbox.version1 .price {line-height: 1;}

/* ===========================================
 * Sticky Menü
 * ============================================ */

.header.cloned .mainmenu ul.level_1 > li > a:before {
    content: '';
    width: 1px;
    background: #2a2a2a !important;
    height: 20px;
    position: absolute;
    left: -15px;
    top: 50%;
    margin-top: -10px;}
    
 /* ===========================================
 * custom Bulletpoints
 * ============================================ */   
    
    .fa.bullet_ce_custom:before {content:""; background-image:url("/files/kunde/2_Icons/Icon_Bulletpoint_ce.svg");height: 1em;
    display: block;
    width: 1em;
    background-size: contain;
    background-repeat: no-repeat;
    margin-top: 0.2em;
    }
    
    
    
   /* ===========================================
 * List
 * ============================================ */    
    
    
    .ce_list.hasIcon ol li, .ce_list.hasIcon ul li {
    display: flex;
    align-items: flex-start;
}
 
 .ce_list li:after {
    display: none;
}
  /* ===========================================
 * Akkordeon
 * ============================================ */      
    
    .ui-accordion-content {padding:2% 4%;}
    
    
/* ===========================================
 * Iconbox Kontakt
 * ============================================ */ 
 
 
 .ce_iconbox.iconbox_kontakt .content {
    margin-top: 0px;font-size:19px;}
 .ce_iconbox.iconbox_kontakt .link {
     font-size:22px;font-weight:500;}    
    .ce_iconbox.version2.iconbox_kontakt i {
    background: var(--customColor2);
    }
    
    
    
    /* ===========================================
 * Newsteaser
 * ============================================ */

.mod_newslist.engel-custom .newslist-timeline .image_container a {
    display: block;
}

.mod_newslist.engel-custom .newslist-timeline .info {
    display: none;
}

.mod_newslist.engel-custom .newslist-timeline .teaser {
    color: var(--secondColor);
    line-height: 1.4;
    margin-top: 10px;
}

.mod_newslist.engel-custom .newslist-timeline .teaser-v2:before {
    content: "";
    height: 5px;
    width: 250px;
    background: var(--customColor2);
    position: relative;
    margin-top: 10px;
    margin-bottom: 10px;
    display: block;
}

.mod_newslist.engel-custom .newslist-timeline a.buttonlink {
    display: inline-block;
    color: var(--secondColor);
    font-weight: 500;
    border: 1px solid var(--secondColor);
    padding: 8px 20px;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.mod_newslist.engel-custom .newslist-timeline a.buttonlink:hover {
    background-color: var(--secondColor);
    color: white;
}

.newslist-timeline:before {
    content:'';
    width: 25px;
    height: 25px;
    position: absolute;
    border:unset;
    top: 5px;
    left: 121px;
    display: block;
    z-index: 1;
    content:""; background-image:url("/files/kunde/2_Icons/Icon_Bulletpoint_ce.svg");
    background-size: contain;
}


/* Formular */


.ce_form p {
  text-transform: uppercase;
  font-weight: 700;
  color: var(--accentColor);
}

.ce_form label {
  font-weight: 500;
  color:var(--secondColor);
}

.ce_form p a {
  text-decoration: underline;
}

.ce_form select,
.ce_form input,
.ce_form textarea {
  border: unset;
  background: #F0F5F8;
  border-radius:5px;
  color:#555555;
  height:unset;
  padding:15px 30px;
  font-size: 1.1rem;
  
}

.ce_form input::placeholder,.ce_form textarea::placeholder {color:#768ea2!important;}
.ce_form input:focus,.ce_form textarea::focus {color:#555555!important;}


.ce_form input.radio {
  border: unset;
  background: #F0F5F8;
  margin-left: 21px;
margin-right: 10px;
}

.ce_form fieldset {
  display: flex;
  flex-direction: row;
}

.ce_form fieldset legend {
  border-radius: unset;
  background: var(--accentColor);
  display: flex;
  border-radius: 5px;
  font-weight: 500;
  
}

.ce_form fieldset .mandatory {
  color: white;
}

@media only screen and (max-width: 767px) {
  .ce_form fieldset.radio_container {
    flex-wrap: wrap;
    flex-direction: column;
  }
}


.ce_form fieldset[class*="prefix-icon-"] {
  padding: unset;
  border: unset;
}

.ce_form fieldset[class*="prefix-icon-"] legend {
  background: unset;
  padding-left: unset;
  color:var(--secondColor);
}

.ce_form fieldset[class*="prefix-icon-"] legend:before {
  margin-right: 0.35em;
}

.ce_form label[class*="prefix-icon-"]:before,
.ce_form [class*="prefix-icon-"] legend:before {
  background: var(--accentColor);
  border-radius: 100px;
  font-weight: 500;
  color: white;
  width: 1.5em;
  height: 1.5em;
  display: inline-block;
  text-align: center;
  line-height: 1.5em;
}

.ce_form label.prefix-icon-1:before,
.ce_form .prefix-icon-1 legend:before {
  content: "1";
}

.ce_form label.prefix-icon-2:before,
.ce_form .prefix-icon-2 legend:before {
  content: "2";
}

.ce_form label.prefix-icon-3:before,
.ce_form .prefix-icon-3 legend:before {
  content: "3";
}

.ce_form label.prefix-icon-4:before,
.ce_form .prefix-icon-4 legend:before {
  content: "4";
}

.ce_form label.prefix-icon-5:before,
.ce_form .prefix-icon-5 legend:before {
  content: "5";
}

.ce_form .checkbox_container span {
  align-items: flex-start;
}

.ce_form .checkbox_container .checkbox {
  margin-top: 0.6em;
  margin-right: 10px;
  margin-left: 20px;
}

.widget-submit {
  text-align: center;
}

.ce_form button.submit {
  background: var(--accentColor);
  border-radius: 0px;
  font-size: 1.2rem;
  height: unset;
  min-width: 200px;
  font-family: inherit;
  font-weight: 600;
  text-transform:uppercase;
  letter-spacing: 0.05em;
}

input[type="checkbox"],
input[type="radio"] {
  min-width: 25px;
}
