/* --- undo --- */
html, body, div, span, a, h1, h2, h3, h4, h5, h6, p, blockquote, img, 
ol, ul, li, input, textarea, label, select, table, tbody, thead, tfoot, tr, th, 
td, footer, header, menu, nav, section, video { padding: 0; margin: 0; box-sizing: border-box; }

html, body, p, form, input, textarea { margin: 0; padding: 0; }
img, a img, :link img, :visited img, fieldset, button { border: none; outline: none; }
a:visited { text-decoration: none; }
img { margin: 0; padding: 0; vertical-align: bottom; }
table { margin: 0; padding: 0; border: none; border-spacing: 0; }
tr { margin: 0; padding: 0; border: none; border-spacing: 0; }
td { margin: 0; padding: 0; border: none; border-spacing: 0; vertical-align: top; }
hr { clear: both; }

ul { list-style-type: none; margin: 0 0 1.0em 0; }
ul li { list-style-type: none; margin: 0; padding: 0; }
ol { margin: 0 0 1.0em 0; }
ol li { list-style-type: decimal; margin: 0; padding: 0; }

html, body { 
height: 100%; /* Vertikalen Scrollbalken immer einblenden */ 
word-wrap:break-word; /* Woerter in die naechste Zeile umbrechen, wenn sie das umschliessende Element verlassen */
min-width: 300px;
}
html { overflow: scroll; overflow-x: auto; }

/* fuer responsive Webseiten */ 
img, object, iframe { max-width: 100%; height: auto; }

/*  Clearfix, um das Floating innerhalb der Container aufzuheben */ 
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
* + html .clearfix { display: inline-block; } /* fuer IE7 */
* html .clearfix { height: 1%; } /* fuer IE6 */

/* Css-Formatierungen interne Module */ 
.flLeft { float: left; }
.flRight { float: right; }
.flClear { clear: both; }

.textLeft { text-align: left; }
.textCenter { text-align: center; }
.textRight { text-align: right; }

.small { font-size: small; }
.bold { font-weight: bold; }
.hide { display: none; }

/* ----------------------------------------------------------------------------------
 Fehlerloesung im Google Map Modul:
 1) Falls in der Google Map bei der Adresse irgendwelche Scrollbalken auftauchen 
 2) Bei responsive Webseiten sieht die Box um die Adresse in der Karte teilweise zerschossen aus 
---------------------------------------------------------------------------------- */
#map_canvas { clear: both; font-family: Verdana, Geneva, sans-serif; color: #000; font-size: 13px; line-height: 16px; }
#map_canvas img, #map_canvas object { max-width: none; }
#map_canvas #info_box { width: 200px; padding: 5px 0; height: auto; }
#map_canvas #info_box,
#map_canvas .gm-style div,
#map_canvas .gm-style-iw div {
font-family: Verdana, Geneva, sans-serif; color: #000; font-size: 13px; line-height: 16px; font-weight: normal; }
 


/* Redaxo Download Modul
.download_box { width: auto; margin: 0 0 1.0em 0; padding: 5px 0; font-size: 0.9em; }
.download_box .download_hdl {  }
.download_icon { float: left; } 
.download_icon a { font-size: 0.9em; }
.download_icon a.extern { padding-right: 0; background: none; }
.download_text { margin-left: 50px; padding: 0 0 0 5px; }
.download_desc { color: #999; margin: 0; font-size: 0.7em; }
.download_without_desc { }

 */ 



html, body {
font-family: akagi-pro, Verdana, Geneva, sans-serif; 
font-weight: 300;
font-style: normal;    
font-size: 16px; line-height: 20px; 
color: #000;
/* Woerter in die naechste Zeile umbrechen, wenn sie ansonsten das umschliessende Element verlassen wuerden. */
word-wrap:break-word;
height: 100%;
}
html { overflow: scroll; overflow-x: auto; 
background-color: #807c7b;
}


/* fresco Lightbox */
.fr-overlay-background { background: #7e7e7e !important; opacity: .9; filter: alpha(opacity=90); }

.fr-window-skin-fresco .fr-content-background { background: #7e7e7e !important; }

.fr-ui-outside .fr-info-background { background: #7e7e7e !important; }

/* ----------------------------------------------------------------------------------
    Schriften + Generelle CSS-Anpassungen fuer diese Webseite
    gray = #807c7b
    lightgray = #ccc
    darkgray = #2f2d2e
---------------------------------------------------------------------------------- */ 

.text_color_white { color: #FFF !important; }
.text_color_black { color: #000 !important; }
.text_color_gray { color: #807c7b !important; }
.text_color_darkgray { color: #2f2d2e !important; }
.text_color_orange { color: #ed752d !important; }

a { text-decoration: underline; color: #FFF; }
a:hover { text-decoration: none; color: #ee7202; }
a:active, a:focus { outline: 0; }
a:hover img { opacity: 0.8; }

ul { margin: 0 0 10px 0; }
ul li { list-style-type: none; margin: 0 0 10px 0; padding: 0 0 0 20px; background-image: url(listpoint.png); background-position: top left; background-repeat: no-repeat; }
ol li { list-style-type: decimal; margin: 0 0 10px 16px; padding: 0 0 0 2px; }


h1, h2, h3, h4, h5, h6,
.like_h1, .like_h2, .like_h3, .like_h4, .like_h5, .like_h6 { font-weight: 400; font-style: normal; font-size: 14px; line-height: 20px; margin: 0 0 20px 0; color: #000; }
h1, .like_h1 { font-size: 28px; line-height: 30px; font-family: rockwell, akagi-pro, Verdana, Geneva, sans-serif; } 
h2, .like_h2 { font-size: 22px; line-height: 24px; } 
h3, .like_h3 { font-size: 18px; line-height: 20px; } 
h4, .like_h4 { font-size: 14px; line-height: 20px; font-weight: bold; } 
h5, .like_h5 { font-size: 14px; } 
h6, .like_h6 { font-size: 12px; } 

h1 .subline { font-size: 22px; line-height: 24px; color: #333; } 
h2 .subline { font-size: 15px; line-height: 20px;; color: #333; } 
h3 .subline { font-size: 14px; line-height: 20px; color: #333; } 

h2.like_h1 { font-size: 28px; line-height: 30px; }
h2.like_h1 .subline { font-size: 22px; line-height: 24px; color: #333; }

em { font-style: italic; font-weight: 400; }
strong { font-weight: 700; }
p, .like_p { margin: 0 0 20px 0; padding: 0;}
td { padding: 0 8px 6px 0; vertical-align: top; }

hr { clear: both; display: block; width: 99%; height: 2px; margin: 0 auto 50px auto; border: none;  background-color: #ee7202; } 


.small  { display: block; font-size: 13px; line-height: 16px; color: #333; font-style: italic; padding: 5px 20px; } /* Bildunterschriften */


/* ----------------------------------------------------------------------------------
   CSS-Einstellungen fuer das Addon Modulhelper (bzw. bw_modulhelper)
---------------------------------------------------------------------------------- */ 
.section_bg_none, .reiter_bg_none,
.section_bg_gray, .reiter_bg_gray,
.section_bg_lightgray, .reiter_bg_lightgray,
.section_bg_darkgray, .reiter_bg_darkgray,
.section_bg_white, .reiter_bg_white { clear: both; display: block; width: 100%; height: auto; margin: 0; padding: 50px 0 30px 0; background-color: #FFF; }

.section_bg_none { background-color: transparent; }
.section_bg_gray { background-color: #807c7b; }
.section_bg_lightgray { background-color: #ccc; }
.section_bg_darkgray { background-color: #2f2d2e; }
.section_bg_white  { background-color: #FFF; }

.section_bg_darkgray,
.section_bg_darkgray *,
.section_bg_darkgray h1 .subline,
.section_bg_darkgray h2 .subline,
.section_bg_darkgray h3 .subline { color: #FFF; }

.reiter_bg_none { background-color: transparent; }
.reiter_bg_gray { background-color: #807c7b; color: #fff; }
.reiter_bg_lightgray { background-color: #ccc; color: #000; }
.reiter_bg_darkgray { background-color: #2f2d2e; color: #fff; }
.reiter_bg_white { background-color: #fff; color: #000; }

.reiter_bg_gray, .reiter_bg_gray *, 
.reiter_bg_gray h1 .subline, .reiter_bg_gray h2 .subline, .reiter_bg_gray h3 .subline { color: #FFF; }
.reiter_bg_lightgray, .reiter_bg_lightgray *, 
.reiter_bg_lightgray h1 .subline, .reiter_bg_lightgray h2 .subline, .reiter_bg_lightgray h3 .subline { color: #000; }
.reiter_bg_darkgray, .reiter_bg_darkgray *, 
.reiter_bg_darkgray h1 .subline, .reiter_bg_darkgray h2 .subline, .reiter_bg_darkgray h3 .subline { color: #FFF; }
.reiter_bg_white, .reiter_bg_white *, 
.reiter_bg_white h1 .subline, .reiter_bg_white h2 .subline, .reiter_bg_white h3 .subline { color: #000; }


/*
.section_trennlinie { clear: both; display: block; width: 100%; height: 1px; margin: 0; padding: 0; background-color: #e0e1e1; }
*/

.section_full,
.section_1900,
.section_1600,
.section_1200,
.section_980 { clear: both; display: block; width: 1900px; height: auto; margin: 0 auto; padding: 0; }

.section_full,
.section_1900 { width: 1900px; margin: 0 auto;}
.section_1600 { width: 1600px; margin: 0 auto;}
.section_1200 { width: 1200px; margin: 0 auto;}
.section_980 { width: 980px; margin: 0 auto;}

@media all and (max-width:1900px) { .section_full, .section_1900 { width: 100%; margin: 0; } }
@media all and (max-width:1600px) { .section_1600 { width: 100%; margin: 0; } }
@media all and (max-width:1200px) { .section_1200 { width: 100%; margin: 0; } }
@media all and (max-width:980px) { .section_980 { width: 100%; margin: 0; } }


.section_bg_image,
.section_bg_paroller { display: block; position: static; width: 100%; margin: 0; padding: 30px 0 10px 0; z-index: 1; 
background-color: #fff; background-position: center center; background-attachment: scroll; background-repeat: no-repeat; background-size: cover; }

.section_bg_image { min-height: 500px; }

.section_bg_paroller .section_full, 
.section_bg_paroller .section_1100 { min-height: 300px; }
.section_bg_paroller .parallax_height_100 { min-height: 100px; }


/* ------------ Outer Box ------------ */
/* Ausgangswerte: (Seitenbreite: 1900px | Abstand: 50px) */
.outer_box { clear: both; display: block; float: left; width: 94.74%; margin: 0 0 50px 2.63%; padding: 0; }

.box_width_full { clear: both; float: none; width: 100%; margin: 0 0 50px 0; }
.box_no_margin { clear: both; float: none; margin: 0 0 0 2.63%; }
.box_width_1_2 { clear: none; width: 46.05%; }
.box_width_1_3 { clear: none; width: 29.82%; }
.box_width_2_3 { clear: none; width: 62.27%; }
.box_width_1_4 { clear: none; width: 21.71%; }
.box_width_3_4 { clear: none; width: 70.39%; }

.box_width_1_5 { clear: none; width: 16.84%; }
.box_width_2_5 { clear: none; width: 36.32%; }
.box_width_3_5 { clear: none; width: 55.79%; }
.box_width_4_5 { clear: none; width: 75.26%; }


.box_bg_gray { background-color: #807c7b; color: #FFF; }
.box_bg_gray * { color: #FFF; }
.outer_box.box_bg_gray .image { margin: 0; }

.box_bg_darkgray { background-color: #2f2d2e; color: #FFF; }
.box_bg_darkgray * { color: #FFF; }
.outer_box.box_bg_darkgray .image { margin: 0; }

.box_bg_lightgray { background-color: #ccc; }
.outer_box.box_bg_lightgray .image { margin: 0; }

.box_bg_white { background-color: #FFF; color: #000; }
.box_bg_white * { color: #000; }
.box_bg_white a { text-decoration: none; color: #ee7202; }
.box_bg_white a:hover { text-decoration: none; color: #000; }

.box_bg_gray .text,
.box_bg_lightgray .text,
.box_bg_darkgray .text,
.box_bg_white .text { padding: 20px 20px 1px 20px; }

.box_image_left_no_margin { float: left; margin: 0; padding: 0; }

/* ----------------------------------------------------------------------------------
 Clearfix, um das Floating innerhalb der Container aufzuheben fuer Firefox, IE8, Opera, Safari, etc.
---------------------------------------------------------------------------------- */ 
.outer_box_inner:after { content: "."; display: block; height: 0; font-size: 0; line-height: 0; clear: both; visibility: hidden; }
* + html .outer_box_inner { display: inline-block; } /* fuer IE7 */
* html .outer_box_inner { height: 1%; } /* fuer IE6 */


.outer_box .image { margin: 0 0 25px 0; }
.outer_box .image a { text-decoration: none !important; }
.outer_box .image a:hover { opacity: 0.8; }



/* ------------ Moduleinstellungen ------------ */
.text_bild .flLeft { float: left; display: block; width: auto; max-width: 63.89%; margin: 0 15px 0 0; overflow: hidden; }
.text_bild .flRight { float: right; display: block; width: auto; max-width: 63.89%; margin: 0 0 0 15px; overflow: hidden; }
.text_bild .image span.small { display: block; }


.zweispalter { }
.zweispalter .flLeft { float: left; display: block; width: 48.53%; margin: 0; overflow: hidden; }
.zweispalter .flRight { float: right; display: block; width: 48.53%; margin: 0; overflow: hidden; }

.download_image { display: block; margin: 0 0 20px 0; }
.download_hdl { display: block; margin: 0 0 10px 0; text-align: center; }
.download_button { display: block; margin: 0; text-align: center; }

/* ----------------------------------------------------------------------------------
   Ausrichtung der Seite und der <div>-Container (Reihenfolge von oben nach unten)
---------------------------------------------------------------------------------- */ 
#page_bg { display: block; position: relative; top: 0; left: 0; width: 100%; height: auto; min-height: 100%; margin: 0; padding: 0; z-index: 1; overflow: hidden; }

/* Relative Bloecke innerhalb von "page" */
header, main, footer, nav, aside, article, section,
#sticky_header_bg, #sticky_header, #sticky_header_left, #sticky_header_right, #main_nav,
#page, #header_top_bg, #header_top, #header_bg, #header, #navigation_bg, 
#content_nav, #content_image, #content,
#footer_bg, #footer, #footer_bottom_bg, #footer_bottom {
display: block; position: relative; top: 0; left: 0; width: 100%; height: auto; margin: 0; padding: 0; z-index: 1; }

#page { min-height: 100%; }


#sticky_header_bg { position: fixed; min-width: 300px; height: 100px; z-index: 999; background-color: rgba(0,0,0,0.75); }
#sticky_header { width: auto; max-width: 1900px; margin: 0 auto; }
#sticky_header_left { float: left; width: 150px; margin: 0; padding: 20px 0; vertical-align: middle; }

#sticky_header_left #lang_switcher { display: inline-block; width: auto; height: 60px; line-height: 60px; font-size: 20px; color: #FFF; }
#sticky_header_left a.lang_switcher_button { display: inline-block; margin: 0 5px; font-size: 20px; color: #FFF; text-decoration: none; }
#sticky_header_left a.lang_switcher_button:hover { color: #ee7202; text-decoration: none; }
#sticky_header_left a.lang_switcher_button.active { color: #ee7202; font-weight: 400; }

#sticky_header_left a#sticky_header_logo { display: none; position: absolute; top: 20px; left: 180px; width: 45px; height: auto; margin: 0; padding: 0; z-index: 2; background-image: url(gfd_sticky_hover.png); background-position: center; background-repeat: no-repeat; background-size: contain; }

#sticky_header_left a#sticky_header_logo:hover img { opacity: 0; }

#sticky_header_nav { display: none; width: 49%; margin: 0 auto; padding: 40px 0 0 0; text-align: center; }
#sticky_header_nav a { display: inline-block; margin: 0 10px; font-size: 18px; line-height: 20px; color: #FFF; text-decoration: none; }
#sticky_header_nav a:hover,
#sticky_header_nav a.active { color: #ee7202; text-decoration: none; }


#sticky_header_right { float: right; width: 480px; margin: 0; padding: 34px 0 0 0; line-height: 32px; text-align: right; vertical-align: middle; white-space: nowrap; }
#sticky_header_right a { display: inline-block; margin: 0 10px 10px 0; color: #fff; text-decoration: none; font-size: 16px; line-height: 32px; vertical-align: middle; }
#sticky_header_right a span { display: inline-block; margin-right: 5px; vertical-align: middle; }
#sticky_header_right a svg.svg_icon { display: inline-block; width:32px; height:32px; margin:0; line-height: 32px; fill:#fff; vertical-align: middle;
  transform: scale(0.8);
  transition: 250ms ease-in-out; 
}
#sticky_header_right a:hover { color: #ee7202; text-decoration: none; }
#sticky_header_right a:hover svg.svg_icon {
  fill: #ee7202;
  transform: scale(1.0);
  transition: 250ms ease-in-out; 
}


@media all and (max-width:980px) {
    #sticky_header_left { width: 150px; padding: 0; }
    #sticky_header_right { width: 180px; padding: 14px 0 0 0; }
    #sticky_header_nav { display: none !important; }
    

    #sticky_header_left a#sticky_header_logo { top: 5px; left: 150px; width: 40px; }


    #sticky_header_left #lang_switcher { display: inline-block; width: auto; height: 60px; line-height: 60px; font-size: 18px; }
    #sticky_header_left a.lang_switcher_button { margin: 0 4px; font-size: 18px; }
    
    #sticky_header_right a span { display: none; }

}

@media all and (max-width:480px) {
    #sticky_header_left { width: 120px; padding: 0; }
    #sticky_header_right { width: 178px !important; padding: 14px 0 0 0; }
    

    #sticky_header_left a#sticky_header_logo { top: 5px; left: 130px; width: 40px; }

    #sticky_header_left #lang_switcher { font-size: 16px; }
    #sticky_header_left a.lang_switcher_button { font-size: 16px; }
}






/* ------------ Mobile Toggle Menu icon (X ICON) ------------ */
.wsanimated-arrow { display: block; position: relative; left: 0; top: 0; width: 24px; height: 32px; line-height: 32px; padding: 0; margin: 0; z-index: 102; cursor: pointer; 
-webkit-transition: all 0.4s ease-in-out; -moz-transition: all 0.4s ease-in-out; -o-transition: all 0.4s ease-in-out; -ms-transition: all 0.4s ease-in-out; transition: all 0.4s ease-in-out; }
.wsanimated-arrow span, 
.wsanimated-arrow span:before,
.wsanimated-arrow span:after { content: ''; display: block; position: absolute; top: 15px; height: 2px; width: 17px; background-color: #fff; cursor: pointer; }

.wsanimated-arrow:hover span, 
.wsanimated-arrow:hover span:before,
.wsanimated-arrow:hover span:after { background-color: #ee7202; }

.wsanimated-arrow span:before { top: -9px; width: 23px; }
.wsanimated-arrow span:after { top: auto; bottom: -9px; width: 17px; }
.wsanimated-arrow span,
.wsanimated-arrow span:before,
.wsanimated-arrow span:after { transition: all 500ms ease-in-out; }
.wsanimated-arrow.active span:after { width: 23px; }
.wsanimated-arrow.active span { background-color: transparent; }
.wsanimated-arrow.active span:before,
.wsanimated-arrow.active span:after { top: 2px; }
.wsanimated-arrow.active span:before { bottom: 0; transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); -webkit-transform: rotate(45deg); }
.wsanimated-arrow.active span:after { transform: rotate(-45deg); -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -o-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); }


/* ------------ Navigation ------------ */
#button_nav { display: inline-block; width: 24px; height: 32px; margin: 0 10px 0 20px; padding: 0; z-index: 1001; vertical-align: middle; }


#main_nav_bg {    
display: block; position: relative; top: 0; left: 0; width: 100%; height: auto; max-height: 800px; margin: 0; padding: 0; background-color: #b2b0af; z-index: 100; overflow: hidden; 
transition: max-height 1000ms ease-in-out; 
}

#main_nav_bg.fixed { position: fixed; }

#main_nav_bg.closed { max-height: 0; transition: max-height 1000ms ease-in-out; } 

#main_nav { width: auto; max-width: 1200px; margin: 0 auto; padding: 140px 0 40px 0; }

/* erste Ebene */
#main_nav ul { list-style: none; position: relative; top: 0; left: 0; margin: 0; padding: 0; }
#main_nav li {list-style-type: none; float: left; display: block; width: auto; height: auto; margin: 0 30px 0 0; padding: 0; background-image: none; }
#main_nav li a { display: block; width: auto; height: auto; margin: 0; padding: 5px 10px; font-size: 16px; line-height: 20px; text-decoration: none; color: #FFF; }

#main_nav li a:hover { text-decoration: none; color: #000; }

#main_nav li a.rex-current,
#main_nav li a.rex-active { color: #000; }

/* Zweite Ebene */
#main_nav ul.rex-navi2 li { float: none; }
#main_nav ul.rex-navi2 li a { padding: 0; margin: 0 0 0 20px; font-size: 15px; line-height: 18px; color: #FFF; }
#main_nav ul.rex-navi2 li a:hover { color: #000; }
#main_nav ul.rex-navi2 li a.rex-current,
#main_nav ul.rex-navi2 li a.rex-active { color: #000; }


/* dritte Ebene */
#main_nav ul.rex-navi3 li { float: none; }
#main_nav ul.rex-navi3 li a { padding: 0; margin: 0 0 0 40px; font-size: 14px; line-height: 18px; color: #FFF; }
#main_nav ul.rex-navi3 li a:hover { color: #000; }
#main_nav ul.rex-navi3 li a.rex-current,
#main_nav ul.rex-navi3 li a.rex-active { color: #000; }

#main_nav li.rex-article-32 { max-width: 140px; }


@media screen and (max-width: 980px) {  
    /* button_nav { display: block; } */

    #page { margin-left: 0; transition: margin-left 1000ms ease-in-out; }
    #page.move_page { margin-left: 50%; transition: margin-left 1000ms ease-in-out; }
    
    #sticky_header_bg { height: 60px; margin-left: 0; transition: margin-left 1000ms ease-in-out; }
    #sticky_header_bg.move_sticky_header_bg { margin-left: 50%; transition: margin-left 1000ms ease-in-out; }

    #main_nav_bg {    
    position: fixed; top: 0; left: 0; width: 50%; min-width: 240px; height: 100%; min-height: 100vh; max-height: none; margin: 0; padding: 0; z-index: 1000; overflow: hidden; overflow-y: auto;  
    transition: left 1000ms ease-in-out; 
    }

    #main_nav_bg.closed { left: -50%; min-width: 0; } 
    #main_nav_bg.in_use { transition: left 1000ms ease-in-out; } /* wird in der JS Datei gesetzt beim klick auf das Hamburger Menue */
    
    
    #main_nav > ul ul { overflow: hidden; max-height: 0; }

    #main_nav.active,
    #main_nav > ul ul.active { max-height: 99999em; } 
    #main_nav ul { display: block; }
    #main_nav li { display: block; float: none; position: relative; top: 0; left: 0; width: auto; height: auto; margin: 0; padding: 0; border-left: none; background-image: none !important; }
    #main_nav li a { display: block; float: none; width: auto; height: auto; min-height: 0; margin: 0; padding: 10px; font-size: 18px; line-height: 18px; border-bottom: 1px solid #DDD; color: #000; 
     text-align: left; }
    #main_nav li a:hover { background-color: #AAA; color: #000; }
    #main_nav li a.rex-current,
    #main_nav li a.rex-active { background-color: #DDD; padding: 10px; color: #000; text-align: left; }


    #main_nav li.rex-article-1 a { width: auto; height: auto; line-height: 18px; padding: 10px; text-indent: 0; background-image: none; }
    #main_nav li.rex-article-1 a:hover { opacity: 1.0; }

    /* Zweite Ebene */
    #main_nav ul.rex-navi2 { display: inherit; position: relative; top:auto; left: auto; }
    #main_nav ul.rex-navi2 li a { margin: 0; padding: 10px 10px 10px 20px; font-size: 15px; line-height: 18px; color: #000; background-color: #f4f4f4; border-top: none; border-bottom: 1px solid #808080; }
    #main_nav ul.rex-navi2 li a:hover { background-color: #AAA; color: #000; }
    #main_nav ul.rex-navi2 li a.rex-current,
    #main_nav ul.rex-navi2 li a.rex-active { background-color: #DDD; color: #000; }


    /* 1.) Zum Anklicken bei Menuepunkten mit Submenue
    #main_nav li.has-submenu > a:after { content: '+'; position: absolute; top: 0; right: 0; display: block; font-size: 1.5em; padding: 10px 10px; }
    #main_nav li.has-submenu > a.active:after { content: "-"; }
    */

    /* 2.) Alternative mit Hauptpunkten anklickbar lassen (1. dann auskommentieren) */
    #main_nav li a span { display: none; } 
    #main_nav li.has-submenu a span { content: ''; display: block; position: absolute; top: 4px; right: 4px; width: 32px; height: 32px; margin: 0; padding: 0; z-index: 10;  text-indent: -9999px; overflow: hidden; background-image: url(mobile_menue_arrow_down.png); background-position: center center; background-repeat: no-repeat;
    border-radius: 6px; }
    #main_nav li.has-submenu a span:hover  { }
    #main_nav li.has-submenu a.active span { background-image: url(mobile_menue_arrow_up.png); } 

    /* zweite Ebene */
    #main_nav li.has-submenu ul.rex-navi2 li a span { display: none; } 
    #main_nav li.has-submenu ul.rex-navi2 li.has-submenu a span { display: block; } 

    /* dritte und letzte Ebene */
    #main_nav li.has-submenu ul.rex-navi3 li a span { display: none !important; } 
 
}

@media screen and (max-width: 480px) {  
    #page.move_page { margin-left: 240px; } 
    #sticky_header_bg.move_sticky_header_bg { margin-left: 240px; } 
    
    #button_nav { margin: 0 10px; }
    
}



#content_nav { clear: both; padding: 20px 0 10px 0; text-align: center; }
#content_nav a { display: inline-block; margin: 0 10px 10px 10px; font-size: 18px; line-height: 18px; color: #FFF; text-decoration: none; }
#content_nav a:hover { color: #ee7202; text-decoration: none; }
#content_nav a.active { color: #000; }

@media all and (max-width:980px) {
    #content_nav a { line-height: 40px; vertical-align: middle; }
    #content_nav a span.first,
    #content_nav a span.second,
    #content_nav a span.one { display: block; font-size: 18px;
    line-height: 20px; vertical-align: middle; }
    #content_nav a span.one { line-height: 40px; }
}

@media all and (max-width:980px) {
.break_mobile { display: block; width: 100%; height: 1px; overflow: hidden; }
}

@media all and (max-width:360px) {
    #content_nav a { display: block; }
    #content_nav a span.one { line-height: 20px; }
}


#content_image { clear: both; }
/*
#content_image_logo { position: absolute; top: 50%; left: 10%; width: auto; height: auto; margin: -137px 0 0 0; margin: -70px 0 0 0; padding: 0; z-index: 10; }
*/
#content_image_logo { position: absolute; top: auto; bottom: 70px; left: 10%; width: auto; height: auto; margin: 0; padding: 0; z-index: 10; }



#gfd_valveworld_2026 { position: absolute; top: auto; bottom: 90px; left: auto; right: 30px; width: 200px; height: auto; margin: 0; padding: 0; z-index: 10; 
	transform: scale(0.8); transform-origin: center center; animation: gfdPulse 5s ease-in-out infinite; }

@keyframes gfdPulse {
    0%   { transform: scale(0.8); }
    20%  { transform: scale(1); }   /* nach 1 s */
    40%  { transform: scale(0.8); } /* nach 2 s */
    100% { transform: scale(0.8); } /* 3 s Pause */
}

@media (prefers-reduced-motion: reduce) {
    #gfd_valveworld_2026 { animation: none; }
}






@media all and (max-width:1600px) {
    #content_image_logo { width: 12.5%; bottom: 60px; min-width: 50px; } 
    #gfd_valveworld_2026 { width: 12.5%; min-width: 100px; } 
}
@media all and (max-width:1400px) {
    #content_image_logo { bottom: 50px; } 
}
@media all and (max-width:1200px) {
    #content_image_log { width: 10%; } 
}

@media all and (max-width:980px) { 
    #content_image { margin-top: 60px; }
	
    #content_image_logo { top: 20px; bottom: auto; } 
	#gfd_valveworld_2026 { top: 5px; bottom: auto; } 
}
@media all and (max-width:768px) { 
    #content_image_logo { left: 15px; } 
    #gfd_valveworld_2026 { right: 10px; min-width: 80px; } 
}





#footer_bg { clear: both; padding: 0; background-color: #2f2d2e;  }
#footer { clear: both; padding: 33px 0 13px 0; color: #333; font-size: 14px; line-height: 20px; }

#footer a { text-decoration: none; color: #999; hyphens: auto; }
#footer a:hover { text-decoration: none; color: #FFF; }
#footer a.sublink { display: inline-block; margin: 0 0 0 30px; }

.footer_box { float: left; display: block; width: 13.60%; height: auto; min-height: 100px; margin: 0 0 20px 2.63%; padding: 0; color: #999; }

#footer_box_2, #footer_box_6 { width: 11.60%; }
#footer_box_5 { width: 17.60%; }


@supports (display: flex) {
    #footer { display: flex; width: auto; max-width: 1900px; margin: 0 10px; flex-flow: row wrap; justify-content: space-between;
    }

    .footer_box { float: none; display: inline-block; width: auto; height: auto; min-height: 100px; margin: 0 0 20px 0; padding: 0 10px; }

    #footer_box_2, #footer_box_6 { width: auto; }
    #footer_box_5 { width: auto; }
    #footer_box_break_4 { display: none; width: 0; }
    
    @media all and (max-width:1400px) {
        #footer { justify-content: flex-start; }
        .footer_box { flex: 0 1 33.33%; }
        #footer_box_break_4 { display: block; width: 100%; }
    }

    @media all and (max-width:768px) {
        .footer_box { flex: 0 1 50.0%; }
        #footer_box_break_4 { display: none; width: 0; }
    }
    @media all and (max-width:480px) {
        .footer_box { display: block; width: 100% !important; padding: 0; flex: none; } 
    }
}


/*
#footer_scroll_to_top { display: block; position: fixed; top: auto; bottom: 10px; left: auto; right: 10px; width: 90px; height: 30px; margin: 0; padding: 0; z-index: 900; }
#footer_scroll_to_top_box { display: block; width: 90px; height: 30px; margin: 0; padding: 5px 0; text-align: right; background-color: transparent; }
#footer_scroll_to_top_box a { display: inline-block; width: 40px; height: 40px; margin: 0 0 0 8px; padding: 0; line-height: 20px; color: #FFF; background-color: transparent; text-align: left; text-indent: -9999em; overflow: hidden; text-decoration: none; background-position: center; background-repeat: no-repeat; background-size: 30px 30px; background-color: rgba(0,0,0,0.9); }
#footer_scroll_to_top_box a#scroll_to_top { background-image: url(icon_scroll_to_top.png); }
#footer_scroll_to_top_box a.betrater_kontaktieren { background-image: url(icon_fragezeichen.png); }
#footer_scroll_to_top_box a:hover { background-color: rgba(0,0,0,0.5); }
*/

a#page_scroll_to_top,
a#page_betrater_kontaktieren { display: block; position: fixed; left: auto; right: 10px; width: 40px; height: 40px; margin: 0; padding: 0; text-indent: -9999em; overflow: hidden; text-decoration: none; background-position: center; background-repeat: no-repeat; background-size: 30px 30px; background-color: rgba(0,0,0,0.75); z-index: 900; }

a#page_scroll_to_top { top: auto; bottom: 10px; background-image: url(icon_scroll_to_top.png); }
a#page_betrater_kontaktieren { top: 50%; bottom: auto; right: 0; background-image: url(icon_fragezeichen.png); background-color: rgba(238,114,2,0.85); }

a#page_scroll_to_top:hover { background-color: rgba(0,0,0,1); }
a#page_betrater_kontaktieren:hover { background-color: rgba(238,114,2,1); }


/* Suche */
#suchbox_bg { display: block; position: fixed; top: 0; left: auto; right: 0; width: 240px; height: 100vh; margin: 0 -240px 0 0; padding: 0; z-index: 100; background-color: rgba(0,0,0,0.75); 
transition: margin-right 1000ms ease-in-out; }
#suchbox_bg.active { margin-right: 0; transition: margin-right 1000ms ease-in-out; }

#suchbox { display: block; position: relative; top: 0; left:0; width: 202px; height: 30px; margin: 0; padding: 200px 0 0 15px; font-size: 14px; line-height: 30px; color: #000; text-align: left; z-index: 100; }
.search_it_form { display: block; position: relative; top: 0; left: 0; width: 200px; height: 30px; margin: 0; padding: 0; background-color: #F0F0F0; }
.search_it_form fieldset { margin: 0; padding: 0; }
.search_it_form input.search_it_text { display: block; width: 150px; height: 30px; margin: 0; padding: 0 40px 0 10px; color: #000; font-size: 14px; line-height: 30px; background-color: transparent; border: none; outline: none; }
.search_it_form input.hidden { display: none; }
.search_it_form input.search_it_button { position: absolute; top: 3px; right: 3px; width: 24px; height: 24px; margin: 0; padding: 0; z-index: 10;  border: none; color: #000; background-color: transparent; background-image:url(suchlupe.svg); background-repeat: no-repeat; background-position: center center; cursor: pointer; text-indent: -99999px; overflow: hidden; }
.search_it_form input.search_it_button:hover { opacity: 0.5; }
    
.search_highlighter { background-color: #F0F0f0; color: #000; }


/* ----------------------------------------------------------------------------------
   sticky Anpassungen
---------------------------------------------------------------------------------- */ 
.fixed #sticky_header_nav { display: block; width: auto; margin:  0 190px 0 240px; }

.fixed #sticky_header_left a#sticky_header_logo { display: block; }

.fixed #sticky_header_right { width: 180px; }
.fixed #sticky_header_right a span { display: none; }


@media all and (max-width:1400px) {
    .fixed #sticky_header_nav { padding: 30px 0 0 0; }
    .fixed #sticky_header_nav a { line-height: 40px; }
    .fixed #sticky_header_nav a span.first,
    .fixed #sticky_header_nav a span.second,
    .fixed #sticky_header_nav a span.one { display: block; font-size: 18px;
    line-height: 20px; }
}

@media all and (max-width:1200px) {
    .fixed #sticky_header_nav { white-space: nowrap; }
    .fixed #sticky_header_nav a { margin: 0 8px; }
    .fixed #sticky_header_nav a span.first,
    .fixed #sticky_header_nav a span.second,
    .fixed #sticky_header_nav a span.one { font-size: 16px; }
}

@media all and (max-width:980px) {
    .fixed #sticky_header_nav { display: none; }
}

@media all and (max-width:400px) {
    .fixed #sticky_header_left a#sticky_header_logo { display: none; }
}


/* ----------------------------------------------------------------------------------
   Module
---------------------------------------------------------------------------------- */ 
a.link_button,
a.button_back_to_matchcode {
	display: inline-block;
    width: auto; height: auto;
	margin: 0 0 10px 0; padding: 5px 15px;
    border: none; background-color: #ed752d;
    text-align: center; color: #FFF; text-decoration: none; 
    cursor: pointer;
}

a.link_button:hover,
a.button_back_to_matchcode:hover { background-color: #000; color: #FFF; text-decoration: none; }

a.button_back_to_matchcode { margin: 0 0 20px 2.63%; }


.header_image_box { display: block; position: relative; top: 0; left: 0; width: 100%; height: auto; margin: 0; padding: 0; z-index: 1; }

.header_image_box img { width: 100%; max-width: none; }

.header_image_text { display: block; position: absolute; top: auto; bottom: 0; left: auto; right: 30px; width: auto; height: auto; margin: 0; padding: 0; z-index: 2;
font-size: 32px; line-height: 34px; color: #2f2d2e; text-align: right; text-transform: uppercase;
font-family: rockwell, akagi-pro, Verdana, Geneva, sans-serif; text-shadow: 1px 1px 1px #fff; }
.header_image_top { font-size: 24px; line-height: 26px; margin: 0 0 5px 0; }



#header_slick_slider .text_color_white { color: #FFF; text-shadow: 1px 1px 1px #2f2d2e; }
#header_slick_slider .text_color_black { color: #000; }
#header_slick_slider .text_color_gray { color: #807c7b; }
#header_slick_slider .text_color_darkgray { color: #2f2d2e; }
#header_slick_slider .text_color_orange { color: #ed752d; }

/*
.header_image_top,
.header_image_bottom { display: block; position: absolute; top: auto; bottom: 0; left: auto; right: 30px; width: auto; height: auto; margin: 0; padding: 0; z-index: 2;
font-size: 42px; line-height: 44px; color: #FFF; text-align: right; text-transform: uppercase;
font-family: rockwell, akagi-pro, Verdana, Geneva, sans-serif;
text-shadow: 1px 1px 1px #333; }
.header_image_top { bottom: 50px; font-size: 28px; line-height: 30px; }
*/

#header_slick_slider .slick-prev, 
#header_slick_slider .slick-next { display: none !important; }
#header_slick_slider:hover .slick-prev,
#header_slick_slider:hover .slick-next { display: block !important; }


@media all and (max-width:980px) { 
    .header_image_top { font-size: 18px; line-height: 20px; }
    .header_image_bottom { font-size: 30px; line-height: 32px; }
}
@media all and (max-width:768px) { 
    #header_slick_slider { background-color: #2f2d2e; }
    
    .header_image_text { position: relative; top: 0; bottom: auto; left: 0; right: auto; padding: 10px 20px; z-index: 2; background-color: #2f2d2e; }
    .header_image_top { font-size: 16px; line-height: 18px; }
    .header_image_bottom { font-size: 26px; line-height: 28px; } 
    
    #header_slick_slider .header_image_text { color: #FFF !important; text-shadow: 1px 1px 1px #807c7b !important; }
}
@media all and (max-width:480px) { 
    .header_image_top { font-size: 14px; line-height: 16px; }
    .header_image_bottom { font-size: 20px; line-height: 22px; } 
}

@media all and (max-width:360px) { 
.header_image_text { hyphens: auto; }
}






#flexbox_container {
    position: relative;
    min-height: 200px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    background: #eee;
border: 1px solid #999;
    padding: 15px;
    margin-top: 10px;
}



.bild_hover_box { float: left; display: block; width: 29.82%; height: 20vw; margin: 0 0 2.63% 2.63%; overflow: hidden; background: #999; }
.bild_hover_box_2_3 { width: 62.27%; }

.bild_hover_box a { display: block; position: relative; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; z-index: 1; 
transition: all 400ms ease-in-out;
}

.bild_hover_box_image { display: block; position: relative; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; z-index: 1; 
background-position: center center; background-repeat: no-repeat; background-size: cover; 
filter: saturate(40%); 
transition: all 400ms ease-in-out; }

.bild_hover_box_text { position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%; min-height: 20px; margin: 0; padding: 0; z-index: 10; background-color: rgba(0,0,0,0.0); color: #FFF; text-shadow: 1px 1px 1px #333; 
}

.bild_hover_box_text_table { display: table; top: 0; left: 0; width: 100%; height: 100%; min-height: 20px; margin: 0; padding: 0; z-index: 10; }

.bild_hover_box_text_table_cell { display: table-cell; top: 0; left: 0; width: 100%; height: 100%; min-height: 20px; margin: 0; padding: 0; z-index: 10; 
text-align: center; vertical-align: middle;
}

.bild_hover_box_text_table_cell h2 { color: #FFF; font-size: 36px; line-height: 36px; }

.bild_hover_box_text_table_cell p { color: #FFF; font-size: 18px; line-height: 24px; font-weight: 700; }


.bild_hover_box a:hover .bild_hover_box_image { transform: scale(1.05); filter: saturate(100%); transition: all 400ms ease-in-out; }
.bild_hover_box a:hover .bild_hover_box_text { /* background-color: rgba(0,0,0,0.5); */ }

/*
.bild_hover_box_text h3 { color: #FFF; }
.bild_hover_box a:hover .bild_hover_box_text { background-color: rgba(120,4,0,0.8); }
*/

@media all and (max-width:1200px) {
.bild_hover_box { height: 25vw; }
.bild_hover_box_text_table_cell h2 { margin: 0 0 10px 0; font-size: 30px; line-height: 32px; }

}
    
@media all and (max-width:980px) { 
.bild_hover_box { float: left; width: 46.05%; height: 30vw; margin: 0 0 2.63% 2.63%; }
.bild_hover_box_text_table_cell h2 { margin: 0 0 10px 0; font-size: 28px; line-height: 30px; }

.bild_hover_box_text_table_cell p { margin: 0 0 10px 0; font-size: 16px; line-height: 18px; }
    
}

@media all and (max-width:640px) { 
.bild_hover_box { float: none; clear: both; width: 94.74%; height: 45vw; margin: 0 0 2.63% 2.63%; }
.bild_hover_box_text_table_cell h2 { margin: 0 0 5px 0; font-size: 24px; line-height: 26px; }

.bild_hover_box_text_table_cell p { margin: 0 0 5px 0; font-size: 15px; line-height: 17px; }
    
}
@media all and (max-width:480px) { 
.bild_hover_box_text_table_cell h2 { font-size: 21px; line-height: 23px; } 
    
}





.news_teaser_box .slick-dots {
    bottom: -35px;
    
}



.bildergalerie_slider { clear: both; display: block; }
.bildergalerie_box { display: block; position: relative; top: 0; left: 0; width: 100%; height: auto; margin: 0; padding: 0; z-index: 1; }
.bildergalerie_text { display: none; position: absolute; top: auto; bottom: 0; left: 0; width: 100%; height: auto; margin: 0; padding: 10px 0; z-index: 1; background-color: rgba(255,255,255,0.75); color: #000; text-align: center; overflow: hidden; }
.bildergalerie_box:hover .bildergalerie_text { display: block; }


.reiter_nav_bg { clear: both;  display: block; margin: 0 2.63%; padding: 0; }

.reiter_nav_bg { clear: both; display: block; position: relative; top: 0; left: 0; width: 100%; height: 1px; margin: 0; padding: 0; z-index: 1; }
.reiter_nav { display: block; position: absolute; top: -75px; left: 2.63%; width: 94.74%; height: auto; margin: 0; padding: 0; z-index: 1; }

.reiter_nav_ende { top: auto; bottom: -50px; }

.reiter_nav { clear: both;  padding: 0; }
.reiter_nav a { display: inline-block; position: relative; top: 0; left: 0; width: 25%; height: auto; padding: 15px 25px; margin: 0 -4px 0 0; font-size: 15px; line-height: 20px; color: #fff; text-decoration: none; background-color: #575757; box-shadow: 4px 4px 8px 0 #222; text-align: center;
background-image: radial-gradient(#676767, #575757); font-weight: bold; }


.reiter_anzahl_1 a { width: 100%; }
.reiter_anzahl_2 a { width: 50%; }
.reiter_anzahl_3 a { width: 33.33%; }
.reiter_anzahl_4 a { width: 25%; }
.reiter_anzahl_5 a { width: 20%; }
.reiter_anzahl_6 a { width: 16.66%; }
.reiter_anzahl_7 a { width: 14.28%; }
.reiter_anzahl_8 a { width: 12.5%; }
.reiter_anzahl_9 a { width: 11.11%; }
.reiter_anzahl_10 a { width: 10%; }

@media all and (max-width:980px) {
.reiter_nav_bg { height: auto; }
.reiter_nav { position: relative; top: 0; left: 2.63%; width: 94.74%; }

.reiter_anzahl_6 a { width: 33.33%; }
.reiter_anzahl_7 a { width: 25%; }
.reiter_anzahl_8 a { width: 25%; }
.reiter_anzahl_9 a { width: 20%; }
.reiter_anzahl_10 a { width: 20%; } 

}

@media all and (max-width:768px) {
.reiter_anzahl_1 a { width: 100%; }
.reiter_nav a { width: auto !important; }
}

.reiter_nav a:hover { cursor: pointer; color: #fff; text-decoration: none; background-color: #ee7202; background-image: radial-gradient(#fe8212, #ee7202); font-weight: bold; }
.reiter_nav a.active { color: #000; background-color: #ee7202; background-image: radial-gradient(#fe8212, #ee7202); font-weight: bold; }

.reiter_nav a.active::after { content: ''; display: block; position: absolute; top: auto; bottom: -15px; left: 50px; width: 22px; height: 15px; margin: 0; padding: 0; background-image: url(reiter_nav_arrow_down.png); background-position: center; background-repeat: no-repeat; }

.reiter_nav_ende a.active::after { top: -15px; bottom: auto; background-image: url(reiter_nav_arrow_top.png); }


.reiter_content { clear: both; display: block; margin: 0; padding: 0; }



/* ------------ Hilfsmenue Seite: Branchen ------------ */ 
.modul_67 .view {
display: block; position: relative; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; z-index: 1; overflow: hidden;
border: 1px solid #E0E0E0; background-color: #fff; text-align: center; cursor: default;
/* -webkit-box-shadow: 1px 1px 2px #e6e6e6; -moz-box-shadow: 1px 1px 2px #e6e6e6; box-shadow: 1px 1px 2px #e6e6e6; */
}
.modul_67 .view .mask, 
.modul_67 .view .flip_box {
display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; z-index: 1; overflow: hidden; }
.modul_67 .view .flip_text { display: block; padding: 0; text-align: left; font-size: 15px; line-height: 20px; }
.modul_67 .view img { display: block; position: relative; }
    
.modul_67 .view .flip_image_headline { display: block; position: absolute; top: 50px; left: 0; width: 100%; height: auto; margin: 0; padding: 0; z-index: 10; overflow: hidden; text-align: center;
color: #fff; font-size: 24px; line-height: 30px; font-weight: 700; text-shadow: 1px 1px 1px #333; }
.modul_67 .view .flip_image_headline span { font-size: 18px; line-height: 25px; font-weight: 300; }
    
.modul_67 .view .flip_text_image_band { display: none; position: absolute; top: auto; bottom: 25px; left: 0; width: 100%; height: 25px; margin: 0; padding: 0; z-index: 1; overflow: hidden; background-color: #ee7202; background-color: rgba(238,114,2,0.8); background-color: rgba(0,0,0,0.8); }
    
.modul_67 .view .flip_text_image { display: none; position: absolute; top: auto; bottom: 0; left: 30px; width: auto; max-width: 120px; height: auto; margin: 0; padding: 0; z-index: 2; overflow: hidden; }

.modul_67 .flip_text_slidedown { display: block; padding: 20px 20px 1px 20px; background-color: #ee7202;  color: #fff; border: 1px solid #FFF; border-top: none; }

.flip_text_button { display: none; position: absolute; top: auto; bottom: 25px; left: auto; right: 25px; width: auto; height: auto; margin: 0; padding: 0; z-index: 1; overflow: hidden; }

/* ------------------------------------------------------------*/
/* --- Spezielle Einstellungen fuer jeden Effekt ---*/
/* ------------------------------------------------------------*/

.modul_67 .view-first img { transition: all 0.2s linear; }
.modul_67 .view-first .mask {
   filter: alpha(opacity=0);
   opacity: 0;
   background-color: rgba(200,200,200, 0.9);
   transition: all 0.4s ease-in-out;
}
.modul_67 .view-first h2 {
   color: #000; font-size: 24px; line-height: 30px; font-weight: 700; 
   margin: 0 0 20px 0; padding: 50px 0 0 0;
   opacity: 0;
   transform: translateY(-100px);
   transition: all 0.2s ease-in-out; 
    text-align: center;
}
.modul_67 .view-first h2 span { color: #000; font-size: 18px; line-height: 25px; font-weight: 300; } 
.modul_67 .view-first p {
   transform: translateY(100%);
   opacity: 0;
   transition: all 0.2s linear;
    display: block; position: relative; width: auto; max-width: 360px; margin: 0 auto;
    z-index: 10;
}
.modul_67 .view-first:hover { cursor: pointer; }
.modul_67 .view-first:hover img { transform: scale(1.1,1.1); }
.modul_67 .view-first a.info { filter: alpha(opacity=0); opacity: 0; transition: all 0.2s ease-in-out; }
.modul_67 .view-first:hover .mask { filter: alpha(opacity=100); opacity: 1; }
.modul_67 .view-first:hover h2,
.modul_67 .view-first:hover p,
.modul_67 .view-first:hover a.info {
   opacity: 1;
   transform: translateY(0);
}
.modul_67 .view-first:hover p { transition-delay: 0.1s; }
.modul_67 .view-first:hover a.info { transition-delay: 0.2s; }

.modul_67 .view:hover .flip_image_headline { display: none; }
    
.modul_67 .view:hover .flip_text_image_band { display: none; }
.modul_67 .view:hover .flip_text_image { display: block; } 
.modul_67 .view:hover .flip_text_button { display: block; } 


#seite_branchen_hilfsmenue { display: block; float: right; width: 21.71%; margin: 0 2.63% 20px 0; padding: 0; }

#seite_branchen_hilfsmenue a { color: #fff; text-decoration: none; }
#seite_branchen_hilfsmenue a:hover { color: #ee7202; text-decoration: none; }
#seite_branchen_hilfsmenue a.active { color: #ee7202; }

#seite_branchen_inhalt .outer_box { float: none; width: 100%; margin: 0 0 50px 0; }

@media all and (max-width:1200px) {
.modul_67 .view .flip_text { font-size: 15px; line-height: 18px; }
.modul_67 .view-first h2 { font-size: 21px; line-height: 25px; margin: 0 0 10px 0; padding: 20px 0 0 0; }
.modul_67 .view-first h2 span { font-size: 16px; line-height: 20px; } 
.modul_67 .view-first p { max-width: 420px; }
    
}

@media all and (max-width:980px) {
.modul_67 .view-first h2 { margin: 0 0 5px 0; padding: 10px 0 0 0; }
.modul_67 .view-first p { margin: 0 15px; max-width: none; }
    
.modul_67 .view .flip_text_image { left: 15px; max-width: 100px; }   
    
.flip_text_button { bottom: 15px; right: 15px; }    

#seite_branchen_hilfsmenue { width: 46.05%; }
    
#seite_branchen_inhalt { clear: both; float: none; width: 100%; margin: 0; }
#seite_branchen_inhalt .outer_box { display: block; float: left; width: 46.05%; margin: 0 0 50px 2.63%; }
     
}

@media all and (max-width:768px) {
.modul_67 .view .flip_text_image { left: 10px; max-width: 90px; }   
.flip_text_button { bottom: 10px; right: 10px; }       

#seite_branchen_hilfsmenue { float: none; width: auto; margin: 0 10px 30px 10px; }
    
#seite_branchen_inhalt .outer_box { float: none; width: auto; margin: 0 10px 30px 10px; }
  
}
/*
@media all and (max-width:480px) {
.modul_67 .view .mask { display: none; }
.modul_67 .view .flip_box { position: relative; height: auto; }
    
.modul_67 .view .flip_text_image_band { display: none !important; }
.modul_67 .view .flip_image_headline { display: none !important; }
    
.modul_67 .view .flip_text { padding: 20px 0; }
.modul_67 .view-first h2 { margin: 0 0 10px 0; padding: 0; opacity: 1; transform: none; }
.modul_67 .view-first p { opacity: 1; transform: none; margin: 0 15px; max-width: none; }
    
.modul_67 .view .flip_text_image_band { display: none !important; }
.modul_67 .view .flip_text_image { display: none !important; }
    
.modul_67 .view-first:hover img { transform: none; }
    
}
*/



/* ---------------------------------------------------------------------------------- */ 



.hexagon_container { clear: both; display: block; position: relative; top: 0; left: 0; width: 100%; height: auto; margin: 0; padding: 0; z-index: 1; }

.hexagon_box { display: inline-block; width: 175px; height: auto; margin: 0; padding: 0; }

.hexagon,
.hexagon-in1,
.hexagon-in2 { display: block; position: relative; width: 100%; height: 100%; margin: 0; padding: 0; z-index: 1; overflow: hidden; visibility: hidden; } 

.hexagon { width: 172px; height: 150px; }

.hexagon.hexagon_image { transform: rotate(120deg); }

.hexagon.fresco { cursor: pointer; transform: scale(1.0) rotate(120deg); transition: transform 500ms ease-in-out; }
.hexagon.fresco:hover { transform: scale(1.2) rotate(120deg); transition: transform 500ms ease-in-out; }

.hexagon-in1 { transform: rotate(-60deg); }
.hexagon-in2 { transform: rotate(-60deg); background-repeat: no-repeat; background-position: center; background-size: cover; visibility: visible; }

/* Rahmen bzw. Border */
.hexagon::before,
.hexagon-in1::before,
.hexagon-in2::before,
.hexagon::after,
.hexagon-in1::after,
.hexagon-in2::after { content: ''; display: block; position: absolute; top: 0; left: 25%; width: 50%; height: 1px; background-color: #FFF; z-index: 10; visibility: visible; }
.hexagon::after,
.hexagon-in1::after,
.hexagon-in2::after { top: auto; bottom: 0; }


.border_white .hexagon::before,
.border_white .hexagon-in1::before,
.border_white .hexagon-in2::before,
.border_white .hexagon::after,
.border_white .hexagon-in1::after,
.border_white .hexagon-in2::after { background-color: #fff; }

.border_orange .hexagon::before,
.border_orange .hexagon-in1::before,
.border_orange .hexagon-in2::before,
.border_orange .hexagon::after,
.border_orange .hexagon-in1::after,
.border_orange .hexagon-in2::after { background-color: #ee7202; }

.border_lightgray .hexagon::before,
.border_lightgray .hexagon-in1::before,
.border_lightgray .hexagon-in2::before,
.border_lightgray .hexagon::after,
.border_lightgray .hexagon-in1::after,
.border_lightgray .hexagon-in2::after { background-color: #dadada; }

.border_gray .hexagon::before,
.border_gray .hexagon-in1::before,
.border_gray .hexagon-in2::before,
.border_gray .hexagon::after,
.border_gray .hexagon-in1::after,
.border_gray .hexagon-in2::after { background-color: #807c7b; }


/* Hintergrundfarbe, wenn Hexagon ohne Bild */
.bg_white .hexagon-in2 { background-color: #fff;  }
.bg_orange .hexagon-in2 { background-color: #ee7202; }
.bg_lightgray .hexagon-in2 { background-color: #dadada; }
.bg_gray .hexagon-in2 { background-color: #807c7b; }


/* ---------------------------------------------------------------------------------- */ 


.hexagon_container { clear: both; display: block; width: auto; height: auto; min-height: 150px; margin: 0 2.63% 20px 2.63%; padding: 0; }
.hexagon_container strong { color: #ee7202; }

.hexagon_container .hexagon_box { display: block; position: absolute; top: 0; left: 0; width: 172px; height: 150px; margin: 0; padding: 0; z-index: 10; text-align: center; }

.hexagon_container .hexagon_text { display: block; position: absolute; top: 50%; left: 0; width: 100%; height: auto; margin: -15px 0 0 0; padding: 0; z-index: 10; text-align: center; color: #fff; font-size: 20px; line-height: 30px; font-weight: bold; }

.hexagon_container .hexagon_full_text { display: block; width: auto; max-width: 980px; height: auto; margin: 0; padding: 0; z-index: 10; text-align: left; }

.bg_white .hexagon_text { color: #000;  }
.bg_orange .hexagon_text { }
.bg_lightgray .hexagon_text { color: #000; }
.bg_gray .hexagon_text { }


@media all and (max-width:980px) {
.hexagon_container { margin: 0 2.63% 40px 2.63%; }
.hexagon_container .hexagon_full_text { margin: 0 0 0 200px !important; padding: 10px 0 0 0 !important; }
.hexagon_container .hexagon_box { position: absolute; top: 0 !important; left: 0 !important; }
.hexagon_container .empty_1 { display: none !important; }
.hexagon_container .empty_2 { display: none !important; }

}

@media all and (max-width:768px) {
.hexagon_container .hexagon_full_text { margin: 0 !important; padding: 10px 0 0 0 !important; }
.hexagon_container .hexagon_box { position: relative; }

}


/* ---------------------------------------------------------------------------------- */ 

#s7_messmittel_container { height: 700px; }

#s7_messmittel_container .hexagon_box { display: block; position: absolute; top: 0; left: 0; width: 172px; height: 150px; margin: 0; padding: 0; z-index: 10; text-align: center; }

#s7_messmittel_container #s7_messmittel_empty_1 { top: 90px; left: 20px; z-index: 1; }
#s7_messmittel_container #s7_messmittel_empty_2 { top: 190px; left: 110px; z-index: 1; }
    
#s7_messmittel_container #s7_messmittel_empty_3 { top: 0; left: 210px; z-index: 1; }
#s7_messmittel_container #s7_messmittel_empty_4 { top: 100px; left: 300px; z-index: 1; }

#s7_messmittel_container #s7_messmittel_1 { top: 170px; left: 220px; }
#s7_messmittel_container #s7_messmittel_2 { top: 80px; left: 360px; }
    
#s7_messmittel_container #s7_messmittel_3 { top: 260px; left: 360px; }
#s7_messmittel_container #s7_messmittel_4 { top: 170px; left: 500px; }   




/* ------------ Seite 18 - Matchcode Simulation mit Links innerhalb der Reiter ------------ */ 

.matchode_dichtungsbezeichnung { display: block; position: relative; top: 0; left: 0; width: 680px; margin: 0 0 30px 0; padding: 15px 30px 5px 30px; font-size: 30px; line-height: 40px; color: #000; background-color: #FFF; border: 5px solid #ee7202; }
.matchode_dichtungsbezeichnung span { color: #000; }

.matchode_dichtungsbezeichnung a { display: inline-block; position: relative; top: 0; left: 0; width: auto; min-width: 40px; height: auto; margin: 0 0 10px 0; padding: 2px 10px; font-family: inherit; font-size: 30px; line-height: 40px; color: #000; text-decoration: none; text-align: center; cursor: pointer; 
border: 1px solid #CCC; border-radius: 5px; background-color: #FFF; }
.matchode_dichtungsbezeichnung a:hover { border-color: #ed752d; color: #000; text-decoration: none; }
.matchode_dichtungsbezeichnung a:focus { border-color: #ed752d; outline: none; box-shadow: none; }

.matchode_dichtungsbezeichnung a.field_light { background-color: #ececec; }
.matchode_dichtungsbezeichnung a.field_dark { background-color: #dadada; }
    
.matchode_dichtungsbezeichnung .info { position: absolute; top: -9px; left: auto; right: -9px; width: 18px; height: 18px; z-index: auto; background-image: url(icon_info.png); background-size: 18px 18px; background-position: right top; background-repeat: no-repeat; cursor: default; }

.matchode_dichtungsbezeichnung .info span { display: none; position: absolute; top: 50%; left: 50%; width: auto; min-width: 100px; height: auto; min-height: 40px; margin: -30px 0 0 -50px; padding: 10px; z-index: 30; background-color: #ed752d; color: #FFF; font-size: 15px; line-height: 20px; }
.matchode_dichtungsbezeichnung .info:hover span { display: block; }




/* ------------ Seite 18 - Federelastische Kunststoffdichtungen ------------ */ 
/* ------------ Seite 19 - Elastische Metalldichtungen ------------ */
/* ------------ Seite 20 - Wellendichtungen ------------ */ 
.radialdichtung_box_container,
.metall_ringe_box_container,
.wellendichtringe_box_container { clear: both; display: block; position: relative; top: 0; left: 0; width: 100%; height: auto; margin: 0 0 30px 0; padding: 0; z-index: 1; }

.radialdichtung_box_container_bg_line,
.metall_ringe_box_container_bg_line_1,
.metall_ringe_box_container_bg_line_2,
.wellendichtringe_box_container_bg_line { clear: both; display: block; position: absolute; top: 0; left: 50%; width: 2px; height: 100%; margin: 0 0 0 -1px; padding: 0; z-index: 1; background-color: #fff; }

.metall_ringe_box_container_bg_line_1 { left: 33.33%; }
.metall_ringe_box_container_bg_line_2 { left: 66.66%; }

.radialdichtung_box_container .outer_box,
.metall_ringe_box_container .outer_box,
.wellendichtringe_box_container .outer_box { margin-bottom: 0; }

.radialdichtung_box_container img,
.metall_ringe_box_container img,
.wellendichtringe_box_container img { display: block; border: 2px solid #fff; background-color: #ccc; }

.radialdichtung_box_container h2 { display: block; padding: 60px 0; }
.metall_ringe_box_container h2 { display: block; padding: 0; }
.wellendichtringe_box_container h2 { display: block; padding: 60px 0; }

.radialdichtung_box_container h3 { color: #ee7202; }
.metall_ringe_box_container h3 { color: #ee7202; font-weight: 700; margin: 0 0 10px 0; }
.wellendichtringe_box_container h3 { color: #ee7202; }


.radialdichtung_box,
.metall_ringe_box,
.wellendichtringe_box { clear: both; display: block; margin: 0 0 30px 0; }


.radialdichtung_box_text { float: left; display: block; width: 65%; }
.radialdichtung_box_img { float: right; display: block; width: 30%; }
.radialdichtung_box_big .radialdichtung_box_text { width: 50%; }
.radialdichtung_box_big .radialdichtung_box_img { width: 45%; }

.metall_ringe_box_text { float: left; display: block; width: 75%; margin: 0; padding: 10px 0 0 20px; }
.metall_ringe_box_img { float: left; display: block; width: 25%; margin: 0; }

.wellendichtringe_box_img_1 { float: left; display: block; width: 25%; margin: 0; }
.wellendichtringe_box_text { float: left; display: block; width: 50%; margin: 0; padding: 0 20px; }
.wellendichtringe_box_img_2 { float: left; display: block; width: 25%; margin: 0; }
.wellendichtringe_box_text_full { float: left; display: block; width: 75%; margin: 0; padding: 0 0 0 20px; }
    
@media all and (max-width:980px) {
.radialdichtung_box_container .outer_box,
.metall_ringe_box_container .outer_box,
.wellendichtringe_box_container .outer_box { clear: both; float: none; width: 94.74%; margin: 0 0 50px 2.63%; }
    
    
.radialdichtung_box_container_bg_line,
.metall_ringe_box_container_bg_line_1,
.metall_ringe_box_container_bg_line_2,
.wellendichtringe_box_container_bg_line { clear: both; position: relative; left: 0; width: 100%; height: 2px; margin: 0 0 50px 2.63%; }
    
}




/* ------------ Seite 19 - Elastische Metalldichtungen ------------ */ 
.table_desktop { display: block; }
.table_responsive { display: none; }

.table_desktop img { min-width: 120px; }

.table_desktop td { vertical-align: top; }
    

@media all and (max-width:1450px) {
.table_desktop { overflow: hidden; overflow-x: auto; border: 5px solid #575757; box-shadow: 0 0 10px 0 #575757; }
    
.table_desktop_inner { display: block; padding: 0;  }
.table_desktop table { width: 100%; margin: 0 !important; }

}
    
@media all and (max-width:980px) {
.table_desktop { display: none; }
.table_responsive { display: block; }

}

.table_responsive table,
.table_responsive tr { border: none; }

.table_responsive th.headline { border: none; }

.table_responsive td img { }

.table_responsive td.description { padding: 10px 5px 50px 5px; border: none; }





/* ------------ Overlay mit Berater / Noch Fragen - Formular ------------ */ 

#overlay_bg { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; background-color: rgba(0, 0, 0, 0.8); z-index: 999; overflow-y: auto; }

#overlay_content { position: relative; top: 0; left: 0; width: 960px; height: auto; margin: 100px auto 25px auto; padding: 25px; z-index: 1001;    
background-color: #FFF; border: 3px solid #ed752d; }
#overlay_flClear { clear: both; }

#overlay_close { position: absolute; top: 15px; left: auto; right: 15px; width: 30px; height: 30px; margin: 0; padding: 0; background-image: url(overlay_close.png); background-position: center; background-repeat: no-repeat; z-index: 1002; }
#overlay_close:hover { opacity: 0.7; }

#overlay_content { color: #000; }
#overlay_content a { text-decoration: none; color: #ee7202; white-space: nowrap; }
#overlay_content a:hover { text-decoration: none; color: #000; }
#overlay_content .outer_box { margin-bottom: 20px; }

#overlay_content .like_h2 { margin: 0 0 10px 0; }


#berater_form { }
#berater_form .yform a { text-decoration: none; color: #ee7202; }
#berater_form .yform a:hover { text-decoration: none; color: #000; }

#berater_form .yform label { display: none; }
#berater_form .yform .checkbox label { display: block; }

#berater_form .yform .form-control { width: 99%; max-width: 480px; margin: 0 0 20px 0; }

#berater_form .yform .form-control:focus { border-color: #ee7202; }
    

@media all and (max-width:980px) {
#overlay_content { width: auto; margin: 50px 15px; }   

}



/* ----------------------------------------------------------------------------------
   Responsive Webdesign
---------------------------------------------------------------------------------- */ 
@media all and (min-width:1px) {
}

@media all and (max-width:1600px) {
/* mit dem Setzen der Breite auf geht das reponsive Webdesign erst richtig los */
#page_bg { width: 100%; min-width: 300px; overflow: hidden; }
#page { width: 100%; min-width: 300px; }

}

@media all and (max-width:1200px) {

}

@media all and (max-width:980px) {
.box_width_1_4 { width: 46.05%; }
}

@media all and (max-width:768px) {

.text_bild .flLeft,
.text_bild .flRight { float: none; width: auto; max-width: none; margin: 0 0 15px 0; }

.zweispalter { background-image: none; }
.zweispalter .flLeft { float: none; width: auto; margin: 0 0 15px 0; }
.zweispalter .flRight { float: none; width: auto; margin: 0; }

.outer_box { clear: both; float: none; width: auto; margin: 0 10px 40px 10px; }

/*
#arrow_top { display: block; position: relative; top: 0; bottom: auto; left: 0; right: auto; margin: 20px auto 0 auto; }
*/

}




/* yForm */
.yform div.alert { padding: 15px 30px; margin-bottom: 20px; }
.yform div.alert span { margin-right: 15px; }
.yform div.alert-danger { border: 2px solid #a94442; background-color: #f2dede;	color: #a94442; }
.yform .formcom_auth_form_info { list-style-type: none; padding-left: 0; margin-bottom: 50px; }
.yform .alert > p { margin-top: 10px; margin-bottom: 10px; }

.yform { display: block; width: 100%; }
.yform form { display: block; margin: 0 0 20px 0; padding: 0; }
.yform label { display: block; float: left; width: 180px; margin: 0 0 10px 0; padding: 5px 0; font-family: inherit; font-size: 16px; line-height: 20px; color: #000; }
.yform form.hide-label label { display: none; }
.yform .form-group { clear: both; display: block; }
.yform hr {
    border-top: 1px solid #b8c3cd;
    margin-top: 30px;
    margin-bottom: 30px;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}


.yform .form-control {
display: block; width: 60%; max-width: 400px; height: auto; margin: 0 0 20px 200px; padding: 5px 1%;
font-family: inherit; font-size: 14px; line-height: 20px; color: #000;
border: solid 1px #CCC; box-shadow: none; background: #FFF;
}
.yform .form-control:hover { border-color: #a8aeb5; }
.yform .form-control:focus { border-color: #37434f; outline: none; box-shadow: none; }

input[type="radio"], input[type="checkbox"] { display: inline-block; margin: 0 5px 10px 0; }

.yform .radio { display: inline-block; margin: 0 10px 0 5px; padding: 0; }
.yform .radio label { display: inline-block; float: none; width: auto; margin: 0; padding: 5px 0; line-height: 20px; }


/* Captcha */
.yform .captcha_headline { display: block; margin: 0 0 10px 0; }
.yform .form-captcha img { float: left; display: block; margin: 5px 10px 20px 0; }
.yform .form-captcha input { float: left; display: block; width: 60px; margin: 5px 10px 20px 0; }
.yform .form-captcha .input-group-btn a { display: block; width: 40px; height: 40px; margin: 0; padding: 0; background-image: url(yform_captcha_reload.png); background-position: center center; background-repeat: no-repeat; text-indent: -999999px; overflow: hidden; }


.yform .formular_headline { clear: both; display: block; margin: 0 0 10px 150px; }
.yform .div_checkboxen_headline { clear: both; display: block; margin: 0 0 10px 0; }


/* Button */
.yform .btn-primary {
	clear: both; display: block;
    width: 145px; height: auto;
	margin: 0 0 10px 20px; padding: 5px;
    border: none; background-color: #2f2d2e;
    font-weight: bold; text-align: center; color: #FFF;
}
.yform .btn-primary:hover { color: #FFF; background-color: #ee7202; }


.yform p { color: #000; }

/* weitere Anpassungen */
.yform .has-error label { color: #ee7202; }
.yform .formcheckbox label { display: block; float: none; width: 100%; margin: 0 0 10px 0; padding: 0; }


/* Sonderfaelle */
.form_left, .form_right { display: block; float: left; width: 49%; margin: 0; padding: 0; }
.form_right { float: right; }
.form_clear { clear: both; }

/*.formular_box { clear: both; display: block; background-color: #2f2d2e; padding: 20px 20px 10px 20px; margin: 0 0 20px 0; }
*/
.formular_box { clear: both; display: block; padding: 0; margin: 0 0 20px 0; }
/* Clearfix, um das Floating innerhalb der Container aufzuheben  */ 
.formular_box:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }


.yform .pflichtfelder { font-size: 0.8em; }

.yform .pflichtfelder { font-size: 0.8em; }

/* Honeypot gegen SPAM */
#yform-contact_formular-email_betreff,
#yform-berater_yform-email_betreff { display: block; width: 1px; height: 1px; margin: 0; padding: 0; overflow: hidden; }
#yform-contact_formular-email_betreff.has-error,
#yform-berater_yform-email_betreff.has-error  { display: block; width: auto; height: auto; margin: 0 0 20px 0; padding: 20px 20px 1px 20px; border: 1px solid #a94442; opacity: 1; background-color: #f0f0f0; color: #a94442; }
#yform-contact_formular-email_betreff.has-error label,
#yform-berater_yform-email_betreff.has-error label{ display: block !important; margin-bottom: 10px !important; }


#yform-contact_formular-email_betreff.has-error label,
#yform-berater_yform-email_betreff.has-error label { float: none !important; width: auto !important; }
#yform-contact_formular-email_betreff.has-error .form-control,
#yform-berater_yform-email_betreff.has-error .form-control { margin: 0 0 20px 0 !important; }



/* Upload Feld */
	
/* .upload_felder .upload_box { display: block; margin: 0 0 20px 0; padding: 10px; border: 1px solid #999; background-color: #f9f9f9; } */

.upload_felder .upload_box { display: block; position: relative; top: 0; left: 0; max-width: 480px; margin: 0 0 20px 0; padding: 0; border: 1px solid #ccc; background-color: #fff; }

/* den "Durchsuchen" Button  ausblenden */ 
.upload_felder .upload_box input[type="file"]::file-selector-button {
  width: 1px; margin: 0; padding: 0; opacity: 0; overflow: hidden;
}

.upload_felder .upload_box:hover { cursor: pointer; }

.upload_felder .form-group { clear: both; 
     display: flex;
     flex-direction: row;
     flex-wrap: nowrap;
     justify-content: flex-start;
     align-content: center;
	margin: 0; padding: 0;
}



/*
#berater_form .upload_felder span.input-group-btn { display: none; position: absolute; top: 0; left: 5px; width: auto; margin: 0; padding: 0; }
*/
#berater_form .upload_felder span.input-group-btn { display: none; position: relative; top: 0; left: 0; width: auto; margin: 0; padding: 0 0 0 5px; }
#berater_form .upload_felder span.input-group-btn.show { display: block; }

/*
#berater_form .upload_felder .input-group .form-control { width: 100%; margin: 0; padding: 0; border: none; background-color: transparent; }
*/	

#berater_form .upload_felder span.input-group-btn button.btn-default { 
margin: 0; padding: 5px 10px; border-radius: 0; background-color: #fff; color: #2f2d2e; text-decoration: none; font-size: 15px; line-height: 20px; border: none; cursor: pointer; }
#berater_form .upload_felder span.input-group-btn button.btn-default:hover { background-color: #fff; color: #ee7202; text-decoration: none; }

#berater_form .upload_felder span.input-group-btn button.btn-default::after { display: inline-block; content: 'Datei löschen'; margin: 0 0 0 5px; }

.lang_en #berater_form .upload_felder span.input-group-btn button.btn-default::after { content: 'Delete file'; }


#berater_form .upload_felder label.control-label { display: block; margin: 0; }
	
/*
#berater_form .upload_felder .input-group input { opacity: 0; }
*/	
#berater_form .upload_felder .input-group input { opacity: 1; background-position: center right; background-image: url(icon_upload.png); background-repeat: no-repeat; }




#berater_form .upload_felder .input-group { border: none; position: relative; top: 0; left: 0; width: 100%; /* background-position: center right; background-image: url(icon_upload.png); background-repeat: no-repeat; */ }
#berater_form .upload_felder .form-group:focus-within .input-group { border: none; }

#berater_form .upload_felder label { float: none; display: block; width: 20%; min-width: 120px; height: auto; margin: 0; padding: 7px 10px 3px 10px; font-family: inherit; color: #fff; background-color: #ee7202; border: none; }

#berater_form .upload_felder .form-control {
display: block; width: 100%; height: auto; margin: 0; padding: 5px 10px; border: none; }



#berater_form .upload_felder div.checkbox { display: block; width: 100%; }

#berater_form .upload_felder div.checkbox label { display: block; width: 100%; margin: 10px 5px 5px 10px; padding: 0; background-color: transparent; color: #ee7202; border: none; }




#berater_form .upload_felder .form-control:hover { border: none; }
#berater_form .upload_felder .form-control:focus { border: none; }

#berater_form .upload_felder .form-group:hover label { background-color: #ee7202; border: none; }
#berater_form .upload_felder .form-group:focus-within label { background-color: #ee7202; border: none; }



#berater_form .upload_felder .input-group input:hover { cursor: pointer !important; background-color: #f9f9f9; }
#berater_form .upload_felder label.control-label:hover { cursor: pointer !important; }
#berater_form .upload_felder .upload_box input[type="file"]:hover { cursor: pointer !important; }
#berater_form .upload_felder span.input-group-btn.show:hover { cursor: pointer !important; }




@media all and (max-width:980px) {
.yform label { float: none; width: auto; margin: 0 0 5px 0; padding: 0; }
.yform .form-control { width: 96%; margin: 0 0 20px 0; }

}

@media all and (max-width:768px) {
.form_left, .form_right { clear: both; float: none; width: 100%; }
    
}







/* ----------------------------------------------------------------------------------
   Datenschutzinfo per Cookie
---------------------------------------------------------------------------------- */
#datenschutzinfo { display: block; position: fixed; top: auto; bottom: 0; left: 0; width: 100%; height: auto; margin: 0; padding: 0; z-index: 999; overflow: hidden; background-color: #999; }
#datenschutzinfo a { color: #FFF; text-decoration: underline; }
#datenschutzinfo a:hover { color: #FFF; text-decoration: none; }
#datenschutzinfo p { margin: 0; }

#datenschutzinfo_inner { display: block; width: 98%; height: auto; margin: 0 auto; padding: 5px 1%; font-size: 12px; line-height: 20px; color: #FFF; text-align: center; }
#datenschutzinfo_text { display: block; margin: 0 0 5px 0; }
/*
#datenschutzinfo_text { float: left; display: block; width: 830px; }
#datenschutzinfo_button { float: right; display: block; width: 140px; padding: 10px 0 0 0; }
*/
#datenschutzinfo_button a { display: inline-block; width: 48px; height: 20px; margin: 0; padding: 0; text-decoration: none; color: #000; background-color: #FFF; font-size: 12px; line-height: 20px; font-weight: 400; }
#datenschutzinfo_button a:hover{ text-decoration: none; color: #FFF; background-color: #999; }

#datenschutzinfo_spacer { clear: both; display: block; width: 100%; height: 70px; margin: 0; padding: 0; }

@media all and (max-width:980px) {
#datenschutzinfo_inner { width: 100%; height: auto; margin: 0; }

#datenschutzinfo_text { float: none; width: 100%; }
#datenschutzinfo_button { float: none; width: 100%; }

#datenschutzinfo_button a { display: inline-block; }
#datenschutzinfo_spacer { height: 80px; }

}

@media all and (max-width:768px) {
#datenschutzinfo { position: relative; width: 100%; }
#datenschutzinfo_text { float: none; width: auto; padding: 0 2%; }

#datenschutzinfo_spacer { display: none; }
}
