@font-face {
    font-family: 'bgpupregular';
    src: url('bgpup-regular-webfont.eot');
    src: url('bgpup-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('bgpup-regular-webfont.woff2') format('woff2'),
         url('bgpup-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}


html { -webkit-font-smoothing: antialiased; }

div, article, section, header, footer, nav, li { position: relative; }
.group:after { display: block; height:0; clear: both; content: "."; visibility: hidden; }
::-moz-selection { background: #0020E8; color: #14141E; }
::selection { background: #0020E8; color: #14141E; }

body, input, textarea { }
body { font-family: 'bgpupregular', sans-serif; color: #14141E; background: #FFFFFF; font-size: 100%; line-height: 1; }

html, body { margin: 0; outline: 0; border: none; }


.under { display: block; position: relative; margin: 0 auto; text-align: center; padding: 50px; max-width: 1500px; }
.under-1 { font-size: 3em; }
.under-2 { }




h1, h2, h3, h4, h5, h6 { font-weight: normal; }

a { color: #0020E8; text-decoration: none; border-bottom: 1px solid; cursor: pointer; }
a:hover { border-bottom: none; }
img { max-width: 100%; height: auto; margin: 0 auto; border: none; outline: none;}

p { font-size: 1.5em; }

.exhibition { font-size: 0.5em; line-height: 1.3; text-align: left; }

.loading { display: block; position: fixed; top: 0; left: 0; z-index: 500; background: #0020E8; }
.rotating { display: block; position: absolute; width: 100px; height: 100px; top: 50%; left: 50%; margin-top: -50px; margin-left: -50px; }
.down { display: none; position: fixed; width: 200px; bottom: 25px; left: 50%; margin-left: -100px; text-align: center; font-size: 1em; cursor: pointer; z-index: 99; color: #14141E; }

.sync { width: 20px; }

.everything { position: relative; margin: 0 auto; }

.logo-f { display: none; width: 100%; height: 100%; }
.logo-t { display: table; position: relative; margin: 0 auto; width: 100%; height: 100%; text-align: center; }
.logo-c { display: table-cell; vertical-align: middle; font-size: 15em; line-height: 1; }
.second { position: relative; }

.desklinks { display: none; position: relative; z-index: 100; font-size: 3em; line-height: 1; }
.about { position: fixed; left: 50px; top: 40px; cursor: pointer; }
.contact { position: fixed; right: 50px; top: 40px; cursor: pointer; }
.tldr { position: fixed; right: 50px; bottom: 50px; cursor: pointer; }

.about-s, .contact-s, .tldr-s { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #14141E; z-index: 101; }
.close { position: absolute; right: 50px; top: 40px; font-size: 3em; line-height: 1; color: #FFFFFF; cursor: pointer; }
.info { display: table; width: 100%; height: 100%; text-align: center; color: #FFFFFF; }
.info-wide { display: block; max-width: 800px; height: 100%; margin: 0 auto; padding: 0px 50px 0px 50px; }
.info-text { display: table-cell; vertical-align: middle; margin: 0 auto; font-size: 2em; line-height: 1.3; }
.info a, .info a:hover { font-size: 1.5em; line-height: 1.5; color: #FFFFFF; }

.workslink a { color: #FFFFFF; text-decoration: none; border-bottom: 2px solid; font-size: 1em; line-height: 1.5; cursor: pointer; }
.workslink a:hover { color: #FFFFFF; text-decoration: none; border-bottom: none; font-size: 1em; line-height: 1.5; cursor: pointer; }


.text { display: block; max-width: 1000px; padding: 0px 100px 0px 100px; color: #0021BF;  font-size: 2.2em; line-height: 1.3; font-family: 'net_theinhardt_regularregular', sans-serif;}
.text-2 { display: block; max-width: 1000px; padding: 0px 100px 0px 100px; color: #0021BF;  font-size: 1.6em; line-height: 1.4; font-family: 'net_theinhardt_regularregular', sans-serif;}

.imagery-wrap { text-align: center; }
.imagery { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 5000px; }
.imagery-v { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 5000px; }

.subline { font-size: 0.8em; margin-top: 10px; }
.headline { text-align: center; font-size: 12em; line-height: 1; margin: 50px 0px 50px 0px; }
.bolder { font-family: 'nettheinhardtmedium', sans-serif; }
.thinner { font-family: 'net_theinhardt_regularregular', sans-serif; }

.videoback { width: 100%; background: #14141E; padding: 100px 0px 100px 0px; margin-bottom: 50px; }
.central-v { max-width: 1100px; margin: 0 auto; padding: 50px 50px 50px 50px; text-align: center; }

.rslides { position: relative; list-style: none; overflow: hidden; width: 100%; padding: 0; margin: 0; }
.rslides li { -webkit-backface-visibility: hidden; position: absolute; display: none; width: 100%; left: 0; top: 0; }
.rslides li:first-child { position: relative; display: block; float: left; }
.rslides img { display: block; height: auto; float: left; width: 100%; border: 0; }

.moblinks { display: none; position: fixed; width: 100%; height: 100%; top: 0; left: 0; background: #14141E; z-index: 100; font-size: 3em; line-height: 1; }
.moblinks-t { display: table; width: 100%; height: 100%; text-align: center; color: #FFFFFF; }
.moblinks-c { display: table-cell; vertical-align: middle; margin: 0 auto; }
.about-m { position: relative; margin-top: 10px; cursor: pointer; }
.contact-m { position: relative; margin-top: 10px; cursor: pointer; }
.tldr-m { position: relative; margin-top: 10px; cursor: pointer; }
.close-m { position: absolute; right: 20px; top: 15px; font-size: 0.666em; line-height: 1; color: #FFFFFF; cursor: pointer; }
.m-info, .logo-c2 { display: none; }

@media screen and (min-width:200px) and (max-width:600px) {
.m-info { display: inline; position: fixed; right: 20px; top: 15px; font-size: 2em; line-height: 1; z-index: 100; cursor: pointer;  }
.logo-c2 { display: table-cell; vertical-align: middle; font-size: 4em; line-height: 0.9; }
.sync { width: 10px; }
.about { display: none; }
.contact { display: none; }
.tldr { display: none; }
.logo-c { display: none; }
.desklinks { display: none; position: relative; z-index: 100; font-size: 2em; line-height: 1; }
.close { position: absolute; right: 20px; top: 15px; font-size: 2em; line-height: 1; color: #FFFFFF; cursor: pointer; }
.headline { text-align: center; font-size: 3em; line-height: 1; margin: 50px 0px 50px 0px; }
.text { display: block; max-width: 650px; padding: 0px 50px 0px 25px; color: #0021BF; font-size: 1em; line-height: 1.3; font-family: 'net_theinhardt_regularregular', sans-serif;}
.text-2 { display: block; max-width: 650px; padding: 0px 50px 0px 25px; color: #0021BF; font-size: 1em; line-height: 1.3; font-family: 'net_theinhardt_regularregular', sans-serif;}

.workslink a { color: #FFFFFF; text-decoration: none; border-bottom: 2px solid; font-size: 1em !important; line-height: 1.5 !important; cursor: pointer; }
.workslink a:hover { color: #FFFFFF; text-decoration: none; border-bottom: none; font-size: 1em !important; line-height: 1.5 !important; cursor: pointer; }

.subline { font-size: 0.6em; margin-top: 5px; }
.imagery { display: inline-block; padding: 0px 25px 0px 25px; margin: 50px 0px 50px 0px; max-width: 700px; }
.central-v { max-width: 700px; margin: 0 auto; padding: 50px 25px 50px 25px; text-align: center; }
.imagery-v { display: inline-block; padding: 0px 50px 0px 50px; margin: 50px 0px 50px 0px; max-width: 400px; }
.info-text { display: table-cell; vertical-align: middle; margin: 0 auto; font-size: 0.8em; line-height: 1.3; }

.info-wide { display: block; max-width: 550px; height: 100%; margin: 0 auto; padding: 0px 25px 0px 25px; }
.info a, .info a:hover { font-size: 2.2em; line-height: 1.5; color: #FFFFFF; }
}


@media screen and (min-width: 601px) and (max-width: 700px) {
.sync { width: 20px; }
.logo-c { display: table-cell; vertical-align: middle; font-size: 4em; line-height: 1; }
.desklinks { display: none; position: relative; z-index: 100; font-size: 2em; line-height: 1; }
.close { position: absolute; right: 50px; top: 40px; font-size: 2em; line-height: 1; color: #FFFFFF; cursor: pointer; }
.headline { text-align: center; font-size: 3em; line-height: 1; margin: 50px 0px 50px 0px; }
.text { display: block; max-width: 650px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.4em; line-height: 1.3; font-family: 'net_theinhardt_regularregular', sans-serif;}
.text-2 { display: block; max-width: 650px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.2em; line-height: 1.4; font-family: 'net_theinhardt_regularregular', sans-serif;}

.subline { font-size: 0.8em; margin-top: 5px; }
.imagery { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 700px; }
.central-v { max-width: 700px; margin: 0 auto; padding: 50px 50px 50px 50px; text-align: center; }
.imagery-v { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 400px; }
.info-text { display: table-cell; vertical-align: middle; margin: 0 auto; font-size: 1.3em; line-height: 1.3; }
.info-wide { display: block; max-width: 550px; height: 100%; margin: 0 auto; padding: 0px 50px 0px 50px; }
.m-info, .logo-c2 { display: none; }
}


@media screen and (min-width:701px) and (max-width: 900px) {
.sync { width: 20px; }
.logo-c { display: table-cell; vertical-align: middle; font-size: 5em; line-height: 1; }
.desklinks { display: none; position: relative; z-index: 100; font-size: 2em; line-height: 1; }
.close { position: absolute; right: 50px; top: 40px; font-size: 2em; line-height: 1; color: #FFFFFF; cursor: pointer; }
.headline { text-align: center; font-size: 4em; line-height: 1; margin: 50px 0px 50px 0px; }
.text { display: block; max-width: 650px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.4em; line-height: 1.3; font-family: 'net_theinhardt_regularregular', sans-serif;}
.text-2 { display: block; max-width: 650px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.2em; line-height: 1.4; font-family: 'net_theinhardt_regularregular', sans-serif;}

.subline { font-size: 0.8em; margin-top: 5px; }
.imagery { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 700px; }
.central-v { max-width: 700px; margin: 0 auto; padding: 50px 50px 50px 50px; text-align: center; }
.imagery-v { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 400px; }
.info-text { display: table-cell; vertical-align: middle; margin: 0 auto; font-size: 1.3em; line-height: 1.3; }
.info-wide { display: block; max-width: 550px; height: 100%; margin: 0 auto; padding: 0px 50px 0px 50px; }
.m-info, .logo-c2 { display: none; }
}


@media screen and (min-width:901px) and (max-width:1200px) {
.sync { width: 20px; }
.logo-c { display: table-cell; vertical-align: middle; font-size: 7em; line-height: 1; }
.desklinks { display: none; position: relative; z-index: 100; font-size: 2em; line-height: 1; }
.close { position: absolute; right: 50px; top: 40px; font-size: 2em; line-height: 1; color: #FFFFFF; cursor: pointer; }
.headline { text-align: center; font-size: 5.5em; line-height: 1; margin: 50px 0px 50px 0px; }
.text { display: block; max-width: 650px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.4em; line-height: 1.3; font-family: 'net_theinhardt_regularregular', sans-serif;}
.text-2 { display: block; max-width: 650px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.2em; line-height: 1.4; font-family: 'net_theinhardt_regularregular', sans-serif;}

.subline { font-size: 0.8em; margin-top: 5px; }
.imagery { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 700px; }
.central-v { max-width: 700px; margin: 0 auto; padding: 50px 50px 50px 50px; text-align: center; }
.imagery-v { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 400px; }
.info-text { display: table-cell; vertical-align: middle; margin: 0 auto; font-size: 1.3em; line-height: 1.3; }
.info-wide { display: block; max-width: 700px; height: 100%; margin: 0 auto; padding: 0px 50px 0px 50px; }
.m-info, .logo-c2 { display: none; }
}


@media screen and (min-width:1201px) and (max-width:1400px) {
.sync { width: 20px; }
.logo-c { display: table-cell; vertical-align: middle; font-size: 9em; line-height: 1; }
.desklinks { display: none; position: relative; z-index: 100; font-size: 2.4em; line-height: 1; }
.close { position: absolute; right: 50px; top: 40px; font-size: 2.4em; line-height: 1; color: #FFFFFF; cursor: pointer; }
.headline { text-align: center; font-size: 7em; line-height: 1; margin: 50px 0px 50px 0px; }
.text { display: block; max-width: 750px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.4em; line-height: 1.3; font-family: 'net_theinhardt_regularregular', sans-serif;}
.text-2 { display: block; max-width: 750px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.2em; line-height: 1.4; font-family: 'net_theinhardt_regularregular', sans-serif;}

.subline { font-size: 0.8em; margin-top: 5px; }
.imagery { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 800px; }
.imagery-v { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 450px; }
.central-v { max-width: 800px; margin: 0 auto; padding: 50px 50px 50px 50px; text-align: center; }
.info-text { display: table-cell; vertical-align: middle; margin: 0 auto; font-size: 1.3em; line-height: 1.3; }
.m-info, .logo-c2 { display: none; }
}


@media screen and (min-width:1401px) and (max-width:2000px) {
.sync { width: 20px; }
.logo-c { display: table-cell; vertical-align: middle; font-size: 11em; line-height: 1; }
.headline { text-align: center; font-size: 8.5em; line-height: 1; margin: 50px 0px 50px 0px; }
.desklinks { display: none; position: relative; z-index: 100; font-size: 2.6em; line-height: 1; }
.close { position: absolute; right: 50px; top: 40px; font-size: 2.6em; line-height: 1; color: #FFFFFF; cursor: pointer; }
.text { display: block; max-width: 850px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.9em; line-height: 1.3; font-family: 'net_theinhardt_regularregular', sans-serif;}
.text-2 { display: block; max-width: 850px; padding: 0px 100px 0px 100px; color: #0021BF; font-size: 1.4em; line-height: 1.4; font-family: 'net_theinhardt_regularregular', sans-serif;}

.imagery { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 900px; }
.imagery-v { display: inline-block; padding: 0px 50px 0px 50px; margin: 80px 0px 80px 0px; max-width: 550px; }
.central-v { max-width: 900px; margin: 0 auto; padding: 50px 50px 50px 50px; text-align: center; }
.info-text { display: table-cell; vertical-align: middle; margin: 0 auto; font-size: 1.6em; line-height: 1.3; }
.m-info, .logo-c2 { display: none; }
}

