/* open-sans-regular - latin */
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; src: local("Open Sans Regular"), local("OpenSans-Regular"), url("/res/css/fonts/open-sans-v16-latin-regular.woff2") format("woff2"), url("/res/css/fonts/open-sans-v16-latin-regular.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }
/* open-sans-italic - latin */
@font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 400; src: local("Open Sans Italic"), local("OpenSans-Italic"), url("/res/css/fonts/open-sans-v16-latin-italic.woff2") format("woff2"), url("/res/css/fonts/open-sans-v16-latin-italic.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }
/* open-sans-700 - latin */
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 700; src: local("Open Sans Bold"), local("OpenSans-Bold"), url("/res/css/fonts/open-sans-v16-latin-700.woff2") format("woff2"), url("/res/css/fonts/open-sans-v16-latin-700.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }
/* open-sans-700italic - latin */
@font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 700; src: local("Open Sans Bold Italic"), local("OpenSans-BoldItalic"), url("/res/css/fonts/open-sans-v16-latin-700italic.woff2") format("woff2"), url("/res/css/fonts/open-sans-v16-latin-700italic.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }
/* open-sans-800 - latin */
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 800; src: local("Open Sans ExtraBold"), local("OpenSans-ExtraBold"), url("/res/css/fonts/open-sans-v16-latin-800.woff2") format("woff2"), url("/res/css/fonts/open-sans-v16-latin-800.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }
/* open-sans-800italic - latin */
@font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 800; src: local("Open Sans ExtraBold Italic"), local("OpenSans-ExtraBoldItalic"), url("/res/css/fonts/open-sans-v16-latin-800italic.woff2") format("woff2"), url("/res/css/fonts/open-sans-v16-latin-800italic.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }
/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain)
*/
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 { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

table { border-collapse: collapse; border-spacing: 0; }

button { padding: 0; border: none; font: inherit; color: inherit; background-color: transparent; cursor: pointer; }

/* End reset */
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger { padding: 0 0; display: inline-block; cursor: pointer; transition-property: opacity, filter; transition-duration: 0.15s; transition-timing-function: linear; font: inherit; color: inherit; text-transform: none; background-color: transparent; border: 0; margin: 0; overflow: visible; /*&:hover { @if $hamburger-hover-use-filter == true { filter: $hamburger-hover-filter; } @else { opacity: $hamburger-hover-opacity; }
}*/ }
.hamburger.is-active { /*&:hover { @if $hamburger-hover-use-filter == true { filter: $hamburger-active-hover-filter; } @else { opacity: $hamburger-active-hover-opacity; }
}*/ }
.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after { background-color: #000; }

.hamburger-box { width: 25px; height: 17px; display: inline-block; position: relative; }

.hamburger-inner { display: block; top: 50%; margin-top: -1.5px; }
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after { width: 25px; height: 3px; background-color: #000; border-radius: 0; position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; }
.hamburger-inner::before, .hamburger-inner::after { content: ""; display: block; }
.hamburger-inner::before { top: -7px; }
.hamburger-inner::after { bottom: -7px; }

/* Squeeze */
.hamburger--squeeze .hamburger-inner { transition-duration: 0.075s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--squeeze .hamburger-inner::before { transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
.hamburger--squeeze .hamburger-inner::after { transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--squeeze.is-active .hamburger-inner { transform: rotate(45deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
.hamburger--squeeze.is-active .hamburger-inner::before { top: 0; opacity: 0; transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
.hamburger--squeeze.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

.clearfix::after { display: block; content: ""; clear: both; }

body { position: relative; background-color: #fff; color: #000; font-family: 'Open Sans', Arial, sans-serif; font-size: 0.96rem; font-weight: 500; line-height: 130%; padding: 0; margin: 0; min-height: 100vh; }
@media (max-width: 770px) { body { font-size: 0.92rem; } }
@media (max-width: 460px) { body { font-size: 0.88rem; } }
body.homepage { overflow: hidden; }
body.homepage #content { padding: 0; margin: 0; width: 100%; max-width: unset; }

a, a:hover, a:visited { color: #000; text-decoration: none; -moz-transition: opacity 0.2s ease; -o-transition: opacity 0.2s ease; -webkit-transition: opacity 0.2s ease; transition: opacity 0.2s ease; }

#content p a:hover { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80); opacity: 0.8; }

strong { font-weight: 700; }

em { font-style: italic; }

h2, h3, h4 { font-weight: 700; }

h1.error-heading, h1:not(.project-name) { font-size: 1.6em; font-weight: 800; margin: 1em 0 1.5em 0; line-height: 120%; }
h1.project-name { font-size: 0.96em; font-weight: 500; border-bottom: 1px solid #000; padding-bottom: 10px; }
h1.project-name span.name-add { font-weight: 700; }

h2 { border-bottom: 1px solid #000; padding-bottom: 0.25em; margin-bottom: 1.25em; }
p + h2, ul + h2 { margin-top: 2em; }

h3 { font-size: 0.96em; }

h4 { font-size: 0.96em; font-style: italic; }

p + p, p + h3, p + ul, ul + p, ul + h3 { margin-top: 1em; }

p + h4, ul + h4, h4 + p { margin-top: 1.5em; }

#dill-logo { position: absolute; height: 90%; top: 5%; left: 17px; background-image: url("p/dill-logo.svg");}
@media (max-width: 460px) { #dill-logo { left: 6px; } }
body.project-detail #dill-logo, body.project-grid #dill-logo { background-image: url("p/dill-logo-s.svg"); }
#dill-logo a { display: block; height: 100%; }
#dill-logo img { height: 100%; visibility: hidden; }

#content:not(.no-js) #nav { will-change: padding; }

#nav { position: fixed; top: 20px; color: #fff; font-size: 1.04rem; right: 20px; max-height: 44px; width: 153px; height: 0; -moz-transition: all 0.35s ease 0.25s; -o-transition: all 0.35s ease 0.25s; -webkit-transition: all 0.35s ease; -webkit-transition-delay: 0.25s; transition: all 0.35s ease 0.25s; }
@media (max-width: 770px) { #nav { top: unset; bottom: 20px; color: #000; } }
#nav::before { position: fixed; top: 20px; right: 20px; content: ""; display: block; background-color: #e5e723; width: 44px; height: 44px; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; -moz-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0.15s; -o-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0.15s; -webkit-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1); -webkit-transition-delay: 0.15s; transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0.15s; }
@media (max-width: 770px) { #nav::before { top: unset; bottom: 30px; } }
body.project-detail #nav::before, body.project-grid #nav::before { background-color: #000; }
#nav #nav_1 { position: absolute; top: 44px; right: 8px; text-align: right; width: 145px; height: 100%; }
@media (max-width: 770px) { #nav #nav_1 { top: unset; bottom: 52px; } }
#nav ul { line-height: 150%; width: 100%; height: 100%; padding: 0; margin: 0; overflow: hidden; position: absolute; top: 0; }
@media (max-width: 770px) { #nav ul { top: unset; bottom: 0; display: flex; flex-direction: column; } }
#nav ul li { list-style: none; position: relative; top: 0; will-change: top, opacity; }
@media (min-width: 771px) { #nav ul li:nth-child(1) { -moz-animation: fadeOut 0.15s 0.15s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.15s ease-in-out normal both; animation: fadeOut 0.15s 0.15s ease-in-out normal both; }
  #nav ul li:nth-child(2) { -moz-animation: fadeOut 0.15s 0.125s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.125s ease-in-out normal both; animation: fadeOut 0.15s 0.125s ease-in-out normal both; }
  #nav ul li:nth-child(3) { -moz-animation: fadeOut 0.15s 0.1s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.1s ease-in-out normal both; animation: fadeOut 0.15s 0.1s ease-in-out normal both; }
  #nav ul li:nth-child(4) { -moz-animation: fadeOut 0.15s 0.075s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.075s ease-in-out normal both; animation: fadeOut 0.15s 0.075s ease-in-out normal both; }
  #nav ul li:nth-child(5) { -moz-animation: fadeOut 0.15s 0.05s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.05s ease-in-out normal both; animation: fadeOut 0.15s 0.05s ease-in-out normal both; }
  #nav ul li:nth-child(6) { -moz-animation: fadeOut 0.15s 0.025s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.025s ease-in-out normal both; animation: fadeOut 0.15s 0.025s ease-in-out normal both; }
  #nav ul li:nth-child(7) { -moz-animation: fadeOut 0.15s 0s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0s ease-in-out normal both; animation: fadeOut 0.15s 0s ease-in-out normal both; } }
@media (max-width: 770px) { #nav ul li:nth-child(7) { -moz-animation: fadeOut 0.15s 0.15s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.15s ease-in-out normal both; animation: fadeOut 0.15s 0.15s ease-in-out normal both; }
  #nav ul li:nth-child(6) { -moz-animation: fadeOut 0.15s 0.125s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.125s ease-in-out normal both; animation: fadeOut 0.15s 0.125s ease-in-out normal both; }
  #nav ul li:nth-child(5) { -moz-animation: fadeOut 0.15s 0.1s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.1s ease-in-out normal both; animation: fadeOut 0.15s 0.1s ease-in-out normal both; }
  #nav ul li:nth-child(4) { -moz-animation: fadeOut 0.15s 0.075s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.075s ease-in-out normal both; animation: fadeOut 0.15s 0.075s ease-in-out normal both; }
  #nav ul li:nth-child(3) { -moz-animation: fadeOut 0.15s 0.05s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.05s ease-in-out normal both; animation: fadeOut 0.15s 0.05s ease-in-out normal both; }
  #nav ul li:nth-child(2) { -moz-animation: fadeOut 0.15s 0.025s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0.025s ease-in-out normal both; animation: fadeOut 0.15s 0.025s ease-in-out normal both; }
  #nav ul li:nth-child(1) { margin-top: auto; -moz-animation: fadeOut 0.15s 0s ease-in-out normal both; -webkit-animation: fadeOut 0.15s 0s ease-in-out normal both; animation: fadeOut 0.15s 0s ease-in-out normal both; } }
#nav ul li a { display: block; height: 100%; color: #000; }
body.project-detail #nav ul li a, body.project-grid #nav ul li a { color: #fff; }
#nav ul li a:hover { text-decoration: underline; }
#nav ul li a.active { font-weight: 700; }
#nav.active, body.no-js #nav { width: 153px; height: 170px; max-width: 153px; max-height: 170px; overflow: visible; -moz-transition: all 0.5s ease 0s; -o-transition: all 0.5s ease 0s; -webkit-transition: all 0.5s ease; -webkit-transition-delay: 0s; transition: all 0.5s ease 0s; }
#nav.active::before, body.no-js #nav::before { padding: 179px; margin: -179px; -moz-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0s; -o-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0s; -webkit-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1); -webkit-transition-delay: 0s; transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0s; }
#nav.active #nav_1, body.no-js #nav #nav_1 { display: block; }
@media (min-width: 771px) { #nav.active ul li:nth-child(1), body.no-js #nav ul li:nth-child(1) { -moz-animation: fadeIn 0.15s 0.175s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.175s ease-in-out normal both; animation: fadeIn 0.15s 0.175s ease-in-out normal both; }
  #nav.active ul li:nth-child(2), body.no-js #nav ul li:nth-child(2) { -moz-animation: fadeIn 0.15s 0.208s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.208s ease-in-out normal both; animation: fadeIn 0.15s 0.208s ease-in-out normal both; }
  #nav.active ul li:nth-child(3), body.no-js #nav ul li:nth-child(3) { -moz-animation: fadeIn 0.15s 0.241s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.241s ease-in-out normal both; animation: fadeIn 0.15s 0.241s ease-in-out normal both; }
  #nav.active ul li:nth-child(4), body.no-js #nav ul li:nth-child(4) { -moz-animation: fadeIn 0.15s 0.274s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.274s ease-in-out normal both; animation: fadeIn 0.15s 0.274s ease-in-out normal both; }
  #nav.active ul li:nth-child(5), body.no-js #nav ul li:nth-child(5) { -moz-animation: fadeIn 0.15s 0.307s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.307s ease-in-out normal both; animation: fadeIn 0.15s 0.307s ease-in-out normal both; }
  #nav.active ul li:nth-child(6), body.no-js #nav ul li:nth-child(6) { -moz-animation: fadeIn 0.15s 0.34s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.34s ease-in-out normal both; animation: fadeIn 0.15s 0.34s ease-in-out normal both; }
  #nav.active ul li:nth-child(7), body.no-js #nav ul li:nth-child(7) { -moz-animation: fadeIn 0.15s 0.373s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.373s ease-in-out normal both; animation: fadeIn 0.15s 0.373s ease-in-out normal both; } }
@media (max-width: 770px) { #nav.active ul li:nth-child(7), body.no-js #nav ul li:nth-child(7) { -moz-animation: fadeIn 0.15s 0.175s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.175s ease-in-out normal both; animation: fadeIn 0.15s 0.175s ease-in-out normal both; }
  #nav.active ul li:nth-child(6), body.no-js #nav ul li:nth-child(6) { -moz-animation: fadeIn 0.15s 0.208s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.208s ease-in-out normal both; animation: fadeIn 0.15s 0.208s ease-in-out normal both; }
  #nav.active ul li:nth-child(5), body.no-js #nav ul li:nth-child(5) { -moz-animation: fadeIn 0.15s 0.241s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.241s ease-in-out normal both; animation: fadeIn 0.15s 0.241s ease-in-out normal both; }
  #nav.active ul li:nth-child(4), body.no-js #nav ul li:nth-child(4) { -moz-animation: fadeIn 0.15s 0.274s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.274s ease-in-out normal both; animation: fadeIn 0.15s 0.274s ease-in-out normal both; }
  #nav.active ul li:nth-child(3), body.no-js #nav ul li:nth-child(3) { -moz-animation: fadeIn 0.15s 0.307s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.307s ease-in-out normal both; animation: fadeIn 0.15s 0.307s ease-in-out normal both; }
  #nav.active ul li:nth-child(2), body.no-js #nav ul li:nth-child(2) { -moz-animation: fadeIn 0.15s 0.34s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.34s ease-in-out normal both; animation: fadeIn 0.15s 0.34s ease-in-out normal both; }
  #nav.active ul li:nth-child(1), body.no-js #nav ul li:nth-child(1) { -moz-animation: fadeIn 0.15s 0.373s ease-in-out normal both; -webkit-animation: fadeIn 0.15s 0.373s ease-in-out normal both; animation: fadeIn 0.15s 0.373s ease-in-out normal both; } }

body.project-detail .hamburger-inner, body.project-detail .hamburger-inner::before, body.project-detail .hamburger-inner::after, body.project-detail .hamburger.is-active .hamburger-inner, body.project-detail .hamburger.is-active .hamburger-inner::before, body.project-detail .hamburger.is-active .hamburger-inner::after, body.project-grid .hamburger-inner, body.project-grid .hamburger-inner::before, body.project-grid .hamburger-inner::after, body.project-grid .hamburger.is-active .hamburger-inner, body.project-grid .hamburger.is-active .hamburger-inner::before, body.project-grid .hamburger.is-active .hamburger-inner::after { background-color: #fff; }

.chevron::before, .chevron::after { border-style: solid; border-width: 0.3em 0 0 0; content: ''; display: inline-block; height: 1.05em; left: 0.8em; top: 1em; width: 1.3em; position: absolute; }
.chevron::before { transform: rotate(-45deg); }
.chevron::after { transform: rotate(45deg); }

#fab, #scroll-to-top { position: fixed; right: 20px; width: 44px; height: 44px; padding: 0; -moz-transform: scale(1); -ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1); -moz-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0.15s; -o-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0.15s; -webkit-transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1); -webkit-transition-delay: 0.15s; transition: all 0.25s cubic-bezier(0.77, 0, 0.175, 1) 0.15s; }
#fab:focus, #scroll-to-top:focus { outline: none; }

#fab { position: fixed; top: 21px; }
@media (max-width: 770px) { #fab { top: unset; bottom: 29px; } }
body.no-js #fab { display: none; }

#fab-pattern { width: 317px; height: 404px; position: fixed; top: -40px; right: -50px; z-index: -1; will-change: opacity, transition, transform; -moz-transition: all 0.15s ease; -o-transition: all 0.15s ease; -webkit-transition: all 0.15s ease; transition: all 0.15s ease; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; -moz-transform: scale(0); -ms-transform: scale(0); -webkit-transform: scale(0); transform: scale(0); }
#fab-pattern img { display: block; width: 100%; height: 100%; }
@media (max-width: 770px) { #fab-pattern { top: unset; bottom: -79px; } }
#nav.active #fab-pattern { top: 0; right: 0; -moz-transform: scale(1); -ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1); filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; -moz-transition: all 0.25s 0.15s cubic-bezier(0.77, 0, 0.175, 1); -o-transition: all 0.25s 0.15s cubic-bezier(0.77, 0, 0.175, 1); -webkit-transition: all 0.25s 0.15s cubic-bezier(0.77, 0, 0.175, 1); transition: all 0.25s 0.15s cubic-bezier(0.77, 0, 0.175, 1); }
@media (max-width: 770px) { #nav.active #fab-pattern { top: unset; bottom: 0; } }

#scroll-to-top { bottom: 30px; color: #000; background-color: #e5e723; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; }
body.project-detail #scroll-to-top, body.project-grid #scroll-to-top { color: #fff; background-color: #000; }
@media (max-width: 770px) { #scroll-to-top { display: none; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=33); opacity: 0.33; -moz-transform: scale(0); -ms-transform: scale(0); -webkit-transform: scale(0); transform: scale(0); } }
#scroll-to-top.minimized { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=33); opacity: 0.33; -moz-transform: scale(0); -ms-transform: scale(0); -webkit-transform: scale(0); transform: scale(0); }
#scroll-to-top svg { fill: #fff; width: 28px; margin-top: 5px; }

@-moz-keyframes fadeIn { 0% { opacity: 0; top: -4px; }
  100% { opacity: 1; top: 0; } }
@-webkit-keyframes fadeIn { 0% { opacity: 0; top: -4px; }
  100% { opacity: 1; top: 0; } }
@keyframes fadeIn { 0% { opacity: 0; top: -4px; }
  100% { opacity: 1; top: 0; } }
@media (max-width: 770px) { @-moz-keyframes fadeIn { 0% { opacity: 0; top: 4px; }
    100% { opacity: 1; top: 0; } }
  @-webkit-keyframes fadeIn { 0% { opacity: 0; top: 4px; }
    100% { opacity: 1; top: 0; } }
  @keyframes fadeIn { 0% { opacity: 0; top: 4px; }
    100% { opacity: 1; top: 0; } } }
@-moz-keyframes fadeOut { 0% { opacity: 1; top: 0; }
  100% { opacity: 0; top: -8px; } }
@-webkit-keyframes fadeOut { 0% { opacity: 1; top: 0; }
  100% { opacity: 0; top: -8px; } }
@keyframes fadeOut { 0% { opacity: 1; top: 0; }
  100% { opacity: 0; top: -8px; } }
@media (max-width: 770px) { @-moz-keyframes fadeOut { 0% { opacity: 1; top: 0; }
    100% { opacity: 0; top: 8px; } }
  @-webkit-keyframes fadeOut { 0% { opacity: 1; top: 0; }
    100% { opacity: 0; top: 8px; } }
  @keyframes fadeOut { 0% { opacity: 1; top: 0; }
    100% { opacity: 0; top: 8px; } } }
#footer { position: absolute; bottom: 0; left: 0; width: 100%; text-align: center; font-size: 0.8em; }
@media (max-width: 460px) { #footer { font-size: 0.76em; } }
#footer #nav_2 { border-top: 1px solid #000; display: inline-block; text-align: left; max-width: 1250px; width: calc(100% - 2 * 20px); }
@media (min-width: 771px) { #footer #nav_2 { width: calc(100% - 2 * 40px); } }
#footer #nav_2 ul { padding: 0; margin: 10px 0 20px 0; }
#footer #nav_2 ul li { display: inline-block; }
#footer #nav_2 ul li + li { margin-left: 1em; }
#footer #nav_2 ul li + li::before { content: "|"; display: inline-block; margin-right: 1em; }
@media (max-width: 460px) { #footer #nav_2 ul li + li::before { margin-right: .5em; } }
@media (max-width: 460px) { #footer #nav_2 ul li + li { margin-left: .5em; } }

.pattern { position: fixed; background: transparent none no-repeat 33% top; }
.pattern.pattern-top { left: 120px; width: calc(50% - 140px); top: -10px; height: 105px; overflow: hidden; }
@media (max-width: 770px) { .pattern.pattern-top { width: calc(80% - 150px); left: calc(10% + 90px); } }
@media (max-width: 460px) { .pattern.pattern-top { display: none; } }
.pattern.pattern-left { z-index: -1; left: -10px; width: calc((100vw - 1250px) / 2 - 5px); background-position: right center; max-width: 180px; -moz-background-size: cover; -o-background-size: cover; -webkit-background-size: cover; background-size: cover; top: calc(20% + 100px); min-height: 60vh; /*@media(max-width: 1570px) {
}*/ }
.pattern.pattern-left > div { padding-top: 300%; }
@media (max-width: 1330px) { .pattern.pattern-left { width: 45px; } }
@media (max-width: 770px) { .pattern.pattern-left { display: none; } }

#header { position: fixed; background: transparent; height: 100px; max-height: 100px; top: 0; left: 0; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; -webkit-transition: all 0.2s ease; transition: all 0.2s ease;}
body:not(.homepage) #header { right: 0; }
@media (max-width: 770px) { #header { max-height: 92px; } }
@media (max-width: 460px) { #header { max-height: 68px; } }
@media (max-width: 770px) { #header.shrunken { max-height: 68px; } }
@media (max-width: 460px) { #header.shrunken { max-height: 50px; } }

#content, .content { position: relative; /*width: calc(100% - 2 * 40px);*/ padding: 110px 40px 72px 40px; max-width: 1250px; margin: 0 auto; }
#content::after, .content::after { display: block; content: ""; clear: both; }
@media (max-width: 770px) { #content, .content { /*width: calc(100% - 2 * 20px);*/ padding: 102px 20px 72px 20px; } }
@media (max-width: 460px) { #content, .content { /*padding-top: $padding-top-small + 10px;*/ max-width: 100%; } }
#content p:not(.downloads) a:not(.no-line), .content p:not(.downloads) a:not(.no-line) { text-decoration: underline; }
#content.cke_editable, .content.cke_editable { padding: 20px; }
@media (max-width: 770px) { #content.cke_editable, .content.cke_editable { padding: 20px; } }
#content ul, .content ul { margin-left: 0; padding-left: 1em; text-indent: -1em; }
#content ul li::before, .content ul li::before { content: "\2010\a0"; }

#homepage-carousel { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#homepage-carousel .carousel-cell { width: 100vw; height: 100vh; background: center center no-repeat; -moz-background-size: cover; -o-background-size: cover; -webkit-background-size: cover; background-size: cover; }
@media (max-width: 460px) { #homepage-carousel .carousel-cell { width: 120vw; margin-left: -10vw; } }
#homepage-carousel .carousel-cell img { -o-object-fit: cover; object-fit: cover; width: 100%; height: 100%; }

#homepage-proceed { display: block; position: fixed; top: 0; left: 0; right: 0; bottom: 0; }

.grid { margin: -10px; display: block; }
@media (min-width: 540px) { .grid { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
.grid .tile-wrapper { position: relative; overflow: hidden; box-sizing: border-box; }
@media (min-width: 540px) and (max-width: 930px) { .grid .tile-wrapper { -webkit-flex-basis: 50%; flex-basis: 50%; } }
@media (min-width: 931px) { .grid .tile-wrapper { -webkit-flex-basis: 33.333%; flex-basis: 33.333%; } }
.grid .tile-wrapper::before { content: ''; display: block; padding-top: 72%; }
.grid .tile { position: absolute; top: 10px; left: 10px; right: 10px; bottom: 10px; overflow: hidden; background: transparent none no-repeat center center; -moz-background-size: cover; -o-background-size: cover; -webkit-background-size: cover; background-size: cover; }
.grid .tile .tile-name { font-size: 1.2rem; font-weight: 800; display: block; margin-bottom: 2px; }
.grid .tile .tile-text { display: block; position: absolute; bottom: 20px; left: 20px; right: 20px; max-height: calc(100% - 40px - 2em); text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.grid .tile a { position: absolute; top: 0; left: 0; right: 0; bottom: 0; padding: 20px; display: block; }
.grid .tile .rollover { display: block; position: absolute; top: -1px; left: -1px; bottom: -1px; right: -1px; background: transparent none no-repeat center center; -moz-background-size: cover; -o-background-size: cover; -webkit-background-size: cover; background-size: cover; }
.grid .tile .rollover, .grid .tile.tile-project a { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; -moz-transition: opacity 0.2s ease-in-out; -o-transition: opacity 0.2s ease-in-out; -webkit-transition: opacity 0.2s ease-in-out; transition: opacity 0.2s ease-in-out; }
.grid .tile.tile-teaser { /*background-color: rgba(255, 255, 255, 0.5);*/ }
@media (hover: none), (max-width: 540px) { .grid .tile.tile-teaser .rollover { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; } }
.grid .tile:hover .rollover { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }
.grid .tile:hover a { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }
.grid span.tile-name-mobile { display: none; }
@media (hover: none) { .grid .tile-wrapper { padding-bottom: 30px; }
  .grid .tile-wrapper span.tile-name-mobile { position: absolute; bottom: 10px; left: 10px; right: 10px; display: block; height: 20px; line-height: 20px; font-size: .9em; }
  .grid .tile-wrapper .tile { bottom: 30px; }
  .grid .tile-wrapper .tile.tile-project:hover a, .grid .tile-wrapper .tile.tile-project:hover .rollover { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; }
  .grid .tile-wrapper .tile.tile-project .rollover { display: none; } }

.snippet { max-width: 100%; border-bottom: 1px solid #000; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
.snippet:last-child { border-bottom-color: transparent; }
.snippet .snippet-headline { position: relative; font-weight: 700; line-height: 44px; height: 44px; cursor: pointer; padding-right: 44px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
.snippet .snippet-headline::before, .snippet .snippet-headline::after { content: ""; position: absolute; right: 8px; display: block; background-color: #000; -moz-transition: all 0.33s ease-in-out; -o-transition: all 0.33s ease-in-out; -webkit-transition: all 0.33s ease-in-out; transition: all 0.33s ease-in-out; }
.snippet .snippet-headline::before { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; -moz-transform: rotate(90deg); -ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg); }
.snippet .snippet-headline::after { -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); transform: rotate(180deg); }
.snippet .snippet-headline::before, .snippet .snippet-headline::after { top: 22px; width: 26px; height: 1px; }
#project-list .snippet .snippet-headline:hover { background-color: #e5e723; }
.snippet .snippet-headline:hover::before { will-change: opacity, transform; }
.snippet .snippet-headline:hover::after { will-change: transform; }
.snippet .snippet-headline:hover + .snippet-content { will-change: height, padding-bottom; }
.snippet .snippet-content { display: none; padding: 10px 0 30px 0; overflow: hidden; }
.snippet .snippet-content .snippet-part-1, .snippet .snippet-content .snippet-part-2 { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=33); opacity: 0.33; -moz-transition: opacity 0.05s linear; -o-transition: opacity 0.05s linear; -webkit-transition: opacity 0.05s linear; transition: opacity 0.05s linear; }
.snippet .snippet-content .snippet-part-2 { margin-top: 1em; }
.snippet.semi-active .snippet-content { display: block; }
.snippet.semi-active .snippet-content .snippet-part-1 { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; display: block; }
.snippet.semi-active .snippet-content .snippet-part-2 { display: none; }
.snippet.active .snippet-headline::before { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; -moz-transform: rotate(0); -ms-transform: rotate(0); -webkit-transform: rotate(0); transform: rotate(0); }
.snippet.active .snippet-headline:after { -moz-transform: rotate(0); -ms-transform: rotate(0); -webkit-transform: rotate(0); transform: rotate(0); }
.snippet.active .snippet-content { display: block; }
.snippet.active .snippet-content .snippet-part-1, .snippet.active .snippet-content .snippet-part-2 { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }

#project-list, #project-list-sort { margin-top: 20px; }
@media (max-width: 460px) { #project-list, #project-list-sort { margin-top: 10px; } }
#project-list .snippet-headline, #project-list .sort-inner, #project-list-sort .snippet-headline, #project-list-sort .sort-inner { white-space: unset; overflow: hidden; text-overflow: unset; font-weight: normal; }
#project-list .snippet-headline > span, #project-list .snippet-headline > a > span, #project-list .sort-inner > span, #project-list .sort-inner > a > span, #project-list-sort .snippet-headline > span, #project-list-sort .snippet-headline > a > span, #project-list-sort .sort-inner > span, #project-list-sort .sort-inner > a > span { display: inline-block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#project-list .snippet-headline > span + span, #project-list .snippet-headline > a > span + span, #project-list .sort-inner > span + span, #project-list .sort-inner > a > span + span, #project-list-sort .snippet-headline > span + span, #project-list-sort .snippet-headline > a > span + span, #project-list-sort .sort-inner > span + span, #project-list-sort .sort-inner > a > span + span { margin-left: 1em; }
@media (max-width: 770px) { #project-list .snippet-headline > span + span, #project-list .snippet-headline > a > span + span, #project-list .sort-inner > span + span, #project-list .sort-inner > a > span + span, #project-list-sort .snippet-headline > span + span, #project-list-sort .snippet-headline > a > span + span, #project-list-sort .sort-inner > span + span, #project-list-sort .sort-inner > a > span + span { margin-left: 0.75em; } }
@media (max-width: 460px) { #project-list .snippet-headline > span + span, #project-list .snippet-headline > a > span + span, #project-list .sort-inner > span + span, #project-list .sort-inner > a > span + span, #project-list-sort .snippet-headline > span + span, #project-list-sort .snippet-headline > a > span + span, #project-list-sort .sort-inner > span + span, #project-list-sort .sort-inner > a > span + span { margin-left: 0.5em; } }
#project-list .snippet-headline > span.l-year, #project-list .snippet-headline > a > span.l-year, #project-list .sort-inner > span.l-year, #project-list .sort-inner > a > span.l-year, #project-list-sort .snippet-headline > span.l-year, #project-list-sort .snippet-headline > a > span.l-year, #project-list-sort .sort-inner > span.l-year, #project-list-sort .sort-inner > a > span.l-year { width: 65px; }
#project-list .snippet-headline > span.l-name, #project-list .snippet-headline > a > span.l-name, #project-list .sort-inner > span.l-name, #project-list .sort-inner > a > span.l-name, #project-list-sort .snippet-headline > span.l-name, #project-list-sort .snippet-headline > a > span.l-name, #project-list-sort .sort-inner > span.l-name, #project-list-sort .sort-inner > a > span.l-name { width: calc((100% - 65px) *.4 - 1em); }
@media (max-width: 770px) { #project-list .snippet-headline > span.l-name, #project-list .snippet-headline > a > span.l-name, #project-list .sort-inner > span.l-name, #project-list .sort-inner > a > span.l-name, #project-list-sort .snippet-headline > span.l-name, #project-list-sort .snippet-headline > a > span.l-name, #project-list-sort .sort-inner > span.l-name, #project-list-sort .sort-inner > a > span.l-name { width: calc((100% - 65px) * .6 - 1em); } }
@media (max-width: 460px) { #project-list .snippet-headline > span.l-name, #project-list .snippet-headline > a > span.l-name, #project-list .sort-inner > span.l-name, #project-list .sort-inner > a > span.l-name, #project-list-sort .snippet-headline > span.l-name, #project-list-sort .snippet-headline > a > span.l-name, #project-list-sort .sort-inner > span.l-name, #project-list-sort .sort-inner > a > span.l-name { width: calc(100% - 65px - 1em); } }
#project-list .snippet-headline > span.l-cat, #project-list .snippet-headline > a > span.l-cat, #project-list .sort-inner > span.l-cat, #project-list .sort-inner > a > span.l-cat, #project-list-sort .snippet-headline > span.l-cat, #project-list-sort .snippet-headline > a > span.l-cat, #project-list-sort .sort-inner > span.l-cat, #project-list-sort .sort-inner > a > span.l-cat { width: calc((100% - 65px) * .3 - 2em); }
@media (max-width: 770px) { #project-list .snippet-headline > span.l-cat, #project-list .snippet-headline > a > span.l-cat, #project-list .sort-inner > span.l-cat, #project-list .sort-inner > a > span.l-cat, #project-list-sort .snippet-headline > span.l-cat, #project-list-sort .snippet-headline > a > span.l-cat, #project-list-sort .sort-inner > span.l-cat, #project-list-sort .sort-inner > a > span.l-cat { width: calc((100% - 65px) * .4 - 2em); } }
@media (max-width: 460px) { #project-list .snippet-headline > span.l-cat, #project-list .snippet-headline > a > span.l-cat, #project-list .sort-inner > span.l-cat, #project-list .sort-inner > a > span.l-cat, #project-list-sort .snippet-headline > span.l-cat, #project-list-sort .snippet-headline > a > span.l-cat, #project-list-sort .sort-inner > span.l-cat, #project-list-sort .sort-inner > a > span.l-cat { display: none; } }
#project-list .snippet-headline > span.l-theme, #project-list .snippet-headline > a > span.l-theme, #project-list .sort-inner > span.l-theme, #project-list .sort-inner > a > span.l-theme, #project-list-sort .snippet-headline > span.l-theme, #project-list-sort .snippet-headline > a > span.l-theme, #project-list-sort .sort-inner > span.l-theme, #project-list-sort .sort-inner > a > span.l-theme { width: calc((100% - 65px) * .3 - 3em); }
@media (max-width: 770px) { #project-list .snippet-headline > span.l-theme, #project-list .snippet-headline > a > span.l-theme, #project-list .sort-inner > span.l-theme, #project-list .sort-inner > a > span.l-theme, #project-list-sort .snippet-headline > span.l-theme, #project-list-sort .snippet-headline > a > span.l-theme, #project-list-sort .sort-inner > span.l-theme, #project-list-sort .sort-inner > a > span.l-theme { display: none; } }
#project-list .snippet-content p.project-info, #project-list-sort .snippet-content p.project-info { margin: -.5em 44px 0 65px; padding-left: 1em; }
@media (max-width: 770px) { #project-list .snippet-content p.project-info, #project-list-sort .snippet-content p.project-info { padding-left: 0.75em; } }
@media (max-width: 460px) { #project-list .snippet-content p.project-info, #project-list-sort .snippet-content p.project-info { padding-left: 0.5em; } }
#project-list .snippet.active .snippet-headline, #project-list-sort .snippet.active .snippet-headline { font-weight: 700; }
#project-list span.project-link, #project-list-sort span.project-link { display: block; margin: .5em 0 0 0; }
@media (min-width: 461px) { #project-list span.project-link, #project-list-sort span.project-link { text-align: right; } }
#project-list span.project-link a, #project-list-sort span.project-link a { line-height: 44px; display: inline-block; padding-right: 30px; font-weight: 700; background: transparent url("p/pfeil-rechts.svg") no-repeat right center; -moz-background-size: 20px 20px; -o-background-size: 20px 20px; -webkit-background-size: 20px 20px; background-size: 20px 20px; }

#project-list { -moz-transition: opacity 0.15s ease; -o-transition: opacity 0.15s ease; -webkit-transition: opacity 0.15s ease; transition: opacity 0.15s ease; }
#project-list.busy { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=25); opacity: 0.25; }

#project-list-sort .sort-inner { height: 44px; line-height: 44px; padding-right: 44px; font-size: 0.8em; }
#project-list-sort .sort-inner > span { text-transform: uppercase; font-weight: 700; float: left; vertical-align: middle; }
@media (max-width: 770px) { #project-list-sort .sort-inner > span.l-cat { overflow: visible; width: calc((100% - 65px) * .4 - 1em); }
  #project-list-sort .sort-inner > span.l-cat a { width: calc(100% + 44px); } }
#project-list-sort .sort-inner > span a { display: block; height: 100%; /*&.active { &.asc span.sort-dir { background-image: url('p/chevron-down.svg'); } &.desc span.sort-dir { background-image: url('p/chevron-up.svg'); }
}*/ }
#project-list-sort .sort-inner > span a span { height: 35px; box-sizing: border-box; }
#project-list-sort .sort-inner > span a span.sort-name { border-bottom: 2px solid transparent; }
#project-list-sort .sort-inner > span a span.sort-dir { margin: 0; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; -moz-transition: opacity 0.2s ease; -o-transition: opacity 0.2s ease; -webkit-transition: opacity 0.2s ease; transition: opacity 0.2s ease; float: right; will-change: opacity; display: inline-block; width: 30px; height: 44px; background: transparent none no-repeat center center; background-size: 15px 15px; }
#project-list-sort .sort-inner > span a.asc span.sort-dir { background-image: url("p/chevron-down.svg"); }
#project-list-sort .sort-inner > span a.desc span.sort-dir { background-image: url("p/chevron-up.svg"); }
#project-list-sort .sort-inner > span a.active span.sort-dir, #project-list-sort .sort-inner > span a:hover span.sort-dir { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }
#project-list-sort .sort-inner > span a.active span.sort-name { border-bottom-color: #000; }

.column-left, .float-left { float: left; }

.column-right, .float-right { float: right; }

.column { width: calc(50% - 15px); }
.column img { max-width: 100%; }
@media (max-width: 540px) { .column { float: none; width: 100%; }
  .column + .column { margin-top: 1em; } }

@media (max-width: 540px) { #project-carousel { min-height: calc(68vw - 1 * 20px); } }

.loading { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; }

.project-carousel { -moz-transition: opacity 0.2s ease; -o-transition: opacity 0.2s ease; -webkit-transition: opacity 0.2s ease; transition: opacity 0.2s ease; }
@media (min-width: 771px) and (min-height: 620px), (min-width: 771px) and (max-width: 1200px) and (max-aspect-ratio: 2 / 1) and (min-height: 420px) { .column-left .project-carousel { max-width: 100%; position: fixed; top: 110px; left: 20px; right: calc(15px + 50%); width: auto; } }
@media (min-width: 771px) and (min-height: 620px) and (min-width: 771px), (min-width: 771px) and (max-width: 1200px) and (max-aspect-ratio: 2 / 1) and (min-height: 420px) and (min-width: 771px) { .column-left .project-carousel { left: 40px; } }
@media (min-width: 771px) and (min-height: 620px) and (min-width: 1330px), (min-width: 771px) and (max-width: 1200px) and (max-aspect-ratio: 2 / 1) and (min-height: 420px) and (min-width: 1330px) { .column-left .project-carousel { left: unset; width: 610px; } }

.project-carousel img { width: 100%; }
.project-carousel .carousel-cell { width: 100%; }
.project-carousel .carousel-cell img { min-width: 100%; -moz-transition: opacity 0.2s ease; -o-transition: opacity 0.2s ease; -webkit-transition: opacity 0.2s ease; transition: opacity 0.2s ease; }
body:not(.no-js) .project-carousel .carousel-cell img:not(.loaded) { height: 0; }
.project-carousel .carousel-cell img.loaded { height: unset; filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }
.project-carousel .carousel-cell p.image-caption { display: none; }
.project-carousel .flickity-button, .project-carousel .flickity-button:hover, .project-carousel .flickity-button:focus { color: #000; background-color: transparent; -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none; }
.project-carousel .flickity-prev-next-button { width: 50%; height: 100%; position: absolute; top: 0; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; -moz-transform: none; -ms-transform: none; -webkit-transform: none; transform: none; }
@media (hover: none) { .project-carousel .flickity-prev-next-button { display: none; } }
.project-carousel .flickity-prev-next-button svg { display: none; }
.project-carousel .flickity-prev-next-button.previous { left: 0; cursor: url("p/pfeil-gelb-rechts.svg") 24 24, url("p/pfeil-gelb-rechts-sm.svg") 16 16, url("p/pfeil-gelb-rechts.png") 16 16, pointer; }
.project-carousel .flickity-prev-next-button.next { right: 0; cursor: url("p/pfeil-gelb-links.svg") 24 24, url("p/pfeil-gelb-links-sm.svg") 16 16, url("p/pfeil-gelb-links.png") 16 16, pointer; }
.project-carousel .carousel-caption { font-size: 0.88em; }
body:not(.no-js) .project-carousel .carousel-caption { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; -moz-transition: opacity 0.15s ease; -o-transition: opacity 0.15s ease; -webkit-transition: opacity 0.15s ease; transition: opacity 0.15s ease; }
body:not(.no-js) .project-carousel .carousel-caption.show { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }
.project-carousel .carousel-caption .number { vertical-align: top; display: inline-block; width: 2.5em; }
.project-carousel .carousel-caption .number + .caption { margin-left: 1em; width: calc(100% - 2.5em - 1em); vertical-align: top; display: inline-block; min-height: 3em; }
.project-carousel.loaded { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }

.project-specs .spec { display: block; }
.project-specs .spec span.label { display: inline-block; vertical-align: top; width: 160px; }
@media (max-width: 770px) { .project-specs .spec span.label { width: 140px; } }
.project-specs .spec span.info { display: inline-block; vertical-align: top; width: calc(100% - 160px - 15px); }
@media (max-width: 770px) { .project-specs .spec span.info { width: calc(100% - 140px); } }

#page-title { position: absolute; top: 50%; left: 50%; margin-top: -.5em; margin-left: 15px; display: inline-block; font-size: 0.8em; }
@media (max-width: 460px) { #page-title { font-size: 0.76em; } }
body.project-detail:not(.project-detail-no-arrows) #page-title { margin-top: -1.5em; }
@media (max-width: 770px) { #page-title { left: unset; right: 20px; text-align: right; } }

body:not(.no-js) #nav.minimized button#fab, body:not(.no-js) #nav.minimized::before { -moz-transform: scale(0); -ms-transform: scale(0); -webkit-transform: scale(0); transform: scale(0); filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=33); opacity: 0.33; }

body.no-js img[src="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs="] { display: none; }

@media (max-width: 460px) { #project-arrows { text-align: right; } }
#project-arrows a { display: inline-block; width: 40px; height: 40px; text-align: left; }
#project-arrows a + a { text-align: right; }
#project-arrows a span { display: inline-block; width: 24px; height: 100%; background: transparent none no-repeat center center; }
@media (max-width: 460px) { #project-arrows a span { height: 29px; } }
#project-arrows a span#arrow-prev { background-image: url("p/pfeil-links.svg"); }
#project-arrows a span#arrow-next { background-image: url("p/pfeil-rechts.svg"); }

.teaser-carousel .carousel-cell, .content-carousel .carousel-cell { width: 100%; }
.teaser-carousel .carousel-cell .cell-inner, .content-carousel .carousel-cell .cell-inner { position: relative; }
.teaser-carousel .carousel-cell .cell-inner .teaser-caption, .content-carousel .carousel-cell .cell-inner .teaser-caption { position: absolute; top: 0; left: 0; padding: 25px; /*font-size: 1.7em * $font-factor; - if 3 styles*/ font-size: 1.52em; line-height: 130%; color: #fff; }
@media (max-width: 770px) { .teaser-carousel .carousel-cell .cell-inner .teaser-caption, .content-carousel .carousel-cell .cell-inner .teaser-caption { padding: 10px; } }
@media (max-width: 460px) { .teaser-carousel .carousel-cell .cell-inner .teaser-caption, .content-carousel .carousel-cell .cell-inner .teaser-caption { /*padding: 15px;*/ } }
.teaser-carousel .carousel-cell .cell-inner .teaser-caption.caption-bottom, .content-carousel .carousel-cell .cell-inner .teaser-caption.caption-bottom { top: unset; bottom: 0; }
.teaser-carousel .carousel-cell .cell-inner .teaser-caption.caption-black, .content-carousel .carousel-cell .cell-inner .teaser-caption.caption-black { color: #000; }
.teaser-carousel .carousel-cell .cell-inner .teaser-caption.caption-yellow, .content-carousel .carousel-cell .cell-inner .teaser-caption.caption-yellow { color: #e5e723; }
.teaser-carousel .carousel-cell .cell-inner .teaser-caption.caption-large, .content-carousel .carousel-cell .cell-inner .teaser-caption.caption-large { font-size: 1.6em; line-height: 110%; }
.teaser-carousel .carousel-cell .cell-inner .teaser-caption.caption-x-large, .content-carousel .carousel-cell .cell-inner .teaser-caption.caption-x-large { font-weight: 700; font-size: 3.6em; line-height: 100%; }
@media (max-width: 770px) { .teaser-carousel .carousel-cell .cell-inner .teaser-caption.caption-x-large, .content-carousel .carousel-cell .cell-inner .teaser-caption.caption-x-large { font-size: 3em; } }

.teaser-carousel .carousel-cell .cell-inner .teaser-caption { font-weight: 800; }

.content-carousel .carousel-cell .cell-inner .teaser-caption { font-size: 1.6em; }
@media (max-width: 460px) { .content-carousel .carousel-cell .cell-inner .teaser-caption { font-size: 1.28em; } }

#content-carousel:not(.flickity-enabled) .carousel-cell + .carousel-cell { display: none; }

a.download { padding-left: 44px; background: transparent url("p/download.svg") no-repeat 5px 10px; background-size: auto; display: block; line-height: 44px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; -moz-background-size: 23px 23px; -o-background-size: 23px 23px; -webkit-background-size: 23px 23px; background-size: 23px 23px; }
a.download:first-child { margin-top: -.5em; }

/*# sourceMappingURL=main.css.map */
