/* generic_lib */
/* **************************** */
	
html {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}

iframe {
	max-width: 100%!important;
	border:0!important;
}



/* @group fonts */

@font-face {
    font-family: 'AkkuratLight';
    src: url('fonts/Akkurat/Akkurat-Light.eot');
    src: url('fonts/Akkurat/Akkurat-Light.eot?#iefix') format('embedded-opentype'), url('fonts/Akkurat/Akkurat-Light.woff') format('woff'), url('fonts/Akkurat/Akkurat-Light.ttf') format('truetype'), url('fonts/Akkurat/Akkurat-Light.svg#AkkuratLight') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'AkkuratLightItalic';
    src: url('fonts/Akkurat/Akkurat-Light-Italic.eot');
    src: url('fonts/Akkurat/Akkurat-Light-Italic.eot?#iefix') format('embedded-opentype'), url('fonts/Akkurat/Akkurat-Light-Italic.woff') format('woff'), url('fonts/Akkurat/Akkurat-Light-Italic.ttf') format('truetype'), url('fonts/Akkurat/Akkurat-Light-Italic.svg#AkkuratLightItalic') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'AkkuratNormal';
    src: url('fonts/Akkurat/Akkurat-Normal.eot');
    src: url('fonts/Akkurat/Akkurat-Normal.eot?#iefix') format('embedded-opentype'), url('fonts/Akkurat/Akkurat-Normal.woff') format('woff'), url('fonts/Akkurat/Akkurat-Normal.ttf') format('truetype'), url('fonts/Akkurat/Akkurat-Normal.svg#AkkuratNormal') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'AkkuratNormalItalic';
    src: url('fonts/Akkurat/Akkurat-Normal-Italic.eot');
    src: url('fonts/Akkurat/Akkurat-Normal-Italic.eot?#iefix') format('embedded-opentype'), url('fonts/Akkurat/Akkurat-Normal-Italic.woff') format('woff'), url('fonts/Akkurat/Akkurat-Normal-Italic.ttf') format('truetype'), url('fonts/Akkurat/Akkurat-Normal-Italic.svg#AkkuratNormalItalic') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'AkkuratBold';
    src: url('fonts/Akkurat/Akkurat-Bold.eot');
    src: url('fonts/Akkurat/Akkurat-Bold.eot?#iefix') format('embedded-opentype'), url('fonts/Akkurat/Akkurat-Bold.woff') format('woff'), url('fonts/Akkurat/Akkurat-Bold.ttf') format('truetype'), url('fonts/Akkurat/Akkurat-Bold.svg#AkkuratLight') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'AkkuratBoldItalic';
    src: url('fonts/Akkurat/Akkurat-Bold-Italic.eot');
    src: url('fonts/Akkurat/Akkurat-Bold-Italic.eot?#iefix') format('embedded-opentype'), url('fonts/Akkurat/Akkurat-Bold-Italic.woff') format('woff'), url('fonts/Akkurat/Akkurat-Bold-Italic.ttf') format('truetype'), url('fonts/Akkurat/Akkurat-Bold-Italic.svg#AkkuratBoldItalic') format('svg');
    font-weight: normal;
    font-style: normal;
}


/* @end */

.brand-color { color: rgb(28, 51, 56)}
.brand-hover-color { background-color: rgb(241, 196, 15)}
.brand-background-color { background-color: rgb(241, 196, 15)}


html, body {height: 100%; min-height: 100%; }


html {
    font-size: calc(16px + 8 * (100vw - 440px) / 210);
    background: rgb(25, 25, 25);

}


body {
    font-family: 'AkkuratLight';
    color: white;
    font-size: 16px;
    background: rgb(25, 25, 25);

}



/* #######################
 * #######################
 * generic ###############
 * mobile first###########
*/


svg g.active path{
/*
    fill: rgb(25, 25, 25);
    fill: red
*/
}

a,
a:focus,
a:visited {
/*     color: rgb(25, 25, 25); */
    color: inherit;
    outline: 0;
    text-decoration: none;

        
    -webkit-transition: color 0.4s ease, background 0.4s ease;
    -moz-transition: color 0.4s ease, background 0.4s ease;
    -o-transition: color 0.4s ease, background 0.4s ease;
    transition: color 0.4s ease, background 0.4s ease;
}

p a, p a:hover {

}

a:hover {
    outline: 0;
    text-decoration: none;
}

a.current, a.active, a:hover {
    color: rgba(90, 90, 90, 1);
}

::-moz-selection { background:rgb(241, 196, 15); color:rgb(25, 25, 25)}
::selection { background:rgb(241, 196, 15); color:rgb(25, 25, 25)}
:focus {outline: 0;}

::-webkit-input-placeholder {
    color: rgb(171, 171, 171);
    opacity: 1
}
:-moz-placeholder {
    color: rgb(171, 171, 171);
    opacity: 1
}
::-moz-placeholder {
    color: rgb(171, 171, 171);
    opacity: 1
}
:-ms-input-placeholder {
    color: rgb(171, 171, 171);
    opacity: 1
}


.flex {display: flex;}
.inline-flex {display: inline-flex; }
.flex-column {flex-flow: column wrap; align-content: start;  justify-content:flex-start;}
.flex-row {flex-direction: row; flex-wrap: wrap;  }

.error {color:red;}

.transition {
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out
}

.last-child p:last-child {
    margin: 0
}

.flex-container {

    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    
    
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-direction: normal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;

    -webkit-box-pack: start;
    -moz-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
       
    webkit-box-align: start;
    -moz-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start;

}
.flex-center {
    
    
    -webkit-box-pack: center!important;
    -moz-box-pack: center!important;
    -ms-flex-pack: center!important;
    -webkit-justify-content: center!important;
    justify-content: center!important;
    
    webkit-box-align: center!important;
    -moz-box-align: center!important;
    -ms-flex-align: center!important;
    -webkit-align-items: center!important;
    align-items: center!important;
    
}
.nowrap, .wrap  { 
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: none;
    flex-wrap: nowrap;
}
.upper {
    text-transform: uppercase
}


/* #######################
 * #######################
 * grid ##################
 * #######################
*/


header {
    overflow-y: scroll;
    padding: 2vh 2vw;
    height: 100%; min-height: 100%;

}

header img,
header object,
header svg {
    width: 100%;
    height:auto;
    display: block;
}

main {
    overflow: hidden;
    margin:0;
    padding: 0;
}

.works {
    position: relative;
    margin: 0;
    overflow: hidden;
    height: 100%; min-height: 100%;
}


.works__caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc( 100% - 80px);
    padding: 20px;
    font-family: 'AkkuratLight';
}

.works__caption .inner {
    color:white;
    background: rgba(0, 0, 0, 0.6);
    padding: 20px;
}

.works__caption .caption__title,
.works__caption .caption__description {
    font-weight: normal;
    font-size: inherit!important;
}

.works__caption .caption__title {
    font-weight: normal;
    font-size: inherit!important;
    font-family: 'AkkuratBold';
}

#scrollToTopButton {
    z-index: 9999;
    bottom: 3vh;
    right: calc(50% - 3vw);
    position: absolute;
    display: none;
    
}

.scrollToTop {
    color: white;
    font-size: 1rem;
    width: 1rem;
    height: 1rem;
    background: rgba(25, 25, 25,0.1);
    border: none;
    outline: none;
    margin: 0;
    padding: 0;
}

.scrollToTop > span {
    cursor: pointer;
    padding-top: 0.2rem;
}




/* ###################### */
/* #### typography ###### */
/* ###################### */



figure {
	margin:0
}


audio {
	width:100%;
}

sup { font-size: 0.6em; }

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 2em 0 1em 0;
    padding: 0;
    line-height: 1.1;
    letter-spacing: .01em;
    font-size: 24px;
    font-style: normal;   
    font-family: "Helvetica Neue Regular", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    font-weight: 300
}

h4,
h5,
h6 {
    font-size: 16px;
}

h4 {
    font-weight: 700;
}

h5,
h6 {
    margin: 0;
}

blockquote {
	display: grid;
	height: 50vh;
	margin: 0;
	place-items: center center;
}

blockquote p {
	margin:0;
	padding-top: 1em;

	font-size: 7.4vw;
	line-height: 7.4vw;
	text-align: center;
	font-weight: 700;
}


#page-subtitle h1, #page-subtitle h2 {
    margin: 0;
}


hr {
    border-color: rgb(35, 31, 32);
}


p {
    margin: 0 0 16px;
    font-weight: 300;
}

p strong {
    font-weight: 700
}

p:empty {
   display: none;
}


ol, ul {

margin: 1em 0;
padding: 0  0 0 40px;
}


ul {

margin: 1em 0;
padding: 0 0 0 15px;
}

input,
textarea {
    font-family: "Helvetica Neue Regular", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    font-weight: 300;
    outline: 0
}

/* table related */
table {
	width:100%;
	border-collapse: collapse;
	margin: 0 0 1.8em 0;
}


caption, thead td, thead th, tfoot td, tfoot th {

	padding: 4px;
	padding-bottom: 6px;
	text-align: left;
	vertical-align: middle;
	border: none;
	font-weight:bold;
	border-bottom: 1px solid rgb(107, 108, 112)
}

table.contenttable--borderless caption, table.contenttable--borderless thead td, table.contenttable--borderless thead th, table.contenttable--borderless tfoot td, table.contenttable--borderless tfoot th {
	border:0;
	padding:0;
}

td, th {
	text-align: left;
	vertical-align: top;
	padding: 8px 4px;
	border-bottom: 1px solid rgb(107, 108, 112)
}

table.contenttable--borderless td, table.contenttable--borderless th {
	border:0;
	padding:0;
}

td:empty {
  visibility: hidden;
}

td ul {
	margin: 2em 0 1em 0;
}

dl {
	
}

dt {
	padding: 0.7em 0;
	font-weight: 700;
}

dd {
	margin:0;
	padding: 0.3em 0;
	border-top: 1px solid rgb(107, 108, 112);
}


dd p { margin-bottom: 0px; }



.text-justify {text-align: justify}
.text-right {text-align: right}
.text-center {text-align: center}


.min-vw-100{min-width:100vw !important}.min-vh-100{min-height:100vh !important}.vw-100{width:100vw !important}.vh-100{height:100vh !important}

.m-auto{margin:auto !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.m-3{margin:1rem !important}.mt-3{margin-top:1rem !important}.mr-3{margin-right:1rem !important}.mb-3{margin-bottom:1rem !important}.ml-3{margin-left:1rem !important}.m-4{margin:1.5rem !important}.mt-4{margin-top:1.5rem !important}.mr-4{margin-right:1.5rem !important}.mb-4{margin-bottom:1.5rem !important}.ml-4{margin-left:1.5rem !important}.m-5{margin:3rem !important}.mt-5{margin-top:3rem !important}.mr-5{margin-right:3rem !important}.mb-5{margin-bottom:3rem !important}.ml-5{margin-left:3rem !important}


.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.p-3{padding:1rem !important}.pt-3{padding-top:1rem !important}.pr-3{padding-right:1rem !important}.pb-3{padding-bottom:1rem !important}.pl-3{padding-left:1rem !important}.p-4{padding:1.5rem !important}.pt-4{padding-top:1.5rem !important}.pr-4{padding-right:1.5rem !important}.pb-4{padding-bottom:1.5rem !important}.pl-4{padding-left:1.5rem !important}.p-5{padding:3rem !important}.pt-5{padding-top:3rem !important}.pr-5{padding-right:3rem !important}.pb-5{padding-bottom:3rem !important}.pl-5{padding-left:3rem !important}









/* ###################### */
/* ####### typo3 ######## */
/* ###################### */




.ce-bullets p { margin: 0!important; }

.ce-bullets {
	width: 100%;
	margin: 0;
    display: grid;
    grid-auto-flow: column;
}

.ce-bullets dt {
    grid-column: 1;
}

.ce-bullets dt,
.ce-bullets dd {
	border-bottom: 1px solid rgb(107, 108, 112);
	padding: 0.3em 0;
	margin: 0!important;
}



/* TYPO3 CE */

.frame-space-before-extra-small {
	margin-top: 0.2em!important
}

.frame-space-before-small {
	margin-top: 0.5em!important
}

.frame-space-before-medium {
	margin-top: 1em!important
}

.frame-space-before-large {
	margin-top: 2em!important
}

.frame-space-before-extra-large {
	margin-top: 4em!important
}



.frame-space-after-extra-small {
	margin-bottom: 0.2em!important
}

.frame-space-after-small {
	margin-bottom: 0.5em!important
}

.frame-space-after-medium {
	margin-bottom: 1em!important
}

.frame-space-after-large {
	margin-bottom: 2em!important
}

.frame-space-after-extra-large {
	margin-bottom: 4em!important
}



.contObj {
	padding-bottom: 80px;
	padding-left: 0;
	padding-right: 0;
}

.contObj + .contObj {
	border-top: 1px solid rgb(107, 108, 112);
    padding-top: 40px;
}

.vegas-container .contObj {
    border:0!important;
}

.contObj p:last-child {
/* 	margin-bottom:0; */
}

figcaption h4, figcaption p {
	
}


figcaption h4 {
    margin: 7px 0 0 0;
    line-height: inherit!important;
    letter-spacing: inherit!important;
    font-size: inherit!important;
    font-weight: 700;
}

figcaption p {
	margin: 7px 0 16px 0!important;
}


figcaption h4 + p {
	margin-top:0!important;
}



.ce-bodytext {
    float: none;
    width: 100%;
    margin: 0 0 10px;
    
    /* allow overflowing tables to be scrolled */
    overflow-x: scroll;
}

.text-justify {text-align: left!important} /* no justified—text on narrow screens */


.ce-bodytext {
    float: none;
    width: 100%;
    margin: 0 0 10px;
    
    /* allow overflowing tables to be scrolled */
    overflow-x: scroll;
}

.text-justify {text-align: left!important} /* no justified—text on narrow screens */


.ce-gallery {
    float: none;
    width: auto!important;
}

.ce-gallery .ce-column {
    width:100%!important;
    float:none!important;
    margin-bottom: 40px;
    
}

.ce-gallery .ce-row {
    margin:0 0 0px 0;
}

.ce-gallery .clearfix:before,
.ce-gallery .clearfix:after {
    content: "";
    display: none;
}
    
    

.ce-gallery {
    float: none;
    width: auto!important;
}

.ce-gallery .ce-column {
    width:100%!important;
    float:none!important;
    margin-bottom: 40px;
    
}

.ce-gallery .ce-row {
    margin:0 0 0px 0;
}

.ce-gallery .clearfix:before,
.ce-gallery .clearfix:after {
    content: "";
    display: none;
}
    
.left {
    float: none;
}
.right {
    float: none;
}


.ce-bodytext.left, .ce-gallery.left {
    float: none;
    width: auto!important;
    border-top: none
}
.ce-bodytext.right, .ce-bodytext.right.ident, .ce-gallery.right, .ce-bodytext.center.ident{
    float: none;
    width: auto!important;
    text-align: left;
}

.ce-bodytext a {
    
    text-decoration: underline;
    
    text-decoration-color: inherit;
    text-decoration-thickness: .06em;
    text-underline-offset: 2px;

    letter-spacing: normal;
}

.ce-bodytext a.download {
    text-decoration: none!important
}

.ce-bodytext a::before, .ce-bodytext a::after,
.ce-bullets a::before, .ce-bullets a::after {

	font-family: 'icomoon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: inherit;
	
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	
	margin:0 4px 0 8px;

    /* anchor's text-decoration is always applied to pseudo-selectors 
    /* display inline-block seems to help */
    display: inline-block;
    text-decoration: none!important;
    border:0!important;
    background: none!important;
		
}

.ce-bodytext  a[href$='.pdf']::after { content: '\eadf'; }

.ce-bodytext  a[href$='.xls']::after,
.ce-bodytext  a[href$='.xlsx']::after,
.ce-bodytext  a[href$='.doc']::after,
.ce-bodytext  a[href$='.docx']::after{ content: '\e924';  }



.ce-bullets  a[href$='.pdf']::after { content: '\eadf';  float:right;}

.ce-bullets  a[href$='.xls']::after,
.ce-bullets  a[href$='.xlsx']::after,
.ce-bullets  a[href$='.doc']::after,
.ce-bullets  a[href$='.docx']::after { content: '\e924';  float:right;}

/* .ce-bullets a[href^='http']:after { content: '\e91c';  color: rgb(109, 122, 116); float:right;} */

	
.ce-menu {
	list-style-type: none;
}
.ce-menu li {
	list-style-type: none;
	padding: 0;
	margin: 0
}

.ce-bodytext ul  {
	margin: 2em 0;
/* 	border-top: 1px solid rgb(107, 108, 112); */
	list-style-type: none;
}

.ce-bodytext ul li {
	list-style-type: none;
	padding: 0;
	margin: 10px 0px 0px 0px
}

.ce-bodytext ul li a {
	list-style-type: none;
	text-decoration: none!important;
	display: inline-block;
	padding: 0 8px 8px 8px;
	border-bottom: 1px solid rgb(107, 108, 112);
	
	
}






/* ###### form ####### */

form > legend {
    margin-bottom: 3em;
}

.form-group {
    font-weight: inherit;
    line-height: inherit;
    padding: 1em 0;
}


/* # generic, appearance # */

.form-group input[type="text"], 
.form-group input[type="password"], 
.form-group input.text, 
.form-group input.title, 
.form-group textarea, 
.form-group select {

    padding: 0.9em 1em;
    width: 100%;
}

.form-group .form-check {
    margin: 1em 0;
    margin-right: 1em;
}


textarea,
.form-group :required:not([type='checkbox']) {
    background: rgba(255, 255, 255, 0.1)!important;
}



/* ###### specific ###### */


/* ###################### */
/* ####### label ######## */
/* ###################### */

.form-group .control-label {
    display: block;
}

.form-group .control-label.type-text {
    display: none;
}


.form-group .control-label.type-radiobutton,
.form-group .control-label.type-multicheckbox,
.form-group .control-label.type-textarea,
.form-group .control-label.type-singleselect {

    margin: 1em 0;
}




/* ###################### */
/* ####### radio ######## */
/* ###################### */

.form-group .radio {
    display: inline-block
}

.form-group input[type="radio"] {
    
    -webkit-appearance: none;
    -moz-appearance: none;
    -o-appearance: none;
    appearance:none;
    
    width: 20px;
    height:20px;
    
    border-radius: 10px;
    background: white;
    border: 1px solid rgb(35, 31, 32);

}

.form-group input[type="radio"]:checked {
    background: rgb(35, 31, 32);
    background: rgba(0, 0, 0, 0.1);
    background: rgb(241, 196, 15);
    
    border: 2px solid white;
    /*  border: 1px solid rgb(35, 31, 32); */

}

.form-group .radio .radio-btn-group {
    display: table
}
.form-group .radio .radiobutton-option {
    display: table-cell;
    vertical-align: middle;
    padding: 0 1.5em 0 0.5em;
}



/* ###################### */
/* #### input, text ##### */
/* ###################### */


.form-group input[type="password"], 
.form-group input[type="search"], 
.form-group input[type="text"]{
    
    
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    -o-appearance: textfield;
    appearance:textfield;
    
    
    box-shadow: none!important;
    color: inherit;
    background-color: white;
    border-style: solid;

    border-width: 0 0 1px 0;
    border-color: rgb(35, 31, 32);

}



/* ###################### */
/* ##### textarea ####### */
/* ###################### */


.form-group textarea {
    min-height: 15em;
    
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    -o-appearance: textfield;
    appearance:textfield;

    box-shadow: none!important;
    color: inherit;
    background-color: white;
    border: 1px solid rgb(35, 31, 32);
}


    .form-group select {
    -webkit-appearance: none;
    -moz-appearance: none;
    -o-appearance: none;
    appearance:none;
    
    outline: 0;
    box-shadow: none!important;
    background-color: rgb(241, 196, 15);
    background-color: rgba(0, 0, 0, 0.1);
    border:0;
    
    line-height: 2em;
    
    padding: 0.5em 1em;
    
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 2ex;
    background-origin: content-box;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICBpZD0ic3ZnMiIKICAgdmlld0JveD0iMCAwIDM1Ljk3MDk4MyAyMy4wOTE1MTgiCiAgIGhlaWdodD0iNi41MTY5Mzk2bW0iCiAgIHdpZHRoPSIxMC4xNTE4MTFtbSI+CiAgPGRlZnMKICAgICBpZD0iZGVmczQiIC8+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhNyI+CiAgICA8cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+PC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+CiAgPGcKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjAyLjAxNDUxLC00MDcuMTIyMjUpIgogICAgIGlkPSJsYXllcjEiPgogICAgPHRleHQKICAgICAgIGlkPSJ0ZXh0MzMzNiIKICAgICAgIHk9IjYyOS41MDUwNyIKICAgICAgIHg9IjI5MS40Mjg1NiIKICAgICAgIHN0eWxlPSJmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjQwcHg7bGluZS1oZWlnaHQ6MTI1JTtmb250LWZhbWlseTpzYW5zLXNlcmlmO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O2ZpbGw6IzAwMDAwMDtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6MXB4O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1vcGFjaXR5OjEiCiAgICAgICB4bWw6c3BhY2U9InByZXNlcnZlIj48dHNwYW4KICAgICAgICAgeT0iNjI5LjUwNTA3IgogICAgICAgICB4PSIyOTEuNDI4NTYiCiAgICAgICAgIGlkPSJ0c3BhbjMzMzgiPjwvdHNwYW4+PC90ZXh0PgogICAgPGcKICAgICAgIGlkPSJ0ZXh0MzM0MCIKICAgICAgIHN0eWxlPSJmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0cmV0Y2g6bm9ybWFsO2ZvbnQtc2l6ZTo0MHB4O2xpbmUtaGVpZ2h0OjEyNSU7Zm9udC1mYW1pbHk6Rm9udEF3ZXNvbWU7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpGb250QXdlc29tZTtsZXR0ZXItc3BhY2luZzowcHg7d29yZC1zcGFjaW5nOjBweDtmaWxsOiMwMDAwMDA7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjFweDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2Utb3BhY2l0eToxIj4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9InBhdGgzMzQ1IgogICAgICAgICBzdHlsZT0iZmlsbDojMzMzMzMzO2ZpbGwtb3BhY2l0eToxIgogICAgICAgICBkPSJtIDIzNy41NjY5Niw0MTMuMjU1MDcgYyAwLjU1ODA0LC0wLjU1ODA0IDAuNTU4MDQsLTEuNDczMjIgMCwtMi4wMzEyNSBsIC0zLjcwNTM1LC0zLjY4MzA0IGMgLTAuNTU4MDQsLTAuNTU4MDQgLTEuNDUwOSwtMC41NTgwNCAtMi4wMDg5MywwIEwgMjIwLDQxOS4zOTM0NiAyMDguMTQ3MzIsNDA3LjU0MDc4IGMgLTAuNTU4MDMsLTAuNTU4MDQgLTEuNDUwODksLTAuNTU4MDQgLTIuMDA4OTMsMCBsIC0zLjcwNTM1LDMuNjgzMDQgYyAtMC41NTgwNCwwLjU1ODAzIC0wLjU1ODA0LDEuNDczMjEgMCwyLjAzMTI1IGwgMTYuNTYyNSwxNi41NDAxNyBjIDAuNTU4MDMsMC41NTgwNCAxLjQ1MDg5LDAuNTU4MDQgMi4wMDg5MiwwIGwgMTYuNTYyNSwtMTYuNTQwMTcgeiIgLz4KICAgIDwvZz4KICA8L2c+Cjwvc3ZnPgo=");
    
    
}

.form-group select::-ms-expand {
    display: none; /* Hide the default arrow in Internet Explorer 10 and Internet Explorer 11 */
}


.form-group select:active,
.form-group select:hover {
    background-color: rgba(0, 0, 0, 0.1);
    cursor: auto;
}


.form-group select:-moz-focusring {
    color:transparent!important;
    text-shadow: 0 0 0 white;
}

.form-group select:focus {
    outline:none!important;
    background-color: rgba(0, 0, 0, 0.8);
    color:white;
    cursor: auto;
}

.form-group select:focus option{
/*     color: rgb(241, 196, 15); */
    color: inherit;
    font-size: inherit;
    display:list-item
}

.form-navigation button[type="submit"],
.form-navigation button[type="button"] {
    font: 1em/1.5em "Helvetica Neue", Helvetica, sans-serif !important;
    margin: 1em 0;
    cursor: pointer;
    padding: 0.66667em 3em;
    background: rgb(35, 31, 32);
    border: 1px solid rgb(35, 31, 32);
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
    color: white;
    
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.form-navigation button[type="submit"]:hover,
.form-navigation button[type="button"]:hover {
    background: rgba(82, 67, 11, 1);

}







/* ###################### */
/* ###### checkbox ###### */
/* ###################### */


.form-group .form-check > *{
    cursor: pointer!important;
}


.form-group input[type="checkbox"]{
        
    -webkit-appearance: none;
    -moz-appearance: none;
    -o-appearance: none;
    appearance:none;
    
/*
    pointer-events: none;
    user-select: none;
*/
    outline: 0;
    box-shadow: none!important;

    position: absolute;
    left: 0;
    top:-7px; /* Adjust visually (box aligns vertical to option text) */
    
    width: 32px !important;
    height: 32px !important;

    border: 1px solid rgb(255, 255, 255);
   
}

.form-group input[type="checkbox"] + span {
    
    display: inline-block;
    margin: 0 0 0 60px;
    line-height: 32px;
}

.form-group label.form-check-label {
    
    position: relative;
    user-select: none;
}

.form-group label.form-check-label:after {

    position: absolute;
    left: 0;
    top: 0;
    
    width: 30px;
    height: 30px;
    
    border: 0;
}


.form-group input[type="checkbox"]:checked{

    background: #fff url('data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHdpZHRoPSIzMHB4IiBoZWlnaHQ9IjMwcHgiIHZpZXdCb3g9IjAgMCAzMCAzMCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzAgMzAiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8cG9seWdvbiBmaWxsPSIjMUQxRDFCIiBwb2ludHM9IjI1LjQyNCw1LjI1MiAyNC43NDgsNC41NzYgMTUsMTQuMzI0IDUuMjUyLDQuNTc3IDQuNTc2LDUuMjUyIDE0LjMyNCwxNSA0LjU3NiwyNC43NDggNS4yNTIsMjUuNDI0IAoJMTUsMTUuNjc2IDI0Ljc0OCwyNS40MjUgMjUuNDI0LDI0Ljc0OSAxNS42NzYsMTUgIi8+Cjwvc3ZnPg==')!important;

} 


.form-group input[type="checkbox"]:checked{
    /*
    outline:3px solid #fff;
    outline-offset: -3px;
    */
}







/* ==========================================================================
   VEGAS
   ========================================================================== */




#vegas-helper {
	text-align: center;
	position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 36px;
    z-index: 2000;
    background: transparent;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out
	
}

#vegas-helper ul,
#vegas-helper li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#vegas-helper li {
	display: inline-block;
}

#vegas-helper li a{
	color: rgba(255, 255, 255, 0.5);
	padding: 0 4px;
}












@media screen 
and (min-device-width : 320px) 
and (max-device-width : 667px) 
and (orientation : portrait) { 


}


@media screen 
and (min-device-width : 320px) 
and (max-device-width : 667px) 
and (orientation : landscape) { 

    
    #scrollToTopButton {

        bottom: 15vh;

    }

}









/* #######################
 * > 414px (iOS plus) ####
*/

@media screen and (min-width:415px) {
    

    .works__caption {
        width: calc( 100% - 100px);
    }
    
    .works__caption,
    .works__caption .inner {
        padding: 50px;
    }

}



@media screen and (min-width:50em) {

	.ce-gallery.right {
		width: 579px;
	}
	.ce-bodytext.right {
		width: 571px;
	}
	
	.ce-gallery .ce-column {
		padding: 0 4px;
		
	}
	
		
	.ce-gallery img {
	    max-width: 100%;
	    height: auto!important;
	}
	
	.ce-row {
		margin-bottom: 8px;
	}
	
	
	.ce-gallery[data-ce-columns="1"] .ce-row {
		padding: 0 4px;
	}
	
	
	/* 2 Images in a row */
	.ce-gallery[data-ce-columns="2"] .ce-column {
		width:50%;
		float:left;
	}
	
	/* 3 Images in a row */
	.ce-gallery[data-ce-columns="3"] .ce-column {
		width:33.3333%;
		float:left;
	}
	
	/* 4 Images in a row */
	.ce-gallery[data-ce-columns="4"] .ce-column {
		width:25%;
		float:left;
	}
	
	
	
	.form-group input[type="text"], 
	.form-group input[type="password"], 
	.form-group input.text, 
	.form-group input.title, 
	.form-group textarea, 
	.form-group select {
	
	    width: 80%;
	}


}




/* #######################
 * Desktop ###############
*/
@media screen and (min-width:70em) {


    .nowrap  { 
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: none;
        flex-wrap: nowrap;
    }

    .wrap { 
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    


    .works__caption {
        width: 60%;
    }

    #scrollToTopButton {
        bottom: 30px;
        right: calc(50% - 22px);
    }
    
    .scrollToTop > span {
        padding-top: 0.3rem;
    }
    
    
    
    
    
    
    
    
    
    

    
    
    
    .left {
	    float: left;
	    position: relative;
	}
	.right {
	    float: right;
	    position: relative;
	}
	
	
	.ce-gallery, .ce-bodytext {
	    font-size: inherit;
	    line-height: inherit;
	}
	.ce-gallery {
	    margin: 0 -4px;
	}
	.ce-bodytext img,
	.news-single img {
		max-width: 100%;
		height:auto;
	}
	
	.ce-gallery.right {
		width: 755px;
	}
	.ce-bodytext.right {
		width: 747px;
	    margin: 0 0 0px;
	}
	
	.ce-bodytext.right.ident {
		width: 444px;
	}
	
	.ce-bodytext.center.ident {
		width: 906px;
	}
	
	.ce-gallery.left {
		width: 452px;
		margin-top: 4px;
	}
	.ce-bodytext.left {
		width: 444px;
	    border-top: 1px solid rgb(107, 108, 112);
	    padding: 13px 0 0
	}
	
	
	
	

	
	






}











/* EXT: dp_cookieconsent     */

.cc-revoke,
.cc-window {

 font-family:inherit!important;
 font-size:inherit!important;
 line-height:inherit!important;
 font-weight:inherit!important;

}

.cc-btn:hover, .cc-btn:focus {
    background-color: rgba(241, 196, 15, 0.8)!important;
}

.cc-link {
    padding: 0;
    text-decoration: none;
}

.cc-link::before {
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: inherit;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    
    content: '\ea3c';
    color: rgb(107, 108, 112);
    color: inherit;
    font-size: 80%;
    padding-right: 5px;

}






/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

#browserupgrade {
    
    position: fixed;
    width: 100%;
    left:0;
    top:0;
    display: none;
    background: #222;
    color: white;
    z-index: 9999;
    margin: 0;
    padding: 0.4rem 40px;
    font-size: 0.8rem;
    cursor: pointer;
    
}

#browserupgrade a {
    color: white;
    box-shadow: inset 0 -0.5px rgba(255, 255, 255, 0.8);
    -webkit-box-shadow: inset 0 -1px rgba(255, 255, 255, 0.8);
    -moz-box-shadow: inset 0 -0.5px rgba(255, 255, 255, 0.8);
    -o-box-shadow: inset 0 -0.5px rgba(255, 255, 255, 0.8);

}

/* USE modernizr to detect vh enabled 
iOS does deliver false negativ results wher it shouldn't (.no-cssvhunit), 
that's why calcviewportunits is used here
*/
.no-calcviewportunits #browserupgrade.generic, 
#browserupgrade.IE {
    display: block; 
}

.scrolled #browserupgrade {
    display: none!important;    
}


@media screen and (max-width: 320px) {
    
    /* iPhone 4s and similar */
    .no-calcviewportunits #browserupgrade {
        bottom:0;
        top:auto;
    }
}






@supports (-webkit-overflow-scrolling: touch) {
    
    /* IOS will zoom, unless you use 16px on the input */
    
    select, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"] { font-size: 16px; }


    /* Stop iOS styling your input fields and buttons */
    
    textarea,
    input.text,
    input[type="text"],
    input[type="button"],
    input[type="submit"],
    .input-checkbox {
        -webkit-appearance: none;
        border-radius: 0;
    }


}







