body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
.mobile_menu{position:fixed;z-index:100;display:none}.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.no_shadow{box-shadow:none!important}.mobile_menu_trigger{display:none}.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:99}.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}.mobile_menu li.submenu_hide>ul{display:none}.mobile_menu li.submenu_show>ul{display:block}body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!important}
#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

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

main {
  display: block;
}

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

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/* open-sans-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: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: italic;
  font-weight: 500;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-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: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: url('../../files/dfg-immobilien/fonts/open-sans-v43-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/*
* Skeleton V1.1
* Copyright 2011, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 8/17/2011
*/

/*
Grid 1200px
Nicolas Poliquin
polikin.ca
*/


/* Table of Contents
==================================================
    #Base 960 Grid
    #Tablet (Portrait)
    #Mobile (Portrait)
    #Mobile (Landscape)
    #Clearing */

.columns, 
.column { 	
	-webkit-transition: all 0.2s ease;
	  -moz-transition: all 0.2s ease;
	  -moz-transition: all 0.2s ease;
	  -ms-transition: all 0.2s ease;
	  -o-transition: all 0.2s ease;
	  transition: all 0.2s ease;
}

/* #Base 1200 Grid
================================================== */

    .container                                  { position: relative; width: 1200px; margin: 0 auto; padding: 0; }
    .container .column,
    .container .columns                         { float: left; display: inline; margin-left: 10px; margin-right: 10px; }
    .row                                        { margin-bottom: 20px; }

    /* Nested Column Classes */
    .column.alpha, .columns.alpha               { margin-left: 0; }
    .column.omega, .columns.omega               { margin-right: 0; }

    /* Base Grid */

	.container .one.column,
    .container .one.columns                     { width: 55px; }
    .container .two.columns                     { width: 120px; }
    .container .three.columns                   { width: 205px; }
    .container .four.columns                    { width: 280px; }
    .container .five.columns                    { width: 355px; }
    .container .six.columns                     { width: 430px; }
    .container .seven.columns                   { width: 505px; }
    .container .eight.columns                   { width: 580px; }
    .container .nine.columns                    { width: 655px; }
    .container .ten.columns                     { width: 730px; }
    .container .eleven.columns                  { width: 805px; }
    .container .twelve.columns                  { width: 880px; }
    .container .thirteen.columns                { width: 955px; }
    .container .fourteen.columns                { width: 1030px; }
    .container .fifteen.columns                 { width: 1105px; }
    .container .sixteen.columns                 { width: 1180px; }

    .container .one-third.column                { width: 380px; }
    .container .two-thirds.column               { width: 780px; }

    /* Offsets */
    .container .offset-by-one                   { padding-left: 75px;  }
    .container .offset-by-two                   { padding-left: 140px; }
    .container .offset-by-three                 { padding-left: 225px; }
    .container .offset-by-four                  { padding-left: 300px; }
    .container .offset-by-five                  { padding-left: 375px; }
    .container .offset-by-six                   { padding-left: 430px; }
    .container .offset-by-seven                 { padding-left: 525px; }
    .container .offset-by-eight                 { padding-left: 600px; }
    .container .offset-by-nine                  { padding-left: 675px; }
    .container .offset-by-ten                   { padding-left: 750px; }
    .container .offset-by-eleven                { padding-left: 825px; }
    .container .offset-by-twelve                { padding-left: 900px; }
    .container .offset-by-thirteen              { padding-left: 975px; }
    .container .offset-by-fourteen              { padding-left: 1050px; }
    .container .offset-by-fifteen               { padding-left: 1125px; }




/* #Tablet (Portrait)
================================================== */

    /* Note: Design for a width of 768px */

    @media only screen and (min-width: 768px) and (max-width: 959px) {
        .container                                  { width: 768px; }
        .container .one.column,
        .container .one.columns                     { width: 28px; }
        .container .two.columns                     { width: 76px; }
        .container .three.columns                   { width: 124px; }
        .container .four.columns                    { width: 172px; }
        .container .five.columns                    { width: 220px; }
        .container .six.columns                     { width: 268px; }
        .container .seven.columns                   { width: 316px; }
        .container .eight.columns                   { width: 364px; }
        .container .nine.columns                    { width: 412px; }
        .container .ten.columns                     { width: 460px; }
        .container .eleven.columns                  { width: 508px; }
        .container .twelve.columns                  { width: 556px; }
        .container .thirteen.columns                { width: 604px; }
        .container .fourteen.columns                { width: 652px; }
        .container .fifteen.columns                 { width: 700px; }
        .container .sixteen.columns                 { width: 748px; }

        .container .one-third.column                { width: 236px; }
        .container .two-thirds.column               { width: 492px; }

        /* Offsets */
        .container .offset-by-one                   { padding-left: 48px; }
        .container .offset-by-two                   { padding-left: 96px; }
        .container .offset-by-three                 { padding-left: 144px; }
        .container .offset-by-four                  { padding-left: 192px; }
        .container .offset-by-five                  { padding-left: 240px; }
        .container .offset-by-six                   { padding-left: 288px; }
        .container .offset-by-seven                 { padding-left: 336px; }
        .container .offset-by-eight                 { padding-left: 384px; }
        .container .offset-by-nine                  { padding-left: 432px; }
        .container .offset-by-ten                   { padding-left: 480px; }
        .container .offset-by-eleven                { padding-left: 528px; }
        .container .offset-by-twelve                { padding-left: 576px; }
        .container .offset-by-thirteen              { padding-left: 624px; }
        .container .offset-by-fourteen              { padding-left: 672px; }
        .container .offset-by-fifteen               { padding-left: 720px; }
    }

	/* Note: Design for a width 1024 Desktop
	================================================== */

	@media only screen and (min-width: 960px) and (max-width: 1199px) {
        /* Base Grid */
		.container                                  { width: 960px; }
	    .container .one.column,
	    .container .one.columns                     { width: 40px;  }
	    .container .two.columns                     { width: 100px; }
	    .container .three.columns                   { width: 160px; }
	    .container .four.columns                    { width: 220px; }
	    .container .five.columns                    { width: 280px; }
	    .container .six.columns                     { width: 340px; }
	    .container .seven.columns                   { width: 400px; }
	    .container .eight.columns                   { width: 460px; }
	    .container .nine.columns                    { width: 520px; }
	    .container .ten.columns                     { width: 580px; }
	    .container .eleven.columns                  { width: 640px; }
	    .container .twelve.columns                  { width: 700px; }
	    .container .thirteen.columns                { width: 760px; }
	    .container .fourteen.columns                { width: 820px; }
	    .container .fifteen.columns                 { width: 880px; }
	    .container .sixteen.columns                 { width: 940px; }

	    .container .one-third.column                { width: 300px; }
	    .container .two-thirds.column               { width: 620px; }

	    /* Offsets */
	    .container .offset-by-one                   { padding-left: 60px;  }
	    .container .offset-by-two                   { padding-left: 120px; }
	    .container .offset-by-three                 { padding-left: 180px; }
	    .container .offset-by-four                  { padding-left: 240px; }
	    .container .offset-by-five                  { padding-left: 300px; }
	    .container .offset-by-six                   { padding-left: 360px; }
	    .container .offset-by-seven                 { padding-left: 420px; }
	    .container .offset-by-eight                 { padding-left: 480px; }
	    .container .offset-by-nine                  { padding-left: 540px; }
	    .container .offset-by-ten                   { padding-left: 600px; }
	    .container .offset-by-eleven                { padding-left: 660px; }
	    .container .offset-by-twelve                { padding-left: 720px; }
	    .container .offset-by-thirteen              { padding-left: 780px; }
	    .container .offset-by-fourteen              { padding-left: 840px; }
	    .container .offset-by-fifteen               { padding-left: 900px; }
    }


/*  #Mobile (Portrait)
================================================== */

    /* Note: Design for a width of 320px */

    @media only screen and (max-width: 767px) {
        .container { width: 300px; }
        .container .columns,
        .container .column { margin: 0; }

        .container .one.column,
        .container .one.columns,
        .container .two.columns,
        .container .three.columns,
        .container .four.columns,
        .container .five.columns,
        .container .six.columns,
        .container .seven.columns,
        .container .eight.columns,
        .container .nine.columns,
        .container .ten.columns,
        .container .eleven.columns,
        .container .twelve.columns,
        .container .thirteen.columns,
        .container .fourteen.columns,
        .container .fifteen.columns,
        .container .sixteen.columns,
        .container .one-third.column,
        .container .two-thirds.column  { width: 300px; }

        /* Offsets */
        .container .offset-by-one,
        .container .offset-by-two,
        .container .offset-by-three,
        .container .offset-by-four,
        .container .offset-by-five,
        .container .offset-by-six,
        .container .offset-by-seven,
        .container .offset-by-eight,
        .container .offset-by-nine,
        .container .offset-by-ten,
        .container .offset-by-eleven,
        .container .offset-by-twelve,
        .container .offset-by-thirteen,
        .container .offset-by-fourteen,
        .container .offset-by-fifteen { padding-left: 0; }

    }


/* #Mobile (Landscape)
================================================== */

    /* Note: Design for a width of 480px */

    @media only screen and (min-width: 480px) and (max-width: 767px) {
        .container { width: 420px; }
        .container .columns,
        .container .column { margin: 0; }

        .container .one.column,
        .container .one.columns,
        .container .two.columns,
        .container .three.columns,
        .container .four.columns,
        .container .five.columns,
        .container .six.columns,
        .container .seven.columns,
        .container .eight.columns,
        .container .nine.columns,
        .container .ten.columns,
        .container .eleven.columns,
        .container .twelve.columns,
        .container .thirteen.columns,
        .container .fourteen.columns,
        .container .fifteen.columns,
        .container .sixteen.columns,
        .container .one-third.column,
        .container .two-thirds.column { width: 420px; }
    }


/* #Clearing
================================================== */

    /* Self Clearing Goodness */
    .container:after { content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; }

    /* Use clearfix class on parent to clear nested columns,
    or wrap each row of columns in a <div class="row"> */
    .clearfix:before,
    .clearfix:after,
    .row:before,
    .row:after {
      content: '\0020';
      display: block;
      overflow: hidden;
      visibility: hidden;
      width: 0;
      height: 0; }
    .row:after,
    .clearfix:after {
      clear: both; }
    .row,
    .clearfix {
      zoom: 1; }

    /* You can also use a <br class="clear" /> to clear columns */
    .clear {
      clear: both;
      display: block;
      overflow: hidden;
      visibility: hidden;
      width: 0;
      height: 0;
}
html { scroll-behavior: smooth; font-family: 'Open Sans'; padding: 0; margin: 0; }


a { color: #000000; text-decoration: none; }
a:hover { text-decoration: underline; }
a:focus { outline: #000000; }
a:visited {  }
strong { font-weight:bold; }
em { font-style: italic;}
textarea { resize: vertical; }
article, aside, figure, footer, header, menu, nav, section { display: block; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #CCCCCC; margin: 1em 0; padding: 0; }
img { width:100%; height: auto;}
html { font-size:100%; }

figure { margin-block-start:0;margin-block-end:0;margin-inline-start: 0; margin-inline-end: 0;}
figcaption { color:#585858; font-size:10pt; }

/* +----------------------------------------------------------------------- */
/* | Helper classes
/* +----------------------------------------------------------------------- */

.clear { clear: both; }
.pull-left { float: left; }
.pull-right { float: right; }
.align-left, .alignleft { text-align: left; }
.align-right, .alignright { text-align: right; }
.align-center, .aligncenter { text-align: center; }
.ir { background-color: transparent; border: 0; overflow: hidden; *text-indent: -9999px; }
.ir:before { content: ""; display: block; width: 0; height: 150%; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, 
.visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { display:none !important;}
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }
.uppercase { text-transform: uppercase;}

.boxShadow, .boxshadow { box-shadow:rgba(0,0,0,0.1) 5px 5px 5px; }

.no-margin, .nomargin {margin:0;}
.no-padding, .nopadding {padding:0;}

.block { overflow: visible; }
.inside { }


.mtminus10 { margin-top:-10px; }
.mtminus20 { margin-top:-20px; }
.mtminus30 { margin-top:-30px; }
.mtminus40 { margin-top:-40px; }
.mtminus50 { margin-top:-50px; }

.mt01 { margin-top:01px; }
.mt10 { margin-top:10px; }
.mt20 { margin-top:20px; }
.mt30 { margin-top:30px; } 
.mt40 { margin-top:40px; }
.mt50 { margin-top:50px; }

.mb01 { margin-bottom:01px; }
.mb10 { margin-bottom:10px; }
.mb20 { margin-bottom:20px; }
.mb30 { margin-bottom:30px; }
.mb40 { margin-bottom:40px; }
.mb50 { margin-bottom:50px; }

.pt10 { padding-top:10px; }
.pt20 { padding-top:20px; }
.pt30 { padding-top:30px; } 
.pt40 { padding-top:40px; }
.pt50 { padding-top:50px; }
.pt60 { padding-top:60px; } 
.pt70 { padding-top:70px; }
.pt80 { padding-top:80px; }

.pb10 { padding-bottom:10px; }
.pb20 { padding-bottom:20px; }
.pb30 { padding-bottom:30px; }
.pb40 { padding-bottom:40px; }
.pb50 { padding-bottom:50px; }
.pt60 { padding-bottom:60px; } 
.pt70 { padding-bottom:70px; }
.pt80 { padding-bottom:80px; }

.wrap1400 { max-width:1400px; margin: 0 auto; }
.wrap400 { max-width:400px; margin: 0 auto; }
.wrap300 { max-width:300px; margin: 0 auto; }

.flexcontent { display: flex; }
.flexWrap, .flexwrap { flex-wrap: wrap }
.flexNoWrap { flex-wrap: nowrap }

.jc_flexStart, .js-flexStart { justify-content: flex-start; }
.jc_fexEnd, .js-flexEnd { justify-content: flex-end; }
.jc_center, .jc-center { justify-content: center; }

.ai_center, .ai-center {align-items: center; }

.fd-row-reverse { flex-direction: row-reverse; }
.fd-row { flex-direction: row; }
.fd-column-reverse { flex-direction:column-reverse; }
.fd-column { flex-direction: column; }

.flex10 { flex-basis: calc(10% - 20px); margin-left: 10px; margin-right:10px; }
.flex20 { flex-basis: calc(20% - 20px); margin-left: 10px; margin-right:10px; }
.flex30 { flex-basis: calc(30% - 20px); margin-left: 10px; margin-right:10px; }
.flex40 { flex-basis: calc(40% - 20px); margin-left: 10px; margin-right:10px; }
.flex50 { flex-basis: calc(50% - 20px); margin-left: 10px; margin-right:10px; }
.flex60 { flex-basis: calc(60% - 20px); margin-left: 10px; margin-right:10px; }
.flex70 { flex-basis: calc(70% - 20px); margin-left: 10px; margin-right:10px; }
.flex80 { flex-basis: calc(80% - 20px); margin-left: 10px; margin-right:10px; }
.flex90 { flex-basis: calc(90% - 20px); margin-left: 10px; margin-right:10px; }
.flex100 { flex-basis: calc(100% - 20px); width: calc(100% - 20px); margin-left: 10px; margin-right:10px; }

.flex1-3, .flex33 { flex-basis: calc(33% - 20px); margin-left: 10px; margin-right:10px; }
.flex2-3, .flex66 { flex-basis: calc(66% - 20px); margin-left: 10px; margin-right:10px; }
.flex1-4, .flex25 { flex-basis: calc(25% - 20px); margin-left: 10px; margin-right:10px; }

section.bgGray { background: rgb(255,255,255); background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(234,234,234,1) 100%); }
.bgGreen { background:#97bf1e; }
.bgWhite { background:#FFFFFF}

.content .linkButton p a { display: inline-block; background:#BDA789; padding:5px 20px; color: #fff; text-decoration: none; font-size:1.2em; border: 1px solid #fff; }
.linkButton p a:hover { background:#BDA789;}

/* +----------------------------------------------------------------------- */
/* | Stylings
/* +----------------------------------------------------------------------- */

#bildlizenzen ul { display:flex; flex-wrap: wrap; margin:0; padding:0; list-style:none;}
#bildlizenzen ul li { flex-basis:25%; margin:0; padding:0; font-size:9pt;}


.content section, .section { padding:40px 0; scroll-margin-top: 107px; }
.content section:first-of-type { padding-top:80px; }
.content section:last-of-type { padding-bottom:80px; }
.content section#services { padding:30px 0 0 0; }
.content section.no-padding, .content section.nopadding { padding:0; }

.content #main section:nth-child(2n) { background: rgba(237,237,237,.15); padding:40px 0; }

.content { font-size: 11pt; }

.content p, 
.content ul li,
.content ol li { line-height:1.8; color: #333; font-size:1em; font-weight:300; }
.content p { margin:10px 0; text-align: left; }
.content p a, .content li a { text-decoration: underline; }
.content p strong {  }
.content ul { margin: 0 0 20px; }
.content ul li { margin: 0 0 5px; }
.content ul li.no-margin {margin:0;}


.content .col2 { column-count: 2; column-gap: 20px; }
.content .col2 p { margin: 0 10px 20px; }

.content h1, .content h2 { }
.content h1, .content h2, .content h3, .content h4, .content h5, .content h6 { color: #787878; }


.content h1,
.content h2 { line-height:1.2; font-size:2.2em; letter-spacing: 4px; font-weight: 300; text-transform: uppercase; padding:0; margin:10px 0; position: relative; }
.content h3 { line-height:1.5; font-size:18pt; font-weight: 300; margin:10px 0 30px; }
.content h4 { line-height:1.5; font-size:14pt; font-weight: 500; margin:25px 0 10px; }
.content h5 { line-height:1.5; font-size:10pt; font-weight: 400; text-transform: uppercase; margin:25px 0 10px; }
.content h6 { line-height:1.5; font-size:12pt; font-weight: 400; margin:0 0 10px; }/* +----------------------------------------------------------------------- */
/* | Header
/* +----------------------------------------------------------------------- */


#CookieBanner { z-index: 9999; position: fixed; }

.ncoi---behind { background:rgba(0,0,0,0.60)}

#VideoContainer { position: relative; }
#welcomeVideo { /*background: rgba(189,167,137,0.50) url(../../files/dfg-immobilien/gfx/alexander_maximilian.png) no-repeat right 5% bottom;*/
    background: rgba(51,54,68,0.50)  url(../../files/dfg-immobilien/gfx/alexander_maximilian.png) no-repeat right 5% bottom; background-size: 40% auto; position: relative; justify-content: center;  align-items: flex-start; height: 80vh; width: 100%; display: none; }

#video_background { position: fixed; top: 0px; right: 0px; min-width: 100%; min-height: 100%; width: auto; height: auto; z-index: -1000; overflow: hidden; display:none; }
#video_pattern { position: fixed; opacity: 0.5; left: 0px; top: 0px; width: 100%; height: 100%; z-index: -1; height: 100vh; display:none; }

body.index #video_background { display: block; z-index: -9999; }
body.index #welcomeVideo { display: flex; }
body.index #welcomeVideo #SliderTopText { flex-basis: 65%; margin-top:15%; }


#welcomeVideo * { text-shadow: rgba(0,0,0,.1) 3px 3px 3px;}
#welcomeVideo h1 { color:#fff; text-transform: uppercase; font-weight: 400; font-size:3.5em; margin:0 0 20px; letter-spacing: 2px; }
#welcomeVideo h3 { color:#fff; font-weight: 300; font-size:1.75em; margin:0; }



#body { background: #fff; }

#scrollToBody { position: absolute; bottom:50px; left: 50%; transform: translateX(-50%); width: 60px; z-index:9100;}

#header { position: relative; background: #fff;}

#header .container { align-items: center; }

#imagebar { height: 80vh; display: flex; align-items: flex-end; justify-content: center; position: relative; background: url(../../files/dfg-immobilien/img/header/vermarkten.jpg) no-repeat center top; background-size: cover;}
#imagebar h2 { color:#ffffff; font-size:3em; font-weight: 400; text-transform: uppercase; text-shadow: rgba(0,0,0,0.7) 1px 1px 8px ;letter-spacing: 4px; }
#imagebar .logo_container { width: 60px; }
#imagebar .logo_container img { }

#imagebar .flexcontent { z-index: 9500; position: absolute; bottom: 70px; left:10px; right:10px; justify-content: center; align-items: center; flex-direction: column; }

#HeaderContent { z-index: 9500; position: absolute; bottom: 30px; left:0; right:0; }
#HeaderContent h2 { margin: 0 auto; }

#imagebar .overlay { background: rgba(51,54,68,0.350); position: absolute; left:0; bottom:0; right:0; top:0; }

body.bewerten #imagebar { background: url(../../files/dfg-immobilien/img/header/bewerten.jpg) no-repeat center top; background-size: cover; }
body.finanzieren #imagebar { background: url(../../files/dfg-immobilien/img/header/finanzieren.jpg) no-repeat center center; background-size: cover; }
body.karriere #imagebar, body.goettel #imagebar { background: url(../../files/dfg-immobilien/img/header/karriere.jpg) no-repeat center top; background-size: cover; }
body.verkaufen #imagebar { background: url(../../files/dfg-immobilien/img/header/vermarkten.jpg) no-repeat center top; background-size: cover; }
body.vermarkten #imagebar { background: url(../../files/dfg-immobilien/img/header/vermarkten.jpg) no-repeat center top; background-size: cover; }
body.suchauftrag #imagebar { background: url(../../files/dfg-immobilien/img/header/dfg_header_2485559725.jpg) no-repeat center top; background-size: cover; }
body.kaufen-mieten #imagebar { background: url(../../files/dfg-immobilien/img/header/dfg_header_2513693211.jpg) no-repeat center top; background-size: cover; }
body.tippgeber #imagebar { background: url(../../files/dfg-immobilien/img/header/dfg_header_2489280435.jpg) no-repeat center top; background-size: cover; }
body.vermieten #imagebar { background: url(../../files/dfg-immobilien/img/header/dfg_header_2285578203.jpg) no-repeat center center; background-size: cover; }
body.bautraegervertrieb #imagebar { background: url(../../files/dfg-immobilien/img/header/dfg_header_2555857373.jpg) no-repeat center center; background-size: cover; }
body.dienstleistungen #imagebar { background: url(../../files/dfg-immobilien/img/header/dfg_header_as_1157695306.jpg) no-repeat center bottom; background-size: cover; }

/*
body.vermarkten #header { background: url(../../files/dfg-immobilien/img/header/vermarkten.jpg) no-repeat center center; background-size: cover; }
body.finanzieren #header { background: url(../../files/dfg-immobilien/img/header/finanzieren.jpg) no-repeat center center; background-size: cover; }
body.bewerten #header { background: url(../../files/dfg-immobilien/img/header/bewerten.jpg) no-repeat center center; background-size: cover; }
body #header { background: url(../../files/dfg-immobilien/img/header/karriere.jpg) no-repeat center center; background-size: cover; }
*/


#main-header { position: fixed; width:100%; z-index:9995; top:0; background: rgba(0,0,0,0.40) }
#main-header .container { position: relative; align-items: center; }
#logo { max-width:150px; padding:10px 0;}

#navigation { width: calc(100% - 200px); }

#main-navigation { justify-content: flex-end; }
#main-navigation ul { list-style: none; margin: 0; padding: 0; display: flex; justify-content: flex-end; }
#main-navigation ul li { margin:0 10px; position: relative;}
#main-navigation ul li * { color: #000000; font-size:11pt; font-weight: 300; letter-spacing: 1px; text-decoration: none; text-transform: uppercase; padding: 8px 0; display:block; border-bottom:2px solid #fff; }
#main-navigation ul li a:hover, 
#main-navigation ul li a.trail, 
#main-navigation ul li.active span { color: #BDA789; border-bottom:2px solid #BDA789;  }


#main-navigation ul ul { position: absolute; top: 100%; left:0; background: rgb(17,25,36); background: #fff; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5); z-index: 1; padding:0; opacity: 0; display:none; border-top: solid 4px var(--turkis); }

#main-navigation ul ul li { }
#main-navigation ul ul li * { color: #333; font-size: 0.8em; padding: 10px; display: block; border:none; }
#main-navigation ul ul li a:hover, 
#main-navigation ul ul li.active span { background: #BDA789; color:#fff; border-bottom: none;  }




#main-navigation ul li:last-of-type ul { left:auto; right:0;  }
#main-navigation ul ul li,
#main-navigation ul ul ul li { width: 320px; border-bottom: 1px solid #ccc; padding:0; margin:0;}

#main-navigation ul li:hover > ul { top: 100%; left: 0; }
#main-navigation ul li:last-of-type:hover > ul { top: 100%; right: 0; left: auto; }
#main-navigation ul ul li:hover > ul { top: 0; left: 300px; }

#main-navigation ul li:hover > ul { display:block; opacity:  1; }
#main-navigation ul ul li:hover > ul { top: 0; left: 300px; }

.mod_mobile_menu .hamburger { width:35px; position: fixed; right:5%; top:30px; z-index: 9000; }
.mod_mobile_menu .hamburger span { display: block; background: #333644; width:100%; height:3px; box-shadow: rgba(0,0,0,0.3) 0 0 5px; }
.mod_mobile_menu .hamburger span:nth-child(2) { margin:8px 0;}

.mobile_menu { z-index:9995; width: 75%; max-width:600px; }
.mobile_menu .inner { background: #F1F1F3; padding:30px; }
.mobile_menu .inner ul { list-style:none; margin:0; padding:0; }
.mobile_menu .inner ul li { border-bottom: 1px solid #ccc; }
/*.mobile_menu .inner ul li.active { background: rgb(193,168,92); }*/
.mobile_menu .inner ul li:last-of-type { border-bottom: none; }
.mobile_menu .inner ul li.submenu a { background: url(../../files/dfg-immobilien/gfx/arrow-down-gold.svg) no-repeat center right 20px; background-size:20px auto;}
.mobile_menu .inner ul li.submenu.active span { background: rgb(193,168,92);}
.mobile_menu .inner ul li.submenu li a { background:none;}
.mobile_menu .inner ul ul {padding: 10px 0 20px 0;}
.mobile_menu .inner ul ul li { margin-left:30px;}
.mobile_menu .inner ul li * { font-size:12pt; color: #333; text-decoration:none; }
.mobile_menu .inner ul li a,
.mobile_menu .inner ul li.active span { display: block; padding: 10px;}
.mobile_menu .inner ul li.active span { background: #BDA789; }

#mobile-nav-logo { text-align: center; margin:0 20px 20px 20px; }
#mobile-nav-logo img { max-width:220px;}

.mobile_menu h3 { text-align: center; color: #BDA789; }

.mod_socialmedia { margin-top: 20px; }
.mod_socialmedia * {text-align:center;}
.mod_socialmedia h2 { color: #fff; }
.mod_socialmedia ul {display: flex; justify-content: center; padding: 0; margin: 0; list-style: none; }
.mod_socialmedia ul li { border:none !important;}
.mod_socialmedia ul li a {}
.mod_socialmedia ul li a img { width: 40px;}

#footer .mod_socialmedia ul li a { width:40px; height:40px; display: block; margin:0 5px; }
#footer .mod_socialmedia ul li a[title="Facebook"] { background: url(../../files/dfg-immobilien/gfx/icons/facebook.svg) no-repeat center center; background-size:100% auto; }
#footer .mod_socialmedia ul li a[title="Instagram"] { background: url(../../files/dfg-immobilien/gfx/icons/insta.svg) no-repeat center center; background-size:100% auto; }

#ContactBar { position: fixed; z-index: 9990; right: 0; top:15%; display: flex; flex-direction: column; justify-content: center; border-radius: 10px 0 0 10px }
#ContactBar a { background: rgba(189,167,137,.80); padding:5px;  display: flex; flex-direction: column; align-items: center; margin:3px 0; text-align:center; text-decoration: none; }
#ContactBar a i { display: block; width:30px; height: 30px; margin-bottom: 5px; background:#fff; }
#ContactBar a label {font-size: 8pt; text-transform: uppercase; display: block; color:#fff; }

#ContactBar a.dl i { background: url(../../files/dfg-immobilien/gfx/icons/contactbar/service_dfg.svg) no-repeat center center; background-size: contain; }
#ContactBar a.tipp i { background: url(../../files/dfg-immobilien/gfx/icons/contactbar/tipp_dfg.svg) no-repeat center center; background-size: contain; }
#ContactBar a.phone i { background: url(../../files/dfg-immobilien/gfx/icons/contactbar/phone_dfg.svg) no-repeat center center; background-size: contain; }
#ContactBar a.contact i { background: url(../../files/dfg-immobilien/gfx/icons/contactbar/mail_dfg.svg) no-repeat center center; background-size: contain; }
#ContactBar a.bewertung i { background: url(../../files/dfg-immobilien/gfx/icons/contactbar/bewerten_dfg.svg) no-repeat center center; background-size: contain; }


/* +----------------------------------------------------------------------- */
/* | Startseite
/* +----------------------------------------------------------------------- */

#mainService { padding:20px 0;}
#mainService .flexcontent { justify-content: space-around; }
#mainService .serviceBox  { flex-basis: 48%; height: 25vw; margin:10px; background:#efefef; position: relative; }
#mainService .serviceBox .overlay { padding:40px; position: absolute; z-index: 0; top: 0; bottom: 0; right: 0; left: 0; background: rgb(0,0,0); background: linear-gradient(0deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);  }
#mainService .serviceBox .ce_text_inner { position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: 500; padding: 40px; display: flex; flex-direction: column; justify-content: flex-end; }
#mainService .serviceBox .ce_text_inner * { color:#fff; }
#mainService .serviceBox .ce_text_inner h3 { font-size:1.5em; line-height: 1.5em; margin: 0 0 10px; position: absolute; left:0; top:20px; background: #BDA789; padding:5px 10px; text-transform: uppercase;}
#mainService .serviceBox .ce_text_inner h5 { font-size:1.2em; margin: 0 0 10px; font-weight:300; }
#mainService .serviceBox .ce_text_inner p { font-size:1em; line-height: 1.3em; margin: 0; font-weight:300; }
#mainService .serviceBox .ce_text_inner p:last-of-type {margin: 20px 0 0 0; }

/* Anfangszustand: h5 & p ausgeblendet und nach unten versetzt */
/*
#mainService .serviceBox .ce_text_inner h5,
#mainService .serviceBox .ce_text_inner p {
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.4s ease;
}
*/

/* Sichtbar machen beim Hover über .serviceBox */
/*
#mainService .serviceBox:hover .ce_text_inner h5,
#mainService .serviceBox:hover .ce_text_inner p {
  opacity: 1;
  transform: translateY(0);
}
*/


#mainService #vermarkten.serviceBox { background: url(../../files/dfg-immobilien/img/header/vermarkten.jpg) no-repeat center center; background-size: cover; }
#mainService #finanzieren.serviceBox { background: url(../../files/dfg-immobilien/img/header/finanzieren.jpg) no-repeat center center; background-size: cover; }
#mainService #bewerten.serviceBox { background: url(../../files/dfg-immobilien/img/header/bewerten.jpg) no-repeat center center; background-size: cover; }
#mainService #dienstleistungen.serviceBox { background: url(../../files/dfg-immobilien/img/pool/dfg_as_1121848852.jpg) no-repeat left center; background-size: cover; }


.content #main section#welcome { padding:0; background: url(../../files/dfg-immobilien/img/platzhalter/shutterstock_2458168341.jpg) no-repeat center right; background-size: cover;}
#welcome .ce_text { min-height: 50vh; flex-basis: calc(50% - 100px); display: flex; justify-content: center; align-items: center; padding:50px; background: rgba(255,255,255,0.90); }

.itemBoxIcon { flex-basis: calc(33.33% - 40px); margin:60px 20px 20px 20px; background: #ffffff; border-radius: 10px; position: relative; box-shadow: rgba(0,0,0,0.2) 0 0 10px;}
.itemBox50 .itemBoxIcon { flex-basis: calc(50% - 40px); margin:60px 20px 20px 20px; background: #ffffff; border-radius: 10px; position: relative;}
.itemBoxIcon .ce_text_inner { padding:50px 15px 15px 15px; }
.itemBoxIcon .ce_text_inner * { text-align:center; }
.itemBoxIcon .ce_text_inner .image_container { width:50px; height: 50px; border-radius: 50%; background: #fff; position: absolute; transform: translate(-50%, -50%); top:0; left: 50%; padding: 15px;}
.itemBoxIcon.linkButton p a { transform: scale(0.8);}

/* +----------------------------------------------------------------------- */
/* | Content
/* +----------------------------------------------------------------------- */

.itemBoxImage { display: flex; justify-content: space-between; align-items: center; margin: 20px 0; }
.itemBoxImage:nth-child(2) { flex-direction: row-reverse; }
.itemBoxImage .image_container { flex-basis:calc(35% - 40px); padding:20px; }
.itemBoxImage .text_container { flex-basis:calc(65% - 40px); padding:20px; }

.itemBox { flex-basis: calc(33.33% - 20px); margin: 10px; }
.itemBox { flex-basis: calc(33.33% - 20px); margin: 10px; }
.itemBox.itemBoxFull { flex-basis: calc(100% - 20px); margin: 10px; }
.itemBox50 .itemBox { flex-basis: calc(50% - 20px); margin: 10px; }
.itemBox .ce_text_inner { padding: 10px; }
.itemBox h5 { position: relative; margin:0; }
.itemBox h3 { position: relative; margin:0 0 32px; }
.itemBox h3::after { position: absolute; bottom:-15px; left:0; height:1px; right: 50%; background: #333; content: ""; }
.itemBox p { margin: 7px 0; }

.itemBox .image_container { margin-bottom: 30px; }
.itemBox .image_container img { border:5px solid #fff; box-shadow: rgba(0,0,0,0.4) 0 0 10px; }

body.index .itemBox { flex-basis: calc(50% - 20px); margin: 10px; }


#dienstleistung {}
#dienstleistung .flexcontent { justify-content: center; }

.content section.ce_accordionSingle { padding:0 !important; margin: 5px 10vw;  }
.content section.ce_accordionSingle .toggler { background: #333644 url(../../files/dfg-immobilien/gfx/arrow-down.svg) no-repeat right 20px center; background-size: 20px auto; font-weight:300; padding: 12px; font-size:1.3em; color:#fff; }
.content section.ce_accordionSingle .accordion { background: #F9F9F9; padding:30px; }

.content section.ce_accordionSingle h3 { margin:20px 0 0; }


.hoverBoxContent {
  position: relative;
  flex-basis: calc(33.33% - 30px); margin:15px;
  height: 30vh;
  overflow: hidden;
}
.hoverBoxContent.hBC50 {
  flex-basis: calc(50% - 30px); 
  height: 40vh;
}
.hoverBoxContent:before {
    content: "+";
    position: absolute;
    right:0; bottom:0;
    height: 30px; width:30px;
    background: rgba(189,167,137,1);
    z-index: 5;
    font-size: 1.5em;
    color:#fff;
    display:flex; justify-content: center; align-items: center;    
    
}

.hoverBoxContent:hover:before {
    
    opacity: 0;
    transition: all 0.3s ease;
    
}


/* Bild soll wie ein Hintergrund wirken */
.hoverBoxContent .image_container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}

.hoverBoxContent .image_container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Überschrift zentriert über dem Bild */
.hoverBoxContent h3 {
  position: absolute;
  top: 0; left: 0; right: 0; bottom:0;
  z-index: 2;
    display: flex; justify-content: center; align-items: center;
  color: white;
  padding: 1em;
  margin: 0;
    font-weight: 400; 
  text-align: center;
    text-shadow: rgba(0,0,0,.5) 5px 5px 5px;
    background: rgba(189,167,137,.60);
}

/* Textcontainer initial außerhalb und unsichtbar */
.hoverBoxContent .text_container {
  position: absolute;
  bottom: -100%;
  right: -100%;
  width: 100%;
  height: 100%;
  background-color: rgba(189,167,137,1);
  padding: 1.5em;
  box-sizing: border-box;
  opacity: 0;
  z-index: 3;
  transition: all 0.6s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
    flex-direction: column;
}

.hoverBoxContent .text_container * {
  color: #fff;
    Font-size: 0.95em; line-height: 1.10em;margin: 5px 0;
    text-align: left;
}

/* Hover-Effekt: Text erscheint */
.hoverBoxContent:hover .text_container {
  bottom: 0;
  right: 0;
  opacity: 1;
}


#ContentDfg { background: #BDA789 !important; }
#ContentDfg * { color: #fff; }
#ContentDfg .linkButton p a { background: #fff; color:#BDA789; }

#doubleContent { background: #BDA789 !important; padding: 0 !important; overflow: hidden;}
#doubleContent * { color: #fff; }
#doubleContent .ce_text { flex-basis: 50%; display: flex; justify-content: center; align-items: center; }
#doubleContent .ce_text .ce_text_inner { padding:50px; }
#doubleContent .ce_text.linkButton p a { background: rgba(189,167,137,.40); border:1px solid #fff; }
#doubleContent .ce_text.linkButton p:last-of-type { margin:0; }
#doubleContent .ce_image { flex-basis: 50%; }
#doubleContent .ce_image .image_container { overflow: hidden; margin-bottom: -5px; height: 100%; }
#doubleContent .ce_image img { 
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; /* optional, um Leerraum durch inline-img zu verhindern */
} 

#doubleContent.aboutus .ce_image { padding-top: 20px;}

#facts .factbox { background: #ccc; }
#facts .factbox:hover { background: #ca8872; }
#facts .factbox .ce_text_inner { padding:35px;}
#facts .factbox * { text-align: center; }
#facts .factbox:hover * { color: #fff; }
#facts .factbox h4 { font-size:22pt; margin:0; padding: 0;}
#facts .factbox h5 { font-size:15pt; margin:8px 0; padding: 0; }


/* +----------------------------------------------------------------------- */
/* | Germering
/* +----------------------------------------------------------------------- */

.counter p { text-align:center; }
.counter p strong { margin:0 auto; border-radius: 50%; display: flex; justify-content: center; align-items: center; background: #ccc; height:150px; width: 150px; font-size: 1.2em; box-shadow: rgba(0,0,0,0.2) 5px 5px 5px; }

.box {  box-shadow: rgba(0,0,0,0.2) 5px 5px 5px; }
.box .ce_text_inner { display:flex; flex-direction: column; justify-content: center; align-content: center; min-height: 200px; padding:35px;}
.box .ce_text_inner * { color:#fff; }
.box1, .box4 { background: #787878; }
.box2, .box3 { background: #BDA789; }

section#widget { padding:80px 0 0 0; }
section#facts {  }
section#ansprechpartner { padding:80px 0 0 0; }
section#steps { padding:0 0 80px 0; }


#facts ul { list-style:none; margin:0 0 40px; padding:0; } 
#facts ul li { font-size:14pt; } 
#facts ul li::before { content: '✔ '; color: #BDA789; font-size:18pt; } 
#facts p a { background: #BDA789 url('../../files/dfg-immobilien/gfx/telephone-call.svg') no-repeat left 10px center; background-size: auto 65%; border:2px solid #fff; padding:5px 20px 5px 40px; font-size:1.2em; border-radius: 20px; color:#fff; text-decoration: none; box-shadow: rgba(0,0,0,0.1) 5px 5px 5px; } 



/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 959px) {

    .box .ce_text_inner { padding: 20px; }
    
}


/* +----------------------------------------------------------------------- */
/* | Caroufredsel
/* +----------------------------------------------------------------------- */

#form .container {  }
#form .container .flexcontent { padding: 30px; }

.content .tabcontrol_tabs ul { list-style:none; margin:40px 0 60px; padding:0; display: flex; justify-content: center;}
.tabcontrol_tabs ul li.tabs { border-bottom:2px solid #fff; padding: 5px 12px; margin: 5px; cursor: pointer; font-size:1.35em; }
.tabcontrol_tabs ul li.tabs.selected, .tabcontrol_tabs ul li.tabs:hover { border-bottom:2px solid #BDA789; }

#main .mainLogo .container { background: url('../../files/dfg-immobilien/gfx/signet_dfg_grau.svg') no-repeat right top; background-size: 40% auto; }

#subContentNav .nav_contact { display: flex; align-items: flex-end; justify-content: center; }
#subContentNav .nav_contact ul { list-style:none; margin:0; padding:0; width: 100%; max-width: 260px; }
#subContentNav .nav_contact ul li { }
#subContentNav .nav_contact ul li a,
#subContentNav .nav_contact ul li.active span { color: #fff; font-weight: 400; font-size:16pt; display: block; background: #BDA789; padding:5px 10px; text-align: center; text-decoration: none; }

#subContentNav .nav_calc { display: flex; align-items: flex-end; padding:50px 0; background: url('../../files/dfg-immobilien/gfx/signet_dfg_grau.svg') no-repeat right center; background-size: auto 80%; margin-top:40px;}
#subContentNav .nav_calc ul { list-style:none; margin:0; padding:0; flex-basis: 60%;  }
#subContentNav .nav_calc ul li { border-bottom: 1px solid #787878; padding:10px 0; }
#subContentNav .nav_calc ul li:last-of-type { border-bottom: none; }
#subContentNav .nav_calc ul li a,
#subContentNav .nav_calc ul li.active span { font-weight: bold; font-size:20pt; display: block; padding:5px 10px 5px 0; text-align: left; text-decoration: none; color:#787878; }
#subContentNav .nav_calc ul li a:hover,
#subContentNav .nav_calc ul li.active span { color:#BDA789; }

#subContentNav .flexcontent { align-items: center; }
#subContentNav .nav_contact {  }
#subContentNav .nav_contact,
#subContentNav .nav_calc { flex-basis: calc(50% - 20px); }

#partner { background: #F1F1F3; }

#tool { margin-top: 100px;}
.spacer { padding:170px 0; margin-top:-100px; margin-bottom:-100px; background: url('../../files/dfg-immobilien/gfx/signet_dfg_grau.svg') no-repeat right bottom; background-size: auto 100%; position: relative; z-index: -500;}

.jobs hr { margin: 40px 0;}

.mod_recommendationlist {margin:30px 0 60px; }
.mod_recommendationlist .layout_default { border-bottom: 1px solid #eaeaea; margin:10px; padding: 10px; }
.mod_recommendationlist .layout_default p { margin:10px 0;}
.mod_recommendationlist .layout_default .date { font-size:0.8em; color:#555; }
.mod_recommendationlist .layout_default .star.active { color: #BDA789 !important; }
.mod_recommendationlist .layout_default .star:not(.active) { color: #ddd; }
.mod_recommendationlist .layout_default:last-of-type { border-bottom: none; }

body.index .mod_recommendationlist {margin:20px 0; }

#f2.mod_recommendationform .checkbox_container {  }
#f2.mod_recommendationform .checkbox_container span { display: flex; }
#f2.mod_recommendationform .checkbox_container span input.checkbox { margin-right: 8px; }
#f2.mod_recommendationform .checkbox_container span label { display: block; font-size:9pt; }

#quickContact { position: fixed; right:5%; bottom:50px; z-index: 9990; }
#quickContact a { background: #BDA789 url('../../files/dfg-immobilien/gfx/telephone-call.svg') no-repeat left 10px center; background-size: auto 65%; border:2px solid #fff; padding:5px 20px 5px 40px; font-size:1.2em; border-radius: 20px; color:#fff; text-decoration: none; box-shadow: rgba(0,0,0,0.1) 5px 5px 5px; }

/* +----------------------------------------------------------------------- */
/* | Team
/* +----------------------------------------------------------------------- */

.ce_team { margin: 30px 0; }
.ce_team img { border:10px solid #fff; max-width:90%; box-shadow: rgba(0,0,0,.3) 0 0 10px; }
.ce_team .zitat,
.ce_team .text { margin-left:20px; }
.ce_team .zitat p { color: #BDA789; font-size: 1.1em; }
.ce_team .text h2 { margin-top: 30px; }

.ce_team .details h3 { margin:10px 0; }
.ce_team .details li span.label { display:inline-block; width:35px;}
.ce_team .details li a { text-decoration: none; }

/* +----------------------------------------------------------------------- */
/* | Caroufredsel
/* +----------------------------------------------------------------------- */

.caroufredsel_controls .caroufredsel_navi { }
.caroufredsel_controls .caroufredsel_navi a { position: absolute; top:50%; transform: translateY(-50%); z-index: 1000; display: block; width: 50px; height: 50px; }
.caroufredsel_controls .caroufredsel_navi a span { display: none; }
.caroufredsel_controls .caroufredsel_navi a.caroufredsel_prev { background: rgba(50,60,82,.95) url(../../files/dfg-immobilien/gfx/arrow-down.svg) no-repeat center center; background-size: 40px auto; transform: rotate(90deg); left:0px; }
.caroufredsel_controls .caroufredsel_navi a.caroufredsel_next { background: rgba(50,60,82,.95) url(../../files/dfg-immobilien/gfx/arrow-down.svg) no-repeat center center; background-size: 40px auto; transform: rotate(-90deg); right: 0px;}

body.katalog .caroufredsel_skin { padding:0 50px; position: relative; }
body.katalog.mobile .caroufredsel_skin { padding:0; position: relative; }
body.katalog.mobile .caroufredsel_controls .caroufredsel_navi a { position: absolute; top:auto; transform: none; bottom:-55px; z-index: 1000; display: block; width: 50px; height: 50px; }
body.katalog.mobile .caroufredsel_controls .caroufredsel_navi a.caroufredsel_prev { transform: rotate(90deg); left:10px; }
body.katalog.mobile .caroufredsel_controls .caroufredsel_navi a.caroufredsel_next { transform: rotate(-90deg); right: 10px;}


.mod_caroufredsel_ticker .caroufredsel_navi a { width: 30px; height: 30px; }

/* +----------------------------------------------------------------------- */
/* | Footer
/* +----------------------------------------------------------------------- */

#footer { background: #333644; border-top:10px solid #BDA789; padding: 80px 0; font-size:14pt; }
#footer .inside { display: flex; flex-wrap: wrap; }
#footer * { color:#fff; font-weight:300; font-size:11pt; line-height: 1.5; }
#footer h2 { font-size:1.5em; }
#footer h3 { text-decoration: underline; text-underline-offset:5px; }
#footer p { line-height:2.5em; }
#footer p, #footer li {  }

#footer .linkButton { margin-bottom: 30px; }
#footer .linkButton p a { display: inline-block; padding:5px 20px; color: #fff; text-decoration: none; font-size:1.2em; border: 1px solid #fff; }


#footer .rel {  }
#footer .rel ul * { }
#footer .rel ul { list-style:none; margin:0; padding:0; }
#footer .rel ul li { border-bottom: 1px solid #fff; max-width:200px; padding:8px; margin:0;}
#footer .rel ul li:last-of-type { border-bottom: none;}
/*#footer .rel ul li.active span, #footer .rel ul li a:hover { color:#ca8872; }*/

#footer #rechtliches { border-top: 1px solid rgba(255,255,255,0.3); margin-top:30px; padding-top: 10px;}
#footer #rechtliches ul { display: flex; flex-direction: row; justify-content: center; }
#footer #rechtliches ul a { font-size:9pt; }

#footer .opening ul { list-style:none; margin: 0; padding: 0; }
#footer .opening ul li { }
#footer .opening ul li strong { display:inline-block; width:80px; }

#footer #copyright { border-top: 1px solid rgba(255,255,255,.3); margin-top:20px; }
#footer #copyright ul { display:flex; justify-content: flex-end; list-style:none; margin: 0; padding: 5px 0 0 0; }
#footer #copyright ul li { margin:0 0 0 10px;}
#footer #copyright * { font-size:8pt; text-transform: uppercase; }

/* +----------------------------------------------------------------------- */
/* | Stylings
/* +----------------------------------------------------------------------- */


body.goettel #header.fullsize h1 { font-size:2.5em; }

ul.unstyled { list-style: none; margin:0; padding:0; }



.content .ce_gallery div.cols_1,
.content .ce_gallery div.cols_2,
.content .ce_gallery div.cols_3,
.content .ce_gallery div.cols_4,
.content .ce_gallery div.cols_5,
.content .ce_gallery div.cols_6 { display: flex; flex-wrap:wrap; }

.content .ce_gallery div.cols_1 div { flex-basis: 100%; }
.content .ce_gallery div.cols_2 div { flex-basis: 50%; }
.content .ce_gallery div.cols_3 div { flex-basis: 33.33%; }
.content .ce_gallery div.cols_4 div { flex-basis: 25%; }
.content .ce_gallery div.cols_5 div { flex-basis: 20%; }
.content .ce_gallery div.cols_6 div { flex-basis: 16.66%; }

.content .ce_gallery h2 { text-align: center; }
.content .ce_gallery .image_container { margin: 10px;}
.content .ce_gallery img { box-shadow: rgba(0,0,0,0.2) 5px 5px 5px;}

/* +----------------------------------------------------------------------- */
/* | Kontaktformulare
/* +----------------------------------------------------------------------- */


#ContactForm input.text { width: 90%; padding:0 5%; line-height:45px; border:1px solid #ccc; margin-bottom:10px; color:#1d1d1d; font-weight: 400; font-size:12pt; }
#ContactForm input.text::placeholder { color:#9D9D9D; font-weight:400; font-size:10pt; }
#ContactForm select { width: 49%; padding:0 5%; line-height:45px; height: 45px; border:none; margin-bottom:10px; color:#fff; font-weight: bold; }
#ContactForm input.checkbox { width:20px; height: 20px;  }

#ContactForm textarea.textarea { width: 95%; padding:20px 2.5%; min-height:315px; border:1px solid #ccc; color:#1d1d1d; font-weight: 500; font-size:12pt; }
#ContactForm textarea.textarea::placeholder { color:#9D9D9D; font-weight: 500; font-size:10pt; }

#ContactForm select { width: 100%; padding:5px 2.5%; border:1px solid #ccc; color:#1d1d1d; font-weight: 500; font-size:12pt; }
#ContactForm select option { color:#333; }

#ContactForm input.text,
#ContactForm textarea.textarea { box-shadow:rgba(0,0,0,0.05) 5px 5px 5px; }

#ContactForm .widget-checkbox {margin-top: 20px;}
#ContactForm .widget-checkbox fieldset { border:none; font-size:9pt; margin:0; padding:0; display: flex; }
#ContactForm .widget-checkbox fieldset span { display: flex; }
#ContactForm .widget-checkbox fieldset label {color:#1d1d1d; font-size:12pt; line-height:20px; margin:3px 15px;}
#ContactForm .widget-checkbox label {height: 20px; line-height:1.8; color: #333; font-size:1em; font-weight:300;}

#ContactForm .widget-radio, #ContactForm .widget-radio fieldset { border:none; }
#ContactForm .widget-radio legend { display: flex; }
#ContactForm .widget-radio span { display: flex; align-items: center; }
#ContactForm .widget-radio span input { border:none;  }
#ContactForm .widget-radio span label {margin:3px 15px; line-height:1; color: #333; font-size:1em; font-weight:300;}

#ContactForm .widget-explanation { padding:0 10px; }


#ContactForm .submit_container { text-align:center; }
#ContactForm .widget-submit button { background: #BDA789; border:none; color: #fff; padding:10px 0; width:220px; font-size:15pt; }

#ContactForm .formbody { display: flex; flex-wrap: wrap;}

#ContactForm .widget label { line-height: 1.4; margin-bottom:5px; display: block;}
#ContactForm .widget-text { flex-basis:calc(50% - 20px); margin:0 10px 15px;}
#ContactForm .widget-select { flex-basis:calc(50% - 20px); margin:0 10px 15px;}
#ContactForm .widget-checkbox { flex-basis:calc(100% - 20px); margin:0 10px 5px;}
#ContactForm .widget-textarea, 
#f2 .widget-captcha, 
#f2 .widget-submit { flex-basis:calc(100% - 20px); margin:0 10px 15px;}

#ContactForm .explanation.datenschutz * { font-size:10pt;}




#f2 input.text { width: 90%; padding:0 5%; line-height:45px; border:1px solid #ccc; margin-bottom:10px; color:#1d1d1d; font-weight: 400; font-size:12pt; }
#f2 input.text::placeholder { color:#9D9D9D; font-weight:400; font-size:10pt; }
#f2 select { width: 49%; padding:0 5%; line-height:45px; height: 45px; border:none; margin-bottom:10px; color:#fff; font-weight: bold; }
#f2 input.checkbox { width:20px; height: 20px;  }

#f2 textarea.textarea { width: 95%; padding:20px 2.5%; min-height:193px; border:1px solid #ccc; color:#1d1d1d; font-weight: 500; font-size:12pt; }
#f2 textarea.textarea::placeholder { color:#9D9D9D; font-weight: 500; font-size:10pt; }

#f2 select { width: 100%; padding:5px 2.5%; border:1px solid #ccc; color:#1d1d1d; font-weight: 500; font-size:12pt; }
#f2 select option { color:#333; }


#f2 input.text,
#f2 textarea.textarea { box-shadow:rgba(0,0,0,0.05) 5px 5px 5px; }

#f2 .widget-checkbox fieldset { border:none; font-size:9pt;  }
#f2 .widget-checkbox label {color:#1d1d1d; font-size:12pt; line-height:20px; height: 20px;}

#f2 .submit_container { text-align:center; }
#f2 .widget-submit button { background: #BDA789; border:none; color: #fff; padding:10px 0; width:220px; font-size:15pt; }

#f2 .formbody { display: flex; flex-wrap: wrap;}

#f2 .widget label { line-height: 1.4; margin-bottom:5px; display: block;}
#f2 .widget-text { flex-basis:calc(50% - 20px); margin:0 10px 15px;}
#f2 .widget-select { flex-basis:calc(50% - 20px); margin:0 10px 15px;}
#f2 .widget-checkbox { flex-basis:calc(100% - 20px); margin:0 10px 15px;}
#f2 .widget-textarea, #f2 .widget-captcha, #f2 .widget-submit { flex-basis:calc(100% - 20px); margin:0 10px 15px;}

#f2 .explanation * { font-size:10pt;}

#shortform { background: #0074B9;  }
#shortform h3 { padding:0 15px; color:#fff; font-size: 1.2em; }
#shortform form { padding:0 15px 15px 15px; }
#shortform .explanation * { color:#fff; font-size:10pt;}

#shortform input.text { width: 90%; padding:0 5%; line-height:35px; border:1px solid #ccc; margin-bottom:10px; color:#1d1d1d; font-weight: 400; font-size:15pt; }
#shortform input.text::placeholder { color:#9D9D9D; font-weight:400; font-size:12pt; }
#shortform select { width: 49%; padding:0 5%; line-height:45px; height: 45px; border:none; margin-bottom:10px; color:#fff; font-weight: bold; }
#shortform input.checkbox { width:20px; height: 20px;  }
#shortform .widget-checkbox fieldset { border:none; padding: 0; margin-bottom:5px; color:#fff; font-size:10pt; }
#shortform .widget-checkbox label { margin-top: -3px;}

#shortform textarea.textarea { width: 95%; padding:20px 2.5%; min-height:120px; border:1px solid #ccc; color:#1d1d1d; font-weight: 500; font-size:13pt; margin-bottom:10px; }
#shortform textarea.textarea::placeholder { color:#9D9D9D; font-weight: 500; font-size:12pt; }

#shortform input.text,
#shortform textarea.textarea { box-shadow:rgba(0,0,0,0.05) 5px 5px 5px; }

#shortform .widget-submit button { background: #fff; border:none; color: #0074B9; padding:10px 0; width:180px; font-size:15pt; }



/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 1500px) {
    
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 1024px) {
    
    .hoverBoxContent, .hoverBoxContent.hBC50 { height:25vh; }
    .hoverBoxContent .text_container * { text-align: center; }
    
    #imagebar { height: 40vh; }
    
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 959px) {
    
    #welcomeVideo { height: 60vh; background-size: 60% auto; background-position: right -40px bottom;}
    body.index #welcomeVideo #SliderTopText { margin-left:5%; }
    
    #main-navigation { display: none; }
    
    #doubleContent .flexcontent { flex-direction: column; }
    
    .hoverBoxContent, #mainService .serviceBox, .itemBoxIcon { flex-basis: calc(50% - 20px); margin: 10px;}
    .itemBoxIcon { margin-bottom:50px;}

    
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {
    
    #ContactBar { bottom:0; right: 0; left: 0; top:auto; border-radius:0; background: #333644; border-top:3px solid #BDA789; }
    #ContactBar .inside { display: flex; justify-content: space-between; }
    #ContactBar a { background: none; border-radius: 0; flex-basis: 20%;}
    #ContactBar a i {  }
    #ContactBar a label { font-size: 6pt; }
    
    #scrollToBody { bottom: 25px; width:40px; }
    
    .content h1, .content h2 { font-size:1.9em; hyphens: auto; -webkit-hyphens: auto; hyphenate-limit-chars: 16; -webkit-hyphenate-limit-chars: 16; }
    .content h3 { font-size: 1.2em;}
    
    .content section:first-of-type { padding-top: 40px; }
    .content section:last-of-type { padding-bottom: 40px; }
    
    #imagebar { display: block; position: relative; }
    #imagebar .flexcontent { display: flex; position: absolute; bottom: 70px; left:10px; right:10px; justify-content: center; }
    #imagebar h2 { font-size:1.7em; width:90%; hyphens: auto; -webkit-hyphens: auto; text-align: center; position: relative; bottom: auto; left: auto; transform: none; }
    #imagebar .logo_container { display: none;}
    
    #HeaderContent { bottom: 0; }

    
    .content .col2 { column-count: auto; }
    
    .ce_team { flex-direction: column; }
    .ce_team .zitat, .ce_team .text { margin: 0; }
    
    .hoverBoxContent, #mainService .serviceBox { height: 80vw;}
    .hoverBoxContent.hBC50 { height: 130vw;} 
    
    #mainService .serviceBox .ce_text_inner h3 { font-size:1.2em;}

    body.index #welcomeVideo h1 { font-size: 2em; hyphens: auto; -webkit-hyphens: auto; }
    body.index #welcomeVideo h3 { font-size: 1.4em; }
    
    body.index #welcomeVideo {display:block; background-size:80% auto; height: 70vh;}
    body.index #welcomeVideo .container {position: absolute; left:20px; top:30px; width:100%; }
    body.index #welcomeVideo #SliderTopText { margin:0; }
    
    #subContentNav .nav_contact, #subContentNav .nav_calc, .flex33, .flex66, .flex1-3, .flex2-3, .flex1-4, .flex10, .flex20, .flex30, .flex40, .flex50, .flex60, .flex70, .flex80, .flex90, .flex100, .mod_member .ce_contact .inner .tablet-50, .hoverBoxContent, #mainService .serviceBox, .itemBoxIcon, body.index #welcomeVideo #SliderTopText, .itemBox, .itemBox50 .itemBoxIcon, .hoverBoxContent.hBC50, #welcome .ce_text { flex-basis: 100%; margin-left:0; margin-right:0; }
    
    #footer .flex25 { flex-basis: calc(100% - 20px);}
    #footer p { line-height: 1.5em; }
    
    #ContactForm .widget-checkbox fieldset label { height: auto; }

}
