html,body{padding:0; margin:0;font-family: 'Cuprum', sans-serif; font-size: 18px; }



body.dark{background:#000;}

h1,h2,h3{font-size:40px; font-weight:300; margin:0; line-height:40px; transition:.2s all;}
h1{font-weight:400;}
h4,h5{font-size:22px; font-weight:700; margin:0; line-height:28px; transition:.2s all;}
h4 span,h5 span{font-weight:400;}
h5{color:#264796;}
h1+h2,
h2+h3{font-weight:700; margin-bottom:20px;}

.clear{clear:both;}

.full_height{min-height:100vh !important;}
.half_height{min-height:50vh !important;}
.auto_height{min-height:0;}

.column{box-sizing:border-box; padding:40px; width:50%; transition:.2s all;}

.column.light{background:#fff;}
.column.dark{background:#000; color:#fff;}
.column.left{float:left;}
.column.right{float:right;}

.column.column_full{width:100%;}
.column.column_3_1{width:33.33%;}
.column.column_3_2{width:66.66%;}

.column.column_10_4{width:40%;}
.column.column_10_6{width:60%;}

.column.column_4_1{width:25%;}
.column.column_4_3{width:75%;}
.column.column_no_padding{padding:0;}



.year_counter{font-size:85px;font-weight:bold;text-align:center;height:106px;overflow:hidden;position:fixed;bottom: 40px;width:100%;font-family: 'Cuprum', sans-serif;display:none;}
.year_counter strong{display:inline-block; background:#fafafa; vertical-align:top; color:#111; text-align:center; width:70px;  box-sizing:border-box; overflow:visible; position:relative; font-weight:400; margin-left:-10px; z-index:1; transition:background .6s;}
.year_counter strong:first-child{margin:0;}
.year_counter strong i{display:block; font-style:normal; width:100%; height:100%;  line-height:106px; box-sizing:border-box; padding-top:5px; border-top:2px solid #fff;}
.year_counter .separator{position:absolute; height:50%; bottom:0; width:100%; background:rgba(255,255,255,.15); z-index:2; width:100%;}
.year_counter .counter_wrapper{position:relative; display:inline-block; text-align:center; height:100%; white-space:nowrap;}

.year_counter.dark strong{color:#fff; background:#111;}
.year_counter.dark strong i{border-color:#000;}
.year_counter.dark .separator{background:rgba(255,255,255,.05);}


.era_guide{position:absolute;left: 0px;top:0;margin: 0 auto;/* height:100vh; */width: 100%;padding-top: 20px;padding-left: 10px;padding-right: 10px;}
.era_guide:before{/* content:""; *//* height:100%; *//* display:inline-block; *//* vertical-align:middle; */}
.era_guide .era_guide_wrapper{/* display: table-caption; *//* vertical-align:middle; *//* width:calc(100% - 4px); *//* float: left; */}
.era_guide .era{opacity:.40;transition:all .2s;/* transform-origin:left center; */display: inline-block;width: 20%;padding-left: 4%;}
.era_guide .era+.era{/* margin-top:15px; */}
.era_guide .era .title{font-size:50px; display:block; float:left; width:50px; font-family: 'Cuprum', sans-serif; font-weight:400; text-align:center; line-height:50px; color:#555;}
.era_guide .era div:not(.clear){display:block; float:right; width:calc(100% - 55px); line-height:normal; margin:16px 0 0;}
.era_guide .era div strong{color:#929497; display:block;}

.era_guide .era:hover{opacity:1; transform:scale(1.25); cursor:pointer;}
.era_guide .era.active{opacity:1;}
.era_guide .era.active .title,
.era_guide .era.active strong{color:#000;}

.era_guide.dark .era div{color:#999;}
.era_guide.dark .era.active strong{color:#ccc;}

.era_guide .kaessbohrer_logo{left:0;top:0;/* width:100%; */box-sizing:border-box;/* padding:63px 0 0; */float: left;}
.era_guide .kaessbohrer_logo svg{display:block; margin:0 auto; max-width:100px;}


.year_guide{position:absolute;left: 30px;top:0;height:100vh;text-align:center;display:block;}
.year_guide:before{content:""; height:100%; display:inline-block; vertical-align:middle;}
.year_guide .year_guide_wrapper{display:none; vertical-align:middle; text-align:center; line-height:normal;}
.year_guide .year_guide_wrapper.active{display:inline-block; }

.year_guide .year{transition:all .2s; transform-origin:left center; width:8px; height:8px; border:2px solid #264796; background:#fff; border-radius:100px; overflow:visible; color:#264796; position:relative;}
.year_guide .dot{width:4px; height:4px; background:#ededed; border-radius:100px; overflow:visible; color:#264796; position:relative; display:block; margin:1px auto;}
.year_guide .year + .dot,
.year_guide .dot + .year{margin-top:2px;}

.year_guide .year span{position:absolute;left: 20px;width:50px;height:50px;background:#264796;color:#fff;line-height:50px;border-radius:100px;overflow:hidden;top:50%;margin-top:-25px;display:block;transform:scale(0);opacity:1;transition:all .4s;opacity:0;}
.year_guide .year.active{background:#264796;}
.year_guide .year:hover span{transform:scale(1); opacity:1;}
.year_guide .year:hover{border-color:#264796; cursor:pointer;}


.year_slide{ height:100vh; box-sizing:border-box; transition:all .6s; position:relative;}

.year_slide:before {content:""; height:100%; display:inline-block; vertical-align:middle;}
.year_slide .column_full{display:inline-block;vertical-align:middle;width:calc(100% - 4px);padding: 100px;}
.era_section .year_slide .column_full{/* padding:0 50px 0 215px; */}
.year_slide .slide_content{max-width:1200px;margin:0 auto;padding: 25px 0;padding-left: 87px;}
.year_slide .slide_content.centered h2,
.year_slide .slide_content.centered h3{text-align:center;}

.text_wrapper{/* width:100px; */margin:50px auto;position:relative;transition:all .6s;/* opacity:0; */box-sizing:border-box;min-height:120px;height:100px;text-align:left;}
.fancy_wrapper{position:relative; padding:20px; }
.fancy_wrapper .icon{display:block; position:absolute; left:0; top:0; width:30px; height:auto;}
.fancy_wrapper .icon svg{display:block; width:100%;}
.fancy_wrapper .icon_corner_bottom_right{left:auto; top:auto; right:0; bottom:0; transform:scale(-1,-1);}
.fancy_wrapper p{margin:0;/* overflow:hidden; *//* display:none; */}
.fancy_wrapper p + p{margin-top:10px;}

.year_slide .slide_content .gallery_wrapper a{width:60%; height:auto; display:inline-block; vertical-align:bottom; margin:0 0 5px 1px;}
.year_slide .slide_content .gallery_wrapper a img{display:block; width:100%; height:auto;}
.year_slide .slide_content .gallery_wrapper a:nth-child(2){width:30%;}
.year_slide .slide_content .gallery_wrapper a:nth-child(3){width:30%; vertical-align:top;}
.year_slide .slide_content .gallery_wrapper a:nth-child(4){width:60%; vertical-align:top;}

.year_slide .slide_content img{display:block;width: 65%;}

.year_slide .slide_content .column.left{padding-left:0;}
.year_slide .slide_content .column.right{padding-right:0; padding-left:0;}
.year_slide .slide_content .column .text_wrapper{margin:0 auto;}

.year_slide.active .text_wrapper{opacity:1;  transform:none; width:100%; height:auto;}

.read_more{display: none; text-align: center; color: #264796; text-decoration: none; outline: none;}

.year_slide h1 + h2{color:#264796;}

.year_slide .section_header{position:absolute; left:50px; top:50px;}
.year_slide .section_header .logo{width:100px; height:auto; display:block;}

.year_slide .section_footer{position:absolute; bottom:0; left:0; width:100%;}
.year_slide .section_footer .button{ width:300px; margin:0 auto; display:block; text-align:center; padding:0; flex:none;}
.year_slide .section_footer .button span{font-size:16px; font-weight:600; line-height:normal; color:#000; display:block; text-align:center; margin-top:-10px;}
.year_slide .section_footer .button svg{display:block; width:35px; transform:rotate(-90deg); margin:0 auto;}
.year_slide .section_footer .button svg path,
.year_slide .section_footer .button svg polygon{fill:#264796;}
.year_slide .section_footer .button svg polyline{stroke:#264796;}
.year_slide .section_footer .button:hover span{color:#264796;}

.year_slide .triangle_background{position:absolute; right:0; top:0; width:100%; height:100%; overflow:hidden;}
.year_slide .triangle_background svg{height:100%; width:auto; position:absolute; right:0; top:0;}
.year_slide .triangle_background svg path,
.year_slide .triangle_background svg polygon{fill:#000;}
.year_slide .triangle_background.inverted svg{transform:scaleY(-1);}


.year_slide.placeholder_slide{background: #fff;}
.year_slide.placeholder_slide.dark{background: #000;}
.year_slide.placeholder_slide.s{background: #000;}

.year_slide.placeholder_slide .kaessbohrer_logo{position:absolute; left:50%; top:50%; width:200px; height:120px; margin:-60px 0 0 -100px;}
.year_slide.placeholder_slide .kaessbohrer_logo svg{width:120px; margin: 0 auto;}
.year_slide.placeholder_slide .kaessbohrer_logo svg path,
.year_slide.placeholder_slide .kaessbohrer_logo svg polygon{fill:#264796;}
.year_slide.placeholder_slide.dark .kaessbohrer_logo svg path,
.year_slide.placeholder_slide.dark .kaessbohrer_logo svg polygon{fill:#fff;}

.year_slide.placeholder_slide.dark .kaessbohrer_logo a,
.year_slide.placeholder_slide.dark .kaessbohrer_logo a span	{color:#fff; text-decoration: none; font-family: 'Cuprum', sans-serif; font-size: 26px; letter-spacing: .06em;}

.year_slide.placeholder_slide{text-align: center;}
.year_slide.placeholder_slide .fin_container{margin: 0 auto; width: 50%; color: #fff; display: inline-block; vertical-align: middle; text-align: left;}
.year_slide.placeholder_slide .fin_container .title{font-size:70px; display:block; float:left; width:70px; font-family: 'Cuprum', sans-serif; font-weight:400; text-align:center; line-height:70px; color:#555;}
.year_slide.placeholder_slide .fin_container div:not(.clear){display:block; float:right; width:calc(100% - 75px); line-height:normal; margin:16px 0 0;}
.year_slide.placeholder_slide .fin_container div strong{font-size: 32px; display: block; color: #929497;}
.year_slide.placeholder_slide .fin_container div span{font-size: 42px;display: block;}

.year_slide.placeholder_slide .next_container{margin: 0 auto; width: 30%; color: #fff; display: block; position: absolute; right: 20px; bottom: 20px; text-align: left;}
.year_slide.placeholder_slide .next_container .title{font-size:64px; display:block; float:left; width:60px; font-family: 'Cuprum', sans-serif; font-weight:400; text-align:left; line-height:50px; color:#555;}
.year_slide.placeholder_slide .next_container .super_title{font-size:23px; display:block; font-family: 'Cuprum', sans-serif; font-weight:400; text-align:left; line-height:40px; color:#999;}

.year_slide.placeholder_slide .next_container div:not(.clear){display:block; float:right; width:calc(100% - 60px); line-height:normal; margin:0; }
.year_slide.placeholder_slide .next_container div strong{font-size: 18px; line-height: 16px; display: block; color: #929497;}
.year_slide.placeholder_slide .next_container div span{font-size: 23px; line-height: 32px; display: block;}

.year_slide.placeholder_slide .next_container:hover{color:#264796; cursor: pointer;}

.year_slide.placeholder_slide a{display:block; margin-top: 40px;}
.year_slide.placeholder_slide a + a{margin-top: 0;}
.year_slide.placeholder_slide a svg{display: inline-block; width: 30px; height:auto; margin-right: 5px; vertical-align: middle;}
.year_slide.placeholder_slide a span{display: inline-block; vertical-align: middle;}

.era_section{overflow:hidden; width:0; min-height:100vh; position:fixed; left:100%; top:0;}
.era_section .era_content{width:100vw;}
.era_section.active{width:100%; display:block; position:relative; top:auto; left:auto;}


.image_parallax_container {width: 100%;height: auto;position: relative;overflow: visible;margin:0 auto;padding-top:56.25%;}
.image_parallax_container div {position: absolute; top: -10px; left: -10px; right: -10px; bottom: -10px; background-size: 100% auto; background-repeat: no-repeat; background-position: 0 0; background-size:cover; -webkit-transition: 0.1s; transition: 0.1s; 			}
.image_parallax_container div img{display:block; width:100%; height:auto; position:absolute; left:0; top:0;}

.scale_in.image_parallax_container div{transform:scale(0);}

.enginuity_widget{text-align:center; margin:30px 0;}
.enginuity_widget h2{display:inline-block; vertical-align:middle; font-size:24px; margin:0; font-weight:bold;}
.enginuity_widget h3{display:inline-block; vertical-align:middle; font-size:24px; margin:0 10px; font-weight:bold; border:3px solid #fff; color:#264796; width:150px; height:150px; border-radius:1000px; text-align:center;}
.enginuity_widget h3:before{content:""; height:100%; display:inline-block; vertical-align:middle;}
.enginuity_widget h3 span{display:inline-block; vertical-align:middle; max-width:100%; overflow:hidden; text-overflow:ellipsis;}
.enginuity_widget h2 span{font-weight:normal;}
.year_slide .enginuity_widget{height:100%; position:relative; display:none;}
.year_slide .enginuity_widget:before{display:inline-block; width:0; height:100%; vertical-align:middle; content:"";}
.year_slide .enginuity_widget h2,
.year_slide .enginuity_widget h3{font-size:48px; transition:1.5s all;}
.year_slide .enginuity_widget h2{text-align:right !important;}
.year_slide .enginuity_widget h3{border-color:#fff; width:300px; height:300px; background:#264796; color:#fff; transform:scale(0);}
.year_slide .enginuity_widget h3 span{color:#fff;}
.year_slide .enginuity_widget h2{transform:translateX(100%); opacity:.05; transition:1s all;}
.year_slide .enginuity_widget h3 + h2{text-align:left !important; transform:translateX(-100%);}

.era_switch_overlay{position:fixed;left:150%;top:0;width:100%;height:100%;overflow:visible;display:none;/*animation:era_switch 1s 1 ease-in-out;*/background: #FFF;}

.era_switch_overlay .triangle{position:absolute; left:0;  top:0; height:100%;  margin-left:5px; z-index: 2; background: #fff;}
.era_switch_overlay .triangle svg{position:absolute; right:calc(100% - 10px); top:0; height:120%; }
.era_switch_overlay .triangle svg path,
.era_switch_overlay .triangle svg polygon{fill:#264796;}

.era_switch_overlay.dark .triangle svg{background: #000;}

.era_switch_overlay .kaessbohrer_logo{position:absolute; left:50%; top:50%; width:200px; height:200px; margin:-100px 0 0 -100px;}
.era_switch_overlay .kaessbohrer_logo svg path,
.era_switch_overlay .kaessbohrer_logo svg polygon{fill:#fff;}

/*@keyframes era_switch{100%{left:0;}}*/


.intro{display:block; width:100%; height:100vh; overflow:hidden;z-index:1000; background:#fff; position:relative;}
.intro:before{content:""; width:0px; height:100%; vertical-align:middle; display:inline-block;}
.intro .intro_content > svg{width:60%; margin:0 auto; display:block; vertical-align:middle; animation: svg_container 6s 1 ease-in-out; animation-fill-mode: forwards;}
/* take a bunch of the svg attributes and place them here for the sake of dryness */
.intro .intro_content > svg path,
.intro .intro_content > svg line { fill: none; stroke: #000; stroke-width: 10; stroke-linecap: round; stroke-linejoin: round; stroke-miterlimit: 10; stroke-dashoffset: 8; }
/* give the vectors a dashed stroke */

.intro .intro_content svg .k_first { stroke-dashoffset: 335; stroke-dasharray: 334; animation: k_first 4s 1 ease-in-out; animation-fill-mode: forwards; }
.intro .intro_content svg .k_second {stroke-dashoffset: 335;stroke-dasharray: 334;animation: k_second 4s 1 ;animation-fill-mode: forwards;}
.intro .intro_content svg .assbohrer {stroke-dashoffset: 1329;stroke-dasharray: 1328;animation: assbohrer 4s 1 ease-in-out;animation-fill-mode: forwards;}
.intro .intro_content svg .dot_1 {opacity:0;animation: dot_1 4s 1 ease-in-out;animation-fill-mode: forwards;}
.intro .intro_content svg .dot_2 {opacity:0;animation: dot_2 4s 1 ease-in-out;animation-fill-mode: forwards;}

.intro.intro_slide{text-align:center; }
.intro.intro_slide .slide_content{max-width:1600px; text-align:left;}

.intro .intro_content{width:80%; display:inline-block; vertical-align:middle;}
.intro .title_container{display:none; text-align:center;}
.intro .title_container h1{font-weight:400;}

.intro .scroll_icon_container{position:absolute; bottom:50px; width:100%; display:none<?=(!empty($_GET["autoslide"])) ? " !important;" : ""?>;}
.intro .scroll_icon_container svg{display:block; margin:0 auto; width:40px; }

.intro_slide .kaessbohrer_logo{width:100px; margin:20px 0;}

.scroll_icon_container svg .mouse_scroll_wheel{animation: mouse 1.5s 3 ease-in-out;}

@keyframes signature_container{0%,90% {opacity:1;}	90%,100%{opacity:0;}}
@keyframes k_first { 0%,15% {stroke-dashoffset: 335;} 15%,100%{stroke-dashoffset: 0;}}
@keyframes k_second { 0%,15% {stroke-dashoffset: 335;}30%,100%{stroke-dashoffset: 0;}}
@keyframes assbohrer { 0%,30% {stroke-dashoffset: 1329;}75%,100%{stroke-dashoffset: 0;}}
@keyframes dot_1 { 0%,75% {opacity:0;}85%,100%{opacity:1;}}
@keyframes dot_2 { 0%,85% {opacity:0;}90%,100%{opacity:1;}}
@keyframes svg_container {0%{opacity:1; transform:none;}80%{opacity:1; transform:none;}100%{transform:scale(.9);}}

@keyframes mouse{100%{transform:translateY(22px); opacity:0;}}

body.intro_active{overflow:hidden;}
.main_slideshow{position:relative; width:100%; height:100vh;}
.main_slideshow:before{display:none;}



@media (max-width: 1280px) {
	html,body{font-size: 22px;}
	h1, h2, h3{font-size:32px; line-height:32px;}
	.year_slide .slide_content{max-width:850px;}

	.year_counter{font-size:75px;height:90px;bottom: 20px;}
	.year_counter strong{width:60px;}
	.year_counter strong i{line-height:90px;}

	.era_guide .kaessbohrer_logo{padding-top: 25px;padding-left: 5px;float: left;}

	.year_slide .slide_content .column_3_2,
	.year_slide .slide_content .column_3_1{width:50%;}

	.year_slide .enginuity_widget h2, .year_slide .enginuity_widget h3{font-size:28px;}
	.year_slide .enginuity_widget h3{width:190px; height:190px;}

	.era_switch_overlay .kaessbohrer_logo{width:120px; height:120px; margin:-60px 0 0 -60px;}
}
@media (max-width: 980px) {
	h1, h2, h3{font-size:28px; line-height:28px;}

	.era_guide{width:160px;}
	.era_guide_wrapper .era .title{display:none;}
	.era_guide .era div:not(.clear){width:calc(100% - 20px);}
}
@media (max-width: 700px){
	.year_slide.placeholder_slide .fin_container{width: 80%; }
	.year_slide.placeholder_slide .fin_container .title{font-size:60px; width:70px; line-height:60px;}
	.year_slide.placeholder_slide .fin_container div strong{font-size: 22px;}
	.year_slide.placeholder_slide .fin_container div span{font-size: 24px;display: block;}

	.year_slide.placeholder_slide .next_container{width: 80%; }
	.year_slide.placeholder_slide .next_container .title{font-size:44px; line-height: 36px; width:45px; height: 50px;}
	.year_slide.placeholder_slide .next_container .super_title{font-size:17px;}
	.year_slide.placeholder_slide .next_container div:not(.clear){width:calc(100% - 45px);}

	.year_slide.placeholder_slide .next_container div strong{font-size: 13px; line-height: 14px;}
	.year_slide.placeholder_slide .next_container div span{font-size: 16px; line-height: 18px; }
		html,body{font-size: 25px;}
}
@media (max-width: 480px){
	h1, h2, h3{font-size:24px; line-height:24px; margin-bottom: 0;}
	.year_slide .slide_content img{max-width: 100%; margin: 0 auto; max-height: 50vh; width: auto;}

	.era_guide{width:110px;}
	.era_guide .era_guide_wrapper{display:none;}
	.era_guide .kaessbohrer_logo {padding: 0;}
	.era_guide .kaessbohrer_logo svg{width:70px; text-align: left; margin: 20px 0 0 20px;}
	.year_counter{height:43px; top: 20px; text-align: right; font-size: 45px; }
	.year_counter .counter_wrapper{text-align:right; padding-right: 20px;}
	.year_counter strong {width:40px;}
	.year_counter strong i{line-height:35px;}

	.era_section .year_slide .column_full{padding-left: 20px; padding-right: 40px;}

	.year_slide .slide_content .column.left{padding-right:0; width:100% !important; padding-bottom: 0; text-align: center;}
	.year_slide .slide_content .column.right{padding-right:0; width:100% !important; padding-top: 10px; padding-bottom: 10px; text-align: center;}
	.year_slide .slide_content .column .text_wrapper{display:none !important; width:100%;}
	.year_slide .read_more{display: block; text-align: center; color: #264796; text-decoration: none;}


	.intro .scroll_icon_container svg{width:24px;}

	.
	.fancy_wrapper{display: block; padding: 20px; font-size: 16px;  box-sizing: border-box; width: calc(100% - 40px); margin: 0 auto;}
	.fancy_wrapper p{display:block !important; }


	.year_slide .enginuity_widget h2,
	.year_slide .enginuity_widget h3{font-size:13px;}
	.year_slide .enginuity_widget h3{width:80px; height:80px; margin: 0;}

	.intro_slide .kaessbohrer_logo{width: 100px; margin: 20px auto; position: absolute; left: 50%; margin-left: -50px; top: 50px;}
	.intro_slide .column.right{padding-top:30px !important;}
}

.end{
	position: absolute;
	left: 50%;
	top: 50%;
	width: 250px;
	height: 120px;
	margin: -60px 0 0 -100px;
}

.end a{
	color: #fff;
    text-decoration: none;
    font-family: 'Cuprum', sans-serif;
    font-size: 26px;
    letter-spacing: .06em;
}

.end a:hover{
	text-decoration: underline;
}
.year_guide_wrapper .active span{
	transform: scale(1);
    opacity: 1;
}
@media(max-width:1200px){
	.year_guide{top:40px}
}

@media (max-width: 992px){
	.year_slide .slide_content .column_3_2,
	.year_slide .slide_content .column_3_1{width:100%!important;}
	.year_slide .slide_content img{margin:auto;}
	.slide_content .column{width:100%;}
}
@media (max-width: 768px){
	.fancy_wrapper p{font-size:22px!important;}
	p{font-size:22px!important;}
}