html {
	font-size: 1em;
	background-color: #fff;
	font-family: ContemporarySans-Regular;
	color: #00000;
	font-weight: normal;
    font-style: normal;
	margin: 0;
	padding: 0;
}

body {
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: black;
    text-shadow: none;
	color: white;
}

::selection {
    background: black;
    text-shadow: none;
	color: white;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/* TYPO ==================================================================*/   

@font-face {
	font-family: 'ContemporarySans-Regular';src: url('webfonts/30F95B_1_0.eot');
	src: url('webfonts/30F95B_1_0.eot?#iefix') format('embedded-opentype'),
		 url('webfonts/30F95B_1_0.woff2') format('woff2'),
		 url('webfonts/30F95B_1_0.woff') format('woff'),
		 url('webfonts/30F95B_1_0.ttf') format('truetype');
	font-weight: normal;
    font-style: normal;	
}

  
@font-face {
	font-family: 'ContemporarySans-Bold';
	src: url('webfonts/30F95B_0_0.eot');
	src: url('webfonts/30F95B_0_0.eot?#iefix') format('embedded-opentype'),
		 url('webfonts/30F95B_0_0.woff2') format('woff2'),
		 url('webfonts/30F95B_0_0.woff') format('woff'),
		 url('webfonts/30F95B_0_0.ttf') format('truetype');
	font-weight: normal;
    font-style: normal;	
}

h1 {
	font-family: ContemporarySans-Bold;
	font-size: 3em; /* 48px */	
	line-height: 1em; /* 48px */
	font-weight: normal;
    font-style: normal;
	margin: 0;
	padding: 0 0 8% 8%;
	Xbackground-color: red;
}

h2 {
	font-family: ContemporarySans-Bold;
	font-size: 1.5em; /* 24px */	
	line-height: 1.33em; /* 32px */
	font-weight: normal;
    font-style: normal;
	margin: 0;
	padding: 0;
}

h3 {
	font-family: ContemporarySans-Bold;
	font-size: 1.3125em; /* 21px */	
	line-height: 1.33em; /* 28px */
	font-weight: normal;
    font-style: normal;
	margin: 0;
	padding: 0;
}

p.fliesstext {
	font-family: ContemporarySans-Regular;
	font-size: 1.3125em; /* 21px */	
	line-height: 1.33em; /* 28px */
	font-weight: normal;
    font-style: normal;
	margin: 0;
	padding: 0;
}

p.bildunterschrift {
	font-family: ContemporarySans-Regular;
	font-size: 1.0em; /* 16px */	
	line-height: 1.273em; /* 28px */
	font-weight: normal;
    font-style: normal;
	margin: 0;
	padding: 5px 0 0 0;
	text-align: right;
}

.gesucheTitel {
	color: black;
	text-decoration: none;
	
	font-family: ContemporarySans-Bold;
	font-size: 1.5em; /* 24px */	
	line-height: 1.33em; /* 32px */
	font-weight: normal;
    font-style: normal;
	margin: 0;
	padding: 0;
}

.gesucheFliesstext {
	font-size: 1.3125em; /* 21px */	
	line-height: 1.33em; /* 28px */
	margin: 0;
	padding: 4% 0;
}

/* SPANS ==================================================================*/

	.paddingVierProzent {
		padding: 4%;
	}	
	
	.paddingAchtProzent {
		padding: 8%;
	}
	
	.bold {
		font-family: ContemporarySans-Bold;
	}

/* CONTENT ==================================================================*/



/*=== HEAD ===*/


.contentAll {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 0;
}

.containerLogo {
	width: 100%;
	padding: 50px 0;
	
	display: -webkit-box;			/* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;				/* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;			/* TWEENER - IE 10 */
	display: -webkit-flex;			/* NEW - Chrome */
	display: flex;					/* NEW, Spec - Opera 12.1, Firefox 20+ */

	justify-content: center;
	-webkit-justify-content: center; /* Safari 6.1+ */
	
	Xbackground-color: orange;

}

.svgLogo {
	margin: 0 auto 0;
	width: 100%;
	max-width: 165px;
	
	Xbackground-color: red;
}



/*=== MOBILE NAVIGATION ===*/



nav.mobile {
	display: none;
	width: 100%;
	
	text-align: center;
	font-size: 1.5em; /* 21px */
	line-height: 1.5em; /* 28px */
	font-weight: normal;
    font-style: normal;	
	
	padding: 4% 0;
	margin: 0;	
	
	background-color: #000;
	color: white;
}

ul.mobileNavi {
	list-style-type: none;
	padding:0;	
}

a.mobileNavi {
	text-decoration:none;
	color: white;	
}

a.mobileNavi:hover { 
	text-decoration:underline;
}

a.mobileNaviActive {
	text-decoration:underline;
	color: white;
	pointer-events: none;
	cursor: default;
}



/*=== NAVIGATION ===*/



nav {
	width: 100%;
	text-align: center;
	font-size: 1.3125em; /* 21px */	
	padding: 0;
	margin: 0;
	
	Xbackground-color: orange;
}

.svgFacebook {
	width: 30px;
	height: 30px;
}

a.navLinkActive {
	text-decoration:underline;
	color: #000;
	pointer-events: none;
	cursor: default;
}

a.navLink { 
	text-decoration:none;
	color: #808080;
}

a.navLink:hover { 
	text-decoration:underline;
	color: #000;
}



/*=== INFO ===*/



.flexboxInfo {
	width: 100%;
	padding: 10% 0 0 0;
	
	display: -webkit-box;			/* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;				/* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;			/* TWEENER - IE 10 */
	display: -webkit-flex;			/* NEW - Chrome */
	display: flex;					/* NEW, Spec - Opera 12.1, Firefox 20+ */
	
	flex-direction: row;
	justify-content: space-between;
	
	Xbackground-color: orange;
}

.containerFoto {
	width: 40%;
	max-width: 400px;
}

.jpgPortraet {
	width: 100%;
}

.containerText {
	width: 50%;
	max-width: 500px;
}

a.fliesstextLink {
	text-decoration: underline;
	color: black;
}

a.fliesstextLink:hover {
	text-decoration: none;
	color: white;
	background: black;
}



/*=== GALERIE ===*/



.flexboxTextGalerie {	
	display: -webkit-box;			/* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;				/* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;			/* TWEENER - IE 10 */
	display: -webkit-flex;			/* NEW - Chrome */
	display: flex;					/* NEW, Spec - Opera 12.1, Firefox 20+ */
	
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
		
	width: 100%;
	padding: 10% 0 3% 0 ;
	
	Xborder: 1px solid red;
}

.containerTextGalerie {
	width: 60%;
	max-width: 600px;
	
	xborder: 1px solid green;
}

.flexboxKategoriebild {		
	display: -webkit-box;			/* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;				/* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;			/* TWEENER - IE 10 */
	display: -webkit-flex;			/* NEW - Chrome */
	display: flex;					/* NEW, Spec - Opera 12.1, Firefox 20+ */
	
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	
	width: 100%;
	padding: 5% 0 0 0;
	Xborder: 1px solid green;
}

.containerKategoriebild {
	width: 100%;
	max-width: 800px;
}

.jpgKategorien {
	width: 100%;
}

.vimeoContainer {
	width: 80%;
	max-width: 800px;
	margin: 0 auto;
}

.vimeoElement {
	padding:56.25% 0 0 0;
	position:relative;
	border-top: 5px solid white;
}

.flexboxThumbnails {		
	display: -webkit-box;			/* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;				/* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;			/* TWEENER - IE 10 */
	display: -webkit-flex;			/* NEW - Chrome */
	display: flex;					/* NEW, Spec - Opera 12.1, Firefox 20+ */
	
	flex-direction: row;
	justify-content: space-around;
	
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	
	border-top: 5px solid black;
}

a.thumbs {
	text-decoration: none;
}

.jpgThumbs {
	width: 100%;
	Xmax-width: 120px;
}





/*=== AUSSCHREIBUNGEN ===*/



.flexboxAusschreibungen {
	width: 100%;
	padding: 10% 0 0 0;
	
	display: -webkit-box;			/* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;				/* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;			/* TWEENER - IE 10 */
	display: -webkit-flex;			/* NEW - Chrome */
	display: flex;					/* NEW, Spec - Opera 12.1, Firefox 20+ */
	
	Xflex-direction: column;
	justify-content: center;
	
	Xbackground-color: orange;
}

.containerTextAusschreibungen {
	width: 60%;
	max-width: 600px;
}

.containerEinzelangebote {
	padding: 4% 0;
    border-bottom-style: solid;
	border-width: 1px;
}

.elastic-video {
	position: relative;
	padding-bottom: 55%;
	padding-top: 15px;
	height: 0;
	overflow: hidden;
}

.elastic-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



/*=== IMPRESSUM+DATENSCHUTZ ===*/



.flexboxImpressum {
	width: 100%;
	padding: 10% 0 0 0;
	
	display: -webkit-box;			/* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;				/* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;			/* TWEENER - IE 10 */
	display: -webkit-flex;			/* NEW - Chrome */
	display: flex;					/* NEW, Spec - Opera 12.1, Firefox 20+ */
	
	Xflex-direction: column;
	justify-content: center;
	
	Xbackground-color: orange;
}

.containerTextImpressum {
	width: 60%;
	max-width: 600px;
}

a.typortraetLink {
	text-decoration: none;
	color: black;
	background: url(../img/textmarker_bg_yellow.png);
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
}



/*=== FOOTER ===*/



footer {
	text-align: center;
	padding: 4% 0 2% 0;
}

a.linkFooter { 
	text-decoration:none;
	color: #808080;	
}

a.linkFooter:hover { 
	text-decoration:underline;
	color: black;	
}

a.linkFooterActive { 
	text-decoration:underline;
	color: #000;
}

footer.mobile {
 display: none;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers:
 * http://juicystudio.com/article/screen-readers-display-none.php
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (max-width: 1100px) {
	
	.flexboxInfo {
		width: 80%;
		padding: 10% 0;
		margin: 0 auto;
	}	
	
	.flexboxKategoriebild {
		width: 80%;
		margin: 0 auto;
	}
	
	
}

@media only screen and (max-width: 1000px) {
	
	.containerTextAusschreibungen {
		width: 80%;
	}	
	
	.containerTextImpressum {
		width: 80%;
	}	
	
	.containerTextGalerie {
		width: 80%;
	}
	
	.flexboxThumbnails {
		width: 80%;
	}
}

@media only screen and (max-width: 800px) {
	
	html {
		font-size: 0.875em;
	}
	
	.containerLogo {
		padding: 30px 0;
	}

	.svgLogo {
		max-width: 145px;
	}
}

@media only screen and (max-width: 600px) {
	
	p.bildunterschrift {
	font-size: 1.16em; /* 14px */	
	line-height: 1.273em; /* 28px */
	font-weight: normal;
    font-style: normal;
	margin: 0;
	padding: 5px 0 0 0;
	text-align: center;
	}
	
	html {
		font-size: 1em;
	}
	
	.containerLogo {
		padding: 10% 0;
	}
	
	nav {
		display: none;
	}
	
	nav.mobile {
		display: inline-block;
	}

	
	.flexboxInfo {	
		padding: 0;	
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		
	}
	
	.containerFoto {
		width: 100%;
		max-width: 300px;
	}

	.containerText {
		width: 100%;
		padding: 30px 0 0 0;
	}
	
	.flexboxAusschreibungen {
		padding: 0;
	}
	
	.flexboxTextGalerie {
		padding: 0 0 4% 0;
	}	
	
	.flexboxImpressum {
		padding: 0;
	}	
	
	footer {
		display: none;
	}
	
	footer.mobile {
		display: inline-block;
		width: 100%;
		padding: 30px 0;
		text-align: center;
	}
}

@media only screen and (max-width: 400px) {
	
	html {
		font-size: 0.75em;
	}
	
	.svgLogo {
		max-width: 120px;
	}
	
	h1 {
		font-size: 2em; /* 48px */	
		line-height: 1em; /* 48px */
		padding: 0 0 4% 8%;
	}
	
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
