/* // oliver paff | 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; }

/* 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, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { 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:#000; z-index:10001; }
#loading-animation { width:50px; height:50px; position:absolute; left:50%; top:50%; margin:-25px 0 0 -25px; cursor:pointer; }
@-webkit-keyframes spinner { to { transform: rotate(360deg); } }
@keyframes spinner { to { transform: rotate(360deg); } }
.spinner-border { border:2px solid #888; width:50px; height:50px;  border-right-color: transparent; display: inline-block; vertical-align:text-bottom;border-radius: 50%; -webkit-animation: spinner .75s linear infinite; animation: spinner .75s linear infinite; }


/* basics */
body { overflow:visible !important; color:#ccc; background:#000; font-family:'webfont1', Helvetica, Arial, sans-serif; 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; }
em { font-style:italic; }

h1, h2, h3, h4, h5, h6 { line-height:1.1em; color:#999; font-weight:normal; margin:0px; padding:0px; -ms-hyphens: auto; -moz-hyphens: auto; -webkit-hyphens: auto; hyphens: auto; }
h1, h2, h3, h4, h5 { }
h1 { font-size:42px; }
h2 { font-size:42px; margin:0 0 40px 0; text-align:center; text-transform:uppercase; }
h3 { font-size:32px; }
h4 { font-size:28px; text-align:center; }
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:#fff; text-decoration:none; -moz-outline-style:none; outline:none; }
a:hover, a:active { color:#ccc; text-decoration:none; -moz-outline-style:none; outline:none; }
.texts a:link, .texts a:visited { }
.texts a:hover, .texts a:active { }
.text a:link, .text a:visited { text-decoration:underline; }
.text a:hover, .text a:active { text-decoration:underline; }
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 */
.header { background:rgba(0,0,0,0.85); text-align:left; position:fixed; pointer-events:none; width:100%; left:0px; top:0px; z-index:7000; transition:all 1s; }
.header { -moz-box-shadow:0px 0px 7px rgba(0,0,0,0.3); -webkit-box-shadow:0px 0px 7px rgba(0,0,0,0.3); box-shadow:0px 0px 7px rgba(0,0,0,0.3); }
.header a { pointer-events:all; }

.header .menu { display:none; position:absolute; text-align:center; width:48px; height:48px; left:12px; top:6px; margin:0; }
.header .menu a.btn { display:block; width:32px; height:18px; padding:15px 8px; }
.header .menu a.btn .nav-icon { position:relative; width:32px; height:18px; display:block; }
.header .menu a.btn .nav-icon span {position:absolute;width:32px;height:2px;display:block; background:#888;-webkit-transition:all .3s cubic-bezier(.35,0,.25,1); transition:all .3s cubic-bezier(.35,0,.25,1);}
.header .menu a.btn:hover .nav-icon span, .header .menu a.btn:active .nav-icon span { background:#fff; }
.header .menu a.btn .nav-icon span:nth-child(1) { top:0px; }
.header .menu a.btn .nav-icon span:nth-child(2) { top:8px; }
.header .menu a.btn .nav-icon span:nth-child(3) { bottom:0px; }

.header .brand { padding:5px 0 0 0; display:block; position:relative; }

.header .brand a.logo, body.menu_on .header a.logo { width:180px; height:36px; margin:20px auto 10px auto; display:block; position:relative; }
.header .brand a.logo .svg { width:100%; height:auto; }
.header .brand a.logo:link .fill, .header .brand a.logo:visited .fill { fill:#888; }
.header .brand a.logo:hover .fill, .header .brand a.logo:active .fill { fill:#fff; }

.header .nav { height:40px; overflow:hidden; display:block; width:100%; text-align:center; }
.header .nav ul { font-size:0; text-align:center; display:block; }
.header .nav ul li { margin:0; font-size:20px; line-height:20px; text-transform:uppercase; text-align:center; display:inline-block; }
.header .nav ul li a { letter-spacing:1.5px; padding:10px 20px 5px 20px; display:block; }
.header .nav ul li a:link, .header .nav ul li a:visited { color:#888; }
.header .nav ul li a:hover, .header .nav ul li a:active { color:#fff; }
.header .nav ul li.on a { color:#fff; }

.header .social { position:absolute; right:73px; top:17px; }
.header .social ul { text-align:center; font-size:0; }
.header .social ul li { float:none; display:inline-block; margin:0; }
.header .social ul li a { text-align:center; font-size:28px; line-height:45px; width:45px; height:45px; display:block; }
.header .social ul li a:link, .header .social ul li a:visited { color:#888; }
.header .social ul li a:hover, .header .social ul li a:active, .header .social ul li a:focus { color:#fff; }

body.scrollDown .header, body.menu_on .header { -moz-box-shadow:0px 0px 7px rgba(0,0,0,0.3); -webkit-box-shadow:0px 0px 7px rgba(0,0,0,0.3); box-shadow:0px 0px 7px rgba(0,0,0,0.3); }
body.scrollDown .header .menu, body.menu_on .header .menu { display:block; }
body.scrollDown .header .brand a.logo, body.menu_on .header .brand a.logo  { margin:10px auto; }
body.scrollDown .header .nav, body.menu_on .header .nav { height:0; opacity:0; }
body.scrollDown .header .social, body.menu_on .header .social { top:7px; }
body.scrollDown .header .dropdown, body.menu_on .header .dropdown { top:13px; }


/* header > nav_overlay */
body .nav_overlay { background:rgba(30,30,30,0.97); opacity:0; 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 { margin:20px 0; }
.nav_overlay .nav ul { display:block; position:relative; font-size:0px; }
.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-size:32px; padding:20px 0; display:inline-block; text-transform:uppercase; }
.nav_overlay .nav ul li a:link, .nav_overlay .nav ul li a:visited { color:#888; }
.nav_overlay .nav ul li a:hover, .nav_overlay .nav ul li a:active { color:#fff; }
.nav_overlay .nav ul li.on a { color:#fff; }

.nav_overlay .nav_sub { display:none; margin:10px 0; }
.nav_overlay .nav_sub ul li a { font-size:20px; padding:10px 0; display:inline-block; }
.nav_overlay .nav_sub ul li.on a { color:#000; }
.nav_overlay a.toggle-link { position:relative; }
.nav_overlay a.toggle-link .icon { position:absolute; top:12px; left:-40px; display:inline-block; margin-left:5px; transition:transform .2s; }
.nav_overlay a.toggle-link.active .icon:before { transform:rotate(180deg); }

.nav_overlay .nav_social .social { display:none; }
.nav_overlay .nav_social .social ul { text-align:center; margin:0 auto; font-size:0; 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:36px; 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 { color:#888; }
.nav_overlay .nav_social .social li a:hover, .nav_overlay .nav_social .social li a:focus { color:#fff; }
.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 { overflow:hidden; }
body.menu_on::-webkit-scrollbar { display:none; }
body.menu_on { /* ff */ scrollbar-width:none; }
body.menu_on .header .menu a.btn:link .nav-icon span, body.menu_on .header .menu a.btn:visited .nav-icon span { background:#fff; }
body.menu_on .header .menu a.btn:hover .nav-icon span, body.menu_on .header .menu a.btn:active .nav-icon span { background:#ccc; }
body.menu_on .header .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 .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 .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 .nav_overlay { opacity:100; top:0px !important; }


/* wrapper, article, section, body_section */
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:110px auto 0 auto; position:relative; }
section { position:relative; display:block; }
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_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 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 { }

.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:20px; line-height:20px; 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:#888; }
ul.sub_nav li a:hover, ul.sub_nav li a:active { color:#fff; }
ul.sub_nav li.on a { color:#fff; }


/* 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:#a21630; }
.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:before { content:''; display:block; position:absolute; left:0px; top:-16px; height:33px; width:100%; background:url(../images/layout/tape1-white-4.png) center center no-repeat;  background-size:200px 33px; z-index:200; }
.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 { margin:0 0 5px 0; }
.itemlist .item .texts .date a:link, .itemlist .item .texts .date a:visited { color:#999; }
.itemlist .item .texts .date a:hover, .itemlist .item .texts .date a:active { color:#a21630; }
.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:#a21630; }
.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:#a21630; }
.item .texts .readmore a:hover, .item .texts .readmore a:active { color:#000; }


/* additional */
.additional { position:relative; max-width:1040px; margin:120px auto 0 auto; padding:0 20px; }
.additional .additional-header .h2_container:before { margin-top:21px; }
.additional .additional-header .h2_container h2 { font-size:36px; margin:0 0 40px 0; }
.additional .itemlist li:nth-child(4) { 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 .continue { display:none; position:absolute;left:0px;bottom:35px;width:100%;text-align:center;z-index:120;}
.teaser .continue h6 a { font-size:32px; color:#f48e1f; border:0px none; background:transparent; display:inline-block; position:relative; width:45px; height:45px; line-height:47px; -moz-border-radius:50%; -webkit-border-radius:50%; border-radius:50%; }
.teaser .continue h6 a:hover, .teaser .continue h6 a:active { color:#fff; background:transparent; }
.teaser #ticker-area { font-size:22px; margin:20px 0 0 0; text-transform:uppercase; min-height:64px; }
.teaser .description { }
.teaser .description .obj { width:auto; height:40vh; height:calc(55vh - 100px); margin:0 auto 40px auto; }
.teaser .description .logo { display:block; width:100%; margin:0 auto; }
.teaser .description .logo .svg { width:auto; height:40vh; height:calc(40vh - 200px); }
.teaser .description .logo .fill { stroke:#333; fill:#ccc; }
.teaser .description a.logo { width:50%; margin:0 auto; display:block; }
.teaser .description a.logo:link .fill, .teaser .description a.logo:visited .fill { fill:#ccc; }
.teaser .description a.logo:hover .fill, .teaser .description a.logo:active .fill { fill:#fff; }
.teaser .description a.logo:hover, .teaser .description a.logo:active { }
.teaser .description .title { position:relative; }
.teaser .description .title img { width:100%; height:auto; max-width:500px; margin:0 auto; position:relative; }
.teaser .description .title .glow { width:100%; height:100%; position:absolute; left:0px; top:0px; background:url("../images/content/title_glow.png") no-repeat center center; background-size:auto 100%; display:block; }
.teaser .description .date { font-family:Helvetica, Arial, sans-serif; font-size:44px; display:block; }

.teaser .carousel-holder { position:relative; }
.teaser .carousel {  width:100%; height:100vh; height:calc(100vh - 100px); 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 { background: rgba(0,0,0,0.1) url(../images/layout/bg_noise_s.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 {position:relative;display:table-cell;padding:70px 0 0 0;vertical-align:top;text-align:center;font-size:24px;line-height:1.5em;}
.teaser .carousel-cell .attachment .attachment-data .description { color:#fff; padding:0 20px; text-align:center; }
.teaser .carousel-cell .attachment .attachment-data .description h3 { letter-spacing:2px; margin:0 0 20px 0; }
.teaser .carousel-cell .attachment .attachment-data .description .desc_text { font-size:24px; letter-spacing:3px; margin:0; text-transform:uppercase; }
.teaser .carousel-cell .attachment .attachment-data .description .buy { font-size:0; margin:20px 0;width:100%;text-align:center;position: absolute;left: 0px;bottom:7%;}
.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:150px; 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; }


/* itemview */
.body_itemview .section_content { max-width:640px; }
.itemview .visuals { margin-bottom:20px; }
.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 .image_deco:before, .itemview .videoborder:before { pointer-events:none; content:''; display:block; position:absolute; left:0px; top:-16px; height:33px; width:100%; background:url(../images/layout/tape1-white-4.png) center center no-repeat;  background-size:200px 33px; z-index:200; }

.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 .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; font-family:Consolas, "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", Monaco, "Courier New", "monospace"; margin:40px 0 0 0; background:#fff; padding:20px; }


/* page */
.body_page .section_content { max-width:1040px; }
.body_page .itemview .item-visuals { width:48%; width:calc(50% - 20px); float:left; }
.body_page .itemview .item-texts { width:48%; width:calc(50% - 20px); float:right; }
.body_page .itemview.text-only { max-width:640px; margin:0 auto; }
.body_page .itemview.text-only .item-texts { width:100%; float:none; }
.body_page .itemview .item-texts ul li { margin:0 0 10px 0; }


/* gallery */
.body_gallery .carousel { }
.body_gallery .carousel-cell { width:100%; height:75vh; max-height:600px; margin-right:10px; }
.body_gallery .carousel-cell-image { display:block; max-height:90%; max-height:calc(100% - 70px); margin:0 auto; max-width:100%; opacity:0; -webkit-transition:opacity 0.4s; transition:opacity 0.4s; }
.body_gallery .carousel-cell-image.flickity-lazyloaded, .body_gallery .carousel-cell-image.flickity-lazyerror { opacity:1; } /* fade in lazy loaded image */
.body_gallery .carousel-cell .caption { width:100%; height:60px; position:absolute; left:0px; bottom:0px; text-align:center; }
.body_gallery .carousel-cell .caption-name, .body_gallery .carousel-cell .caption-text { display:block; width:90%; height:30px; margin:0 auto; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; text-align:center; vertical-align:middle; position:relative; }
.body_gallery .carousel-cell .caption-name { color:#999; }
.body_gallery .carousel-cell .caption-text { color:#888; font-size:0.8em; }


/* pagination */
.pagination { margin: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; font-size:36px; vertical-align:middle; }
.pagination ul li.desc { padding:0 15px; font-size:18px; }


/* footer */
.footer { z-index:1; position:relative; width:100%; min-width:360px; font-size:9px; text-align:center; padding:160px 0 80px 0; }
.footer-off { -moz-box-shadow:0px 0px 7px rgba(0,0,0,0.15); -webkit-box-shadow:0px 0px 7px rgba(0,0,0,0.15); box-shadow:0px 0px 7px rgba(0,0,0,0.15); }

.footer .logo a { position:relative; width:100px; height:20px; display:block; margin:0 auto; }
.footer .logo a .svg { width:100%; height:auto; display:block; margin:0 auto; }
.footer .logo a:link .fill, .footer .logo a:visited .fill { fill:#888; }
.footer .logo a:hover .fill, .footer .logo a:active .fill { fill:#fff; }

.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:#888; }
.footer .social li a:hover, .footer .social li a:active { color:#fff; }

.credits {color:#ccc; text-transform:uppercase;letter-spacing:3px;line-height:14px;padding:0 20px;}
.credits a:link, .credits a:visited { color:#888; }
.credits a:hover, .credits a:active { color:#fff; }
.credits .logout { display:inline-block; margin:0 0 5px 0; }
.credits .delimiter { filter:alpha(opacity=30); -moz-opacity:0.3; opacity:0.3; }


/* 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; background:#fafafa; }
.videoborder .display { width:100%; height:0; display:block; position:relative; padding-bottom:56.25%; background:#000; 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:left; padding:20px 0 0 0; font-weight:normal; text-transform:uppercase; letter-spacing:1px; }
.more a { display:inline-block; }
.more .button { margin:0 auto; }
.more a:link, .more a:visited { }
.more a:hover, .more a:active { }
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; }
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)} }

.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=50); -moz-opacity:0.50; opacity:0.50; }
.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; }


/* 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:#888; border:1px solid #888; background-color:#000; 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:10px 15px; box-sizing:border-box; text-align:center; position:relative; -moz-border-radius:0px; -webkit-border-radius:0px; border-radius:0px; }
.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:#000; border:1px solid #888; background-color:#888; }
.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 #b6b656;margin:0 0 20px 0;padding:30px;text-align:center;color:#000;background:#ffffdd;position:relative;font-family: 'webfont1', Helvetica, Arial, sans-serif;}
.feedback a { color:#000; text-decoration:underline; padding:15px; }
.feedback a.close { display:none; position:absolute; right:-10px; top:-10px; color:#000 !important; font-size:24px; text-decoration:none; }
.feedback a.close:hover, .feedback a.close:active { color:#000; }


/* 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:24px; width:49px; height:49px; line-height:48px; text-align:center; margin:0 10px 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: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) {
	.header .menu { display:block; top:7px; }
	.header .brand a.logo, body.menu_on .header a.logo { margin:10px auto; }
	.header .nav { height:0; opacity:0; }
	.header .social { top:7px; display:none; }
	
	.nav_overlay .nav_social .social { display:block; }	
	
	article { margin:60px auto 0 auto; }

	.carousel { height:calc(100vh - 60px); }

	.body_page .itemview { max-width:540px; margin:0 auto; }
	.body_page .itemview .item-visuals { width:100%; float:none; margin:0 auto 30px auto; }
	.body_page .itemview .item-texts { width:100%; float:none; }
	
	.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:640px) {
	body, body div { line-height:1.5em; }

	/* 1 li pro reihe */
	.itemlist li { clear:both !important; float:none !important; width:100% !important; margin:0 0 60px 0 !important; }
	.additional .itemlist li:nth-child(4) { display:none; }
	
	.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) {
	.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) {
}