@font-face {
    font-family: 'Open Sans Regular';
    src: url('../fonts/opensans-regular.eot');
    src: url('../fonts/opensans-regular.eot?#iefix') format('eot'),
         url('../fonts/opensans-regular.woff') format('woff'),
         url('../fonts/opensans-regular.ttf') format('truetype'),
         url('../fonts/opensans-regular.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans Light';
    src: url('../fonts/opensans-light.eot');
    src: url('../fonts/opensans-light.eot?#iefix') format('eot'),
         url('../fonts/opensans-light.woff') format('woff'),
         url('../fonts/opensans-light.ttf') format('truetype'),
         url('../fonts/opensans-light.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

:root {
	--body-font-size: 16px;
	--body-font-family: 'Open Sans Light';
	--body-line-height: 1.5rem;
	--body-color: rgb(0,0,0);
	--body-background: rgb(255,255,255);
	--color-primary-cidemos: #00705F;
	--color-secondary-cidemos: #04BDBA;
	--swiper-theme-color: rgb(0,0,0);
	/* Content Declarations */
	--content-width: 1280px;
	--content-padding: 1rem;
	/* Cookie Message */
	--cookie-primary-background-color: #232323;
	--cookie-secondary-background-color: #D7D7D7;
	--cookie-background-shadow: 0px 0px 10px #000;
	--cookie-primary-color: #FFF;
	--cookie-secondary-color: #666;
	--cookie-primary-header-color: #00705F;
	--cookie-secondary-header-color: #00705F;
	--cookie-link-color: #04BDBA;
	/* Accept all Cookie Button */
	--cookie-button-all-background: #00705F;
	--cookie-button-all-color: #FFF;
	--cookie-button-all-background-hover: #BBBBBB;
	--cookie-button-all-color-hover: #FFF;
	--cookie-button-all-info-background: #00705F;
	--cookie-button-all-info-color: #FFF;
	--cookie-button-all-info-background-hover: #04BDBA;
	--cookie-button-all-info-color-hover: #FFF;
	/* Accept required Cookie Button */
	--cookie-button-required-background: #666;
	--cookie-button-required-color: #FFF;
	--cookie-button-required-background-hover: #666;
	--cookie-button-required-color-hover: #FFF;
	--cookie-button-required-info-background: #666;
	--cookie-button-required-info-color: #FFF;
	--cookie-button-required-info-background-hover: #999999;
	--cookie-button-required-info-color-hover: #FFF;
	/* Cookie table declaration */
	--cookie-table-header-color: rgb(0,0,0);
	--cookie-table-primary-color: #000;
	--cookie-table-secondary-color: #777;
	--cookie-table-background-odd: #FFF;
	--cookie-table-background-even: #EEE;
	--cookie-table-legend-color: #666;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
New Cookie Message
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
body.cookie_msg .cookie_messageV2 { transform: translate(0,0); }
body.cookie_infos .cookie_messageV2>div.cookie_info { max-height: 100vh; padding: 1rem 1rem; }
.cookie_messageV2 { position: fixed; z-index: 10000; max-height: 100%; overflow-y: auto; bottom: 0px; left: 0px; right: 0px; background: var(--cookie-primary-background-color); box-shadow: var(--cookie-background-shadow); transform: translate(0,110%); transition: all 0.5s; }
.cookie_messageV2>div { padding: 1rem 1rem; }
.cookie_messageV2>div>.title { color: var(--cookie-primary-header-color); font-size: 2rem; line-height: 1.2em; }
.cookie_messageV2>div>.msg { margin: 1em 0em; color: var(--cookie-primary-color); line-height: 1.2em; }
.cookie_messageV2>div>.msg a { color: var(--cookie-link-color); text-decoration: none; }
.cookie_messageV2>div>.buttons { display: flex; justify-content: flex-end; flex-wrap: wrap; }
.cookie_messageV2>div>.buttons>a { width: 100%; justify-content: space-between; text-decoration: none; text-align: center; display: flex; position: relative; margin: 0em 0px 1em 0px; }
.cookie_messageV2>div>.buttons>a>.icon,
.cookie_messageV2>div>.buttons>a>.info { width: 48px; height: 48px; background-repeat: no-repeat; background-position: center center; }
.cookie_messageV2>div>.buttons>a.accept-all>.icon { background-image: url(../images/cookie/icon-check-FFFFFF.png); background-size: 65%; }
.cookie_messageV2>div>.buttons>a.accept-required>.icon { background-image: url(../images/cookie/icon-cancel-FFFFFF.png); background-size: 65%; }
.cookie_messageV2>div>.buttons>a>.info { background-image: url(../images/cookie/icon-inco-FFFFFF.png); background-size: 50%; }
.cookie_messageV2>div>.buttons>a>.label { padding: 5px; text-align: left; flex: 1; }
.cookie_messageV2>div>.buttons>a>.label>.title { text-transform: uppercase; font-size: 22px; line-height: 24px; }
.cookie_messageV2>div>.buttons>a>.label>.sub { text-transform: uppercase; font-size: 12px; line-height: 14px; }
.cookie_messageV2>div>.buttons>a.accept-required { background: #BBB; color: #FFF; }
.cookie_messageV2>div>.buttons>a.accept-all { background: var(--cookie-button-all-background); color: var(--cookie-button-all-color); }
.cookie_messageV2>div>.buttons>a.accept-all>.info { background-color: var(--cookie-button-all-info-background); color: var(--cookie-button-all-info-color); }
.cookie_messageV2>div>.buttons>a.accept-all>.info:hover { background-color: var(--cookie-button-all-info-background-hover); color: var(--cookie-button-all-info-color-hover); }
.cookie_messageV2>div>.buttons>a.accept-required { background: var(--cookie-button-required-background); color: var(--cookie-button-required-color); }
.cookie_messageV2>div>.buttons>a.accept-required>.info { background-color: var(--cookie-button-required-info-background); color: var(--cookie-button-required-info-color); }
.cookie_messageV2>div>.buttons>a.accept-required>.info:hover { background-color: var(--cookie-button-required-info-background-hover); color: var(--cookie-button-required-info-color-hover); }
.cookie_messageV2>div.cookie_info { background-color: var(--cookie-secondary-background-color); color: var(--cookie-secondary-color); overflow: hidden; max-height: 0px; padding-top: 0px; padding-bottom: 0px; transition: all 0.5s; }
.cookie_messageV2>div.cookie_info>.content { display: flex; flex-wrap: wrap; justify-content: space-between; max-width: 1219px; margin: 0 auto; }
.cookie_messageV2>div.cookie_info>.content>.left { width: 100%; }
.cookie_messageV2>div.cookie_info>.content>.left>.title { color: var(--cookie-secondary-header-color); font-size: 2em; line-height: 1.2em; }
.cookie_messageV2>div.cookie_info>.content>.left>.msg { font-size: 0.8em; padding: 1em 0em; line-height: 1.2em; }
.cookie_messageV2>div.cookie_info>.content>.right { width: 100%; max-width: 480px; padding: 1em 0em 1em 0em; margin: 0 auto; box-sizing: border-box; }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list { font-size: 0.7em; line-height: 2.1em; color: var(--cookie-table-secondary-color); }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row { display: flex; justify-content: space-between; padding: 0px 3px; }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row:nth-child(odd) { background-color: var(--cookie-table-background-odd); }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row:nth-child(odd) { background-color: var(--cookie-table-background-even); }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row.title { font-weight: bold; color: var(--cookie-table-header-color); }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row.needed { color: var(--cookie-table-primary-color); }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row.legend { color: var(--cookie-table-legend-color); text-align: right; }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row>.col1 { width: 33%; }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row>.col2 { width: 27%; }
.cookie_messageV2>div.cookie_info>.content>.right>.cookie-list>.row>.col3 { width: 40%; }


html { scroll-behavior: smooth; }
html, body { font-family: var(--body-font-family); margin: 0; font-size: var(--body-font-size); font-weight: 400; line-height: var(--body-line-height); color: var(--body-color); text-align: left; }
*,*:focus { outline: none !important; }

body.no-touch-device .for-touch { display: none; }
body.no-touch-device .for-none-touch { display: block; }
body.is-touch-device .for-touch { display: block; }
body.is-touch-device .for-none-touch { display: none; }

.lazy-elem { opacity: 1; transition: all 0.8s; }
.lazy-elem.lazy-load { opacity: 0; }

blockquote { position: relative; border-left: 3px solid var(--body-color); padding: 10px 10px 10px 20px; font-style: italic; font-weight: bold; }
blockquote::before { content: '“'; font-size: 4em; position: absolute; top: -20px; left: 5px; color: var(--body-color); font-style: normal; font-weight: normal; }
blockquote::after { content: '”'; font-size: 4em; position: absolute; bottom: -45px; right: 5px; color: var(--body-color); font-style: normal; font-weight: normal; }

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Header Declarations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
h1, h2, h3, h4, h5 { font-family: "Open Sans Regular"; }
.USERstylesheet.header.petrol { color: var(--color-primary-cidemos); }
.USERstylesheet.header.grey { color: #666; }
.USERstylesheet.header.upper { text-transform: uppercase; }
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Text Declarations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.rich-text a { text-decoration: none; color: var(--color-primary-cidemos); font-weight: bold; }
.rich-text a:hover { text-decoration: underline; }
.rich-text a.ckButton { display: inline-block; padding: 5px 10px; font-size: 1.2em; font-weight: normal; }
.rich-text a.ckButton:hover { text-decoration: none; }
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Image & Lightbox Declarations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#ciceroLightbox { box-shadow: none; border-radius: 0px; border: 0px solid #FFF; }
.gallery-item.col1 { text-align: center; }
.flex-gallery .gallery-item.col1 img { display: block; margin: 0 auto; }
.image-gallery { display: flex; width: 100%; justify-content: space-between; flex-wrap: wrap; }
.image-gallery-full-width { text-align: center; }
.image-gallery-full-width.left { text-align: left; }
.image-gallery-full-width.right { text-align: right; }
.image-gallery-full-width img { max-width: 100%; margin: 1rem 0rem; }
.image-gallery.columns1 { justify-content: center; }
.image-gallery .media-image { margin: 1.3% 0; }
.image-gallery .media-image.bottom { align-self: flex-end; }
.image-gallery .media-image-container { width: 100%; padding-bottom: 56%; height: 0px; position: relative; overflow: hidden; }
.image-gallery.columns1 .media-image { width: 100%; }
.image-gallery.columns2 .media-image { width: 100%; }
.image-gallery.columns3 .media-image { width: 100%; }
.image-gallery.columns4 .media-image { width: 100%; }
.image-gallery.columns2 .media-image-spacer { width: 100%; }
.image-gallery.columns3 .media-image-spacer { width: 100%; }
.image-gallery.columns4 .media-image-spacer { width: 100%; }
.image-gallery .media-image .image-elem { position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; background-position: center; background-repeat: no-repeat; background-size: cover; transition: all 0.5s; }
.image-gallery .media-image .image-elem:hover { transform: scale(1); }
.image-gallery .media-image-title { font-size: 0.7rem; line-height: 1.4em; padding: 4px 0px; }
.image-gallery .media-image-download-a { text-decoration: none; font-weight: bold; background-image: url(../images/icons/download.png); background-size: auto 100%; background-position: 3px center; background-repeat: no-repeat; padding: 0px 0px 0px 1.3rem; }
.image-gallery .media-image-download-a:hover { text-decoration: underline; color: #658D1B; }
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Teaser Declarations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.teaser { margin: 0px; }
.teaser:hover .image, .teaser .image:hover { transform: none; }
.USERstylesheet.teaser { position: relative; width: 100%; height: 0px; padding-bottom: 130%; }
.w50 .USERstylesheet.teaser { padding-bottom: 80%; }
.w100 .USERstylesheet.teaser { padding-bottom: 44%; }
.USERstylesheet.teaser>div { position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; display: flex; flex-direction: column; }
.USERstylesheet.teaser .image { width: 100%; height: 50%; background-size: cover; background-repeat: no-repeat; background-position: center; overflow: auto; }
.USERstylesheet.teaser .image.cover { background-size: cover; }
.USERstylesheet.teaser .content { flex: 1 auto; display: flex; flex-direction: column; justify-content: space-between; }
.USERstylesheet.teaser .text-content { padding: 1rem; height: 50%; display: flex; flex-direction: column; justify-content: space-between; }
.USERstylesheet.teaser .headline { font-size: 1.4rem; line-height: 1.2em; height: 2.8em; padding-bottom: 1rem; font-weight: bold; }
.USERstylesheet.teaser .text { flex: 1 auto; max-height: 6rem; overflow: hidden; margin-bottom: 1rem; }
.USERstylesheet.teaser .link-button { padding: 10px; display: block; text-align: center; text-decoration: none; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; transition: all 0.3s; }
.USERstylesheet.teaser.petrol { background-color: var(--color-primary-cidemos); color: #FFF; }
.USERstylesheet.teaser.petrol .link-button { background-color: #FFF; color: var(--color-primary-cidemos); }
.USERstylesheet.teaser.petrol .link-button:hover { background-color: #222; color: #FFF; }
.USERstylesheet.teaser.grey { background-color: #CCC; color: #333; }
.USERstylesheet.teaser.grey .link-button { background-color: var(--color-primary-cidemos); color: #FFF; }
.USERstylesheet.teaser.grey .link-button:hover { background-color: #222; color: #FFF; }
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Separator Declarations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.USERstylesheet.separator .lines { width: 100%; height: 44px; display: flex; align-items: center; }
.USERstylesheet.separator .lines .line { background-color: #666; height: 2px; }
.USERstylesheet.separator .lines .butterfly { width: 64px; }
.USERstylesheet.separator .lines .butterfly svg { width: 44px; display: block; margin: 0 auto; }
.USERstylesheet.separator .lines .butterfly svg path { fill: #006C52; }
.USERstylesheet.separator .lines .line.big { width: calc(75% - 32px); }
.USERstylesheet.separator .lines .line.small { width: calc(25% - 32px); }
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Table Declarations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
table { width: 100%; }
table td { white-space: nowrap; padding: 3px; margin: 2px; }
table tr:nth-child(even) td { background: #EEEEEE; }
table tr:nth-child(odd) td { background: #DDDDDD; }
.table-scrollable { width: 100%; overflow-x: auto; margin: 0 0 1em; }
.table-scrollable::-webkit-scrollbar { -webkit-appearance: none; width: 14px; height: 14px; }
.table-scrollable::-webkit-scrollbar-thumb { border-radius: 8px; border: 3px solid #fff; background-color: rgba(0, 0, 0, .3); }

.hamburger { display: block; width: 45px; cursor: pointer; height: 50px; position: relative; margin-left: auto; margin-right: auto; border-radius: 4px; transition: border-radius .5s; transition: 0.2s; transform-origin: center; }
.hamburger .line { position: absolute; left:0px; height: 4px; width: 45px; background: var(--color-primary-cidemos); border-radius: 2px; display: block; transition: 0.5s; transform-origin: center; }
.hamburger .line:nth-child(1) { top: 14px; }
.hamburger .line:nth-child(2) { top: 24px; }
.hamburger .line:nth-child(3) { top: 34px; width: 25px; }
body.nav-opened .hamburger .line:nth-child(1) { transform: translateY(10px) rotate(-45deg); width: 40px; }
body.nav-opened .hamburger .line:nth-child(2) { opacity: 0; }
body.nav-opened .hamburger .line:nth-child(3) { transform: translateY(-10px) rotate(45deg); width: 40px; }
body.nav-opened #navigation, body.without-slider #navigation { transform: translate(0,0); }

body.page-layout-dark.with-slider #header { background: none; }
body.page-layout-dark.with-slider #header .logo { margin-left: calc(var(--content-width) - 350px); }
body.page-layout-dark.with-slider #header .header-hamburger { display: none; }
body.page-layout-dark.with-slider #gradient { display: block; }
body.page-layout-dark.with-slider #header .logo img.dark { opacity: 1; }
body.page-layout-dark.with-slider #header .logo img.light { opacity: 0; }
body.page-layout-dark.with-slider .hamburger .line { background: var(--color-secondary-cidemos); }
body.page-layout-dark.with-slider.header-minimized .hamburger .line { background: var(--color-primary-cidemos); }
body.page-layout-dark.with-slider.header-minimized #header { background: rgba(255,255,255,0.95); }
body.page-layout-dark.with-slider.header-minimized #header .logo { margin-left: 0px; }
body.page-layout-dark.with-slider.header-minimized #header .logo img.dark { opacity: 0; }
body.page-layout-dark.with-slider.header-minimized #header .logo img.light { opacity: 1; }
body.page-layout-dark.with-slider #slider-spacer { padding-top: 0px; }
body.page-layout-dark.with-slider #slider { top: 0px; }
body.page-layout-dark.with-slider #navigation { transform: translate(110%,0); }
body.page-layout-dark.with-slider.nav-opened #navigation,
body.page-layout-dark.with-slider.header-minimized #navigation { transform: translate(0%,0); }
body.page-layout-dark.with-slider #fixed-hamburger { display: block; }
body.page-layout-dark.with-slider.header-minimized #fixed-hamburger { display: none; }

.content-width { width: 100%; max-width: var(--content-width); padding-left: var(--content-padding); padding-right: var(--content-padding); margin-left: auto; margin-right: auto; }

#gradient { position: absolute; display: none; z-index: 6; right: 0px; top: 0px; left: 0px; height: 100vh; background: rgb(0,0,0); background: linear-gradient(45deg, rgba(0,0,0,0) 9%, rgba(0,0,0,1) 80%); }
#fixed-hamburger { position: fixed; right: 29px; top: 29px; z-index: 12; display: none; }
#navigation { position: fixed; top: 107px; right: 0px; z-index: 11; width: 100%; opacity: 1; transition: all 0.5s; background: var(--color-primary-cidemos); }
#navigation .inner { display: flex; justify-content: flex-end; }
#navigation .inner .nav_level1 { position: relative; }
#navigation .inner .nav_level1>a { color: #FFF; font-size: 1.2rem; line-height: 43px; text-decoration: none; display: block; padding: 0px 15px; border-left: 1px solid #004d41; }
#navigation .inner .nav_level2 { position: absolute; background: rgba(220,220,220,0.95); transition: max-height 0.5s; overflow: hidden; max-height: 0px; white-space: nowrap; }
#navigation .inner .nav_level2>a { color: #666; font-size: 1.2rem; line-height: 43px; text-decoration: none; display: block; padding: 0px 15px; }
#navigation .inner .nav_level1.dropdown-active .nav_level2 { max-height: 300px; }

#header { position: fixed; z-index: 10; top: 0px; left: 0px; right: 0px; background: rgba(255,255,255,0.95); transition: all 0.5s; }
#header .inner { position: relative; z-index: 2; display: flex; justify-content: space-between; align-items: center; padding-top: 1rem; padding-bottom: 1rem; }
#header .logo { width: 311px; height: 75px; position: relative; transition: all 0.5s; }
#header .logo a { position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; }
#header .logo img { position: absolute; display: block; width: 311px; height: 75px; transition: all 0.5s; }
#header .logo img.dark { opacity: 0; }
#header .logo img.light { opacity: 1; }
#header .header-hamburger { display: none; }

#slider-spacer, #slider { height: 100vh; }
#slider-spacer { position: relative; z-index: 1; padding-top: 150px; width: 100%; }
#slider { position: fixed; top: 150px; right: 0px; left: 0px; width: 100%; z-index: 5; background-color: var(--body-color); }
#slider .swiper-slide { background-size: cover; background-repeat: no-repeat; background-position: center; }
#slider .swiper-button-prev { left: 10px; right: auto; transform: translateX(-200%); }
#slider .swiper-button-next { left: auto; right: 10px; transform: translateX(200%); }
#slider .swiper-slide .slider-overlay { position: absolute; bottom: 20%; left: 5%; display: none; }
#slider .swiper-slide.swiper-slide-active .slider-overlay { display: block; }

#page { padding-top: 150px; z-index: 5; position: relative; background-color: var(--body-background); color: var(--body-color); min-height: 100vh; padding-bottom: 3rem; }
#page .breadcrumb { padding-top: 16px; padding-bottom: 16px; }
#page .breadcrumb a { text-decoration: none; color: var(--color-primary-cidemos); font-weight: bold; margin-right: 0.5rem; }
#page .breadcrumb a:after { content: '»'; color: #222; margin-left: 0.5rem; font-size: 1.3em; }
#page .breadcrumb a:last-child:after { display: none; }

#page .bg-default>.--cidemos-flex,
#page .bg-dark-gradient>.--cidemos-flex,
#page .bg-lightgrey>.--cidemos-flex { width: 100%; max-width: var(--content-width); padding-left: var(--content-padding); padding-right: var(--content-padding); margin-left: auto; margin-right: auto; }
#page .bg-default { background: var(--body-background); }
#page .bg-dark-gradient { padding-top: 2rem; padding-bottom: 2rem; background: rgb(77,77,77); background: radial-gradient(circle, rgba(77,77,77,1) 0%, rgba(0,0,0,1) 86%); color: #FFF; }
#page .bg-lightgrey { padding-top: 2rem; padding-bottom: 2rem; background: #CCC; }

#page .bg-dark-gradient .USERstylesheet.header.style1 { color: var(--color-secondary-cidemos); }
#page .bg-dark-gradient .USERstylesheet.header.style2 { color: #FFF; }

#footer { z-index: 5; position: relative; background: #2F2F2F; }

.ckMediaLink.application-pdf { background-image: url(../images/icons/pdf.svg); background-size: 2rem 2rem; display: inline-block; line-height: 2.4em; min-height: 2.4em; background-position: left center; background-repeat: no-repeat; padding-left: 2.3rem; }

body.with-slider #page { padding-top: 0px; }

.ce-image.icons .flex-gallery .gallery-item { margin: 2.5% 0; }
.ce-image.icons .image-elem { background-size: contain; }
.ce-image.icons .media-image-title { text-align: center; font-size: 1rem; }

a.btn { display: inline-block; background: var(--color-primary-cidemos); color: #FFF; text-decoration: none; line-height: 32px; padding: 0px 15px; }

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Blog
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.blog-listing-item { display: flex; background: #EEE; padding: 0.3rem; margin: 0px 0px 1rem 0px; }
.blog-listing-item .image { padding: 0 0.5rem 0 0; }
.blog-listing-item .image a { display: block; width: 320px; height: 240px; background-position: center; background-repeat: no-repeat; background-size: contain; }
.blog-listing-item .infos { padding: 0.5rem; }
.blog-listing-item .infos .date { text-align: right; }
.blog-listing-item .infos .headline { font-size: 1.4rem; line-height: 2rem; font-weight: bold; }
.blog-listing-item .infos .headline a { text-decoration: none; color: var(--color-primary-cidemos); }
.blog-listing-item .infos .subheadline { font-size: 1.2rem; line-height: 1.6rem; font-weight: bold; color: #666; }
.blog-listing-item .infos .subheadline a { text-decoration: none; color: #666; }
.blog-listing-item .infos .short-text { padding-top: 0.5rem; font-size: 0.9rem; line-height: 1.1rem; color: #666; }
.article-headline { color: var(--color-primary-cidemos); }
.article-subheadline { color: #666; }
.article-image-big { }
.article-image-big img { display: block; width: 100%; max-width: 800px; margin: 0 auto; }
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Reviews
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.review-top-container { background: #CCC; padding: 2rem 0; margin: 1rem 0; }
#review-top { width: 100%; display: flex; justify-content: space-between; max-width: var(--content-width); padding-left: var(--content-padding); padding-right: var(--content-padding); margin-left: auto; margin-right: auto; }
#review-top .left { }
#review-top .right { }
#review-top .allReviews { font-size: 2rem; }
#review-top .allReviews span { color: var(--color-primary-cidemos); font-weight: bold; }
#review-form-container { display: none; width: 100%; max-width: var(--content-width); padding-left: var(--content-padding); padding-right: var(--content-padding); margin-left: auto; margin-right: auto; }
#review-form-container .review-form-closer { float: right; width: 32px; height: 32px; background-image: url(../images/close-000000.svg); background-size: 90%; background-position: center; background-repeat: no-repeat; }
#review-form-success { display: none; width: 100%; max-width: var(--content-width); padding-left: var(--content-padding); padding-right: var(--content-padding); margin-left: auto; margin-right: auto; }
.review-item { display: flex; margin-bottom: 1rem; }
.review-item .left { padding: 0px 1rem 0px 0px; }
.review-item .left .circle { background: var(--color-primary-cidemos); color: #FFF; width: 120px; height: 120px; position: relative; border-radius: 100%; }
.review-item .left .circle .circleInner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 70px; }
.review-item .right { }
.review-item .right .date { text-align: right; }
.review-item .right .text h4 { margin-top: 0px; }
.review-item .right .text { background: #EEE; border-radius: 10px; padding: 1rem; }
.review-item .right .name { font-size: 15px; padding: 5px 0px 5px 10px; }

.container-demo { background: #EEE; border: 2px dotted var(--color-primary-cidemos); position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; }
.w100 .container-demo::after { content: '100% Breite'; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-weight: bold; color: var(--color-primary-cidemos); white-space: nowrap; }
.w80 .container-demo::after { content: '80% Breite'; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-weight: bold; color: var(--color-primary-cidemos); white-space: nowrap; }
.w75 .container-demo::after { content: '75% Breite'; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-weight: bold; color: var(--color-primary-cidemos); white-space: nowrap; }
.w66 .container-demo::after { content: '66% Breite'; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-weight: bold; color: var(--color-primary-cidemos); white-space: nowrap; }
.w50 .container-demo::after { content: '50% Breite'; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-weight: bold; color: var(--color-primary-cidemos); white-space: nowrap; }
.w33 .container-demo::after { content: '33% Breite'; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-weight: bold; color: var(--color-primary-cidemos); white-space: nowrap; }
.w25 .container-demo::after { content: '25% Breite'; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-weight: bold; color: var(--color-primary-cidemos); white-space: nowrap; }

.--cidemos-sub-flex .w100 .container-demo::after { content: '100% Breite im Contentset'; }
.--cidemos-sub-flex .w80 .container-demo::after { content: '80% Breite im Contentset'; }
.--cidemos-sub-flex .w75 .container-demo::after { content: '75% Breite im Contentset'; }
.--cidemos-sub-flex .w66 .container-demo::after { content: '66% Breite im Contentset'; }
.--cidemos-sub-flex .w50 .container-demo::after { content: '50% Breite im Contentset'; }
.--cidemos-sub-flex .w33 .container-demo::after { content: '33% Breite im Contentset'; }
.--cidemos-sub-flex .w25 .container-demo::after { content: '25% Breite im Contentset'; }

body#page-14 .--cidemos-ce { position: relative; min-height: 75px; }

@media only screen and (min-width: 320px) {
}

@media only screen and (min-width: 450px) {
	.image-gallery.columns2 .media-image { width: 49%; }
	.image-gallery.columns3 .media-image { width: 49%; }
	.image-gallery.columns4 .media-image { width: 49%; }
	.image-gallery.columns2 .media-image-spacer { width: 49%; }
	.image-gallery.columns3 .media-image-spacer { width: 49%; }
	.image-gallery.columns4 .media-image-spacer { width: 49%; }
}

@media only screen and (min-width: 650px) {
	.image-gallery.columns3 .media-image { width: 31.333333%; }
	.image-gallery.columns4 .media-image { width: 31.333333%; }
	.image-gallery.columns3 .media-image-spacer { width: 31.333333%; }
	.image-gallery.columns4 .media-image-spacer { width: 31.333333%; }
}

@media only screen and (min-width: 850px) {
	.cookie_messageV2 { height: auto; }
	.cookie_messageV2>div>.title { line-height: 1.5em; }
	.cookie_messageV2>div>.msg { line-height: 1.5em; }
	.cookie_messageV2>div>.buttons>a { width: auto; margin: 0em 1rem 1rem 1rem; }
	.cookie_messageV2>div.cookie_info>.content>.left>.title { line-height: 1.5em; }
	.cookie_messageV2>div.cookie_info>.content>.left>.msg { line-height: 1.5em; }
}

@media only screen and (min-width: 950px) {
	.cookie_messageV2>div.cookie_info>.content>.left { width: 59%; }
	.cookie_messageV2>div.cookie_info>.content>.right { width: 40%; }
}

@media only screen and (min-width: 1100px) {
	.image-gallery.columns4 .media-image { width: 23%; }
	.image-gallery.columns4 .media-image-spacer { width: 23%; }
	.image-gallery .media-image-title { font-size: 0.8rem; }
}

@media only screen and (min-width: 1340px) {
}
