/* // tb-bauprojekte | 1 | style.css */

/* @font-face */
@font-face { font-family:'webfont1'; src:url('../fonts/webfont1.eot'); src:url('../fonts/webfont1.eot?#iefix') format('embedded-opentype'), url('../fonts/webfont1.woff2') format('woff2'), url('../fonts/webfont1.woff') format('woff'), url('../fonts/webfont1.ttf') format('truetype'), url('../fonts/webfont1.svg#webfont1') format('svg'); font-weight:normal; font-style:normal; }
@font-face { font-family:'webfont2'; src:url('../fonts/webfont2.eot'); src:url('../fonts/webfont2.eot?#iefix') format('embedded-opentype'), url('../fonts/webfont2.woff2') format('woff2'), url('../fonts/webfont2.woff') format('woff'), url('../fonts/webfont2.ttf') format('truetype'), url('../fonts/webfont2.svg#webfont2') format('svg'); font-weight:normal; font-style:normal; }

/* reset etc. */
html, body { height:100%; }
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, 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 { color:inherit; margin:0; padding:0; border:0; font-size:100%; font:inherit; vertical-align:baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
body, body div { line-height:1.3em; }
body, td { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
ol, ul, li { margin:0; padding:0; list-style:none; list-style-type:none; }
blockquote, q { quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content:none; }
table { border-collapse:collapse; border-spacing:0; }
html { -webkit-text-size-adjust:100%; }
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img { margin:0; }


/* preloader */
#preloader { position:fixed; top:0; left:0; right:0; bottom:0; background:#fff; z-index:10001; }
#loading-animation { width:100px; height:100px; position:absolute; left:50%; top:50%; margin:-50px 0 0 -50px; cursor:pointer; background:url("../images/icons/logo.gif") center center no-repeat; background-size:100px 100px; }


/* basics */
body { overflow:visible !important; color:#333; background:#fff; font-family:'webfont1', Helvetica, Arial, sans-serif, "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size:20px; text-align:left; -ms-word-wrap:break-word; word-wrap:break-word;}
td, th, p, li { font-family:'webfont1', Helvetica, Arial, sans-serif; font-size:20px; text-align:left; -ms-word-wrap:break-word;word-wrap:break-word;}
b, strong { font-weight:bold; color:#000; }
em { font-style:italic; }

h1, h2, h3, h4, h5, h6 { line-height:1.1em; color:#000; font-weight:normal; margin:0px; padding:0px; -ms-hyphens: auto; -moz-hyphens: auto; -webkit-hyphens: auto; hyphens: auto; }
h1, h2, h3 { font-family:'webfont2', Helvetica, Arial, sans-serif; }
h1 { font-size:42px; }
h2 { font-size:64px; margin:0 0 40px 0; text-align:center; }
h3 { font-size:30px; margin:0 0 15px 0; }
h4 { font-size:26px; }
h5 { font-size:24px; line-height:1.3em; margin:0 0 10px 0; text-transform:none; }
h6 { font-size:20px; margin:0 0 5px 0; }
td img, img { display:block; }

a:link, a:visited { color:#000; text-decoration:none; -moz-outline-style:none; outline:none; }
a:hover, a:active { color:#333; text-decoration:none; -moz-outline-style:none; outline:none; }
.texts a:link, .texts a:visited { }
.texts a:hover, .texts a:active { }
.texts a:link, .texts a:visited { }
.texts a:hover, .texts a:active { }
.texts b, .texts strong { font-size:1.4em; font-family:'webfont2', Times, "Times New Roman", serif; font-weight:normal; }
a.text_truncate_toggle { text-decoration:none !important; }


/* msg */
#msg { position:fixed; display:block; top:0; left:0; right:0; padding:30px; z-index:10002; }
#msg a.close { display:block; }


/* header_norm */
.header_norm { background:none transparent; background:linear-gradient(to bottom, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 50%, rgba(0,0,0,0) 100%); pointer-events:none; position:fixed; left:0px; top:0px; width:100%; text-align:center; overflow:hidden; z-index:7000; }
.header_norm a { pointer-events:all; }
.header_norm a:link, .header_norm a:visited { color:#fff; }
.header_norm a:hover, .header_norm a:active { color:#ccc; }

.header_norm .menu { position:absolute;text-align:center; width:48px; height:48px; left:12px; top:50%; margin:-24px 0 0 0; }
.header_norm .menu a.btn { display:block; width:32px; height:18px; padding:15px 8px; }
.header_norm .menu a.btn .nav-icon { position:relative; width:32px; height:18px; display:block; }
.header_norm .menu a.btn .nav-icon span {position:absolute;width:32px;height:2px;display:block; background:#fc0;-webkit-transition:all .3s cubic-bezier(.35,0,.25,1); transition:all .3s cubic-bezier(.35,0,.25,1);}
.header_norm .menu a.btn:hover .nav-icon span, .header_norm .menu a.btn:active .nav-icon span { background:#000; }
.header_norm .menu a.btn .nav-icon span:nth-child(1) { top:0px; }
.header_norm .menu a.btn .nav-icon span:nth-child(2) { top:8px; }
.header_norm .menu a.btn .nav-icon span:nth-child(3) { bottom:0px; }

.header_norm h1 { height:50px; overflow:hidden; }

.header_norm .logo { text-align:center; position:relative; margin:0; padding:0; filter:alpha(opacity=0); -moz-opacity:0; opacity:0; }
.header_norm .logo a { position:relative; width:50px; height:50px; display:inline-block; margin:0px auto; -webkit-transition:all 0.3s ease-in-out; -moz-transition:all 0.3s ease-in-out; -o-transition:all 0.3s ease-in-out; transition:all 0.3s ease-in-out; }
.header_norm .logo a:hover, .header_norm .logo a:active { background:url("../images/icons/logo.gif") center center no-repeat; background-size:50px 50px; }
.header_norm .logo a:link img, .header_norm .logo a:visited img { opacity:1; }
.header_norm .logo a:hover img, .header_norm .logo a:active img { opacity:0; }

body.compact .header_norm, body.menu_on .header_norm, .body_section .header_norm, .body_misc .header_norm { background:#fff; border-bottom:1px solid #999;-moz-box-shadow:0px 0px 15px rgba(0,0,0,0.3);-webkit-box-shadow:0px 0px 15px rgba(0,0,0,0.3);box-shadow:0px 0px 15px rgba(0,0,0,0.3);}
body.compact .header_norm .logo, body.menu_on .header_norm .logo, .body_section .header_norm .logo, .body_misc .header_norm .logo { filter:alpha(opacity=100); -moz-opacity:1; opacity:1; }

body.compact .header_norm .social ul li a:link, body.compact .header_norm .social ul li a:visited { }
body.compact .header_norm .social ul li a:hover, body.compact .header_norm .social ul li a:active { }

body.body_section .header_norm .social ul li a:link, body.body_section .header_norm .social ul li a:visited { }
body.body_section .header_norm .social ul li a:hover, body.body_section .header_norm .social ul li a:active { }

body.compact .header_norm .menu a.btn:link .nav-icon span, body.compact .header_norm .menu a.btn:visited .nav-icon span { background:#000; }
body.compact .header_norm .menu a.btn:hover .nav-icon span, body.compact .header_norm .menu a.btn:active .nav-icon span { background:#fc0; }
body.body_section .header_norm .menu a.btn:link .nav-icon span, body.body_section .header_norm .menu a.btn:visited .nav-icon span { background:#fc0; }
body.body_section .header_norm .menu a.btn:hover .nav-icon span, body.body_section .header_norm .menu a.btn:active .nav-icon span { background:#000; }


/* header > nav_overlay */
body .nav_overlay { background:rgba(255,255,255,0.95); display:block; position:fixed; left:0px; top:100%; width:100%; height:100%; overflow:hidden; padding:0px; z-index:1001; }
body .nav_overlay .nav_holder { display:block; position:absolute; left:0px; top:60px; width:100%; height:90%; height:calc(100% - 60px); overflow:hidden; overflow-y:auto; }
body .nav_overlay .nav_holder .nav_table { position:relative; width:100%; height:100%; min-height:100%; }
body .nav_overlay .nav_holder .nav_table .cell { vertical-align:middle; }

.nav_overlay .nav ul { display:block; position:relative; font-size:0px; }
.nav_overlay .nav1 { margin:20px 0 0 0; }
.nav_overlay .nav2 ul { border-top:0px none; }
.nav_overlay .nav ul li { display:block; position:relative; margin:0; text-align:center; }
.nav_overlay .nav ul li:last-child { }
.nav_overlay .nav ul li a { font-family:'webfont2', Helvetica, Arial, sans-serif; line-height:1.2em;font-size:36px; letter-spacing:0px;padding:10px 0;display:inline-block; }
.nav_overlay .nav ul li a:link, .nav_overlay .nav ul li a:visited { }
.nav_overlay .nav ul li a:hover, .nav_overlay .nav ul li a:active, .nav_overlay .nav ul li.on a { }
.nav_overlay .nav ul li.on a { }

.nav_overlay .nav_social .social { }
.nav_overlay .nav_social .social ul { text-align:center; margin:0 auto; font-size:0; height:94px; overflow:hidden; }
.nav_overlay .nav_social .social li { display:inline-block; margin:10px 0px; border-bottom:0px none; overflow:hidden; }
.nav_overlay .nav_social .social li:last-child { border-right:0px none; }
.nav_overlay .nav_social .social li a { font-size:28px; line-height:74px; text-align:center; padding:0; width:64px; height:70px; display:block; overflow:hidden; }
.nav_overlay .nav_social .social li a:link, .nav_overlay .nav_social .social li a:visited { }
.nav_overlay .nav_social .social li a:hover, .nav_overlay .nav_social .social li a:focus { }
.nav_overlay .nav_social .social li a [class*=" icon-"]:before, .nav_overlay li.nav_social .social li a [class^=icon-]:before { margin-right:0em; margin-left:0em; }

body.menu_on { -ms-overflow-style:none; scrollbar-width:none; }
body.menu_on::-webkit-scrollbar { display:none; width:0; }
body.menu_on .header_norm {display:block;/* background:#000; */}
body.menu_on .header_norm .menu a.btn:link .nav-icon span, body.menu_on .header_norm .menu a.btn:visited .nav-icon span { background:#000; }
body.menu_on .header_norm .menu a.btn:hover .nav-icon span, body.menu_on .header_norm .menu a.btn:active .nav-icon span { background:#fc0; }
body.menu_on .header_norm .menu a.btn .nav-icon span:nth-child(1) { -webkit-transform: translate(0,8px) rotate(45deg); -ms-transform: translate(0,8px) rotate(45deg); transform: translate(0,8px) rotate(45deg); }
body.menu_on .header_norm .menu a.btn .nav-icon span:nth-child(2) { opacity: 0; -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: center center; -ms-transform-origin: center center; transform-origin: center center; }
body.menu_on .header_norm .menu a.btn .nav-icon span:nth-child(3) { -webkit-transform: translate(0,-8px) rotate(-45deg); -ms-transform: translate(0,-8px) rotate(-45deg); transform: translate(0,-8px) rotate(-45deg); }
body.menu_on .header_norm a:link, body.menu_on .header_norm a:visited { }
body.menu_on .header_norm a:hover, body.menu_on .header_norm a:active { }
body.menu_on .header_norm .social ul li a:link, body.menu_on .header_norm .social ul li a:visited { }
body.menu_on .header_norm .social ul li a:hover, body.menu_on .header_norm .social ul li a:active { }
body.menu_on .nav_overlay { opacity:100; top:0px !important; }



/* wrapper, article, section, body_section, sticky footer */
html { overflow-x:hidden; }
.wrapper { min-width:360px; max-width:1040px; margin:0 auto; padding:0 20px; position:relative; }
article { z-index:100; width:100%; margin:0 auto; position:relative; }
.body_misc article { padding-top:50px; }
section { position:relative; display:block; border-bottom:1px solid #999; }
section .section_wrapper { position:relative; display:block; margin:0 auto; padding:70px 0px; }
section .section_content { position:relative; max-width:1040px; margin:0 auto; padding:0 20px; }
body { display:flex; flex-direction:column; } .page_wrapper { flex:1 0 auto; } .footer { flex-shrink:0; }

section .section_holder { display:none; position:relative; margin:0 auto 60px auto; min-height:300px; }
section .section_holder .item { text-align:left; padding:22px 40px 40px 40px; /* background:rgba(0,0,0,0.02); border:1px solid #ddd; */ }
section .section_holder .item h1, section .section_holder .item h2, section .section_holder .item h3, section .section_holder .item h4, section .section_holder .item h5, section .section_holder .item h6 { }
section .section_holder .item a:link, section .section_holder .item a:visited { }
section .section_holder .item a:hover, section .section_holder .item a:active { }


/* body_section */
.body_section, .body_section td, .body_section th, .body_section p, .body_section li { text-align:left; }


/* backgrounds */
.bg_image {background-color:#ccc;background-attachment:scroll;background-repeat:no-repeat;background-position: center center;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;}
.bg_image .section_wrapper { background:rgba(0,0,0,0.5); }

.bg1 { }
.bg1 .section_wrapper { }
.bg1 h1, .bg1 h2, .bg1 h3, .bg1 h4, .bg1 h5, .bg1 h6 { }
.bg1 a:link, .bg1 a:visited { }
.bg1 a:hover, .bg1 a:active { }
.bg1 input.submit, .bg1 a.button, .bg1 a.button:link, .bg1 a.button:visited, .bg1 .button, .bg1 button, .bg1 .button, .bg1 button, .bg1 input[type="submit"], .bg1 input[type="reset"], .bg1 input[type="button"] { }
.bg1 .button:hover, button:hover, .bg1 a.button:hover, .bg1 input[type="submit"]:hover, .bg1 input[type="reset"]:hover, .bg1 input[type="button"]:hover, .bg1 .button:active, .bg1 button:active, .bg1 a.button:active, .bg1 input[type="submit"]:active, .bg1 input[type="reset"]:active, .bg1 input[type="button"]:active { }
.bg1 ul.sub_nav li a:link, .bg1 ul.sub_nav li a:visited { }
.bg1 ul.sub_nav li a:hover, .bg1 ul.sub_nav li a:active { }
.bg1 ul.sub_nav li.on a { }

.bg2 { background:#fafafa; background:#fff url("../images/layout/bg_concrete-wall-4.png"); }
.bg2 .section_wrapper { }
.bg2 h1, .bg2 h2, .bg2 h3, .bg2 h4, .bg2 h5, .bg2 h6 { }
.bg2 a:link, .bg2 a:visited { }
.bg2 a:hover, .bg2 a:active { }
.bg2 input.submit, .bg2 a.button, .bg2 a.button:link, .bg2 a.button:visited, .bg2 .button, .bg2 button, .bg2 .button, .bg2 button, .bg2 input[type="submit"], .bg2 input[type="reset"], .bg2 input[type="button"] { }
.bg2 .button:hover, button:hover, .bg2 a.button:hover, .bg2 input[type="submit"]:hover, .bg2 input[type="reset"]:hover, .bg2 input[type="button"]:hover, .bg2 .button:active, .bg2 button:active, .bg2 a.button:active, .bg2 input[type="submit"]:active, .bg2 input[type="reset"]:active, .bg2 input[type="button"]:active { }
.bg2 ul.sub_nav li a:link, .bg2 ul.sub_nav li a:visited { }
.bg2 ul.sub_nav li a:hover, .bg2 ul.sub_nav li a:active { }
.bg2 ul.sub_nav li.on a { }

.bg3 { }
.bg3 .section_wrapper { }
.bg3 h1, .bg3 h2, .bg3 h3, .bg3 h4, .bg3 h5, .bg3 h6 { }
.bg3 a:link, .bg3 a:visited { }
.bg3 a:hover, .bg3 a:active { }
.bg3 input.submit, .bg3 a.button, .bg3 a.button:link, .bg3 a.button:visited, .bg3 .button, .bg3 button, .bg3 .button, .bg3 button, .bg3 input[type="submit"], .bg3 input[type="reset"], .bg3 input[type="button"] { }
.bg3 .button:hover, button:hover, .bg3 a.button:hover, .bg3 input[type="submit"]:hover, .bg3 input[type="reset"]:hover, .bg3 input[type="button"]:hover, .bg3 .button:active, .bg3 button:active, .bg3 a.button:active, .bg3 input[type="submit"]:active, .bg3 input[type="reset"]:active, .bg3 input[type="button"]:active { }
.bg3 ul.sub_nav li a:link, .bg3 ul.sub_nav li a:visited { }
.bg3 ul.sub_nav li a:hover, .bg3 ul.sub_nav li a:active { }
.bg3 ul.sub_nav li.on a { }


/* sub_nav */
ul.sub_nav { text-align:center; margin:-20px 0 40px 0; }
ul.sub_nav li { font-size:32px; line-height:32px; letter-spacing:1.5px; text-transform:uppercase; margin:5px 10px; display:inline-block; }
ul.sub_nav li a { display:block; padding:6px 0 2px 0px; }
ul.sub_nav li a:link, ul.sub_nav li a:visited { color:#fc0; }
ul.sub_nav li a:hover, ul.sub_nav li a:active { color:#000; }
ul.sub_nav li.on a { color:#000; border-bottom:2px solid #000; }


/* itemview */
.body_itemview .section_content { max-width:640px; }
.body_itemview .section-item h2 { font-size:28px; margin:0 0 20px 0; }
.body_itemview .section-item h3 { font-size:48px; text-align:center; }

.itemview .hero { position:relative; }
.itemview .hero-visuals { margin:0 -100px 40px -100px; max-height:75vh; overflow:hidden; box-shadow:0px 2px 7px rgba(0,0,0,0.3); }
.itemview .hero-visuals .hero-image { display:block; padding-bottom:56.25%; }
.itemview .hero h2 { font-size:56px; }
.itemview .hero .hero-texts { border-bottom:1px dashed #666; margin:0 0 40px 0; padding:0 0 40px 0; }
.itemview .hero:last-child .hero-texts { border-bottom:0px none; margin:0; padding:0; }

/*
.itemview .hero-texts { text-align:center; width:100%; width:calc(100% - 120px); max-width:960px; margin:-20px auto 0 auto !important; background:#fff url("../images/layout/bg_dotnoise-light-grey-33.png") center top; box-shadow:0px 2px 7px rgba(0,0,0,0.3); border:1px solid #999; padding:20px; }
.itemview .hero-texts .date { text-align:center; margin:0 0 20px 0; color:#666; font-size:0.8em; }
.itemview .hero-texts h2 { font-size:36px; line-height:36px; margin:10px 0 20px 0; padding:0; }
.itemview .hero-texts .synopsis { margin:10px auto; padding:0; }
*/

.itemview .visuals { }
.itemview .visuals .image { display:block; padding-bottom:56.25%; }
.itemview .visuals .videoborder .display { padding-bottom:0px !important; --ratioWidth:16; --ratioHeight:9; position:relative; margin:0 auto; width:100%; max-width:calc((var(--ratioWidth) / var(--ratioHeight)) * 600px); height:calc((var(--ratioHeight) / var(--ratioWidth)) * (640px)); /* keep tracking of all paddings, borders etc! */ max-height:600px; background:transparent; }
.itemview .image_deco { display:block; position:relative; }

.itemview .items .item { border-bottom:1px dashed #666; margin:0 0 40px 0; padding:0 0 60px 0; }
.itemview .items .item:last-child { margin:0; border-bottom:0px none; }
.itemview .texts .date { margin:0 0 10px 0; font-size:0.8em; }
.itemview .texts .date a { text-decoration:none !important; }
.itemview .texts h3 { font-size:42px; margin:0 0 15px 0; }
.itemview .item-texts b, .itemview .item-texts strong { font-size:1.4em; font-family:'webfont2', Times, "Times New Roman", serif; font-weight:normal; }
.itemview .item-texts ul { margin:20px 0; }
.itemview .item-texts ul li { margin:10px 0 10px 30px; list-style-type: disc; }
.itemview .date .delimiter { color:#000 !important; opacity:0.5; }
.itemview .texts a.link_url { text-decoration:none !important; display:block; margin:15px 0 0 0; }
.itemview .share_options .desc { display:none; }
.itemview .notes { position:relative; font-style:italic; margin:40px 0 0 0; border-top:1px dashed #666; border-bottom:1px dashed #666; padding:20px; }


/* itemlist */
.itemlist { text-align:left; margin:0; position:relative; }
.itemlist li { float:left; display:block; position:relative; width:100%; margin:0 0 40px 0; }

/* 2 li pro reihe */
.itemlist2 li { width:48%; width:calc(50% - 20px); float:left; }
.itemlist2 li:nth-child(odd) { float:left; }
.itemlist2 li:nth-child(even) { float:right; }
.itemlist2 li:nth-child(2n+3) { /* 3., 5., 7. etc... */ clear:both; }

/* 3 li pro reihe */
.itemlist3 { margin:0 -20px; }
.itemlist3 li { width:30%; width:calc((100% / 3) - 40px); margin:0 20px 40px 20px; }
.itemlist3 li:nth-child(3n+4) { /* 4., 7., 10. etc... */ clear:both; }

.itemlist .item { position:relative; }
.itemlist .item a { position:relative; }
.itemlist .item h3 a:link, .itemlist .item h3 a:visited { color:#000; }
.itemlist .item h3 a:hover, .itemlist .item h3 a:active { color:#4e5d9e; }
.itemlist .item.on a { border:0px solid #fff !important; }

.itemlist .item a.imageborder { margin:0; overflow:hidden; }
.itemlist .item .display { transform:scale(1.01); width:100%; height:0; margin:0; padding:0 0 56.25% 0; overflow:hidden; background-color:#000; background-color:rgba(0,0,0,0.1); background-position:center center; background-repeat:no-repeat; -webkit-background-size:cover; -moz-background-size:cover; -o-background-size:cover; background-size:cover; -webkit-transition:all 1s ease-in-out; -moz-transition:all 1s ease-in-out; -o-transition:all 1s ease-in-out; transition:all 1s ease-in-out; }
.itemlist .item a:hover .display, .itemlist a.item:active .display, .itemlist .item.on .display { transform:scale(1.11); }
.itemlist .item .visuals { margin:0 0 10px 0; position:relative; }

.itemlist .item .overlay { position:absolute; left:0px; top:0px; right:0px; bottom:0px; width:100%; height:100%; margin:0; overflow:hidden; }
.itemlist .item .overlay { -webkit-transition:all 0.3s ease-in-out; -moz-transition:all 0.3s ease-in-out; -o-transition:all 0.3s ease-in-out; transition:all 0.3s ease-in-out; }
.itemlist .item .overlay .caption { display:none; font-size:14px; line-height:14px; color:#fff; text-align:center; padding:20px; text-shadow:none; text-shadow:0px 0px 2px rgba(0,0,0,1); position:absolute; left:0px; bottom:0px; width:100%; height:auto; box-sizing:border-box; -webkit-transition:all 0.3s ease-in-out; -moz-transition:all 0.3s ease-in-out; -o-transition:all 0.3s ease-in-out; transition:all 0.3s ease-in-out;}
.itemlist .item .overlay .caption h6 { text-shadow:0px 0px 2px rgba(0,0,0,.3); text-align:left; margin:0; }
.itemlist .item:hover .overlay, .itemlist .item:focus .overlay, .itemlist .item.on .overlay { }

.itemlist .item .texts { text-align:left; }
.itemlist .item .texts .date { font-size:0.8em; margin:0 0 5px 0; }
.itemlist .item .texts .date a:link, .itemlist .item .texts .date a:visited { }
.itemlist .item .texts .date a:hover, .itemlist .item .texts .date a:active { }
.itemlist .item .texts h3 {text-align:left;font-size:24px;font-family:'webfont1', Helvetica, Arial, sans-serif;margin:0 0 5px 0;padding:0;}


/* items */
.item .item_top { margin:0; }
.item .item_top .share_tools a {float:left;font-size:24px;line-height:40px;width:40px;height:40px;/* display:inline-block; */margin:0 10px 10px 0;padding:0px;}
.item .item_top .share_tools a:first-child { }
.item .item_top .date { float:left; line-height:20px; margin:0 0 0 -3px; padding:0 3px; }
.item .item_top .date a:link, .item .item .item_top .date a:visited { color:#666; }
.item .item_top .date a:hover, .item .item .item_top .date a:active { color:#000; }

.item .texts h5 { margin:0 0 10px 0; }
.item .texts h5 a:link, .news .item .texts h5 a:visited { color:#4e5d9e; }
.item .texts h5 a:hover, .news .item .texts h5 a:active { color:#000; }
.item .texts .readmore { margin:10px 0 0 0; }
.item .texts .readmore a .icon:before { margin-left:-0.25em; }
.item .texts .readmore a:link, .item .texts .readmore a:visited { color:#4e5d9e; }
.item .texts .readmore a:hover, .item .texts .readmore a:active { color:#000; }


/* masonry grid */
.grid { text-align:left; margin:0; }
.grid .grid-item { width:30%; width:calc((100% - 60px) / 3); margin:0 0 20px 0; }
.grid .grid-item a.item-link { position:relative; }
.grid .grid-item a.item-link .caption { font-weight:normal; font-family:'webfont3', Impact, Helvetica, Arial, sans-serif; color:#fff; font-size:14px; line-height:16px; background:rgba(23,36,50,0.8); padding:15px 17px; box-sizing:border-box; position:absolute; left:0; bottom:0px; width:100%; display:block; }
.grid .grid-item a.item-link:link .caption, .grid .grid-item a.item-link:visited .caption { filter:alpha(opacity=0); -moz-opacity:0; opacity:0; }
.grid .grid-item a.item-link:hover .caption, .grid .grid-item a.item-link:active .caption, .grid .grid-item a.item-link:focus .caption { filter:alpha(opacity=100); -moz-opacity:1; opacity:1; }
body.device .grid .grid-item a.item-link .caption { filter:alpha(opacity=100) !important; -moz-opacity:1 !important; opacity:1 !important; }
.grid .grid-item .imageborder_holder { box-shadow:1px 2px 7px rgba(0, 0, 0,0.2); }


/* additional */
.section-additional .section_content { max-width:1040px; }
.additional h2 { font-size:48px; }
.additional h2 a:link, .additional h2 a:visited { color:#000; }
.additional h2 a:hover, .additional h2 a:active { color:#4e5d9e; }
.additional .itemlist li:nth-child(4) { display:none; }


/* carousel */
.carousel-holder { position:relative; }
.carousel { position:relative; width:100%; }
.carousel-cell { width:100%; display:block; position:relative; }

.carousel-cell .bg_video_holder { position:absolute; left:0px; top:0px; width:100%; height:100%; display:flex; justify-content:center; align-items:center; flex-direction:row; flex-wrap:nowrap; text-align:center; overflow:hidden; }
.carousel-cell .bg_video_holder video { /* opacity:0.999; chrome black border hack */ opacity:1; outline:none;position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;}
.carousel-cell .bg_video_holder .fg_video { display:none; opacity:0.5; background:rgba(0,0,0,0) url(../images/layout/bg_video_pattern_dark50.png);position:absolute;left:0px;top:0px;width:100%;height:100%;}
/*
.carousel-cell .videoborder { position:absolute; left:0px; top:0px; width:100%; max-width:100%; height:100%; max-height:100%; display:block; z-index:10; border:0px none; margin:0; padding:0; }
.carousel-cell .videoborder .loading { position:absolute; left:50%; top:50%; margin:-25px 0 0 -25px; }
.carousel-cell .videoborder .display { position:absolute; top:50px; left:0px; bottom:50px; right:0px; width:100%; max-width:100%; height:100%; height:calc(100% - 100px); max-height:100%; margin:0; padding:0; display:block; }
.carousel-cell .videoborder iframe, .carousel-cell .videoborder video { position:absolute; top:0; left:0; width:100%; height:100%; }
*/
.carousel-cell .attachment { width:100%; display:flex; flex-direction:row-reverse; align-items:stretch; align-content:center; justify-content:center; position:relative; }
.carousel-cell .attachment .attachment-data { width:50%; position:relative; }
.carousel-cell .attachment .attachment-visuals { min-height:50vw; }
.carousel-cell .attachment .attachment-visuals .attachment-content { overflow:hidden; position:absolute; left:0px; top:0px; width:100%; height:100%; display:block; background-position:center center;background-repeat:no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover; }
.carousel-cell .attachment .attachment-texts { align-self:center; text-align:center; padding:80px 60px 40px 60px; box-sizing:border-box; }
.carousel-cell .attachment .attachment-texts h3 { margin:0 0 20px 0; }
.carousel-cell .attachment .attachment-texts .desc_text { margin:0 0 25px 0; }

.carousel button.previous, .carousel button.next { }
.carousel .flickity-button:hover { color:#fc0; }
.carousel .flickity-button-icon { fill:#fc0; }
.carousel .flickity-button:hover .flickity-button-icon { fill:#fff; }
.carousel .flickity-page-dots { bottom:-10px; }
.carousel .flickity-page-dots .dot.is-selected { /* -webkit-animation: blink-animation 1s step-start 0s infinite; animation: blink-animation 1s step-start 0s infinite; */ }

.carousel-1 button.previous, .carousel-1 button.next { display:none; }
.carousel-1 .flickity-page-dots { display:none; }


/* teaser, carousel */
.teaser { padding:0; }
.teaser .section_wrapper { margin:0; padding:0; }
.teaser .section_content { max-width:100%; padding:0; }
.teaser .section_content h2 { display:none; }

.teaser .carousel-holder { position:relative; }
.teaser .carousel {  width:100%; height:100vh; position:relative; overflow:hidden; background:#000; }
.teaser .carousel-cell { width:100%; height:100%; position:relative; overflow:hidden; background-color:#000;background-position:center center;background-repeat:no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;}
.teaser .carousel-cell .bg_video_holder { position:absolute; left:0px; top:0px; width:100%; height:100%; display:block; }
.teaser .carousel-cell .bg_video_holder .fg_video { opacity:0.9; background:url(../images/layout/bg_video_pattern_dark25.png);position:absolute;left:0px;top:0px;width:100%;height:100%;display:block;}

.teaser .carousel-cell .videoborder { width:100%; height:100%; display:block; z-index:10; border:0px none; margin:0; padding:0; position:relative; background:#000; }
.teaser .carousel-cell .videoborder .loading { position:absolute; left:50%; top:50%; margin:-25px 0 0 -25px; }
.teaser .carousel-cell .videoborder iframe, .teaser .carousel-cell .videoborder video { position:absolute; top:0; left:0; width:100%; height:100%; }

.teaser .carousel-cell .attachment { position:absolute; left:0%; top:0%; width:100%; height:100%; display:table; }
.teaser .carousel-cell .attachment .attachment-data { background:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.05) 40%, rgba(0,0,0,0.8) 100%); position:relative; display:table-cell; padding:0 0 150px 0; vertical-align:bottom; text-align:center; font-size:24px;line-height:1.5em;}
.teaser .carousel-cell .attachment .attachment-data .description { color:#fc0; padding:0 20px; text-align:center; }
.teaser .carousel-cell .attachment .attachment-data .description h3 { color:#fff; text-transform:uppercase; text-shadow:0px 0px 10px rgba(0,0,0,.5); font-size:56px; margin:0 0 20px 0; }
.teaser .carousel-cell .attachment .attachment-data .description h3 .logo { margin:0 auto 20px auto; }
.teaser .carousel-cell .attachment .attachment-data .description .desc_text { text-shadow:0px 0px 10px rgba(0,0,0,.5); font-size:35px; line-height:39px; margin:0; }
.teaser .carousel-cell .attachment .attachment-data .description .buy { font-size:0; margin:20px 0;width:100%;text-align:center;position: absolute;left: 0px;bottom:11%;}
.teaser .carousel-cell .attachment .attachment-data .description .buy li { display:inline-block; margin:5px; }
.teaser .carousel-cell .attachment .attachment-data .description .buy li a { min-width:130px; text-align:center; letter-spacing:1px; display:block; margin:0; height: auto;overflow: visible;}
.teaser .carousel-cell .attachment .attachment-data .description .button { }
.teaser .carousel1 button.previous, .teaser .carousel1 button.next { display:none; }

.teaser .continue { font-size:36px; bottom:80px; left:0px; width:100%; -webkit-animation:arrowbounce 2s 2s infinite; animation:arrowbounce 2s 2s infinite; text-align:center; position:absolute; z-index:120; }
.teaser .continue a:link, .teaser .continue a:visited { color:#fc0; }
.teaser .continue a:hover, .teaser .continue a:active { color:#fff; }


/* home > about */
.about .section_content { max-width:720px; }
.about .items { position:relative; }
.about .items .item { margin:0 0 40px 0; position:relative; }
.about .items .item:last-child { margin:0; }
.about .items .item .heading, .about .items .item .visuals, .about .items .item .texts { width:48%; width:calc(50% - 30px); margin:0 25px 0 0; float:left; position:relative; }
.about .items .item .heading h2 { font-size:36px; margin:0 0 10px 0; font-family:'webfont2', Helvetica, Arial, sans-serif; text-transform:none; text-align:left; }
.about .items .item .texts .text { margin:0 0 20px 0; text-align:justify; }
.about .items .item .heading, .about .items .item .texts { float:right; clear:none; margin:0 0 0 20px; }
.about .items .item .visuals { display:inline-block; margin:6px 25px 0 0; }
.about .items .item:nth-child(even) .heading, .about .items .item:nth-child(even) .texts { float:left; clear:none; margin:0 25px 0 0; }
.about .items .item:nth-child(even) .visuals { float:right; margin:6px 0 0 25px; }
.about .items .item .visuals .videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * (490px)); /* keep tracking of all paddings, borders etc! */ }
.about .items .item.no-visuals .heading, .about .items .item.no-visuals .texts { width:100%; margin:0; }
.about .items .item .texts a { text-decoration:none; border-bottom:1.5px dotted; }


/* home > project */
.project .project_container { text-align:left; }
.project .project_container .loading { position:absolute; left:50%; top:50%; margin:-25px 0 0 -25px; }
.project .project_container h3 { font-family:"webfont1", Helvetica, Arial, sans-serif; margin:0 0 20px 0; }
.project .project_container .carousel { margin:0 0 20px 0; }
.project .project_container .carousel-1 { margin:0; }
.project .project_container .videoborder .display { padding-bottom:0px !important; --ratioWidth:16; --ratioHeight:9; position:relative; margin:0 auto; width:100%; max-width:calc((var(--ratioWidth) / var(--ratioHeight)) * 600px); height:calc((var(--ratioHeight) / var(--ratioWidth)) * (960px)); /* keep tracking of all paddings, borders etc! */ max-height:600px; background:transparent; }

.project .project_container .date { font-size:14px; margin:0 0 20px 0; }
.project .project_container .desc { margin:0 0 40px 0; }
.project .project_container .desc h4 { margin:0 0 10px 0; }
.project .project_container .desc .text { margin:0 0 20px 0; }
.project .project_container .desc .row td { padding:5px 10px 5px 0; }
.project .project_container .desc .row td.value { padding:5px 10px 5px 30px; }


.project .grid { width:100%; display:block; }
.project .grid .grid-item .imageborder_holder { margin:0 0 10px 0; }
.project .grid .grid-item .caption { display:block; font-size:16px; }


/* home > gallery */
.gallery .grid { width:100%; display:block; }
.gallery .grid .grid-item .imageborder_holder { margin:0 0 10px 0; }
.gallery .grid .grid-item .caption { display:block; font-size:16px; }
.gallery .grid .grid-item a.grayscale { transition:all 0.3s ease-in-out; }
.gallery .grid .grid-item a.grayscale:link, .gallery .grid .grid-item a.grayscale:visited { -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); filter: grayscale(100%); -webkit-filter: grey; filter: gray; -webkit-filter: grayscale(100%); }
.gallery .grid .grid-item a.grayscale:hover, .gallery .grid .grid-item a.grayscale:active { -moz-filter:none; -ms-filter:none; filter:none; -webkit-filter:none; }


/* contact */
.contact .section_content { max-width:640px; }
.contact .texts { text-align:center; margin:0 0 10px 0; }
.contact .texts:last-child { margin:0; }

/* misc */
.body_misc .section_misc { border-bottom:0px none; }
.body_misc .footer { border-top: 1px solid #999; }


/* pagination */
.pagination { margin:60px 0 0 0; padding:0; }
.pagination .table { display:table; margin:0 auto; }
.pagination ul { display:table-row; text-align:center; font-size:0; }
.pagination ul li { display:table-cell; vertical-align:middle; }
.pagination ul li.desc { font-family:Helvetica, Arial, sans-serif; white-space:nowrap; padding:0 15px; font-size:18px; }
.pagination a .icon-left-open:before { margin-right:0.1em; }
.pagination a .icon-right-open:before { margin-right:-0.1em; }
.pagination a:link, .pagination a:visited { color:#fff; background:#4e5d9e; font-size:36px; line-height:50px; width:50px; height:50px; text-align:center; display:block; overflow:hidden; border-radius:50%; }
.pagination a:hover, .pagination a:active { color:#fff; background:#000; }


/* footer */
.footer { z-index:1; position:relative; width:100%; min-width:360px; font-size:11px; text-align:center; padding:80px 0; overflow:hidden; }

.footer .logo { position:relative; }
.footer .logo a { position:relative; width:200px; height:auto; display:block; margin:0 auto; }
.footer .logo a img { width:100%; height:auto; display:block; margin:0 auto; }
.footer .logo a:hover, .footer .logo a:active { background:url("../images/icons/logo.gif") center center no-repeat; background-size:200px 200px; }
.footer .logo a:link img, .footer .logo a:visited img { opacity:1; }
.footer .logo a:hover img, .footer .logo a:active img { opacity:0; }

.footer h2.brand { margin:20px 0; font-size:36px; }

.footer .social ul { position:relative; text-align:center; margin:0 auto 20px auto; font-size:0; }
.footer .social li { display:inline-block; margin:0; padding:0 10px; border-right:thin solid rgba(0,0,0,0.5); border-right:1px solid #333; }
.footer .social li:last-child { border-right:0px none; }
.footer .social li a { display:block; text-align:center; font-size:36px; line-height:60px; width:60px; height:60px; overflow:hidden; -moz-border-radius:4px; -webkit-border-radius:4px; border-radius:4px; }
.footer .social li a:link, .footer .social li a:visited { color:#fff; }
.footer .social li a:hover, .footer .social li a:active { color:#ccc; }

.credits { color:#333; text-transform:uppercase;letter-spacing:2px; line-height:14px; margin:-20px 0; padding:20px; }
.credits a:link, .credits a:visited { color:#000; }
.credits a:hover, .credits a:active { color:#000; }
.credits .logout { display:inline-block; margin:0 0 5px 0; }


/* cookies */
.cookies { font-size:16px; line-height:16px; position:fixed; width:100%; box-sizing:border-box; bottom:0px; padding:10px 20px; background:#fff; z-index:10000; border-top:1px solid #666; }
.cookies { -webkit-transition:all 1s ease-in-out; -moz-transition:all 1s ease-in-out; -o-transition:all 1s ease-in-out; transition:all 1s ease-in-out; }
.cookies .text { width:80%; width:calc(100% - 100px); }
.cookies a { color:#fff; font-size:16px; text-align:center; display:block; position:absolute; width:20%; width:100px; height:100%; right:0px; top:0px; padding:10px; box-sizing:border-box; }
.cookies a:link, .cookies a:visited { background-color:#fc0; }
.cookies a:hover, .cookies a:active { background-color:#000; }
.cookies .table { position:relative; width:100%; height:100%; }
.cookies .col { margin:0; padding:0; display:table-cell; vertical-align:middle; }


/* images */
.imageborder, .contentborder { position:relative; border:0px solid #999; }
a.imageborder { display:block; border:0px solid #999; }
a.imageborder:link, a.imageborder:visited, a:link .imageborder, a:visited .imageborder { border:0px solid #999; }
a.imageborder:hover, a.imageborder:active, a:hover .imageborder, a:active .imageborder { border:0px solid #fff; }

.imageborder_holder { margin: 0 0 20px 0;position:relative;overflow:hidden;box-sizing:border-box;}
.imageborder_holder img { width:100%; height:auto !important; }
.imageborder_holder a img { box-sizing:border-box; position:relative; -webkit-transition:-webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.175), opacity 0.1s; transition:transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.175), opacity 0.1s; -webkit-transform:translateZ(0); -ms-transform:translateZ(0); transform:translateZ(0); -webkit-filter:blur(0); filter:blur(0); }
.imageborder_holder a { box-sizing:border-box; position:relative; width:100%; height:100%; display:block; }
.imageborder_holder a .icon { color:#fff; text-shadow:0px 0px 3px rgba(0,0,0,.75); width:100%;height:100%;top:0px;text-align:center;font-size: 48px;display:block;filter:alpha(opacity=0);-moz-opacity:0;opacity:0;position:absolute;-webkit-transition:all 0.3s ease-in-out;-moz-transition:all 0.3s ease-in-out;-o-transition:all 0.3s ease-in-out;transition:all 0.3s ease-in-out;}
.imageborder_holder a .icon:before { position:absolute; width:100%; text-align:center; top:50%; left:0; margin:-16px 0 0 0; padding:0; filter:alpha(opacity=0); -moz-opacity:0; opacity:0; }
.imageborder_holder a:hover .icon, .imageborder_holder a:focus .icon { filter:alpha(opacity=100); -moz-opacity:1; opacity:1; }
.imageborder_holder a:hover .icon:before, .imageborder_holder a:focus .icon:before { filter:alpha(opacity=100); -moz-opacity:1; opacity:1; }
.imageborder_holder a:hover img, .imageborder_holder a:focus img { /* filter:alpha(opacity=0.5); -moz-opacity:0.5; opacity:0.5; */ }

.imageborder_ratio a { position:absolute; top:0px; right:0px; bottom:0px; left:0px; width:100%; height:100%; display:block; }
.imageborder_ratio a .imageborder { position:relative; width:100%; height:100%; box-sizing:border-box; }
.imageborder_ratio a .imageborder .display { position:relative; top:0px; right:0px; bottom:0px; left:0px; display:block; overflow:hidden; width:100%; height:100%; -webkit-transform-style:preserve-3d; -moz-transform-style:preserve-3d; transform-style:preserve-3d; }
.imageborder_ratio a .imageborder .display img { position:relative; width:100%; top:50%; height:auto !important; -webkit-transform:translateY(-50%) translateZ(0); -ms-transform:translateY(-50%) translateZ(0); transform:translateY(-50%) translateZ(0); -webkit-filter:blur(0); filter:blur(0); }
@media screen and (-webkit-min-device-pixel-ratio:0) { /* safari 5.1-6.0 "only" override, stack->q=16348489 */ ::i-block-chrome,.imageborder_ratio a .imageborder .display img { position:absolute; top:0; bottom:0; margin:auto; -webkit-transform:translateY(0) translateZ(0); -ms-transform:translateY(0) translateZ(0); transform:translateY(0) translateZ(0); } }

.imageborder_ratio_s a .imageborder .display { background:#000; }
.imageborder_ratio_s a .imageborder .display img { max-height:100%; max-width:100%; width:auto; height:auto; position:absolute; top:0; bottom:0; left:0; right:0; margin:auto; -webkit-transform:translateY(0) translateZ(0); -ms-transform:translateY(0) translateZ(0); transform:translateY(0) translateZ(0); }

img.contained { max-height:100%; max-width:100%; width:auto; height:auto; position:absolute; top:0; bottom:0; left:0; right:0; margin:auto; }
img.fancybox { cursor:pointer; }
img.grayscale { -webkit-filter:grayscale(100%); filter:grayscale(100%); filter:gray; filter:url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' height='0'><filter id='greyscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0' /></filter></svg>#greyscale"); }

.grayscale { -moz-filter:grayscale(100%); -ms-filter:grayscale(100%); filter:grayscale(100%); filter:gray; filter:url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' height='0'><filter id='greyscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0' /></filter></svg>#greyscale"); -webkit-filter:grayscale(100%); }
.grayscale:hover { -moz-filter:none; -ms-filter:none; filter:none; -webkit-filter:none; }


/* videos */
.videoborder { position:relative; max-height:600px; border:0px solid #999; margin:0 0 20px 0; }
.videoborder .display { width:100%; height:0; display:block; position:relative; padding-bottom:56.25%; overflow:hidden; }
.videoborder .display {padding-bottom:0px !important;--ratioWidth:16;--ratioHeight:9;position:relative;margin:0 auto;width:100%;max-width:calc((var(--ratioWidth) / var(--ratioHeight)) * 600px);height:calc((var(--ratioHeight) / var(--ratioWidth)) * (100vw - 40px)); /* keep tracking of all paddings, borders etc! */max-height:600px;}
.videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * 768px); }
.videoborder .display iframe, .videoborder .display video { position:absolute; top:0; left:0; width:100%; height:100%; }
.videoborder .display .iframe_instagram { top:-54px !important; left:0px; width:100%; height:105%; height:-webkit-calc(100% + 54px); height:calc(100% + 54px); }
.videoborder .display .loading { position:absolute; left:50%; top:50%; margin:-25px 0 0 -25px; color:#666; }


/* misc */
.shadow-paper { position:relative; }
.shadow-paper:before, .shadow-paper:after { z-index:-1; display:block; position: absolute; content: ""; bottom: 15px; left: 10px; width: 50%; top: 80%; max-width:300px; background: #777; -webkit-box-shadow: 0 15px 10px #777; -moz-box-shadow: 0 15px 10px #777; box-shadow: 0 15px 10px #777; -webkit-transform: rotate(-3deg); -moz-transform: rotate(-3deg); -o-transform: rotate(-3deg); -ms-transform: rotate(-3deg); transform: rotate(-3deg); }
.shadow-paper:after { -webkit-transform: rotate(3deg); -moz-transform: rotate(3deg); -o-transform: rotate(3deg); -ms-transform: rotate(3deg); transform: rotate(3deg); right:10px; left:auto; }

.animated_manual_animation { -webkit-animation-duration:1s; animation-duration:1s; -webkit-animation-fill-mode:both; animation-fill-mode:both; }
.animated, .animated_manual { visibility:hidden; }
.visible { visibility:visible; }

.more { text-align:center; font-family:'webfont2', Helvetica, Arial, sans-serif; padding:20px 0 0 0; font-weight:normal; text-transform:none; letter-spacing:0px; display:block; }
.more a { display:inline-block; color:#000; }
.more .button { margin:0 auto; }
.more a:link, .more a:visited { color:#000; }
.more a:hover, .more a:active { color:#000; }
a:link .more, a:visited .more { color:#000; }
a:hover .more, a:active .more { color:#000; }
a.text_truncate_toggle { text-decoration:none; }
.text_truncate .more, a.bold { text-align:left; padding:10px 0; font-size:inherit; line-height:inherit; font-weight:normal; }
.noitems { text-align:center; padding:20px 0; }

.sr-only { position:absolute; width:1px; height:1px; padding: 0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.blw { display:inline-block; width:0.1px; }
.icon-vk:before { margin-left:-7px !important; }
.nomore { margin:10px 0; font-size:12px; line-height:12px; text-transform:uppercase; }
.no_content { text-align:center; } 
#log { position:fixed; z-index:1000; left:5px; bottom:5px; background:#666; color:#fff; text-align:left; font-size:9px; line-height:18px; font-family:Helvetica, Arial, sans-serif; border:2px solid #000; padding:5px; width:500px; max-height:100px; overflow:scroll; overflow-x:hidden; overfow-y:scroll; }
#log .ctrl { position:absolute; right:5px; top:5px; }
.anchor { width:1px; height:1px; overflow:hidden; }
.crypted-email { }
.crypted-email:after { content:attr(data-usr) "@" attr(data-dom) "." attr(data-tld); }
a.copy-email { display:inline-block; transform:translateY(-2px); margin-left:15px; font-size:12px; line-height:18px; font-weight:bold; font-family:Helvetica, Arial, sans-serif; padding:2px 6px; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; -webkit-filter:blur(0); filter:blur(0); }
a.copy-email:link, a.copy-email:visited { color:#000; border:1.5px solid #000; background-color:transparent; }
a.copy-email:hover, a.copy-email:active { color:#fff; border:1.5px solid #000; background-color:#000; }
.email-text { font-size:0.8em; margin-top:7px; }
object, embed { -moz-outline-style:none; outline:none; display:block; margin:0; padding:0; }
.small { font-family:Arial, Helvetica, sans-serif; font-size:12px; }
.loading { text-align:center; font-size:24px; }
.loading .icon:before {line-height:2.5em;}
@-webkit-keyframes pump { 0% {-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)} 100% {-webkit-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2)} }
@keyframes pump { 0% {-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)} 100% {-webkit-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2)} }

.delimiter { filter:alpha(opacity=66); -moz-opacity:0.66; opacity:0.66; }
.round { -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }
.blink { -webkit-animation:blink-animation 1s step-start 0s infinite; animation:blink-animation 1s step-start 0s infinite; } @-webkit-keyframes blink-animation { 50% { opacity:0; } } @keyframes blink-animation { 50% { opacity:0; } }
.shadow { -moz-box-shadow:1px 2px 7px rgba(0, 0, 0,0.2); -webkit-box-shadow:1px 2px 7px rgba(0, 0, 0,0.2); box-shadow:1px 2px 7px rgba(0, 0, 0,0.2); }
.transition_all { -webkit-transition:all 0.3s ease-in-out; -moz-transition:all 0.3s ease-in-out; -o-transition:all 0.3s ease-in-out; transition:all 0.3s ease-in-out; }
.engraved { text-shadow:0px 1px 0px rgba(255,255,255,.3); }
.dimmed { cursor:default; filter:alpha(opacity=33); -moz-opacity:0.33; opacity:0.33; }
.textshadow { text-shadow:0px 0px 3px rgba(0,0,0,.75); }
.noselect { -webkit-touch-callout:none; -webkit-user-select:none; -khtml-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; }
.table { display:table; }
.row { display:table-row; }
.cell { display:table-cell; vertical-align:middle; }
.flex-center { display:-ms-flexbox; display:-webkit-flex; display:flex; -ms-flex-align:center; -webkit-align-items:center; -webkit-box-align:center; align-items:center; }
.v_center_parent { -webkit-transform-style:preserve-3d; -moz-transform-style:preserve-3d; transform-style:preserve-3d; }
.v_center_child { position:relative; top:50%; -webkit-transform:translateY(-50%) translateZ(0) !important; -ms-transform:translateY(-50%) translateZ(0) !important; transform:translateY(-50%) translateZ(0) !important; -webkit-filter:blur(0); filter:blur(0); }
.avoid-clicks { pointer-events:none; }
.h_divider_big { width:100%; height:7px; display:block; border-bottom:1px solid #654f33; background:rgba(0,0,0,0.3) url(../images/layout/bg_h_divider_big.png) center center repeat-x; } 
.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden; }
.clearfix { display:inline-block; }
* html .clearfix { height:1%; }
.clearfix { display:block; }
hr { height:0; border:0; border-top:1px dotted #999; clear:both; margin:15px 0; }
.twocolumns { -webkit-columns:2; -moz-columns:2; columns:2; -webkit-column-gap:2em; -moz-column-gap:2em; column-gap:2em; /* -webkit-column-rule:1px dotted #999; -moz-column-rule:1px dotted #999; column-rule:1px dotted #999; */ }
.threecolumns { -webkit-column-count:3; -moz-column-count:3; column-count:3; -webkit-column-gap:2em; -moz-column-gap:2em; column-gap:2em; }
@-webkit-keyframes arrowbounce { 0%,20%,50%,80%,to { transform: translateY(0) } 40% { transform: translateY(-10px) } 60% { transform: translateY(-5px) } }
@keyframes arrowbounce { 0%,20%,50%,80%,to { transform: translateY(0) } 40% { transform: translateY(-10px) } 60% { transform: translateY(-5px) } }


/* forms */
.form0 { display:none !important; }
label { font-size:16px; text-align:left; display:block; margin:0 0 5px 0; }
label.warning { color:#f00; }

input[type="email"], input[type="number"], input[type="password"], input[type="tel"], input[type="url"], input[type="text"], input, input.text, input.title, textarea, select { font-family:'webfont1', 'Trebuchet MS', Arial, Helvetica, sans-serif; font-size:18px; color:#444; width:100%; box-sizing:border-box; border:1px solid #ccc; background:#eee; margin:0 0 20px 0; padding:15px 10px; }
select { padding:14px 10px; }
textarea { height:150px; }
input.text:focus, input.title:focus, textarea:focus, select:focus { color:#000; background:#fff; }
input[type="text"]:disabled { cursor:not-allowed; }

input.submit, a.button, a.button:link, a.button:visited, .button, button, .button, button, input[type="submit"], input[type="reset"], input[type="button"] { color:#000; border:0px none; background-color:#fc0; font-family:'webfont1', "Trebuchet MS", Helvetica, Arial, sans-serif; font-size:18px; font-weight:normal; text-transform:uppercase; text-decoration:none; display:inline-block; cursor:pointer; margin:0 0 20px 0; padding:15px 20px; box-sizing:border-box; text-align:center; position:relative; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; }
.button:hover, button:hover, a.button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover, .button:active, button:active, a.button:active, input[type="submit"]:active, input[type="reset"]:active, input[type="button"]:active { color:#fff; border:0px none; background-color:#000; }
.button_full { width:100%; display:block; }

input.warning { color:#f00; border:1px solid #c00; background-color:rgba(255,0,0,0.2); }
input.warning:focus { color:#f00; }
input.share_url { padding-left:30px; background-image:url(../images/layout/bg_link.png); background-position:7px center; background-repeat:no-repeat; }

.feedback { display:none; border:1px solid #fc0; margin:0 0 20px 0; padding:30px; text-align:center; color:#000 !important; background:#fc0; position:relative; }
.feedback h5, .feedback h6 { color:#000 !important; }
.feedback a { color:#000 !important; text-decoration:underline; }
.feedback a.close { display:none; position:absolute; right:10px; top:5px; color:#000; font-size:16px; padding:5px; text-decoration:none; background:transparent !important; }
.feedback a.close:hover, .feedback a.close:active { color:#000; background:transparent !important; }
.feedback a.button { margin-top:20px !important; }
.feedback a.button:link, .feedback a.button:visited { color:#fff !important; background-color:#000 !important; }
.feedback a.button:hover, .feedback a.button:active { color:#fff !important; background-color:#333 !important; }


/* share */
body.desktop .share_tools a.share_whatsapp, body.desktop .share_tools a.share_facebook_messenger { display:none !important; }
.share_tools a.button { margin:0 5px 10px 5px; }
.share_tools_big { text-align:right; }
.share_tools_big .share_tools a.button { font-size:20px; width:50px; height:50px; line-height:50px; text-align:center; margin:0 0 10px 10px; padding:0; overflow:hidden; -moz-border-radius:100%; -webkit-border-radius:100%; border-radius:100%; border-style:dashed; }


/* fancybox */
.fancybox-title .share_tools { margin:10px 0 0 0; }
.fancybox-title .infos { width:100%; margin:0; padding:5px 0; font-size:10px; line-height:12px; }
.fancybox-title .infos .loading { font-size:13px; display:inline; }
.fancybox-title .infos .loading .icon { display:inline; }


/* media-queries + device-switches */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {

}

@media screen and (orientation: landscape) {

}

@media screen and (max-height:600px) {
	.nav_overlay .tab ul li { margin:10px 0; }
	.nav_overlay .tab ul li a { line-height:22px; font-size:22px; padding:10px 0 8px 0; }
}

@media screen and (max-width:1096px) {
    .about .items .item .visuals .videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * (50vw - 58.45px)); /* keep tracking of all paddings, borders etc! */ }
    .project .project_container .videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * (100vw - 120px)); }
}

@media screen and (max-width:1024px) {
	/* 3 li pro reihe */
	.itemlist3 { margin:0; }
	.itemlist3 li { width:48%; width:calc(50% - 20px); margin:0 0 40px 0; }
	.itemlist3 li:nth-child(odd) { float:left; }
	.itemlist3 li:nth-child(even) { float:right; }
	.itemlist3 li:nth-child(2n+3) { /* 3., 5., 7. etc... */ clear:both; }
	.itemlist3 li:nth-child(3n+4) { /* 4., 7., 10. etc... */ clear:none; }
    
	.additional .itemlist li:nth-child(4) { display:block; }
}

@media screen and (max-width:824px) {
    .about .items .item { width:80%; margin:0 auto 80px auto; }
    .about .items .item:last-child { margin:0 auto; }
    .about .items .item .heading, .about .items .item .texts, .about .items .item:nth-child(even) .heading, .about .items .item:nth-child(even) .texts { width:100%; float:none; clear:both; margin:0 0 0 0; }
    .about .items .item .visuals, .about .items .item:nth-child(even) .visuals { width:100%; float:none; clear:both; margin:0; }   
    .about .items .item .visuals .videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * (80vw - 45px)); /* keep tracking of all paddings, borders etc! */ }
    .about .items .item .texts .text { }
    
	.videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * (100vw - 57px)); }
	body.device .videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * (100vw - 40px)); }
}

@media screen and (max-width:740px) {
    .project .project_container .videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * (100vw - 120px - 16px)); }
}

@media screen and (max-width:720px) {
	.grid .grid-item { width:48%; width:calc((100% - 30px) / 2); }
}

@media screen and (max-width:640px) {
	body, body div { line-height:1.5em; }

	.header_norm .social { display:none; }
	.nav_overlay .nav_social .social { display:block; }
    
	/* 1 li pro reihe */
	.itemlist li { clear:both !important; float:none !important; width:100% !important; margin:0 0 60px 0 !important; }
    
	.twocolumns { -webkit-columns:1; -moz-columns:1; columns:1; }	
	.threecolumns { -webkit-column-count:2; -moz-column-count:2; column-count:2; -webkit-column-gap:2em; -moz-column-gap:2em; column-gap:2em; }
}

@media screen and (max-width:580px) {
	/* .grid .grid-item { width:100%; } */

    .about .items .item { width:100%; }
    .about .items .item .visuals .videoborder .display { height:calc((var(--ratioHeight) / var(--ratioWidth)) * (100vw - 56.7px)); /* keep tracking of all paddings, borders etc! */ }

	.threecolumns { -webkit-column-count:1; -moz-column-count:1; column-count:1; -webkit-column-gap:0em; -moz-column-gap:0em; column-gap:0em; }
}

@media screen and (max-width:480px) {
}