@charset "utf-8";

* {outline:none!important;}

html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

#page {
	padding: 0;
	max-width: 100%;
}
main {
	max-width: 1600px;
	margin: auto;
}
#header {
	padding: 0 33px 33px;
	margin: 0 auto;
	max-width: 1600px;
}

body {
    background: #f5f5f5;
    color:#000;
    font-size:18px;
}

* {
    -moz-box-sizing: border-box; 
    -webkit-box-sizing: border-box; 
    box-sizing: border-box;
}

iframe {
	max-width: 100%;
}

header, main, footer {
    width:100%;
    display:table;
    outline:1px dashed red;
}

header {
    height: 80px;
    background:#fff;
    padding: 0;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    z-index: 100;
    box-shadow:rgba(0, 0, 0, 0.3) 0 0 20px;
}

.header-space {
    height: 80px;
}

.logo {
    border-top: 4px solid #FFFFFF;
    padding-top: 10px;
    position: absolute;
    left: 50px;
    top: 10px;
    z-index: 2000;
}

.logo img {width:145px;}

main {
    display:block;
    line-height:1.3em;
}
main > div {
	max-width:1280px;
    margin:0 auto;
}

.bg-wrap {
	max-width: 100%;
}
.bg-wrap > div {
	max-width:1280px;
    margin:0 auto;
}


/*Slider*/
#header.home{
	position: relative;
	z-index: 1;
	height: 95px;
}
#header.home #title a, #header.home #main_navi li a, #header.home #burgerNavi ul li a{
	color: #fff;
}
#header.home #burgerMenu img {
	filter: invert(100%);
}

.home-slider {
    position: relative;
    height:calc(100vh);
	margin-top: -95px;
}

.home-slider .slide {
    position: relative;
    height:calc(100vh);
	overflow: hidden;
}

.home-slider .slide .slide-img {
    height: 100vh;
    opacity: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    -ms-transition: opacity 1.5s ease;
    -webkit-transition: opacity 1.5s ease;
    -moz-transition: opacity 1.5s ease;
    transition: opacity 1.5s ease;
}

.home-slider .slide .slide-img:first-child {
    opacity: 1;
}

.home-slider .slide .slide-img_kenburn {
    width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
}
.home-slider .slide .slide-img_kenburn img {
    width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: transform 2.5s ease-out 0s;
}
.home-slider .slide .slide-img_kenburn.zoom img {
	transform: translate3d(-50%, -50%, 0px) scale(1.05);
}

.home-slider .slide .slide-content {
    width: 100%;
    max-width: 924px;
    background: rgba(255, 255, 255, 0.75);
    font-size: 24px;
    text-align: center;
    padding: 15px 30px;
    position: absolute;
    left: 50%;
    bottom: 55px;
    z-index: 5;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

.home-slider .prev-btn { margin-top: -18px; position: absolute; left: 44px; top: 50%; z-index: 2; }
.home-slider .next-btn { margin-top: -18px; position: absolute; right: 44px; top: 50%; z-index: 2; }

.home-slider .prev-btn:before,
.home-slider .next-btn:before,
.home-slider .down-btn:before{
    font-family: 'slick';
    font-size: 40px;
    font-weight:bold;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding:0 3px 14px;
    text-shadow: 2px 2px 4px #000000;
    top:40%;
    position:absolute;
}
.home-slider .prev-btn:before {
    content: ' ⟨ ';
}
.home-slider .next-btn:before {
    content: ' ⟩ ';
}

.home-slider .down-btn {
	position: absolute; 
	left: 50%; 
	bottom: 50px; 
	z-index: 2; 
	display: none;
}
.home-slider .down-btn:before {
    content: ' ⟩ ';
    transform: rotate(90deg);
    background-color:transparent;
    text-shadow: 2px -2px 4px #000000;
}

img {
    border:none;
    width:100%;
    height:auto;
    display:table;
}

p {
    margin:0 0 15px;
	max-width: unset;
}

.center {
    width:100%;
    text-align:center;
}

.row, .col-25, .col-33, .col-50, .client-item, .masonry-item {
    outline:1px dotted blue;
    padding:0 20px;
}

.row, .row-headline {
    width:100%;
    outline:1px solid fuchsia;
}

.row {
    margin-bottom:50px;
}

.row-headline {
    padding:0 20px;
}

.row::after, .wrap-2col::after, .wrap-3col::after, .clients-wrap::after, .project-wrap::after {
    display: block;
    content: " ";
    clear: both;
    margin-bottom:50px;
}

footer .wrap-3col::after {
    margin-bottom:0;
}

/*TEXT*/
.text-large {
    width:100%;
    text-align:center;
    padding:0 10%;
    font-size:20px;
    line-height:1.3em;
}

/*SPACE*/
.space-80, .space-50 {
    display:block;
    width:100%;
    height:80px;
}

.space-50 {
    height:50px;
}

/*COLs*/
.col-33, .col-25, .col-50, .col-66, .client-item {
    float:left;
}

.col-33, .masonry-item {
    width:33.33%;
}
.masonry-item {
	display: none;
}

.references .masonry-item {
    width:50%;
	display: none;
}

.team .col-33 {
    margin-bottom:30px;
}

.col-50 {
    width:50%;
}

.col-66 {
    width:66.66%;
}

.col-25 {
    width: 25%;
}

.awards.mobile, .la-btn {
	display: none;
}
	
.awards .col-50 {
    padding-right:12%;
}

.col-centered {
    width: 300px;
    margin: 0 auto;
}

.date {
    font-size:10px;
}

.news .date {
    margin:10px 0 0;
}

.client-item {
    width:14.21%;
    height: 370px;
    display: table;
}

.client-item-img {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.client-item-img img {
    max-width: 80%;
    max-height: 80%;
    margin:0 auto;
}

.clear {
    clear: both;
    display: block;
    height: 0;
    overflow: hidden;
}

.benefits-wrap {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

.benefits-item {
    border:1px solid #808080;
    color:#808080;
    font-size:20px;
    line-height:1.4em;
    padding: 20px 5%;
    display: flex;
    align-items: center;
    margin-bottom:40px;
}

.benefits-item p {
    text-align:center;
    width:100%;
    margin:0;
}

.benefits-3col .benefits-item {
    width:32.1%;
}

.benefits-2col .benefits-item {
    width:49.1%;
}

.back-link-black {
    font-size:12px;
    color:#000!important;
    width:100%;
    display:block;
    padding:20px;
}

.project-text {
    line-height:1.5em;
    padding-right:4%;
    float:left;
}

.project-images {
    float:right;
}

.awards-wrap ul li  {
    list-style-type:none;
    display:table;
    font-size:12px;
    margin-bottom:10px;
}

.awards-wrap ul li img {
    max-width:30px;
    float:left;
    margin-right:10px;
}

.project-wrap .slider-wrap {
    padding:0 20px 0 0;
}

.graphics-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}

.graphic-item {
    /*width:22%;*/
    margin:0 3% 20px 0;
}

.graphic-item img {
    opacity:0.5;
    transition-property:all .2s linear 0s;
    -moz-transition:all .2s linear 0s;
    -webkit-transition:all .2s linear 0s;
    -o-transition:all .2s linear 0s;
	/*max-width: 260px;*/
    width:auto;
	max-height: 100px;
	object-fit: contain;	  
}

.graphic-item:hover img {
    opacity:1;
}

.graphic-caption {
    width:100%;
    /*display:table;*/
    text-align:center;
    padding:10px 0 5px;
    color:#000;
    display:none;
}

.masonry-item {
    float:none;
    margin-bottom:30px;
}

#footer {
	height: 64px;
}
footer {
    background:#fff;
    padding:30px 0;
}

footer ul {
    margin-bottom:30px;
}

footer ul li {
    list-style-type:none;
    padding:2px 0;
}

.footer-wrap {
    display:block;
    /*padding:0px;
    max-width:1024px;*/
    padding:0 20px;
    max-width:1280px;
    margin:0 auto;
    line-height:1.3em;
    outline:1px dashed black;
}

.copy {
    font-size:12px;
}

.show-mob {
    display:none;
}


body.single-blog footer {
    display:none;
}

body.single-blog .project-detail {
    padding-right:20px;
    padding-left:20px;
}

.nr-select-none {
-webkit-user-select: none;  /* Chrome / Safari */
-moz-user-select: none; /* Firefox*/
-ms-user-select: none; /* IE 10+ */
user-select: none; /* Funktion */
color:#000!important;
}
    
/*HEADLINES*/
h2, h3, h5 {
    
}

h1, h2, h3, h4, h5, h6 {
    margin:0;
    display:table;
    line-height:1.3em;
}

h1 {
    font-size:40px;
}

h2 {
    font-size:30px;
    margin-bottom:50px;
}

h3 {
    font-size:20px;
    margin-bottom:30px;
}

h4 {
    font-size:20px;
}

h5 {
    font-size:16px;
}

.slide-content h1 {
    width:100%;
    margin-bottom:30px;
    text-align:center;
}

.team h3, .masonry h3, .references h3, .interesting h3 {
    margin:20px 0 12px;
    width:100%;
}

.news h4, .project-text h3, .awards-wrap h5 {
    margin-bottom:12px;
}

.awards-wrap h5 {
    margin-top:25px;
}

footer h3 {
    font-size:14px;
    font-weight:bold;
}

a:focus {
    outline: none;
}

a, a:visited {
    text-decoration:none;
    /*color:#ff0000;*/
    color: #000;
    transition-property:all .2s linear 0s;
    -moz-transition:all .2s linear 0s;
    -webkit-transition:all .2s linear 0s;
    -o-transition:all .2s linear 0s;
}
.wrap-3col.news a, .wrap-3col.news a:visited, .wrap-3col.masonry a, .wrap-3col.masonry a:visited {
	color: #f16d2f;
}

a[href^="tel:"] {
  color: #000000;
  text-decoration: none;
}

a:hover, a:active {
    color:#000;   
}

.btn-red {
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:0.07em;
}

.masonry h3 a, .masonry h3 a:visited,
.references h3 a, .references h3 a:visited,
.interesting h3 a, .interesting h3 a:visited,
footer ul li a, footer ul li a:visited {
    color:#000;
}

.masonry h3 a:hover, .masonry h3 a:active,
.references h3 a:hover, .references h3 a:active,
.interesting h3 a:hover, .interesting h3 a:active,
    footer ul li a:hover, footer ul li a:active {
    color:#ff0000;
}

.btn-wrap {
    width:100%;
    text-align:center;
}

.btn-load-more, .btn-load-more:visited,
.btn-mobile, .btn-mobile:visited {
    transition-property:all .2s linear 0s;
    -moz-transition:all .2s linear 0s;
    -webkit-transition:all .2s linear 0s;
    -o-transition:all .2s linear 0s;
    font-size:13px;
    letter-spacing:0.1em;
    text-align:center;
    padding:12px;
    margin:20px 15px 50px;
    border:1px solid #808080;
    color:#808080;
    text-transform:uppercase;
    width:295px;
    display:inline-table;
}

.btn-mobile {
    margin:0;
}

.btn-load-more:hover, .btn-load-more:active {
    border:1px solid #f16d2f;
    color:#f16d2f;
}

ul, li {
    margin:0;
    padding:0;
}


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

}


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

    .logo {
        left: 20px;
    }
    
    .masonry-item {
        width: 50%;
    }
    
    .awards .col-50 {
        padding-right: 3%;
    }
    
    .benefits-item {
        padding: 20px 3%;
    }
    
    .text-large {
        padding: 0 5%;
    }
}


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

    .show-mob {
     display:table;
     margin-bottom:0;
    }
    
    .show-mob::after {
        margin-bottom:25px;
    }
    
    .hide767, .hide-mob {
        display:none;
    }
    
    .news img {
        display:none;
    }
    
    .interesting img {
        display:inherit;
    }
    
    .news .col-33,
    .team .col-33,
    .masonry-item,
    .references .masonry-item {
        width:100%;
        margin-bottom:30px;
    }
    
    .col-50 {
        width:100%;
    }
    
    .news .col-33:last-of-type {
       margin-bottom:0;
    }
    
    .clients-wrap {
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        flex-wrap:wrap;
        margin-bottom:50px;
    }
    
    .client-item {
        width:50%;
        display: none;
        align-items: center;
        margin-top:10px;
    }
    
    .client-item-img {
       margin: 0 auto;
    }
    
    .col-centered {
        width: 100%;
        margin: 0;
    }
    
	.awards {
		display: none;
	}
	
	.awards.mobile, .la-btn {
		display: block;
	}
	.awards.mobile p {
		display: none;
	}
	
    .benefits-wrap,
    .benefits-wrap .benefits-item {
        width: 100%;
        display:table;
    }
    
    .benefits-wrap .benefits-item {
        margin-bottom:20px;
    }
    
    .text-large {
        padding: 0;
        font-size: 16px;
    }
    
    .project-images {
        outline:1px dotted green;
        width:100%;
        float:none;
        padding:0 20px;
    }
    
    .project-text {
        float:none;
        width:100%;
        padding:0 20px;
        outline:1px dotted black;
    }
    
    .project-wrap .slider-wrap {
        padding: 0;
        margin-top: 20px;
    }
    
    .graphics-wrap {
        margin-bottom:50px;
    }
    
    .graphic-item img {
        max-height: 75px;
    }
    
    .copy {
        padding:0 20px;
    }
    
    footer h3 {
        margin-bottom:0;
    }
    
    footer .col-33 {
        width:100%;
    }
    
    footer .col-33:nth-child(2) li,
    footer .col-33:nth-child(3) li {
        float:left;
        width:50%;
    }
    
    footer .col-33::after {
        display: block;
        content: " ";
        clear: both;
        margin-bottom:30px;
    }
    
    h1 {
        font-size:30px;
    }
    
    h2 {
        font-size:26px;
        margin-bottom:30px;
    }
    
    .btn-mobile {
        width:100%;
    }
	


}

.home-slider .slick-prev, .home-slider .slick-next {
    width: 40px !important;
    height: auto !important;
	top: 50% !important;
}

.home-slider .slick-prev::before {
	content: url('/wp-content/themes/gi-a/neu2020/images/left.svg') !important;
	padding: 0 !important;
	width: 100%;
	height: auto;
	display: block;
}
.home-slider .slick-next::before {
	content: url('/wp-content/themes/gi-a/neu2020/images/right.svg') !important;
	padding: 0 !important;
	width: 100%;
	height: auto;
	display: block;
}

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

    main,
    .footer-wrap {
        padding: 0 10px;
    }
    

    .home-slider .slide .slide-content {
      font-size: 14px;
      bottom: 0px;
    }
    
    .home-slider .slick-prev, .home-slider .slick-next {
		width: 25px !important;
	}
	
	.down-btn {
		display: none;
	}
    
}

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

    main,
    .footer-wrap {
        padding: 0;
    }

}

/**CUSTOM**/
a.anchor {
    display: block;
    position: relative;
    top: -80px;
    visibility: hidden;
}
.project-detail {
    padding: 40px 0;
}
.back-button-cnt {
    font-size: 12px;
    padding-bottom: 40px;
}
.back-button-cnt a {
    color: #000;
    -ms-transition: color 0.2s ease;
    -webkit-transition: color 0.2s ease;
    -moz-transition: color 0.2s ease;
    transition: color 0.2s ease;
}
.col-80 {
    width: 80%;
    min-height: 10px;
    display: block;
    float: left;
    box-sizing: border-box;
}
.blog-info {
    float: right;
}
.blog-info h4 {
    font-size: 20px;
   
    font-weight: bold;
    margin: 0 0 20px 0;
    padding: 0;
}
.blog-info .text {
    line-height: 150%;
    font-size: 14px;
}
.blog-date {
    font-size: 12px;
    padding-top: 5px;
    padding-right: 35px;
    float: left;
}
.col-20 {
    width: 20%;
    min-height: 10px;
    display: block;
    float: left;
    box-sizing: border-box;
}
.blog-date .blog-date-cnt {
    border-top: 1px solid #000;
    padding-top: 5px;
}
.clear {
    clear: both;
    display: block;
    height: 0px;
    overflow: hidden;
}
.show-on-mobile {
    display: none !important;
}
@media only screen and (max-width: 767px) {
	.blog-title {
		font-size: 20px;
		
		font-weight: bold;
		margin: 0 0 20px 0;
		padding: 0;
	}
	.blog-info {
		width: 100%;
		margin-bottom: 20px;
		float: none;
	}
	.blog-date {
		width: 100%;
		padding-right: 0;
		float: none;
	}
	.show-on-mobile {
		display: block !important;
	}
	.hide-on-mobile {
		display: none;
	}
	h4 {
		font-size: 16px;
	}
	.mobile-none {
		display: none;
	}
	.icon-text h3 {
		font-size: 14px;
	}
	.mobile-6 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}
	body {
		font-size: 14px;
	}
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 0;
    height: 0;
    overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}