body {
	margin: 0;
	padding: 0;
	font-size: 16px;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
}

a {
	text-decoration: none;
	color: inherit;
}

* {
	margin: 0;
	padding: 0;
}

.offwhite_bg {
	background: #f4f1d8;
}

.offwhite_txt {
	color: #f4f1d8;
}

.black_txt {
	color: #000;
}

.flex {
	display: flex;
}

div.wrapper_left {
	width: calc(80% - 2vw);
	position: absolute;
	left: 1vw;
	top: 1vw;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 1vw;
}

.full {
	width: 100%;
	position: relative;
	border-radius: 1vw;
	overflow: hidden;
}

.ratio_landscape {
	aspect-ratio: 16 / 9;
}

.half {
	width: calc(50% - .5vw);
	position: relative;
	border-radius: 1vw;
	overflow: hidden;
	aspect-ratio: 1 / 1;
}

.cat_title {
	position: absolute;
	top: 2vw;
	left: 2vw;
	width: 80%;
	z-index: 4;
}

img.project_bg {
	width: 100%;
	height: 100%;
	position: absolute;
	object-fit: cover;
	z-index: 2;
}

.desc {
	position: absolute;
	bottom: 2vw;
	left: 2vw;
	width: 68%;
	z-index: 4;
}

.case_study_cta {
	position: absolute;
	bottom: 1vw;
	right: 2vw;
	border: 1px solid rgba(255, 255, 255, .48);
	border-radius: 1vw;
	z-index: 4;
	padding: 1vw 2vw;
	transition: all .5s;
	backdrop-filter: blur(4px);
}

.case_study_cta:hover {
	background: #f4f1d8;
	color: #000;
	padding: 1vw 2.5vw;
}

.gradient {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 100%, rgba(0, 0, 0, 0.15) 100%), radial-gradient(at center center, rgb(255, 255, 255) 20%, rgb(0, 0, 0) 190%) #989898;
	z-index: 3;
	mix-blend-mode: multiply;
}


.one_third {
	width: 33.3%;
	padding: 4vw 0vw;
}


div.fixed_right {
	width: calc(20% - 1vw);
	height: calc(100vh - 2vw);
	position: fixed;
	border-radius: 1vw;
	background: #d4d7a8;
	right: 1vw;
	top: 1vw;
}

h2.right_bar_tagline {
	padding: 2vw 0vw;
	width: 80%;
	margin: 0 auto;
}

div.bottom_right {
	position: absolute;
	bottom: 2vw;
	width: 80%;
	margin-left: -40%;
	left: 50%;
}

.mark {
	width: 100%;
	display: block;
}

ul#info {
	padding: 0;
	margin: 2vw 0;
	list-style: none;
	border-top: 1px solid #000;
}

ul#info li {
	padding: .68vw 0vw;
	border-bottom: 1px solid #000;
}

.logo_footer {
	display: block;
	width: 40%;
}

.logo_container img {
	display: block;
	max-width: 890px;
}

img.slides {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.footer {
	gap: 1vw;
}


@media screen and (min-width: 140px) and (max-width: 600px) {

	div.wrapper_left {
		width:100%;
		position: relative;
		left:0;
		top:0;
		display: flex;
		box-sizing: border-box;
		padding: 10px;
		gap:10px;
	  }
	  
	  div.fixed_right {
		width:100%;
		height: auto;
		position: relative;
		right:0;
		top:0;
		box-sizing: border-box;
		padding: 20px;
	  }
	  
	  h2.right_bar_tagline {
		  padding: 0px 0px 20px 0px;
		  width: 100%;
		  margin: 0;
	  }
	  
	  div.bottom_right {
		  position: relative;
		  bottom:0;
		  width:100%;
		  margin-left:0;
		  left:0;
		  display: flex;
		  gap: 20px;
		  justify-content: space-between;
	  }
	  
	  .fixed_right_logo_holder {
		  display: block;
		  width: 20%;
		  float: right;
	  }
	  .mark {
		  width:100%;
		  display: block;
		  float:right;
	  }
	  
	  ul#info {
		  margin: 0;
		  width: 50%;
		  display: block;
	  }
	  
	  ul#info li{
		  padding: 10px 0px;
		  border-bottom: 1px solid #000;
	  }
	  
	  .ratio_landscape {
		 aspect-ratio: 1 / 1; 
	  }
	  
	  .half {
		width:100%;
	  }
	  
	  .cat_title {
		  top:10px;
		  left:10px;
	  }
	  
	  .desc {
		  bottom:10px;
		  left:10px;
		  width:60%;
	  }
	  
	  .case_study_cta {
		  position: absolute;
		  bottom:10px;
		  right:10px;
		  padding:12px 20px;
	  }
	  
	  .logo_footer {
		width: 80%;
	  }
}