@media screen and (max-width: 480px) {

	body {
		font-size: 4vw;
	}

	.mobile-only {
		display: block;
	}

	.desktop-only {
		display: none;
	}

	.not-smallest {
		display: none;
	}

	header {
		height: auto;
	}

	#logo h1,
	.desc h1 {
		font-size: 5.44vw;
		border-top: 1vw solid #201a07;
	}

	#logo h2,
	.desc h2 {
		font-size: 5.44vw;
		padding-top: 1.4vw;
	}

	menu a {
		width: 5.44vw;
		height: 5.44vw;
	}

	.cross {
		width: 5.44vw;
		height: 5.44vw;
		margin-left: -2.72vw;
		margin-top: -2.72vw;
	}

	#text {
		margin: 4vw;
	}

	header #text p {
		font-size: 5.44vw;
		padding-top: 20vw;
		padding-bottom: 10vw;
	}

	.wrapper {
		margin-left: 5vw;
		margin-right: 5vw;
	}

	.project a.title>img {
		width: 120%;
		margin-left: -10%;
	}

	.project a hr {
		border-top: 1.2vw solid #fdfbf5;
		left: 9vw;
		top: 8vw;
		width: 12vw;
	}

	.project a h1 {
		font-size: 5.44vw;
		left: 9vw;
		top: 15.5vw;
	}

	.project a h2 {
		font-size: 3.4vw;
		top: 18.5vw;
		left: 9vw;
		width: 40vw;
	}

	.project .info p {
		padding-left: 4vw;
		width: 82vw;
	}

	.project .info iframe,
	.project .info video {
		height: 50vw;
	}

	.project .info .details p .title {
		text-transform: uppercase;
		letter-spacing: 0.3vw;
		font-size: 2.8vw;
		padding-top: 0.3vw;
		margin-left: -16vw;
		position: absolute;
	}

	.project .info .details p {
		margin-bottom: 0;
		margin-left: 16vw;
		position: relative;
		width: 66vw;
		font-size: 3.4vw;
	}

	.project .info .details {
		margin-bottom: 9vw;
	}

	.project a.action {
		padding: 1.5vw 6vw 1.4vw 6vw;
	}

	.project a.action.toggle {
		width: 21vw;
	}

	.project .info img.half {
		width: 43vw;
	}

	div.quote,
	div.half {
		width: 82vw;
		float: left;
		padding: 9vw;
		line-height: 160%;
		font-size: 4vw;
		transition-duration: 300ms;
		overflow: hidden;
	}

	.quote .source {
		font-size: 3.4vw;
		margin-top: 1.7vw;
	}

	.quote svg {
		width: 9vw;
		height: 9vw;
	}

	.quote svg.c99 {
		bottom: 15vw;
	}

	div.half {
		height: 40vw;
	}

	div.half img.background {
		width: 100vw;
		height: auto;
		margin: -9vw;
	}

	div.halves {
		position: relative;
		height: auto;
	}

	.half h1 {
		font-size: 5.44vw;
		margin-bottom: 1.7vw;
	}

	.half p {
		font-size: 4vw;
		line-height: 160%;
		margin-bottom: 4vw;
	}

	.half p.small {
		position: relative;
		bottom: auto;
		left: auto;
		right: auto;
		font-size: 3.4vw;
		line-height: 140%;
		margin: 0;
		padding: 0;
	}

	div.half.dark,
	div.half.dark:hover {
		background: none;
	}

	.publications {
		font-size: 4vw;
		padding-top: 9vw;
	}

	.publications h1 {
		font-size: 5.44vw;
		margin-left: 4vw;
	}

	.publications hr {
		margin-left: 4vw;
	}

	.publications table {
		margin: 4vw;
		width: 82vw;
	}

	.publications table tr td {
		vertical-align: top;
		margin: 0;
		padding: 0;
		padding-bottom: 4vw;
	}

	.publications table tr td:first-child {
		width: 20vw;
	}

	.publications em {
		font-size: 3.4vw;
	}

	.publications hr,
	.half hr {
		width: 12vw;
		margin-bottom: 3vw;
		border-bottom: 1vw solid #201a07;
	}

	.publications .links {
		font-size: 3vw;
		letter-spacing: 0.1vw;
	}

	.project a:hover .overlay {
		opacity: 0;
	}

	.project a:hover hr {
		width: 12vw;
	}

	.project.open a:hover hr {
		width: 18vw;
	}

	.project.open a hr {
		width: 18vw;
	}

	.project a:hover .cross,
	.project a:hover .details {
		opacity: 0;
	}

	.project.open a:hover .overlay {
		opacity: 0.5;
	}

	.project.open a:hover .cross {
		opacity: 1;
	}

	.desc {
		margin-bottom: 12vw !important;
	}

	#impressum>p {
		margin-left: 12vw;
		text-align: left;
		margin-bottom: 4vw;
		line-height: 160%;
	}

	#impressum em {
		font-style: normal;
		font-size: 3.4vw;
	}

	#menu .links {
		margin: 12vw;
		margin-top: 12vw;
	}

	#menu h3 {
		color: #201a07;
		font-size: 5.44vw;
		font-weight: normal;
		line-height: 110%;
		padding: 0;
		margin: 0;
		text-align: left;
	}

	#menu h3 a {
		display: inline;
		color: #201a07;
		width: 50vw;
		text-decoration: none;
		position: relative;
	}

	#menu h3 a:before {
		content:"— ";
		display: none;
		position: absolute;
		left: -6vw;
	}

	#menu h3 a:hover:before {
		display: inline;
	}

	#menu .small {
		padding-top:9vw;
		text-align: left;
	}

	#menu .small a {
		display: inline;
		text-align: left;
		font-size: 3.4vw;
		height: 100%;
		line-height: 160%;
		color: #201a07;
		text-decoration: none;
		width: auto;
	}

	menu a:hover .cross {
		transform: rotate(0);
	}

	menu.open a:hover .cross {
		transform: rotate(-45deg);
	}
}


/*------------------------------------------------------------------------------------------*/


@media screen and (min-width: 481px) and (max-width: 640px) {

	body {
		font-size: 2.6vw;
	}

	.mobile-only {
		display: block;
	}

	.desktop-only {
		display: none;
	}

	#logo h1,
	.desc h1 {
		font-size: 4vw;
		border-top: 0.75vw solid #201a07;
	}

	#logo h2,
	.desc h2 {
		font-size: 4vw;
		padding-top: 1.15vw;
	}

	menu a {
		width: 4vw;
		height: 4vw;
	}

	.cross {
		width: 4vw;
		height: 4vw;
		margin-left: -2vw;
		margin-top: -2vw;
	}

	#text {
		margin: 5vw;
	}

	header {
		height: auto;
	}

	header #text p {
		font-size: 3.85vw;
		padding-top: 10vw;
		padding-bottom: 10vw;
	}

	.wrapper {
		margin-left: 6vw;
		margin-right: 6vw;
	}

	.project a.title>img {
		width: 110%;
		margin-left: -5%;
	}

	.project a hr {
		border-top: 0.9vw solid #fdfbf5;
		left: 10vw;
		top: 9vw;
		width: 9vw;
	}

	.project a h1 {
		font-size: 4vw;
		left: 10vw;
		top: 14vw;
	}

	.project a h2 {
		font-size: 2vw;
		top: 17vw;
		left: 10vw;
		width: 30vw;
	}

	.project .info p {
		padding-left: 14vw;
		width: 60vw;
	}

	.project .info iframe,
	.project .info video {
		height: 50vw;
	}

	.project .info .details p .title {
		text-transform: uppercase;
		letter-spacing: 0.3vw;
		font-size: 2vw;
		padding-top: 0.3vw;
		margin-left: -16vw;
		position: absolute;
	}

	.project .info .details p {
		margin-bottom: 0;
		margin-left: 16vw;
		position: relative;
		width: 44vw;
		font-size: 2.6vw;
	}

	.project .info .details {
		margin-bottom: 9vw;
	}

	.project a.action {
		padding: 1.5vw 6vw 1.4vw 6vw;
	}

	.project a.action.toggle {
		width: 17vw;
	}

	.project .info img.half {
		width: 42vw;
	}

	div.quote {
		width: 60vw;
		float: left;
		padding: 20vw;
		padding-top: 12vw;
		padding-bottom: 12vw;
		line-height: 160%;
		font-size: 2.6vw;
		transition-duration: 300ms;
		overflow: hidden;
	}

	div.half {
		width: 34vw;
		padding: 8vw;
	}

	.quote .source {
		font-size: 2vw;
		margin-top: 1.7vw;
	}

	.quote svg {
		width: 9vw;
		height: 9vw;
		top: 7vw;
		left: 17vw;
	}

	.quote svg.c99 {
		right: 17vw;
		bottom: 17vw;
	}

	div.half img.background {
		margin: -8vw;
		height: 52vw;
	}

	div.halves {
		position: relative;
		height: 36vw;
	}

	.half h1 {
		font-size: 4vw;
		margin-bottom: 1.7vw;
	}

	.half p {
		font-size: 2.6vw;
		line-height: 160%;
		margin-bottom: 3.2vw;
	}

	.half p.small {
		width: 45vw;
		bottom: 8vw;
		left: 8vw;
		font-size: 2vw;
		line-height: 140%;
		margin: 0;
		padding: 0;
	}

	.publications {
		font-size: 2.6vw;
		padding-top: 10vw;
	}

	.publications h1 {
		font-size: 4vw;
		margin-left: 4vw;
	}

	.publications hr {
		margin-left: 4vw;
	}

	.publications table {
		margin: 4vw;
		width: 80vw;
		line-height: 140%;
	}

	.publications table tr td {
		vertical-align: top;
		margin: 0;
		padding: 0;
		padding-bottom: 4vw;
	}

	.publications table tr td:first-child {
		width: 12vw;
	}

	.publications em {
		font-size: 2vw;
	}

	.publications hr,
	.half hr {
		width: 9vw;
		margin-bottom: 2.6vw;
		border-bottom: 0.8vw solid #201a07;
	}

	.publications .links {
		font-size: 1.8vw;
		letter-spacing: 0.1vw;
	}

	.project a:hover .overlay {
		opacity: 0;
	}

	.project a:hover hr {
		width: 9vw;
	}

	.project.open a:hover hr {
		width: 14vw;
	}

	.project.open a hr {
		width: 14vw;
	}

	.project a:hover .cross,
	.project a:hover .details {
		opacity: 0;
	}

	.project.open a:hover .overlay {
		opacity: 0.5;
	}

	.project.open a:hover .cross {
		opacity: 1;
	}


	#impressum>p {
		margin-left: 12vw;
		text-align: left;
		margin-bottom: 4vw;
		line-height: 160%;
	}

	#impressum em {
		font-style: normal;
		font-size: 2vw;
	}

	#menu .links {
		margin: 12vw;
		margin-top: 6vw;
	}

	#menu h3 {
		color: #201a07;
		font-size: 4vw;
		font-weight: normal;
		line-height: 110%;
		padding: 0;
		margin: 0;
		text-align: left;
	}

	#menu h3 a {
		display: inline;
		color: #201a07;
		width: 50vw;
		text-decoration: none;
		position: relative;
	}

	#menu h3 a:before {
		content:"— ";
		display: none;
		position: absolute;
		left: -5vw;
	}

	#menu h3 a:hover:before {
		display: inline;
	}

	#menu .small {
		padding-top:9vw;
		text-align: left;
	}

	#menu .small a {
		display: inline;
		text-align: left;
		font-size: 2vw;
		height: 100%;
		line-height: 160%;
		color: #201a07;
		text-decoration: none;
		width: auto;
	}

	menu a:hover .cross {
		transform: rotate(0);
	}

	menu.open a:hover .cross {
		transform: rotate(-45deg);
	}
}


/*---------------------------------------------------------------------------------*/


@media screen and (min-width: 641px) and (max-width: 960px) {

	body {
		font-size: 2.2vw;
	}

	header {
		height: auto;
	}

	#logo h1,
	.desc h1 {
		font-size: 3.5vw;
		border-top: 0.6vw solid #201a07;
	}

	#logo h2,
	.desc h2 {
		font-size: 3.5vw;
		padding-top: 1.0vw;
	}

	menu a {
		width: 3.5vw;
		height: 3.5vw;
	}

	.cross {
		width: 3.5vw;
		height: 3.5vw;
		margin-left: -1.75vw;
		margin-top: -1.75vw;
	}


	header #text p {
		font-size: 3.5vw;
		padding-top: 20vh;
		padding-bottom: 10vh;
	}


	.project a.title>img {
		width: 110%;
		margin-left: -5%;
	}

	.project a hr {
		border-top: 0.7vw solid #fdfbf5;
	}

	.project a h1 {
		font-size: 3.5vw;
	}

	.project a h2 {
		font-size: 2.2vw;
		width: 25vw;
	}

	.project a .details p {
		font-size: 1.7vw;
		margin-bottom: 0.5vw;
	}

	.project a .details p .title {
		font-size: 1.5vw;
	}

	.project .info p {
		width: 64vw;
		padding-left: 6vw;
	}

	.project a.action.toggle {
		width: 13vw;
	}

	.project .info .image-description img.small {
		width: 100%;
	}

	.peripipe label .plus {
		margin-left: -9%;
	}

	.soundspace label .text {
		left: 40%;
	}

	div.quote,
	div.half {
		font-size: 1.9vw;
	}

	.quote .source {
		font-size: 1.7vw;
	}

	.publications {
		font-size: 1.9vw;
		line-height: 140%;
	}

	.publications h1,
	.half h1 {
		font-size: 3.5vw;
	}

	.publications hr,
	.half hr {
		border-bottom: 0.6vw solid #201a07;
	}

	.publications table {
		margin: 4vw;
		width: 68vw;
		margin-top: 8vw;
	}

	.publications table tr td {
		padding-bottom: 2.2vw;
	}

	.publications table tr td:first-child {
		width: 10vw;
	}

	.publications em {
		font-style: normal;
		font-size: 1.7vw;
	}

	.publications .links {
		font-size: 1.5vw;
		text-transform: uppercase;
		letter-spacing: 0.05vw;
	}

	.quote svg {
		width: 6vw;
		height: 6vw;
		top: 5vw;
		left: 5vw;
	}

	.quote svg.c99 {
		bottom: 12vw;
		right: 8vw;
	}

	div.half {
		padding: 6vw;
		width: 38vw;
	}

	div.halves {
		height: 38vw;
	}

	div.half img.background {
		height: 46vw;
		margin-left: -6vw;
		margin-top: -6vw;
	}

	.half h1 {
		margin-bottom: 2.0vw;
	}

	.half p {
		font-size: 2.0vw;
		line-height: 160%;
		margin-bottom: 2.0vw;
	}

	.half p.small {
		bottom: 6vw;
		left: 6vw;
		right: 6vw;
		font-size: 1.7vw;
	}

	#impressum>p {
		margin-left: 27.3vw;
		text-align: left;
		margin-bottom: 1vw;
		line-height: 160%;
	}

	#impressum em {
		font-style: normal;
		font-size: 1.7vw;
	}

	#menu .links {
		margin-left: 27.3vw;
		margin-top: 8vh;
	}

	#menu h3 {
		font-size: 3.5vw;
		line-height: 80%;
	}

	#menu h3 a:before {
		content:"— ";
		display: none;
		position: absolute;
		left: -3.5vw;
	}

	#menu .small {
		padding-top: 3.4vw;
		text-align: left;
	}

	#menu .small a {
		font-size: 1.7vw;
	}
}