.properties {
	position: relative;
	background: var(--bexco-grey);
	padding: 15vh 0 25vh; }

.properties .container {
	max-width: 90%; }

.properties .map {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background-position: center;
	mix-blend-mode: multiply;
	z-index: 1; }

.properties .sup {
	color: white;
	text-transform: uppercase;
	font-family: var(--bexco-bold);
	font-size: 8vw;
	font-weight: 800;
	text-align: center;
	line-height: 0.8;
	z-index: 11 }
.properties .sub {
	position: relative;
	color: white;
	text-align: center;
	padding: 5px 20% 15px;
	z-index: 11 }

.properties .cta {
	position: relative;
	float: right;
	width: 40%;
	margin: 15px 0 0;
	z-index: 3; }
	.properties .cta .text {
		padding-left: 20%; }

		.properties .cta:hover .text {
			padding-left: 25%; }

.properties .gradient {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 30vh;
	background: linear-gradient(to bottom, var(--bexco-dark) 0%, transparent 100%);
	z-index: 30; }

.properties .grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 10px;
	z-index: 2; }

	.properties .grid .item {
		position: relative;
		background-color: white;
		background-position: center;
		background-size: cover;
		overflow: hidden;
		transform: translate(0, 20%);
		opacity: 0; }

		.properties .grid.open .item {
			transform: translate(0, 0);
			opacity: 1;
			transition: 0.5s; }

		.properties .grid.open .item:nth-child(1) { transition-delay: 0.4s; }
		.properties .grid.open .item:nth-child(2) { transition-delay: 0.2s; }
		.properties .grid.open .item:nth-child(3) { transition-delay: 0.6s; }
		.properties .grid.open .item:nth-child(4) { transition-delay: 0.8s; }
		.properties .grid.open .item:nth-child(5) { transition-delay: 1.0s; }

		.properties .grid .item .gradient {
			position: absolute;
			bottom: 0; left: 0; top: unset;
			width: 100%;
			height: 50%;
			background: linear-gradient(to top, var(--bexco-dark) 0%, transparent 100%);
			z-index: 1; }

		.properties .grid .item:before { 
			content: "";
			position: absolute;
			bottom: -25%; left: -25%;
			width: 100%;
			height: 100%;
			background-color: var(--bexco-eins);
			box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
			opacity: 0.5;
			transform: rotate(45deg) scale(1.1) translate(-110%, 0);
			mix-blend-mode: hard-light;
			z-index: 2;
			transition: 0.5s; }
			.properties .grid .item:hover:before { 
				transform: rotate(45deg) scale(1.1) translate(0, 0);
				transition: 0.3s; }

		.properties .grid .item:after { 
			content: "";
			position: absolute;
			bottom: -25%; right: -25%;
			width: 100%;
			height: 100%;
			background-color: var(--bexco-zwei);
			box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
			opacity: 0.5;
			transform: rotate(-45deg) scale(1.1) translate(-110%, 0);
			mix-blend-mode: hard-light;
			z-index: 2;
			transition: 0.5s; }
			.properties .grid .item:hover:after { 
				transform: rotate(-45deg) scale(1.1) translate(0, 0);
				transition: 0.3s; }

		.properties .grid .item .action {
			position: absolute;
			top: calc(50%);
			left: calc(50% - 30px);
		    width: 60px; height: 30px;
		    color: white;
		    text-align: center;
		    z-index: 3;
		    transform: scale(2, 0);
		    transition: 0.2s; }
			.properties .grid .item:hover .action {
			    transform: scale(2, 2);
		    	transition: 0.2s; }
			.properties .grid .item.main:hover .action {
			    transform: scale(4, 4);
		    	transition: 0.2s; }

		.properties .grid .item .inner {
			position: absolute;
			bottom: 0; left: 0;
			width: 100%;
			padding: 10px 22px;
			z-index: 4; }

			.properties .grid .item .inner .title {
				color: white;
				text-transform: uppercase;
				font-family: var(--bexco-bold);
				font-size: 1.5vw;
				letter-spacing: 0;
				line-height: 0.8; }

			.properties .grid .item .inner .location {
				font-size: 0.8vw;
				letter-spacing: 0; }

		.properties .grid .item.main { 
			height: 50vh;
			grid-column: span 2; 
			grid-row: span 2; }

			.properties .grid .item.main .inner .title {
				font-size: 2.5vw; }


@media (max-width: 900px) {
	.properties .sup { font-size: 25vw; }

	.properties .sub { padding: 15px 25px; }
}