/*@import url('https://fonts.googleapis.com/css?family=Amiri:400,400i,700,700i&display=swap');*/

/*@font-face {
    font-family: 'compagnon-roman';
    src: url('../fonts/Compagnon-Roman.eot');
    src: url('../fonts/Compagnon-Roman.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Compagnon-Roman.woff2') format('woff2'),
         url('../fonts/Compagnon-Roman.woff') format('woff'),
         url('../fonts/Compagnon-Roman.svg#compagnon-roman') format('svg');
    font-weight: normal;
    font-style: normal;
}*/
/*@font-face {
    font-family: 'compagnon-light';
    src: url('../fonts/Compagnon-Light.eot');
    src: url('../fonts/Compagnon-Light.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Compagnon-Light.woff2') format('woff2'),
         url('../fonts/Compagnon-Light.woff') format('woff'),
         url('../fonts/Compagnon-Light.svg#compagnon-light') format('svg');
    font-weight: normal;
    font-style: normal;
}*/
/*@font-face {
    font-family: 'compagnon-italic';
    src: url('../fonts/Compagnon-Italic.eot');
    src: url('../fonts/Compagnon-Italic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Compagnon-Italic.woff2') format('woff2'),
         url('../fonts/Compagnon-Italic.woff') format('woff'),
         url('../fonts/Compagnon-Italic.svg#compagnon-italic') format('svg');
    font-weight: normal;
    font-style: normal;
}*/

/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
  color: #222;
}

html {
  font-size: 1em;
  line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */
audio,
canvas,
img,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical;
}

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */
.browsehappy {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
body {
  /*	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;*/
  font-family: "courier new", courier, monospace;
  /*	font-family: 'compagnon-roman',"courier new", courier, monospace;*/
  /*	font-family: courier, monospace;*/
  font-family: "ibm-plex-mono", sans-serif;
  font-family: "source-code-pro", monospace;
  font-weight: 300;
  font-style: normal;
  font-size: 15px;
  line-height: 1.2;
  /*	font-weight: bold;*/
  /*	text-transform: uppercase;*/
  /*	letter-spacing: .02em;*/
  color: rgba(255, 255, 255, 1);
  /*	background-color: rgba(255, 255, 0, 1);*/
  background-color: rgba(0, 0, 0, 1);
  /*	background-color: rgba(0, 0, 0, .05);*/
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

html,
body {
  height: 100%;
}

ul {
  margin: 0;
  padding: 0;
}

li {
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
  /*	border-bottom: 1px dotted rgba(210, 70, 0, 1);*/
}

a:hover {
  /*	border-bottom-style: solid;*/
}

s form {
  float: left;
}

.wrapall {
  position: relative;
  width: 100%;
  min-height: 100%;
  /*	height: auto !important;*/
  height: 100%;
}

.wrap {
  /*	width: 360px;*/
  width: 100%;
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 auto -40px;
  position: relative;
}

.footer_wrap {
  position: relative;
  box-sizing: border-box;
}

.footer_wrap,
.push {
  width: 100%;
  height: 40px;
  margin: 0 auto;
  clear: both;
}

@media screen and (min-width: 1200px) {

  .wrap,
  .footer_wrap {
    width: 80%;
  }
}

@media screen and (min-width: 1600px) {

  .wrap,
  .footer_wrap {
    width: 66.666%;
  }
}

.content {
  box-sizing: border-box;
  text-align: left;
  width: 100%;
  /*	float: left;*/
  position: relative;
  padding: 0px;
  padding-top: 1px;
  padding-left: 1px;
}

/* @group start */

.units {}

.unit {
  position: relative;
  float: left;
}

.unit_1 {
  width: 50%;
}

.unit_2 {
  width: 100%;
}

.unit_4 {
  width: 100%;
}

.unit_pro_2 {
  width: 100%;
}

.unit_pro_2.right {
  float: right;
}

.unit_pro_1 {
  width: 50%;
}

.unit_pro_33 {
  width: 33.333%;
}

.unit_pro_66 {
  width: 66.666%;
}

.unit_pro_75 {
  width: 75%;
}

.col {
  float: left;
  width: 50%;
}

.box {
  position: relative;
  float: left;
}

.box_1 {
  width: 50%;
}

.box_15 {
  width: 33.333%;
}

.box_25 {
  width: 25%;
}

.box_50 {
  width: 50%;
}

.box_2 {
  width: 100%;
}

.box_4 {
  width: 100%;
}

.box_pro {
  width: 100%;
}

.box_layout {}

.square_wrap {
  position: relative;
  float: left;
  height: auto;

  box-sizing: border-box;
}

.xsq .square_wrap,
.hz .square_wrap {
  width: 50%;
}

.sq .square_wrap,
.vt .square_wrap {
  width: 100%;
}

.intro .square_wrap {
  width: 100%;
  /*	width: 50%;*/
}

.box_pro .square_wrap {
  width: 100%;
}

.box_pro.double .square_wrap {
  width: 50%;
}

.unit_pro_2 .box_15 .square_wrap {
  width: 100%;
}

.unit_pro_2 .box_25 .square_wrap {
  width: 100%;
}

.unit_pro_2 .box_50 .square_wrap {
  width: 100%;
}

.square_wrap img {
  width: 100%;
  height: 100%;
}

.hintergrundbild {
  position: absolute;
  width: 100%;
}

.hintergrundbild img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.box_content {
  position: absolute;
  overflow: hidden;
  top: -1px;
  left: -1px;
  right: 0px;
  bottom: 0px;
  border: 1px solid #fff;
  box-sizing: border-box;
  /*	box-shadow: 2px 2px 8px rgba(0, 0, 0, .2);*/
}

.box_content img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.box_content.zoom_200 img {
  width: 200%;
  height: 200%;
  object-position: 75% -200px;
}

.txt .box_content {
  overflow: visible;
  box-shadow: none;
  border: none;
  padding: 10px
    /*	margin: -2px 0;*/
}

.txt .square_wrap img,
.blank .square_wrap img {
  background-color: rgba(0, 0, 0, 0);
}

.video .square_wrap img {
  background-color: rgba(255, 255, 255, 1);
}

video {
  position: absolute;
  left: -14.3%;
}

.title {
  float: left;
  margin-top: -3px;
}

.title .name {
  display: inline;
  text-transform: lowercase;
  font-family: ;
  letter-spacing: ;
  font-size: 18px
    /*	float: left;*/
}

.nav {
  float: ;
  margin-top: ;
  line-height: .9;
  clear: both;
  position: absolute;
  bottom: 10px;
}

.nav_item {
  float: left;
  margin: 0 9px;
}

.nav_item:last-child {
  margin: 0;
}

.blank {
  display: none;
}

.caption {
  float: left;
  padding-top: 2.4em;
  width: 75%;
  clear: both;
}

/* @end */

/* @group project */

/*.overlay {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	padding: 80px 0 5px;
/*	height: 100%;*!/
/*	bottom: 0;*!/
	background-color: rgba(0, 0, 0, .9);
}*/
.project_head {
  position: relative;
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding: 5px;
  height: 40px;
  font-size: 12px;
  line-height: 1.1;
  font-weight: bold;
  letter-spacing: -.01em;
}

.project_back {
  font-style: italic;
}

.arrowbox {
  width: 128px;
  height: 63px;
  position: absolute;
  left: 15px;
  top: 15px;
}

.arrow {
  position: absolute;
  border-style: solid;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  border-width: 0px 0px 2px 2px;
  width: 40px;
  height: 40px;
  left: 6px;
  border-color: inherit;
  /*	margin-right: 10px;*/
}

.st0 {
  fill: none;
  stroke: #ffffff;
  stroke-width: .5;
  stroke-miterlimit: 10;
}

.st1 {
  fill: transparent;
}

.st1:hover .st0 {
  stroke: yellow;
}


.back_txt {
  position: relative;
  float: left;
  /*margin: -3px 0;*/
  /*	font-weight: normal;*/
}

.project_txt {
  position: absolute;
  top: 2px;
  /*	bottom: 1px;*/
  right: 5px;
  text-align: right;
  padding-left: 40px;
  /*	margin: -3px 0;*/
  width: 100%;
  box-sizing: border-box;
}

.project_title {
  margin-top: -3px;
  /*	float: left;*/
  /*	padding-right: 3px;*/
}

.project_description {
  /*	float: left;*/
}

.project_description a {
  opacity: .5;
}

.project_back {
  /*	position: absolute;*/
  /*	bottom: 0;*/
  float: left;
  /*  padding-top: 1.2em;
  */
}

.project_back:hover {
  color: yellow;
}

.video-responsive {
  position: relative;
  display: block;
  width: 133%;
  overflow: hidden;
}

#index .video-responsive {
  width: 178%;
}

.video-responsive::before {
  display: block;
  content: "";
  padding-top: 56.25%;
}

.video-responsive-item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -14%;
  width: 100%;
  height: 100%;
  border: 0;
}

#index .video-responsive-item {
  left: -22%;
}

.videolink {
  position: absolute;
  width: 56%;
  height: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.addressbox {
  position: absolute;
  left: 20px;
  top: 20px;
}

a.link {
  border-bottom: 1px dotted #000;
  padding-bottom: 2px;
}

a.link:hover {
  border-bottom: 1px solid #000;
}

/* @end */

/* @group footer */

.footer_content {
  font-size: 10px;
  /*	line-height: 1;*/
  box-sizing: border-box;
  text-align: left;
  width: 100%;
  padding: 0;
  position: ;
  bottom: ;
}

.footer_col {
  /*	width: 50%;*/
  float: left;
  box-sizing: border-box;
  padding: 8px;
}

.footer_col:last-child {}

.footer_nav_item {
  padding: 0 5px;
}

/* @end */

/* @group breakpoint */

@media screen and (min-width: 640px) {
  .unit_1 {
    width: 25%;
  }

  .unit_2 {
    width: 50%;
  }

  .intro .square_wrap {
    width: 50%;
  }

  .blank {
    display: inline;
  }
}

/*@media screen and (min-width: 2000px) {
	.unit_1 {
	width: 12.5%;
}
	.unit_2 {
		width: 25%;
	}
	.intro .square_wrap {
		width: 25%;
	}
	.blank {
		display: inline;
	}
}	*/




/*
body#index {
  background-color: #fff;
  color: #000;
}
body#index .box_content {
  border-color: #000;
}
*/



body#info {
  background-color: ;
  color: #000;
}


body#arabia_felix {
  background-color: #fff;
  color: #000;
}

body#arabia_felix .box_content {
  border-color: #000;
}

body#arabia_felix .st0 {
  stroke: #000000;
}



body#big_break {
  background-color: #fff;
  color: #000;
}

body#big_break .box_content {
  border-color: #000;
}

body#big_break .st0 {
  stroke: #000000;
}



body#dive {
  background-color: #fff;
  color: #000;
}




body#mr_la {
  background-color: #fff;
  color: #000;
}

body#mr_la .box_content {
  border-color: #000;
}

body#mr_la .st0 {
  stroke: #000000;
}




body#naga_now {
  background-color: #fff;
  color: #000;
}

body#naga_now .box_content {
  border-color: #000;
}

body#naga_now .st0 {
  stroke: #000000;
}



body#open {
  background-color: rgba(108, 119, 43, 1);
  color: rgba(255, 255, 255, 1);
}



body#open_eye_award .st0 {
  stroke: #ff6400;
}



body#pocket_fm {
  background-color: #fff;
  color: #000;
}

body#pocket_fm .box_content {
  border-color: #000;
}

body#pocket_fm .st0 {
  stroke: #000000;
}



body#stadtbodenstiftung {
  background-color: #fff;
  color: #000;
}

body#stadtbodenstiftung .box_content {
  border-color: #000;
}

body#stadtbodenstiftung .st0 {
  stroke: #ffffff;
}



body#summerfest {
  background-color: #fff;
  color: #000;
}

body#summerfest .box_content {
  border-color: ;
}

body#summerfest .st0 {
  stroke: #1a5aa1;
}




/* @end */


/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */
.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  /* IE 6/7 fallback */
  * text-indent: -9999px;
}

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */
.hidden {
  display: none !important;
  visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */
.invisible {
  visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.clearfix {
  *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
(-o-min-device-pixel-ratio: 5/4),
(-webkit-min-device-pixel-ratio: 1.25),
(min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]:after {
    content: " ("attr(href) ")";
  }

  abbr[title]:after {
    content: " ("attr(title) ")";
  }

  /*
   * Don't show links for images, or javascript/internal links
   */
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
    /* h5bp.com/t */
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  img {
    /*		max-width: 100% !important;*/
  }

  @page {
    margin: 0.5cm;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}
