2
/* 	NORMALISIEREN */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 1em;
	font: inherit;
	vertical-align: baseline;
	box-sizing: border-box;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
ol, ul {
	list-style: none;
	list-style-image: none;
	padding: 0;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

*{box-sizing: border-box;}
html {
  font-size: 100%;
  /* Corrects text resizing oddly in IE6/7 when body `font-size` is set using 'em` units.*/
  -webkit-text-size-adjust: 100%;
  /* Prevents iOS text size adjust after orientation change, without disabling user zoom. */
  -ms-text-size-adjust: 100%;
 }

.clearfix:before, /*Clearfix helper Used to contain floats: h5bp.com/q*/
.clearfix:after {
  content: "";
  display: table; }

.clearfix:after {
  clear: both; }
img {
  vertical-align: middle;/* Remove the gap between images and the bottom of their containers */
  border: none; border: 0;
 }
img{
	max-width: 100%;
}

html, body {
  width: 100%;
  height: 100%; 
  margin: 0;
  padding: 0;
  
  }
  
.mobile { display: none; }

html {
  scroll-behavior: smooth;
}

#team{
	display: none;
}


/*     slide
   ========================================================================== */
ul.slider {
    list-style: none;
    z-index: -1;
/*
    position: absolute;
    float: left;
*/
    width: 100%;
    height: 100vh;
    background: #c1bab0;
    background: #f9f9f9;
    margin: 0;
/*
    margin-top: -95px;
    max-height: 788px;
*/

}

ul.slider li {
    position: absolute;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    opacity: 0;
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    transition: opacity 1s;

}

ul.slider li img{
	display: none;
}

/*     FONT
   ========================================================================== */



/*     Links / Buttons
   ========================================================================== */

a:focus { outline: none; }
a:active,
a:hover { outline: 0; }
a:focus,
a:visited:focus,
a:hover::focus,
a:hover:visited:focus  { border: none;}

a,
a:visited,
a:hover,
a:visited:hover
 {
  text-decoration: none;
}

.button{
	display: inline-block;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: .8em;
	background: #ff0;
	margin-top: 4px;
	padding: 3px 4px;
	font-style: italic;
	text-transform: uppercase;
	letter-spacing: .2em;
	rgb(3, 106, 179)
}
span.read_more,
a.read_more,
.portfolio ul li.portfolio_item .read_more span{
	font-family: 'Source Sans Pro';
	background: yellow;
	padding: 2px 4px 2px 5px;
	font-style: italic;
	color: rgb(3, 106, 179);
	font-size: .63em;
	text-transform: uppercase;
	letter-spacing: .3em
}
.portfolio ul li.portfolio_item .read_more span{
	margin-right: 6px;
}


p a:not(.button)	{
	border-bottom: 1px solid yellow;
	color: #000;
}
p a:hover:not(.button){
	border-bottom: 1px solid #000;
	color: #000;
}
footer .button{
	color: #036ab3;
	margin-top: 4px;
	padding: 3px 9px;
}



a.button,
.call_to_action_box button,
.team_box button
{
	color: rgb(3, 106, 179);
	padding: 3px 8px;
}


input[type="submit"],	
a.button,
.call_to_action_box button,
.team_box button
{
	border: 0;
	color: rgb(3, 106, 179);
	padding: 3px 8px;
}


.rahmen{border: 1px solid rgb(3, 106, 179) !important;}



/*       Typography
   ========================================================================== */

body {
  color: #060606;
  font-size: : 1em;
  font-family: 'Noto Serif JP', serif;
  line-height: 1; 
  }

p, ul{
margin-bottom: 1.45em;
line-height: 1.45;
} 

section.single_page h1,
section h1,
section.partner h2{	
	font-family: 'Noto Serif JP', serif;
	text-transform: uppercase;
	letter-spacing: .26em;
	font-size: .69em;
	line-height: 1.7em;
	padding-bottom: 1.3em;
	font-weight: normal;
}


span.headline1 {  
	font-family: 'Noto Serif JP', serif;
	color: rgba(0, 0, 0, 1);
	font-weight: bold;
	font-size: 1.8em;
	padding-right: 16%;
/* 	margin-bottom: .3em; */
	display: block;
}

h2{
	font-size: .9em;
	text-transform: uppercase;
	letter-spacing: .15em;
	color:#dc0000;
}

h3 {
  font-size: 1.17em;
  margin: 1em 0; }

h4 {
  font-size: 1em;
  margin: 1.33em 0; }

h5 {
  font-size: 0.83em;
  margin: 1.67em 0; }

h6 {
  font-size: 0.75em;
  margin: 2.33em 0; }

b, strong { font-weight: bold; }
blockquote {margin: 1em 40px; }

p{
  font-size: 1em;
  line-height: 1.45;
  }

.small,
p.small{
  font-size: .7em;
  line-height: 1;
  }

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

 



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

form {
  margin: 0;
  font-family: 'Noto Serif JP', serif;
   }
form p,
form input[type="text"],
form textarea{
  font-family: 'Noto Serif JP', serif;
  width: 100%;

   }   
form p.small{
	font-size: .7em
}
form p{
	margin: 1em 0;
}
form p a{
	color: rgb(3, 106, 179);
}	

input[type="text"],
textarea{
	padding: 4px 8px;
	margin: 0 0 8px 0;
	background: #fff;
	border: 0;
	border-bottom: 1px solid #9c9c9c;
	color: #000;
	text-decoration: none;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder
{color: rgb(120, 120, 120); text-transform: uppercase; font-size: .8em}
input::-moz-placeholder, 
textarea::-moz-placeholder
{color: rgb(120, 120, 120); text-transform: uppercase; font-size: .8em}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder
{color: rgb(120, 120, 120); text-transform: uppercase; font-size: .8em}
input:-moz-placeholder,
textarea:-moz-placeholder
{color: rgb(120, 120, 120); text-transform: uppercase; font-size: .8em}

input[type="submit"]{
	border: 0px solid rgb(3, 106, 179);
	color: rgb(3, 106, 179);
	display: inline-block;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: .8em;
	background: #ff0;
	margin-top: 4px;
	padding: 3px 8px;
	font-style: italic;
	text-transform: uppercase;
	letter-spacing: .2em;
	border-radius: 0;
	}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
  *overflow: visible;
}

/*
 * 1. Addresses box sizing set to content-box in IE8/9.
 * 2. Removes excess padding in IE8/9.
 * 3. Removes excess padding in IE7.
 *    Known issue: excess padding remains in IE6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */ }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto;/* Removes default vertical scrollbar in IE6/7/8/9. */
  vertical-align: top;/* Improves readability and alignment in all browsers.*/
}



/* Remove text-shadow in selection highlight: h5bp.com/i*/
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }
::selection {
  background: #b3d4fc;
  text-shadow: none; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; 
  }

textarea {
  resize:  both; /* Allow resizing of textareas. */
  }

.fehlerklasse{
	font-style: italic;
	color: #ff5a00
}


/*                                 Header
   ========================================================================== */
header {
	z-index: 10;
	background: transparent;
	position: fixed;
	width: 100%;
	height: 122px; 
	pointer-events: none;
	}
header .logo_box{
	width: 228px;
	top: 0px;
	right: 44px;
	position: absolute;
	pointer-events: all;
	margin: 0; 
}	
.header_inner{
	padding: 0 22px;
	margin: 0 auto;
	height: auto;
}

/*                                  Navigation
   ========================================================================== */

nav,
nav ul,
nav ul li,
nav ul li a{
	 font-family: 'Noto Serif JP', serif;
}

nav{
	position: absolute;
    width: 90%;
    height: 28px;
    top: 28px;
    left: 22px;
    background: transparent;
    pointer-events: all;
    }
 
nav ul {
    margin: 0; 
    display: table;
    font-size: .8em;
    font-weight: 400;
	letter-spacing: .5em;
	line-height: 1em;
    text-transform: uppercase;
    text-shadow: 7px 0px 0px yellow
    }
    
nav ul li {
    float: left; 
    }
nav ul li a,
nav ul li a:visited {
    padding: 6px 3px 6px 9px;
	display: block; 
	color: rgba(10, 107, 172, 1);
/* 	color: rgb(173, 173, 173); */
/* 	color: rgb(120, 120, 120); */
	color: rgba(144, 144, 144, 1);
	color: #000;
	background-color: transparent;
    	-webkit-transition: background-color .5s ease-in;
	-moz-transition: background-color .5s ease-in;
	-o-transition: background-color .5s ease-in;
	transition: background-color .5s ease-in;
	}
nav ul li a.active,
nav ul.sub_nav li a.active {
    background-color: yellow;
    	-webkit-transition: background-color .5s ease-out;
	-moz-transition: background-color .5s ease-out;
	-o-transition: background-color .5s ease-out;
	transition: background-color .5s ease-out;
    }
nav ul li a:focus { outline: none; }
	
	
/* ---- sub nav ---- */

nav ul.sub_nav {
	margin-top: 6px;
    font-size: .7em;
    font-weight: 400;
	letter-spacing: .23em;
	line-height: 1;
    text-transform: uppercase;
    text-shadow: 5px 0px 0px #fff;
	text-shadow: none;
    }
nav ul.sub_nav {
	margin-top: 6px;
    font-size: .67em;
    font-weight: 400;
	letter-spacing: .35em;
	line-height: 1;
    text-transform: uppercase;

    }
        
    
/* vertikal 
nav ul.sub_nav {
	margin-top: 18px;
	font-size: .7em;
	font-weight: 400;
	letter-spacing: .4em;
	line-height: 1;
	text-transform: uppercase;
	text-shadow: 5px 0px 0px #fff;
	text-shadow: none;
	display: table-caption;
	width: 300px;

    }    
 */   

 nav ul.sub_nav li a{
	background: #fff;
	background: transparent;
	padding: 3px 4px 3px 6px;
	margin-right: 1px;
	line-height: 1.6;
	}


li.text_box_nav{
	display: inline-block;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: .8em;
	background: #ff0;
	margin: 2px;
	padding: 1px 4px;
	font-style: italic;
	text-transform: uppercase;
	letter-spacing: .1em;
	
}


li.text_box_nav a{
	color: rgb(3, 106, 179);
}

li.text_box_nav.rex-current{
	display: none
}



/* sections  */ 

section{
	height: 100%;
	width: 100%;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	justify-content: center;
	
/* 	padding: 44px 0 */
}

/* --------------------------------- START-START ------------------------------  */ 
section.start{

}
section.start .wrapper_start{
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	height: 100vh;
	position: absolute;
	box-shadow: inset 0px -288px 188px -48px rgba(0, 0, 0, 0.5);
	
}
section.start .headlineOuter{
	width: 100vw;
	height: auto;
	text-align: center;
	color: #fff;
	text-shadow: 0px 0px 22px rgba(0, 0, 0, 0.7);
}
section.start .headlineOuter{
	margin-bottom: 66px;
}
section.start .headlineOuter:first-child{
	margin-bottom: 188px;
}
section.start .headlineOuter span.headline{
	font-size: 4em;
	font-weight: 900;
	line-height: 1;
}

section.start .headlineOuter span.subline{
	font-size: 3.2em;
	font-weight: 400;
}

section.start .headlineOuter span.txt{
	font-size: 1.8em;
	font-weight: 400;
	text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.4);
}
section.start .headlineOuter span.txtFett{
	font-size: 1.8em;
	font-weight: 700;
	text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.4);
}
section.start .scrollBtn{
 	color: #fdabc7;
 	color: #ff0;
 	font-size: 1.2em;
 	font-weight: 400;
 	text-align: center;
 	margin-bottom: 22px
}
section.start .scrollBtn img{
	width: 52px;
	height: auto;
	margin: 12px 0;
}
section.start .scrollBtn a{
	color: #ff0;
}





section .wrapper{
	display: flex;
	display: -webkit-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
} 


section .wrapper > div{
	padding: 72px 88px;
	width: 50%;
}


section .wrapper_outer{
		position: absolute;
		display: flex;
		display: -webkit-flex;
		align-items: center;
		justify-content: center;
		width: 1088px;
	} 



.headline {
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
/* 	letter-spacing: .02em; */
}


.hg_bild{
	display: flex;
	justify-content: center;
}

.svgLayer {
	padding: 5%;
}



 
/* --------------------------------- START-START ------------------------------  */ 
section.start{
/*
	background-image: url(../media/bildschoen-fotografie-berlin.jpg);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
*/
}



section.start .sprite{
	position: absolute;
	width: 100%;
	height: 1000px;
	z-index: 200;
	top: 0;
	padding: 0;
}

section.start .screen{
	position: absolute;
	width: 100%;
	height: 1000px;
	z-index: 201;
	top: 0;
	padding: 0;
}




section.start .headline{
	position: relative;
	float: left;
	width: 100%;
	text-align: center;
	font-size: 4em;
	font-weight: bold;
	line-height: 5;
	color: rgb(3, 106, 179);
	color: #d40000;
	text-shadow: 0px 0px 12px rgba(0, 0, 0, 0.2);
}

/* ----------------------------- Aktuelles ----------------------------------- */ 
section.aktuelles{

}

section.aktuelles .wrapper{
/*
	-webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
*/
}
section.aktuelles .links{
	background-color: #ececec;
	background-color: #eeeeee;
/*
    background-image: url(../img/aktuelles.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
*/
    width: 50%;
	position: absolute;
	left: 0;
	z-index: -1;
}
section.aktuelles .rechts{
    background-image: url(../img/elemente/ring.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 50%;
	position: absolute;
	right: 0;
	z-index: -1;
}





section.aktuelles bild_box{
	text-align: center;
}

section.aktuelles img{
	max-width: 80%;
}

/* ----------------------------- Aktuelles ----------------------------------- */ 
section.planters-hope{

}

section.planters-hope .wrapper{
/*
	-webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
*/
}
section.planters-hope .links{
	background-color: #ececec;
	background-color: #eeeeee;
/*
    background-image: url(../img/aktuelles.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
*/
    width: 50%;
	position: absolute;
	left: 0;
	z-index: -1;
}





section.aktuelles bild_box{
	text-align: center;
}

section.aktuelles img{
	max-width: 80%;
}

/* ----------------------------- START-PORTFOLIO ---------------------------------------  */ 
.portfolio ul{
	height: 100%;
	width: 100%;
	margin: 0;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;

} 
.portfolio ul li.portfolio_item{
	width: 33.333333333%;
    height: 25vh;
    margin: 0;
    text-align: center;
}

.portfolio ul li.portfolio_item .hintergrund{
	position: absolute;
	width: 16.6666666666%;
	height: 25%;
	-webkit-filter: saturate(.0);
	filter: saturate(0);
	opacity: .4;
}
.portfolio ul li.portfolio_item .hintergrund{	
	-moz-transition:all 0.4s ease;
	-webkit-transition:all 0.4s ease;
	-ms-transition:all 0.4s ease;
	-o-transition:all 0.4s ease;
	transition:all .4s ease;
}
.portfolio ul li.portfolio_item:hover > .hintergrund{
	-webkit-filter: saturate(1.1);
	filter: saturate(1.1);
	opacity: 1;
}
.portfolio .non_padding {
	background: rgba(241, 241, 241, 0.51);
}
.portfolio ul li.portfolio_item.event .hintergrund{
	background:url(../media/event.jpg) no-repeat center center;
	background-size: cover;	
	}
.portfolio ul li.portfolio_item.fashion .hintergrund{
	background:url(../media/fashion.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item.messe .hintergrund{
	background:url(../media/messe.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item.people .hintergrund{
	background:url(../media/people.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item.architektur .hintergrund{
	background:url(../media/architektur.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item.food .hintergrund{
	background:url(../media/food.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item.produkt .hintergrund{
	background:url(../media/produkt.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item.industrie .hintergrund{
	background:url(../media/industrie.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item.hochzeit .hintergrund{
	background:url(../media/hochzeit.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item.video .hintergrund{
	background:url(../media/video.jpg) no-repeat center center;
	background-size: cover;
}
.portfolio ul li.portfolio_item a{
	position: absolute;
	width: 16.66666666666%;
	height:  25%;
	height: calc(25% - 2px);
	display: flex; 
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: nowrap;
/* 	align-content: flex-end; */
}

.portfolio ul li.portfolio_item .portfolio_kat{
	z-index: 2;
}

.portfolio ul li.portfolio_item h3{
	color: #ff0;
	text-transform: uppercase;
	font-weight: 400;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: .1em;
	font-size: 1.1em;
	margin-bottom: 32px;
}


.portfolio ul li.portfolio_item .read_more{
	z-index: 2;
	width: 100%;
	text-align: right;
}


/* incl.portfolio-video */

.videoContainer{
	margin: 44px 0 122px 0;
	display: flex;
    justify-content: center;
    width: 100%;
    flex-wrap: wrap;
	justify-content: space-between;
align-items: center	
}
.videoItem{
	padding: 44px;
	height: 266px

}
.videoItem iframe{
margin-bottom: 8px;
width: 100%;

}


.videoText{
margin-top: 1em;
}




/* ----------------------------- START Call-To-Action -----------------------------------  */ 

section.call_to_action{
	background-image: url(../img/kontakt_wouter-de-koster-218472-unsplash.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
section.call_to_action .wrapper{
	align-items: flex-start;
}
section.call_to_action .wrapper#team{
	align-items: flex-start;
	flex-wrap: wrap;
	max-width: 1280px;
	
}

section.call_to_action .wrapper#team > div.team_box{
	font-family: 'Noto Serif JP', serif;
    width: 22%;
    padding: 0;
    margin: 22px 5%;
}

.team_box{
	background: yellow;

}
.team_box img{
	width: 100%
}
.team_box .team_txt{
	padding: 11px 22px;
}
.team_box .team_txt h4{
	padding: 0;
	margin: 0;	
}
.team_box .team_txt p{
	padding: 0;
	margin: 0;	
	font-size: .9em;
}
.team_box.zurueck{
	padding: 22px !important;
}


section.call_to_action .wrapper#kontakt > div.call_to_action_box{
	font-family: 'Noto Serif JP', serif;
	width: calc(33.333333% - 44px);
	padding: 0;
}
.call_to_action_box .inner_box{
	background: yellow;
	margin: 44px;
	padding: 22px;
}
.call_to_action_box .anfrage{
	background: rgb(3, 106, 179);
	color: #fff;
}
.call_to_action_box .social{
	background: transparent;
	text-align: center;
	padding: 0;
}
.call_to_action_box .social img{
	width: 44px;
	height: auto;
	   width: 44px;
    height: auto;
    padding: 0 4px;
}

.call_to_action_box .headline{
	font-family: 'Noto Serif JP', serif;
	line-height: 1.55em;
	letter-spacing: .07em;
	text-transform: uppercase;
	display: block;
	margin-bottom: 12px;
	font-weight: 400;
	font-size: 1.2em;
	width: 100%;
}

.call_to_action_box p{
	font-family: 'Noto Serif JP', serif;
	line-height: 1.2;
	}

	





/* ---------------------------------- START Partner -----------------------------------  */ 

section.partner{
	background: #f0f0f0;
	height: auto;
	min-height: 440px;
	padding-top: 88px;
	padding-bottom: 88px;
}


/*                                 SINGLE PAGE
----------------------------------------------------------------------------  */ 

section.single_page{
}

section.single_page .wrapper > div{
}

/*                                   PORTFOLIO
----------------------------------------------------------------------------  */ 
section.portfolio_page{
	align-items: flex-start;
	height: auto;
	min-height: 100vh;
}
section.portfolio_page .wrapper{
	padding-top: 88px;
}

section.portfolio_page .wrapper > div{
	width: 100%;
	padding: 0px;
}

/* mansonry-salvattore */
#grid{margin: 0 44px;}
#grid[data-columns]::before {
	content: '3 .column.size-1of3';
}

.column { float: left; }
.size-1of3 { 
	width: 33.33333%; 
	}

.size-1of3 img{
	padding: 33px
}

.lazy .text_box{
	padding: 33px;
	margin-top: 0;
}


/*                                   ANFRAGE
----------------------------------------------------------------------------  */ 


section.single_page_anfrage{
	height: auto;
	min-height: 600px;
	padding: 0;
/* 	align-items: flex-start; */
}


/*                                   IMPRESSUM DSGVO
----------------------------------------------------------------------------  */ 


section.single_page_impressum{
	height: auto;
	padding: 0;
/* 	align-items: flex-start; */
}

section.single_page_impressum .wrapper{
align-items: flex-start;
}

section.single_page_impressum .wrapper > div{
  padding: 144px 88px;
}


section.single_page_impressum h1{
	line-height: 0;
}
section.single_page_impressum p{	

	font-size: .8em;
	line-height: 1.4;

}

/*                                   sonstiges
----------------------------------------------------------------------------  */ 


section.single_page_sonstiges{
	height: auto;
	padding: 0;
	background: #fff; 
}

section.single_page_sonstiges .wrapper{
align-items: flex-start;
}

section.single_page_sonstiges .wrapper > div{
  padding: 188px 88px;
}
section.jobs .wrapper{
	margin-top: 44px
}
section.single_page_sonstiges .wrapper > div.job_box{
	padding: 44px;
	margin: 88px 88px 122px 44px;
	border: 3px solid #ff0;
}

section.single_page_sonstiges h1{
	
}
.job_box{
	background: #fff;
}
.job_box strong{
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: .2;
}
.job_box p,
.job_box ul{	
	font-size: .9em;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 1.45em;
}
.job_box ul{	
	font-size: .9em;
	list-style:  outside
}	

section.referenzen{
	background: #fbfbfb;
	height: auto;
	min-height: 720px;
	padding-top: 88px;
	padding-bottom: 88px;
}

section.referenzen .wrapper div{
	text-align: center;
}
section.referenzen .wrapper div:first-child{
	text-align: justify;
	font-size: .95em;
	
}

section.referenzen .wrapper{
align-items: center;
}
section.referenzen span.headline1{
margin-bottom: 5em
}
section.referenzen h1{
padding-right: 16%
}





/*     div / box / conteiner
   ========================================================================== */
.col50prozent {
	height: 100%;
	width: 50%;
	background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.text_box{
	margin-top: -32px;
}

.videoContainer .text_box{
	margin-top: 0px;
	width: 33%;
}



/* ------------------------ FOOTER ----------------------*/



footer{
	background: rgb(3, 106, 179);
	background: #100f0f;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 32px 0 52px 0;
	display: block;
}
footer .wrapper{
	display: flex;
	display: -webkit-flex;
	align-items:  flex-start;
	justify-content: center;
	width: 100%;
} 
footer .wrapper div{
	padding:44px 0 22px;
}
footer .wrapper div.logo_box{
	width: 25%;
	text-align: center;
	}
footer .wrapper div.kontakt,
footer .wrapper div.footer_nav,
footer .wrapper div.standorte{
	width: 25%;
	}

footer .wrapper div.kontakt .social_links{
	width: 100%;
	}
footer img.logo{
	width: 60%;
	max-width: 244px;
	height: auto;
	margin-top: 14px;
}

footer,
footer .headline,
footer p,
footer a{
	font-family: 'Noto Serif JP', serif;
	color: #ff0;
	font-size: .88em;
	line-height: 1.15em;
	letter-spacing: .07em;
}
footer .headline{
	text-transform: uppercase;
	display: block;
	margin-bottom: 1em;
	font-weight: 700;
	letter-spacing: .13em;
}
footer ul li a,
footer ul li a:visited{
	text-transform: uppercase;
	font-weight: 400;
	color: yellow;
}
footer ul li a.rex-current:before{
	content: '> ';
	margin-left: -11px;
}

.social_links img{
	width: 44px;
	height: auto;
	padding: 4px;
}

footer div.copyright{
	font-size: .72em;
	color: rgba(255, 255, 255, 0.7);
	width: 255px;
	position: relative;
	float: right;
	overflow: hidden;
	text-align: right;
	-webkit-transform: translateX(-44px) rotate(90deg);
	-moz-transform: translateX(-44px) rotate(90deg);
	-ms-transform: translateX(-44px) rotate(90deg);
	-o-transform: translateX(-44px) rotate(90deg);
	transform: translateX(-44px) rotate(90deg);
	-webkit-transform-origin: right bottom;
	-moz-transform-origin: right bottom;
	-ms-transform-origin: right bottom;
	transform-origin: right bottom;
}


/* EIGENSCHAFTEN / ÜBERSCHREIBEN */

 .non_padding{
	 padding: 0 !important;
 }
 
.col50prozent {
    height: 100vh;
    width: 50vw;
}

.ws_text{
	color: #fff;
}

.ausgeblendet{
	-webkit-transition: opacity 2s;
	-moz-transition: opacity 2s;
	-ms-transition: opacity 2s;
	transition: opacity 2s;
	opacity: 0;}

.eingeblendet{
	-webkit-transition: opacity 2s;
	-moz-transition: opacity 2s;
	-ms-transition: opacity 2s;
	transition: opacity 2s;
	opacity: 1;
}


/* ############################# mobile 1120 ############################## */

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

	header .logo_box{
		width: 108px;
		top: 0px;
		right: 22px;
		margin: 0px 
		}
		section .wrapper > div,
		section.single_page_sonstiges .wrapper > div {
	    padding: 88px 44px 44px 44px;
		}
		section.call_to_action .wrapper > div.call_to_action_box{
			width: calc(33.333333% -22px);
		}
		section.call_to_action .wrapper > div.call_to_action_box .inner_box{
			margin: 22px;
		}	
		section.jobs .text_box{
			
		}
	header .logo_box img{
		
	}	
			
/* 		TYPO	 */
		span.headline1{
			font-size: 1.2em;
		}
		p {
			font-size: .9em;
			margin-bottom: .5em
		}
		

}

/* ############################# mobile 1020 ############################## */

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

	section.start .wrapper_start{
		box-shadow: none;
	}
	
	section.start .headlineOuter,
	section.start .scrollBtn{
		display: none;
	}
	
	
	.mobile { display: block; }
	/* 		TYPO	 */
		span.headline1{
			font-size: 1.4em
		}
		p {
			font-size: 1em;
			margin-bottom: 1em
		}
	.mobile_selection_header{
		width: 100%;
		height: auto;
		padding: 8px;
		background: #000000;
		text-align: center;
		font-family: 'Noto Serif JP', serif;
		text-transform: uppercase;
		font-size: .8em;
		line-height: 1;
		font-weight: 400;
		color: #ca0000;
		
	}

	.col50prozent,
	
	footer div.copyright
	{
		display: none
	}
	
section .wrapper > div {
    padding: 0;
    width: 100%;
    margin-bottom: 88px
	}
	
	section,
	footer{
		position: relative;
		float: left;
		display: block;
		width: 100%;
		height: auto;
		padding: 0;
		margin: 0px 0 44px 0;
}
	section.start{
		margin: 0;
		height: 440px
	}
	
	section.start .wrapper .headline{
		font-size: 1em
		
	}
	footer .wrapper,
	section .wrapper{
		padding: 88px
	}
	.logo_box{
		width: 140px;
		float: right;
		position: relative
		}
	.wrapper .text_box,
	.wrapper .headline{
		position: relative;
		float: left;
		}	
		
	.text_box,	
	.header_inner,	
	section .wrapper,
	.wrapper,
	footer{
		display: block;
margin: 0;
    width: 100%;
	}
	
	
	/* 	aktuelles */
	
	section.aktuelles .wrapper div:nth-child(2){
/*
		column-count: 2;
		column-gap: 22px;
*/
	}
	section.aktuelles .wrapper div.white_box:nth-child(2){
 		
		}
	section.aktuelles .wrapper div.white_box {
	    min-height: 72px;
	    width: 100%;
	    margin-bottom: 32px;
	    font-size: 1em;
	    color: #000;	    
	    columns: unset;
white-space: normal
 	}
	.white_box.netzwerk,
	.white_box.shooting_mgmt,
	.white_box.film_visualisierung,
	.white_box.bild_mgmt,
	.white_box.produktfotografie,
	.white_box.werbung{
		position: relative;
		float: left;
		left: 0%;
	}	
	/* portfolio */	
	
	.portfolio ul {
	    height: auto;
	    width: 100%;
	    display: block;
	    position: relative;
	    float: left;
	}
	
	.portfolio ul li.portfolio_item {
	    width: 33.33333%;
	    height: 122px;
	    margin: 0;
	    text-align: center;
	    position: relative;
	    float: left;
	}	
	.portfolio ul li.portfolio_item a {
	    position: relative;
	    float: left;
	    width: 100%;
	    height: 100%;
	    display: block;
	}	
	.portfolio ul li.portfolio_item .hintergrund {
	    position: absolute;
	    width: 100%;
	    height: 100%;
	    -webkit-filter: saturate(.0);
	    filter: saturate(0);
	    opacity: .4;
	}
	.portfolio ul li.portfolio_item .read_more{
		display: none;
	}
	.portfolio ul li.portfolio_item h3{
		font-size: .9em;
		font-weight: 400;
		color: #000;
		letter-spacing: 0em;
		background: yellow;
		display: table-cell;
		padding: 2px 8px;
	}
	
	/* ------------------------ call to action ----------------------*/
	section.call_to_action .wrapper#kontakt > div.call_to_action_box,
	section.call_to_action .wrapper#team > div.team_box{
		width: 100%;
		margin-bottom: 0;
	}
	section.call_to_action .wrapper > div.call_to_action_box .inner_box{
			margin: 22px 0;
		}	

	/* ------------------------ partner ----------------------*/
	section.partner{
		padding-top: 0;
		margin: 0;
	}
	
	
	
	/* ------------------------ FOOTER ----------------------*/

	footer{
		margin:0;
	}


	footer .wrapper{
		display: block;
	} 
	footer .wrapper div{
		padding: 0px;
	}
	footer .wrapper div.logo_box,
	footer .wrapper div.kontakt,
	footer .wrapper div.footer_nav,
	footer .wrapper div.social_links{
		width: 100%;
		margin-bottom: 44px;
	}
	footer .wrapper div.logo_box{
		text-align: left;
	}
	footer img.logo{
		width: 50%;
		max-width: 244px;
		height: auto;
		margin-top: 14px;
	}
	footer .wrapper span.headline{
		display: block;
		width: 100%
	}
	footer ul li a.rex-current:before{
		content:  none;
		margin-left: 0px;
	}
}

/* ############################# mobile 768 ############################## */
   
@media only screen and (max-width:767px){ 
	
	.desktop{display: none}
	.mobile { display: block; }
	
	/* 		TYPO	 */
		span.headline1{
			font-size: 1em
		}
		p {
			font-size: 1em;
			margin-bottom: 1em
		}


/* 	header */
	nav,
	.col50prozent,
	footer div.copyright
	{
		display: none
	}
	

	

	section.start{
		margin: 0;
		height: 33vh;
	}
	
	section.start .wrapper .headline{
		font-size: 1.7em
		
	}
	

	
	
	
	footer .wrapper,
	section .wrapper{
		padding: 22px
	}
	.logo_box{
		width: 140px;
		float: right;
		position: relative
		}
	.wrapper .text_box,
	.wrapper .headline{
		position: relative;
		float: left;
		width: 100%;
		}	
		
	.text_box,	
	.header_inner,	
	section .wrapper,
	.wrapper,
	footer{
		display: block;
margin: 0;
    width: 100%;
	}
	
	
	/* 	aktuelles */
	section.aktuelles .white_box {
	    min-height: 72px;
	    width: 100%;
	    margin-bottom: 32px;
	    font-size: 1em;
	    color: #000;
	}
	.white_box.netzwerk,
	.white_box.shooting_mgmt,
	.white_box.film_visualisierung,
	.white_box.bild_mgmt,
	.white_box.produktfotografie,
	.white_box.werbung{
		position: relative;
		float: left;
		left: 0%;
	}	
	/* portfolio */	
	
	.portfolio ul {
	    height: auto;
	    width: 100%;
	    display: block;
	    position: relative;
	    float: left;
	}
	
	.portfolio ul li.portfolio_item {
	    width: 50%;
	    height: 122px;
	    margin: 0;
	    text-align: center;
	    position: relative;
	    float: left;
	}	
	.portfolio ul li.portfolio_item a {
	    position: relative;
	    float: left;
	    width: 100%;
	    height: 100%;
	    display: block;
	}	
	.portfolio ul li.portfolio_item .hintergrund {
	    position: absolute;
	    width: 100%;
	    height: 100%;
	    -webkit-filter: saturate(.0);
	    filter: saturate(0);
	    opacity: .4;
	}
	.portfolio ul li.portfolio_item .read_more{
		display: none;
	}
	.portfolio ul li.portfolio_item h3{
		font-size: .9em;
		font-weight: 400;
		color: #000;
		letter-spacing: 0em;
		background: yellow;
		display: table-cell;
		padding: 2px 8px;
	}
	


	
	/* ------------------------ FOOTER ----------------------*/

	footer{
		margin:0;
	}

	footer .wrapper{
		display: block;
	} 
	footer .wrapper div{
		padding: 0px;
	}
	footer .wrapper div.logo_box,
	footer .wrapper div.kontakt,
	footer .wrapper div.footer_nav,
	footer .wrapper div.social_links{
		width: 100%;
		margin-bottom: 44px;
	}
	footer .wrapper div.logo_box{
		text-align: left;
	}
	footer img.logo{
		width: 50%;
		max-width: 244px;
		height: auto;
		margin-top: 14px;
	}
	footer .wrapper span.headline{
		display: block;
		width: 100%
	}
	footer ul li a.rex-current:before{
		content:  none;
		margin-left: 0px;
	}
}

