@charset "UTF-8";
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400; src: local(""), url("/fonts/inter-regular.woff2") format("woff2"), url("/fonts/inter-regular.woff") format("woff"); }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 500; src: local(""), url("/fonts/inter-500.woff2") format("woff2"), url("/fonts/inter-500.woff") format("woff"); }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 600; src: local(""), url("/fonts/inter-600.woff2") format("woff2"), url("/fonts/inter-600.woff") format("woff"); }
@font-face { font-family: 'Droid Serif'; font-style: normal; font-weight: 400; src: local(""), url("/fonts/droid-regular.woff2") format("woff2"), url("/fonts/droid-regular.woff") format("woff"); }
@font-face { font-family: 'Droid Serif'; font-style: normal; font-weight: 700; src: local(""), url("/fonts/droid-bold.woff2") format("woff2"), url("/fonts/droid-bold.woff") format("woff"); }
@media screen, projection { :root { --maxwidth: 64em; --pad: .5em; }
  html { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; line-height: 1.15; scroll-behavior: smooth; }
  *, *:before, *:after { -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; }
  body { color: #222220; font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif; font-size: 93.75%; line-height: 1.5; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
  article, aside, footer, header, nav, section, figcaption, figure, main, details, summary { display: block; }
  audio, video { display: inline-block; }
  h1, h2 { font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; font-weight: normal; }
  * > h1:first-child, * > h2:first-child, * > h3:first-child, * > h4:first-child { margin-top: 0; }
  h1 { margin: 0.75 0; font-size: 2em; }
  h2 { margin: 1.333em 0 .667em; font-size: 150%; line-height: 1.25; }
  h3, h4, h5 { margin-top: 1.5em; }
  h3 + *, h4 + *, h5 + * { margin-top: 0; }
  h3 { margin-top: 2em; margin-bottom: 0.375em; font-size: 100%; }
  h4 { margin-bottom: 0; }
  a { color: inherit; background-color: transparent; }
  b, strong { font-weight: bolder; }
  img { max-width: 100%; height: auto; border: 0; -ms-interpolation-mode: bicubic; }
  img:not([alt]) { filter: grayscale(100%); }
  svg:not(:root) { overflow: hidden; }
  figure { margin-left: auto; margin-right: auto; }
  hr { height: 0; margin: 1.5em 0; border: 0; border-bottom: 1px solid rgba(115, 125, 125, 0.4); }
  hr + * { margin-top: 0; }
  button, input, optgroup, select, textarea { font: inherit; line-height: 1.15; margin: 0; }
  textarea { resize: vertical; }
  button, input { overflow: visible; }
  button, select { text-transform: none; }
  button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }
  button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }
  button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }
  fieldset { padding: 0; margin: 0; border: none; }
  button, summary { -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .visually_hidden { position: absolute; clip: rect(0 0 0 0); overflow: hidden; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; }
  [lang="de"] .en { display: none; }
  [lang="en"] .de { display: none; }
  /*  */
  body { max-width: 64em; margin: 0 auto; padding: 0; }
  body > * { padding-left: 15px; padding-right: 15px; padding-right: var(--pad); padding-left: var(--pad); }
  .max, footer > div { margin-left: -15px; margin-right: -15px; margin-left: calc(var(--pad) * -1); margin-right: calc(var(--pad) * -1); padding-left: 15px; padding-right: 15px; padding-right: var(--pad); padding-left: var(--pad); }
  header { padding-top: 1em; padding-bottom: 1em; background: no-repeat #f9faf9; }
  header h1 { line-height: 1.5; margin: 0; font-size: 125%; font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif; font-weight: 500; }
  header h1 a { display: block; width: 12rem; text-decoration: none; }
  header p { margin: .25em 0 0 0; color: #737d7d; font-size: 81.25%; font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; line-height: 1.4; text-align: right; }
  header #top { position: absolute; top: calc(-1em - 3rem); }
  /* */
  #navicon { position: -webkit-sticky; position: sticky; z-index: 10; top: 0; cursor: pointer; min-height: 3rem; display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; width: 100%; margin-top: 0; margin-bottom: 0; padding-top: 0; padding-bottom: 0; text-align: right; font: inherit; background: #fff; background: rgba(255, 255, 255, 0.95); border: none; outline: none; }
  #navicon:before { content: ''; width: 3rem; height: 3rem; background: no-repeat center; background-size: contain; background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128' viewBox='0 0 128 128'%3E%3Crect fill='%23ff9a1c' width='128' height='128'/%3E%3Cpath fill='%23ffffff' d='M57.6 45c2.3.3 4.2-1.8 4.2-3.9 0-2.1-2-3.7-4.4-3.8-2.2-.1-4.1 1.8-4 3.6 0 2.1 1.5 4.3 4.2 4.1m12.5 46.6c2 0 4.1-1.9 4.1-3.6 0-2.4-1.8-4.3-4.3-4.4-1.9 0-4.3 2-4.3 3.8 0 2.2 2.1 4.2 4.5 4.2m-39-22.5c.3-.7.4-1.4.7-2 1.2-2.5 2.4-5.1 3.7-7.6l4.2-8.1c1.6-3.1 3.1-6.2 4.7-9.4 1.2-2.4 2.5-4.8 3.8-7.2.2-.3.6-.5 1-.6 3.1-.1 6.1-.2 9.2-.2h10.2c5.1 0 10.3.1 15.4.2 1.3 0 2.7.3 4 .3 1.3.1 2.6 0 4 0 0 .4.1.8-.1 1l-3.3 6.6c-.2.4-.4.9-.5 1.3-.5 1.5-1.6 2.1-3 2.2-2.8.1-5.5.4-8.1 1.3-1.8.6-3.8.9-5.6 1.5-2.5.9-5.1 1.7-7.5 2.8-2.8 1.3-5.6 2.9-8.3 4.5-.7.4-1.4 1-2 1.6 0 .1 0 .3.1.4.5.1.9.4 1.4.4h8.8c2.6.1 5.3.2 7.9.3h17.3c2.2 0 4.3.1 6.5.2 1.7.1 1.7.1 1.1 1.7-.8 2.1-1.7 4.1-2.6 6.2-1.1 2.4-2.2 4.8-3.4 7.2-1.2 2.4-2.4 4.7-3.6 7l-4.2 8.4c-.4.9-.7 1.8-1.1 2.7-.6 1.2-1.6 1.9-3 1.9H54.1c-1.7 0-3.4-.1-5.1-.2h-9.5c-.8 0-1.6-.1-2.6-.2.6-1.2 1.1-2.3 1.6-3.3 1.1-2.2 2.3-4.3 3.3-6.5.4-.9 1.1-1.2 2-1.3 1.6-.2 3.2-.4 4.8-.7 2.3-.4 4.5-.9 6.8-1.5 1.7-.5 3.4-1.1 5-1.8 2.3-1 4.6-2 6.8-3.1 1.5-.7 2.9-1.5 4.4-2.3 1.2-.7 2.3-1.4 3.5-2.1.2-.1.3-.4.5-.6-.3-.1-.5-.4-.8-.4h-8.2c-1.9 0-3.8-.1-5.7-.2h-4.1c-.6 0-1.2-.1-1.9-.1h-10c-3.3 0-6.6-.1-9.9-.2-1.4.1-2.6 0-3.9-.1'/%3E%3C/svg%3E"); }
  @supports (backdrop-filter: saturate(100%)) { #navicon { background: rgba(255, 255, 255, 0.7); -webkit-backdrop-filter: saturate(100%) blur(10px); backdrop-filter: saturate(100%) blur(10px); } }
  @supports (-webkit-backdrop-filter: saturate(100%)) { #navicon { background: rgba(255, 255, 255, 0.7); -webkit-backdrop-filter: saturate(100%) blur(10px); backdrop-filter: saturate(100%) blur(10px); } }
  #navicon span, #navicon span:before, #navicon span:after { height: 4px; width: 28px; background: #ff9a1c; border-radius: 3px; transition-timing-function: ease-in-out; }
  #navicon span { position: relative; display: inline-block; vertical-align: middle; transition-duration: .1s; transition-delay: 0; transition-property: background; }
  #navicon span:before, #navicon span:after { content: ''; position: absolute; left: 0; transition-duration: .1s, .1s, .2s; transition-delay: .1s, 0, 0; }
  #navicon span:before { top: -9px; transition-property: top, transform, background; }
  #navicon span:after { bottom: -9px; transition-property: bottom, transform, background; }
  .nav-open #navicon span { background-color: transparent; }
  .nav-open #navicon span:before, .nav-open #navicon span:after { transition-delay: 0, .1s; background: #ff9a1c !important; }
  .nav-open #navicon span:before { top: 0; transform: rotate(45deg); }
  .nav-open #navicon span:after { bottom: 0; transform: rotate(-45deg); }
  /* NAV */
  nav { padding-top: 1em; padding-bottom: 2em; }
  nav ul { margin: 0; padding: 0; list-style: none; line-height: 2; }
  nav a { text-decoration: none; }
  #menu { font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; background: #f9faf9; }
  #menu ul { max-width: 32em; }
  #menu li { display: inline-block; }
  #menu li:after { content: '  / '; }
  #menu a { border-bottom: 2px solid transparent; transition: all .25s; }
  #menu a:hover { border-bottom-color: #ff9a1c; }
  #menu .current a { border-bottom-color: #ff9a1c; }
  #menu li:last-child { display: none; }
  /* */
  main { min-height: 40vh; margin-top: 3em; margin-bottom: 3em; }
  main > .banner:first-child { margin-top: -3em; margin-bottom: 3em; }
  main > h1:first-child, main .banner + h1 { font-size: 100%; }
  main p, main ul, main li { max-width: 40em; }
  main ul { padding: 0; list-style: none; font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; }
  main ul li { padding-left: 1.25em; }
  main ul li:before { content: '–'; display: inline-block; float: left; margin-left: -1.25em; color: #ff9a1c; font-weight: bold; }
  main a { display: inline-block; line-height: 1.1; text-decoration: none; border-bottom: 2px solid rgba(255, 154, 28, 0.7); transition: .25s; }
  main a:hover { border-bottom-color: #737d7d; }
  .max { margin-top: 1.5em; margin-bottom: 1.5em; padding-top: 1.5em; padding-bottom: 1.5em; }
  .banner { position: relative; overflow: hidden; margin-bottom: 1.5em; padding-top: 3em; padding-bottom: 3em; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; -ms-flex-pack: end; justify-content: flex-end; background: no-repeat center #f4f4f2; background-size: contain; }
  .home .banner { min-height: 24em; }
  .banner h1, .banner p { font-size: 112.5%; font-weight: normal; font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; }
  .banner > *:first-child { margin-top: 0; }
  .banner > *:last-child { margin-bottom: 0; }
  .banner img { vertical-align: top; }
  .bbox { margin-left: -15px; margin-right: -15px; margin-left: calc(var(--pad) * -1); margin-right: calc(var(--pad) * -1); }
  #map { position: relative; text-align: center; }
  #map img { width: 90%; }
  .pin { position: absolute; z-index: 1; overflow: visible; width: 15px; height: 24px; background-repeat: no-repeat; background-position: center; background-size: contain; filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.4)); transform: translate3d(50%, -100%, 0); }
  .pin i { position: absolute; bottom: -2em; left: 50%; padding: .375em 1em; font-size: 81.25%; font-style: normal; line-height: 1; white-space: nowrap; font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; background: #fff; border-radius: .25em; transform: translateX(-50%); }
  .pin:after { position: absolute; bottom: -40px; left: 20px; width: 40px; height: 40px; border-radius: 999em; background: linear-gradient(45deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .pin:last-child i { left: auto; right: 0; transform: translateX(0%); }
  .js .pin { opacity: 0; transition: opacity .75s; }
  .js .pin.ready { opacity: 1; }
  .pin_red { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='64' viewBox='0 0 40 64'%3E%3ClinearGradient id='grad' gradientUnits='userSpaceOnUse' x1='5' x2='35'%3E%3Cstop  offset='0' style='stop-color:%23fff'/%3E%3Cstop  offset='1' style='stop-color:rgba(255,255,255,0)'/%3E%3C/linearGradient%3E%3Cpath fill='%23ff406f' d='M39.7 19.6C39.6 8.7 30.8 0 20 0h-.1C9 .1.2 9 .3 19.8c.1 10.9 20 44.1 20 44.1s19.5-33.5 19.4-44.3zM20 28.5c-5.2 0-9.4-4.2-9.4-9.4s4.2-9.5 9.4-9.5 9.5 4.2 9.5 9.4-4.2 9.5-9.5 9.5z'/%3E%3Cpath fill='url(%23grad)' d='M11.4,48c4.5,8.7,8.9,16,8.9,16s13.4-23,17.2-36C33.3,38.8,20.3,48.2,11.4,48'/%3E%3C/svg%3E"); }
  .pin_yellow { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='64' viewBox='0 0 40 64'%3E%3ClinearGradient id='grad' gradientUnits='userSpaceOnUse' x1='5' x2='35'%3E%3Cstop  offset='0' style='stop-color:%23fff'/%3E%3Cstop  offset='1' style='stop-color:rgba(255,255,255,0)'/%3E%3C/linearGradient%3E%3Cpath fill='%23ffa157' d='M39.7 19.6C39.6 8.7 30.8 0 20 0h-.1C9 .1.2 9 .3 19.8c.1 10.9 20 44.1 20 44.1s19.5-33.5 19.4-44.3zM20 28.5c-5.2 0-9.4-4.2-9.4-9.4s4.2-9.5 9.4-9.5 9.5 4.2 9.5 9.4-4.2 9.5-9.5 9.5z'/%3E%3Cpath fill='url(%23grad)' d='M11.4,48c4.5,8.7,8.9,16,8.9,16s13.4-23,17.2-36C33.3,38.8,20.3,48.2,11.4,48'/%3E%3C/svg%3E"); }
  .pin_midnight { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='64' viewBox='0 0 40 64'%3E%3ClinearGradient id='grad' gradientUnits='userSpaceOnUse' x1='5' x2='35'%3E%3Cstop  offset='0' style='stop-color:%23fff'/%3E%3Cstop  offset='1' style='stop-color:rgba(255,255,255,0)'/%3E%3C/linearGradient%3E%3Cpath fill='%23668ec4' d='M39.7 19.6C39.6 8.7 30.8 0 20 0h-.1C9 .1.2 9 .3 19.8c.1 10.9 20 44.1 20 44.1s19.5-33.5 19.4-44.3zM20 28.5c-5.2 0-9.4-4.2-9.4-9.4s4.2-9.5 9.4-9.5 9.5 4.2 9.5 9.4-4.2 9.5-9.5 9.5z'/%3E%3Cpath fill='url(%23grad)' d='M11.4,48c4.5,8.7,8.9,16,8.9,16s13.4-23,17.2-36C33.3,38.8,20.3,48.2,11.4,48'/%3E%3C/svg%3E"); }
  .pin_purple { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='64' viewBox='0 0 40 64'%3E%3ClinearGradient id='grad' gradientUnits='userSpaceOnUse' x1='5' x2='35'%3E%3Cstop  offset='0' style='stop-color:%23fff'/%3E%3Cstop  offset='1' style='stop-color:rgba(255,255,255,0)'/%3E%3C/linearGradient%3E%3Cpath fill='%23cc61a1' d='M39.7 19.6C39.6 8.7 30.8 0 20 0h-.1C9 .1.2 9 .3 19.8c.1 10.9 20 44.1 20 44.1s19.5-33.5 19.4-44.3zM20 28.5c-5.2 0-9.4-4.2-9.4-9.4s4.2-9.5 9.4-9.5 9.5 4.2 9.5 9.4-4.2 9.5-9.5 9.5z'/%3E%3Cpath fill='url(%23grad)' d='M11.4,48c4.5,8.7,8.9,16,8.9,16s13.4-23,17.2-36C33.3,38.8,20.3,48.2,11.4,48'/%3E%3C/svg%3E"); }
  .pin_blue { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='64' viewBox='0 0 40 64'%3E%3ClinearGradient id='grad' gradientUnits='userSpaceOnUse' x1='5' x2='35'%3E%3Cstop  offset='0' style='stop-color:%23fff'/%3E%3Cstop  offset='1' style='stop-color:rgba(255,255,255,0)'/%3E%3C/linearGradient%3E%3Cpath fill='%234cb8e2' d='M39.7 19.6C39.6 8.7 30.8 0 20 0h-.1C9 .1.2 9 .3 19.8c.1 10.9 20 44.1 20 44.1s19.5-33.5 19.4-44.3zM20 28.5c-5.2 0-9.4-4.2-9.4-9.4s4.2-9.5 9.4-9.5 9.5 4.2 9.5 9.4-4.2 9.5-9.5 9.5z'/%3E%3Cpath fill='url(%23grad)' d='M11.4,48c4.5,8.7,8.9,16,8.9,16s13.4-23,17.2-36C33.3,38.8,20.3,48.2,11.4,48'/%3E%3C/svg%3E"); }
  .intro { margin: 1em 0; font-size: 150%; font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; }
  .intro > * { max-width: 28em; margin: 0; }
  .cols { -moz-columns: 2 20em; columns: 2 20em; -moz-column-gap: 3em; column-gap: 3em; }
  .cols p { margin-top: 0; }
  .cols p:last-child { margin-bottom: 0; }
  .standout { margin-top: 3em; padding-top: 3em; background: #f9faf9; }
  .standout:last-child { margin-bottom: -3em; padding-bottom: 3em; }
  .standout h2:before { content: '– '; color: #ff9a1c; }
  .standout h2:first-child { margin-top: 0; }
  .standout > p, .standout > ul, .standout > ol { max-width: 40em; }
  .standout hr { margin: 1em 0 calc(1em - 2px); width: 1em; border: none; border-top: 2px solid #ff9a1c; }
  .banner > .bbox { margin-top: -3em; margin-bottom: -3em; }
  .banner > .bbox img { display: block; }
  .contact dt { float: left; width: 4.5em; }
  /* Forms */
  #bewerben, #angebot { scroll-margin-top: 4.5em; }
  form { max-width: 40em; }
  @supports (scroll-padding-top: 0) { main form { scroll-padding-top: 6rem; } }
  fieldset { margin: .5em 0; }
  fieldset p { max-width: none; }
  fieldset p > label:first-child { display: block; margin-bottom: .25em; font-weight: 500; font-size: 93.75%; line-height: 1.6; }
  fieldset u { cursor: pointer; display: inline-block; margin: .5em 0; padding: .5em 1.5em; font-size: 106.6666666667%; line-height: 1.1; text-decoration: none; transition: .25s; color: #fff; font-weight: bold; background: #ff9a1c; border-radius: 3px; }
  fieldset u:hover { border-bottom-color: #737d7d; }
  fieldset * + small { display: inline-block; margin-left: .5em; }
  input[type="text"], input[type="email"], input[type="tel"], input[type="date"], input[type="number"], textarea { display: block; width: 100%; padding: .5em; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 1px solid #aaa; border-radius: 3px; outline: none; }
  input[type="date"] { min-height: 2.15em; }
  input[type="number"] { width: 5em; }
  input.checked:invalid { border-color: #ff406f; box-shadow: 0 0 0 2px #ff406f; }
  .req:after { content: ' *'; }
  .msg { font-style: italic; }
  .rbox { display: -ms-flexbox; display: flex; width: 90%; padding: .5em 0; }
  .rbox > * { -ms-flex: 1 0 auto; flex: 1 0 auto; }
  .tick { display: block; }
  .tick input[type="hidden"] { position: absolute; }
  .tick input[type="checkbox"], .tick input[type="radio"] { position: absolute; clip: rect(0 0 0 0); overflow: hidden; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; }
  .tick label { display: inline-block; min-height: 2.2em; padding-right: 1.5em; padding-left: 2rem; }
  .tick label:before { content: ''; display: inline-block; width: 1.5rem; height: 1.5rem; margin-top: -.25em; margin-left: -2rem; margin-right: .5em; vertical-align: middle; cursor: pointer; background: no-repeat center #fff; border: 6px solid #fff; box-shadow: 0 0 0 1px #aaa; transition: all .2s ease-out; }
  .tick input[type="radio"] + label:before { border-radius: 100%; }
  .tick input[type="radio"]:checked + label:before { background-color: #222220; }
  .tick input[type="checkbox"] + label:before { background-size: 120%; border-width: 1px; }
  .tick input[type="checkbox"]:checked + label:before { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Cpath fill='%23222220' d='M18.2 21L3.4 14.6.2 15.7l18 18.2 26-32.6h-4.5L18.2 21z'%3E%3C/path%3E%3C/svg%3E"); }
  fieldset h3 { margin: 1.5em 0; font-size: 137.5%; font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; font-weight: normal; }
  fieldset h3 label { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; }
  fieldset h3 label:before { content: ''; display: inline-block; width: 1.5rem; height: 1.5rem; margin-right: .5em; cursor: pointer; background: no-repeat center #fff; border: 6px solid #fff; border-radius: 100%; box-shadow: 0 0 0 1px #aaa; transition: all .2s ease-out; }
  fieldset > input[type="radio"] { position: absolute; clip: rect(0 0 0 0); overflow: hidden; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; }
  fieldset > input[type="radio"] ~ p input, fieldset > input[type="radio"] ~ p label { opacity: .3; pointer-events: none; }
  fieldset > input[type="radio"]:checked ~ p input, fieldset > input[type="radio"]:checked ~ p label { opacity: 1; pointer-events: auto; }
  fieldset > input[type="radio"]:checked + h3 label:before { background-color: #222220; }
  #filename:not(:empty) { position: relative; cursor: pointer; display: block; margin-top: .25em; padding: .5em 2em .5em .5em; line-height: 1.15; border: 1px solid #aaa; border-radius: 3px; }
  #filename:not(:empty):after { content: ''; position: absolute; top: 50%; right: .5em; margin-top: -.75em; width: 1.5em; height: 1.5em; background: no-repeat center; background-size: 125%; background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 512 512' width='32' height='32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23000' d='M256,89.6c-91.9,0-166.4,74.5-166.4,166.4S164.1,422.4,256,422.4c91.9,0,166.4-74.5,166.4-166.4S347.9,89.6,256,89.6z M328.7,299.9l-29.4,29.4l-44-44l-44,44l-29.4-29.4l44-44l-44-44l29.4-29.4l44,44l44-44l29.4,29.4l-44,44L328.7,299.9z'%3E%3C/path%3E%3C/svg%3E"); }
  .submission { text-align: right; }
  .btn { display: inline-block; margin: 1.5em 0; padding: .75em 3em; line-height: 1; color: #fff; text-decoration: none; font-weight: bold; text-transform: uppercase; letter-spacing: .05em; background: #ff9a1c; border: 0; border-radius: 3px; }
  /* FOOTER */
  footer a { text-decoration: none; }
  footer > div:nth-child(1) { padding-bottom: 1.5em; background: no-repeat #ff9a1c; }
  footer > div:nth-child(1):before { content: ''; display: block; height: 3rem; margin-bottom: 1.5em; background: no-repeat left center; background-size: contain; background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128' viewBox='0 0 128 128'%3E%3Crect fill='%23ffffff' width='128' height='128'/%3E%3Cpath fill='%23ff9a1c' d='M57.6 45c2.3.3 4.2-1.8 4.2-3.9 0-2.1-2-3.7-4.4-3.8-2.2-.1-4.1 1.8-4 3.6 0 2.1 1.5 4.3 4.2 4.1m12.5 46.6c2 0 4.1-1.9 4.1-3.6 0-2.4-1.8-4.3-4.3-4.4-1.9 0-4.3 2-4.3 3.8 0 2.2 2.1 4.2 4.5 4.2m-39-22.5c.3-.7.4-1.4.7-2 1.2-2.5 2.4-5.1 3.7-7.6l4.2-8.1c1.6-3.1 3.1-6.2 4.7-9.4 1.2-2.4 2.5-4.8 3.8-7.2.2-.3.6-.5 1-.6 3.1-.1 6.1-.2 9.2-.2h10.2c5.1 0 10.3.1 15.4.2 1.3 0 2.7.3 4 .3 1.3.1 2.6 0 4 0 0 .4.1.8-.1 1l-3.3 6.6c-.2.4-.4.9-.5 1.3-.5 1.5-1.6 2.1-3 2.2-2.8.1-5.5.4-8.1 1.3-1.8.6-3.8.9-5.6 1.5-2.5.9-5.1 1.7-7.5 2.8-2.8 1.3-5.6 2.9-8.3 4.5-.7.4-1.4 1-2 1.6 0 .1 0 .3.1.4.5.1.9.4 1.4.4h8.8c2.6.1 5.3.2 7.9.3h17.3c2.2 0 4.3.1 6.5.2 1.7.1 1.7.1 1.1 1.7-.8 2.1-1.7 4.1-2.6 6.2-1.1 2.4-2.2 4.8-3.4 7.2-1.2 2.4-2.4 4.7-3.6 7l-4.2 8.4c-.4.9-.7 1.8-1.1 2.7-.6 1.2-1.6 1.9-3 1.9H54.1c-1.7 0-3.4-.1-5.1-.2h-9.5c-.8 0-1.6-.1-2.6-.2.6-1.2 1.1-2.3 1.6-3.3 1.1-2.2 2.3-4.3 3.3-6.5.4-.9 1.1-1.2 2-1.3 1.6-.2 3.2-.4 4.8-.7 2.3-.4 4.5-.9 6.8-1.5 1.7-.5 3.4-1.1 5-1.8 2.3-1 4.6-2 6.8-3.1 1.5-.7 2.9-1.5 4.4-2.3 1.2-.7 2.3-1.4 3.5-2.1.2-.1.3-.4.5-.6-.3-.1-.5-.4-.8-.4h-8.2c-1.9 0-3.8-.1-5.7-.2h-4.1c-.6 0-1.2-.1-1.9-.1h-10c-3.3 0-6.6-.1-9.9-.2-1.4.1-2.6 0-3.9-.1'/%3E%3C/svg%3E"); }
  footer > div:nth-child(1) p:last-child { margin-bottom: 0; color: #fff; font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; }
  footer > div:nth-child(2) { padding-top: 1.5em; padding-bottom: 1.5em; font-family: "Droid Serif", Georgia, Times, "Times New Roman", serif; background: #f9faf9; }
  footer > div:nth-child(3) { padding-bottom: 1em; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; -ms-flex-align: center; align-items: center; min-height: 3rem; }
  footer > div:nth-child(3):before { content: ''; margin-right: auto; width: 3rem; height: 3rem; background: no-repeat center; background-size: contain; background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128' viewBox='0 0 128 128'%3E%3Crect fill='%23ff9a1c' width='128' height='128'/%3E%3Cpath fill='%23ffffff' d='M57.6 45c2.3.3 4.2-1.8 4.2-3.9 0-2.1-2-3.7-4.4-3.8-2.2-.1-4.1 1.8-4 3.6 0 2.1 1.5 4.3 4.2 4.1m12.5 46.6c2 0 4.1-1.9 4.1-3.6 0-2.4-1.8-4.3-4.3-4.4-1.9 0-4.3 2-4.3 3.8 0 2.2 2.1 4.2 4.5 4.2m-39-22.5c.3-.7.4-1.4.7-2 1.2-2.5 2.4-5.1 3.7-7.6l4.2-8.1c1.6-3.1 3.1-6.2 4.7-9.4 1.2-2.4 2.5-4.8 3.8-7.2.2-.3.6-.5 1-.6 3.1-.1 6.1-.2 9.2-.2h10.2c5.1 0 10.3.1 15.4.2 1.3 0 2.7.3 4 .3 1.3.1 2.6 0 4 0 0 .4.1.8-.1 1l-3.3 6.6c-.2.4-.4.9-.5 1.3-.5 1.5-1.6 2.1-3 2.2-2.8.1-5.5.4-8.1 1.3-1.8.6-3.8.9-5.6 1.5-2.5.9-5.1 1.7-7.5 2.8-2.8 1.3-5.6 2.9-8.3 4.5-.7.4-1.4 1-2 1.6 0 .1 0 .3.1.4.5.1.9.4 1.4.4h8.8c2.6.1 5.3.2 7.9.3h17.3c2.2 0 4.3.1 6.5.2 1.7.1 1.7.1 1.1 1.7-.8 2.1-1.7 4.1-2.6 6.2-1.1 2.4-2.2 4.8-3.4 7.2-1.2 2.4-2.4 4.7-3.6 7l-4.2 8.4c-.4.9-.7 1.8-1.1 2.7-.6 1.2-1.6 1.9-3 1.9H54.1c-1.7 0-3.4-.1-5.1-.2h-9.5c-.8 0-1.6-.1-2.6-.2.6-1.2 1.1-2.3 1.6-3.3 1.1-2.2 2.3-4.3 3.3-6.5.4-.9 1.1-1.2 2-1.3 1.6-.2 3.2-.4 4.8-.7 2.3-.4 4.5-.9 6.8-1.5 1.7-.5 3.4-1.1 5-1.8 2.3-1 4.6-2 6.8-3.1 1.5-.7 2.9-1.5 4.4-2.3 1.2-.7 2.3-1.4 3.5-2.1.2-.1.3-.4.5-.6-.3-.1-.5-.4-.8-.4h-8.2c-1.9 0-3.8-.1-5.7-.2h-4.1c-.6 0-1.2-.1-1.9-.1h-10c-3.3 0-6.6-.1-9.9-.2-1.4.1-2.6 0-3.9-.1'/%3E%3C/svg%3E"); }
  footer > div:nth-child(3) i, footer > div:nth-child(3) a { display: block; padding: .25em 0; color: #737d7d; font-size: 93.3333333333%; }
  footer i { font-style: normal; }
  footer a[href^="#"] { opacity: 1; display: block; overflow: hidden; width: 44px; height: 44px; background: no-repeat center #fff; background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23737d7d' stroke-width='2' d='M2.2 16.9l2-2L12 7.1l9.8 9.8'/%3E%3C/svg%3E"); background-size: 24px; border-radius: 999px; transition: opacity .2s; }
  footer a[href^="#"]:before { content: ''; display: block; width: 0; height: 150%; } }
@media only screen and (min-width: 24em) { body:before { content: '24'; }
  .pin { position: absolute; width: 20px; height: 32px; } }
@media only screen and (min-width: 35em) { :root { --pad: 1rem; }
  body:before { content: '35'; }
  header { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; }
  header h1 { -ms-flex: 0 0 auto; flex: 0 0 auto; width: 38%; min-width: 12rem; }
  header p { -ms-flex: 1 1 auto; flex: 1 1 auto; text-align: left; }
  nav ul { margin-left: 38%; }
  .split { margin: 1em 0; display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; }
  .split > * { -ms-flex: 0 0 auto; flex: 0 0 auto; width: calc(50% - 1.5em); }
  .combo { margin: 1em 0; display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; }
  .combo p { margin: 0; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; -ms-flex-pack: end; justify-content: flex-end; }
  .combo p:first-child { width: calc(50% - .5em); }
  .combo p:first-child + p { width: 50%; }
  .pin { width: 30px; height: 48px; }
  .pin i { font-size: 87.5%; }
  footer > div:nth-child(1) p:last-child { margin-left: 38%; }
  footer > div:nth-child(3) { padding-bottom: 0; -ms-flex-direction: row; flex-direction: row; -ms-flex-align: center; align-items: center; min-height: 3rem; }
  footer > div:nth-child(3) i, footer > div:nth-child(3) a { padding: .5em .75em; }
  footer > div:nth-child(3) a:last-child { margin-left: 3em; }
  footer > div:nth-child(2) { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; }
  footer > div:nth-child(2) div { display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; }
  footer > div:nth-child(2) div:first-child { -ms-flex: 0 0 auto; flex: 0 0 auto; width: 38%; }
  footer > div:nth-child(2) div:last-child { -ms-flex: 1 1 auto; flex: 1 1 auto; width: 62%; -ms-flex-direction: column-reverse; flex-direction: column-reverse; padding-bottom: 1.5em; } }
@media only screen and (max-width: 41.999em) { .js #menu { position: fixed; overflow-y: auto; z-index: 100; top: calc(3rem + 1px); right: -100%; max-height: calc(100vh - 3rem - 2px); box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.05), inset 0 0 0 1px #fff; transform: translate3d(100%, 0, 0); transition: transform .4s; }
  .js #menu ul { margin: 0; }
  .js #menu li { display: block; background-color: rgba(249, 250, 249, 0); border-bottom: 1px solid #f4f4f2; transition: background-color .2s; }
  .js #menu li:after { content: none; }
  .js #menu li:hover { background-color: rgba(255, 154, 28, 0.2); }
  .js #menu a { display: block; padding: .25em 1em; border: none; }
  .js #menu li:last-child a { color: #ff9a1c; }
  .js #menu .current, .js #menu .current:hover { background: #ff9a1c; }
  .js #menu .current a, .js #menu .current:hover a { color: #fff; font-weight: bold; }
  .js .nav-open #menu { right: 0; transform: translate3d(0%, 0, 0); }
  .js #menu li:last-child { display: none; } }
@media only screen and (min-width: 42em) { :root { --pad: 1.5rem; }
  body:before { content: '42'; }
  #navicon { cursor: default; pointer-events: none; position: -webkit-sticky; position: sticky; box-shadow: none; }
  #navicon:after { box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); }
  #navicon span { display: none; }
  #navicon, #menu li:last-child { transition: transform .4s; }
  body.off #navicon, body.off #menu li:last-child { transform: translateY(-100%); }
  header { position: relative; }
  header h1 a:after { content: ''; position: fixed; z-index: 11; top: 0; left: 15px; left: max(var(--pad), 50vw - 32em + var(--pad)); width: 3rem; height: 3rem; font-size: 1rem; }
  #menu li:last-child { position: fixed; z-index: 11; top: 0; right: 15px; right: max(var(--pad), 50vw - 32em + var(--pad)); line-height: 3rem; }
  #menu li:last-child:after { content: ''; }
  #menu li:last-child:before { content: '/ '; color: #ff9a1c; }
  #menu li:last-child a { color: #ff9a1c; text-transform: lowercase; }
  #menu li:nth-last-child(2):after { content: none; }
  main { margin-bottom: 6em; }
  .intro { font-size: 175%; line-height: 1.6; }
  .standout:last-child { margin-bottom: -6em; padding-bottom: 6em; }
  .pin { width: 40px; height: 64px; }
  .pin i { font-size: 100%; left: 50%; transform: translateX(0); }
  .pin:last-child i { right: 25%; } }
@media only screen and (min-width: 58em) { :root { --pad: 3rem; }
  body:before { content: '58'; }
  body { font-size: 100%; } }
@media only screen and (min-width: 64em) { body:before { content: "64em"; }
  html { overflow-x: hidden; }
  #navicon, header, .max, nav, footer > div { position: relative; }
  #navicon:after, header:after, .max:after, nav:after, footer > div:after { content: ''; position: absolute; z-index: -1; top: 0; left: 50%; bottom: 0; width: 100vw; margin-left: -50vw; background-color: inherit; }
  #navicon { position: -webkit-sticky; position: sticky; background: transparent; }
  #navicon:after { background: rgba(255, 255, 255, 0.95); }
  .banner { overflow: visible; }
  @supports (backdrop-filter: saturate(100%)) { #navicon { background: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
    #navicon:after { background: rgba(255, 255, 255, 0.7); -webkit-backdrop-filter: saturate(100%) blur(10px); backdrop-filter: saturate(100%) blur(10px); box-shadow: none; } }
  @supports (-webkit-backdrop-filter: saturate(100%)) { #navicon { background: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
    #navicon:after { background: rgba(255, 255, 255, 0.7); -webkit-backdrop-filter: saturate(100%) blur(10px); backdrop-filter: saturate(100%) blur(10px); box-shadow: none; } } }
@media only screen and (min-width: 64.5em) { body:before { content: "65em"; }
  .bbox { margin-left: 0; margin-right: 0; } }
/* IE 10+ */
@media print { * { color: #000 !important; text-shadow: none !important; background-color: transparent !important; }
  body { margin: 1cm; font: 12pt/1.2 'Helvetica Neue',sans-serif; }
  h1 { font-size: 125%; }
  h2 { font-size: 112.5%; }
  h3, h4, h5, h6 { font-size: 100%; margin: 0; }
  h2, h3 { page-break-after: avoid; }
  p, h2, h3 { orphans: 3; widows: 3; }
  ul, ol { page-break-inside: avoid; }
  li { margin: 0 0 0 1em; padding: 0; }
  a, a:visited { text-decoration: underline; }
  img { max-width: 100% !important; height: auto; page-break-inside: avoid; }
  pre, blockquote { padding: 1em; border: 1px solid #999; page-break-inside: avoid; }
  hr { margin: 2em 0; border: 0; border-bottom: 1px solid #000; }
  table { page-break-inside: auto; }
  tr { page-break-inside: avoid; page-break-after: auto; }
  thead { display: table-header-group; }
  tfoot { display: table-footer-group; }
  header a { text-decoration: none; }
  .banner { max-width: 20cm; margin: 1em 0; }
  footer { margin: 2em 0 0; padding: 1em 0; border-top: 1px solid; }
  nav, #navicon, .pin, footer div:last-child a { display: none; }
  footer dt { float: left; width: 7em; } }
body:before { position: fixed; z-index: 1000; bottom: 3.25rem; right: 10px; padding: .5em 2em; color: #fff; background: rgba(0, 0, 0, 0.7); -webkit-font-smoothing: antialiased; }

body:before { content: none; }
