/* Hero */

.hero {
	display: block;
	width: 100%;
	height: 86vh;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;	
}

.hero .bigtxt {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	text-align: center;
}

.hero .biglogo {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: -150px;
	right: 0;
	bottom: 0;
	left: 0;
	text-align: center;
}

.hero figure {
	width: 40%;
}

@media only screen and (max-width: 768px) {
	.hero figure {
		width: 80%;
	}
}


/* headline */

.headline {
	letter-spacing: 3px;
	text-transform: uppercase;
}

.headline-upad {
	padding-top: 7em;
}
.headline-bpad {
	padding-bottom: 6em;
}
.headline-pad {
	padding-top: 7em;
	padding-bottom: 6em;
}

.headline--fontsize-default {
	font-size: 1.25em;
	line-height: 1.15;
}

.headline--fontsize-large {
	font-size: 2em;
	line-height: 1.15;
}

.headline--fontsize-extra {
	font-size: 5em;
	line-height: 1.15;
}

.headline--width-full {
	display: block;
	width: 100%;
	margin: 0 auto;
}
.headline--width-medium {
	display: block;
	width: 80%;
	margin: 0 auto;
}
.headline--width-small {
	display: block;
	width: 50%;
	margin: 0 auto;
}

@media only screen and (max-width: 768px) {
	.headline--width-medium, .headline--width-small {
		width: 100%;
	}
}

.text--align-left {
	text-align: left;
}

.text--align-center {
	text-align: center;
}

.text--align-right {
	text-align: right;
}


/* text module */

.bodytext-upad {
	padding-top: 6em;
}
.bodytext-bpad {
	padding-bottom: 6em;
}
.bodytext-pad {
	padding-top: 6em;
	padding-bottom: 6em;
}

.bodytext a {
	color: inherit;
}

.bodytext strong {
	font-size: 1.25em;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.text {
	margin: 0 auto;
	float: none;
	clear: both;
}

.text h2 {
	letter-spacing: 5px;
	line-height: 1.2;
}

.text h3 {
	font-size: 1.25rem;
	text-transform: uppercase;
	letter-spacing: 3px;
	padding-top: 2em;
	padding-bottom: .5em;
}

.text--width-small {
	max-width: 900px;
	margin: 0 auto;
}

.text--width-medium {
	max-width: 70rem;
	margin: 0 auto;
}

.text--width-large {
	max-width: 100%;
}

.text--fontsize-default {
	font-size: 21px;
	line-height: 1.6;
}

.text--fontsize-intro {
	font-family: "ivymode", serif;
	font-size: 1.6em;
	line-height: 1.5;
	letter-spacing: 1px;
}

@media only screen and (max-width: 768px) {
	.text--fontsize-default {
		font-size: 17px;
		line-height: 2.0;
	}
	.text--fontsize-intro {
		font-size: 1.25em;
		line-height: 1.15;
	}
}


/* images */

.gallery-nopad {
	padding-top: 0;
	padding-bottom: 0;
}
.gallery-pad {
	padding-top: 6em;
	padding-bottom: 6em;
}

.img--wrapper-nowrap {
	display: block;
	width: 100%;
	height: auto;
}

.img--wrapper-wrap {
	display: block;
	max-width: 1140px;
	height: auto;
	margin: 0 auto;
}
.img--wrapper-small {
	display: block;
	max-width: 720px;
	height: auto;
	margin: 0 auto;
}

.img--column-col1-1 {
	display: block;
	width: 100%;
	height: auto;
}

.img--column-col1-1 img {
	/*padding-bottom: 2em;*/
	margin-bottom: -5px;
}

.img--column-col1-2 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 2em;
}

.img--column-col1-3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 2em;
}

.small {
	width: 100%;
	max-width: 500px;
}


@media only screen and (max-width: 800px) {
	.img--column-col1-1, .img--column-col1-2, .img--column-col1-3 {
		display: block;
		width: 100%;
		height: auto;
		padding: 0;
		float: none;
	}
}


/* special */

.special {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-columns-gap: 30px;
	grid-row-gap: 60px;
	background-color: #d6d6e0;
	color: #4e5378;
	padding: 60px;
	line-height: 1.2;
}

.special-item:before {
	content: '';
	display: block;
	width: 80px;
	height: 2px;
	background-color: #4e5378;
	transform: rotate(-25deg) translateX(-15px) translateY(-20px);
}

@media screen and (min-width: 45rem) {
	.special {
		grid-template-columns: repeat(4, 1fr);
	}
}


/* quote */

.quote{
  background-color: #bd689a;
  padding: 20px;
  font-family: sans-serif;
}
.quote blockquote{
  font-size: 20px;
  font-style: italic;
}
.quote .citation{
  font-size: .75em;
  text-align: right;
  opacity: .7;
}


/* 5050 */

.grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 2em;
}

@media only screen and (max-width: 768px) {
	.grid {
		display: block;
	}
}

.block--pad-full {
	padding: 0;
}
.block--pad-norm {
	padding: 2em;
}
.block--pad-extra {
	padding: 4em;
}

.img--pad-full {
	padding: 0;
}
.img--pad-norm {
	padding: 2em;
}
.img--pad-extra {
	padding: 4em;
}

.fiftyfifty figure {
	margin-bottom: -7px !important;
}
.fifty {
	display: flex;
	align-items: center;
	justify-content: center;
}

.fifty li {
	list-style: disc;
	margin-left: 18px;
	padding: 0.36rem 0;
}

.fifty h2 {
	text-transform: uppercase;
	letter-spacing: 3px;
}
.fifty h3 {
	font-size: 1.25rem;
	text-transform: uppercase;
	letter-spacing: 3px;
	padding-top: 2em;
	padding-bottom: .5em;
}


/* slider */

.slider {
	padding-bottom: 3em;
}

/* Carousel styles*/
.slim-slider-wrapper{
  overflow: hidden;

}
.slim-slider{
  position: relative;
}
.is-animating{
  transition: transform 400ms;
}
.slim-slide{
  min-width: 100%;
  overflow: hidden;
}
.slim-slides{
  width: 100%;
  height: 100%;
  display: flex;
  display: -webkit-box;
}
.carousel-pagination{
  display: none;
  /*display: flex;*/
  /*display: -webkit-box;*/
  justify-content: left;
  align-items: top;
  position: absolute;
  bottom: 0;
  left:0;
  width: 100%;
  height: 35px;
  z-index: 100000;
}
.carousel-pagination-pointer{
  height: 15px;
  width: 15px;
  border: 1px solid #000000;
  border-radius: 100%;
  margin-right: 6px;
}
.carousel-pagination-pointer.active{
  background: #000000;
}

.thumbs{
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 35px;
  left:0;
  width: 100%;
  height: 35px;
  z-index: 100000;
}

.thumb{
  height: 53px;
  width: 80px;
  border: 1px solid #fff;
  margin-right: 10px;
  overflow: hidden;
  opacity: 0.4;
  transition: opacity 0.3s;
}
.thumb .thumb-image {
  max-width: 100%;
}
.thumb.active{
  background: #fff;
  border-color: #fff;
  opacity: 1;
}
.carousel-buttons {
    display: flex;
    /*display: -webkit-box;*/
    justify-content: center;
    align-items: center;
    position: absolute;
	top: 50%;
	margin-top: -25px;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 35px;
    z-index: 100000;
	cursor: pointer;
}
.carousel-arrow{
  font-size: 35px;
  position: absolute;
}
.next:before{
  content: '→';
}
.prev:before{
  content: '←';
}
.next, .prev {
	opacity: 1;
	transition: opacity .5s;
}
.next{
  right: 10px;
}
.next:hover {
	opacity: .3;
}
.prev{
  left: 10px;
}
.prev:hover {
	opacity: .3;
}

.slider--pad-full {
	padding: 0;
}
.slider--pad-medium {
	padding: 0 5em;
}
.slider--pad-small {
	padding: 0 10em;
}

@media only screen and (max-width: 768px) {
	.slider--pad-full,.slider--pad-medium, .slider--pad-small {
		padding: 0 20px;
	}
	.glide__arrow--left {
		left: 0!important;
	}
	.glide__arrow--right {
		right: 0!important;
	}
}


/* highlights */

.highlights {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-gap: 3.5em;
	padding: 4em;
	background-color: #d6d5e0;
}

.hl-text h3 {
	font-size: 2em;
	line-height: 1.1;
	color: #4e5378;
	padding: 2rem 0;
}

.hl-text ul {
	list-style: disc;
	margin-left: 1em;
	color: #4e5378;
}

.hl-text li {
	padding: 5px 0;
	font-size: 1.1em;
	line-height: 1.5;
}

@media screen and (min-width: 65rem) {
	.highlights {
		grid-template-columns: repeat(3, 1fr);
	}
	.hl-text h3 {
		font-size: 3.5em;
	}
}


/* Whg */


.apartments {
	padding: 2em;
	color: #4e5378;
}

.ap-item {
	display: block;
	grid-template-columns: repeat(6, 1fr);	
	line-height: 1;
	padding: 20px 0;
	border-bottom: 1px solid #4e5378;
}

.ap-item:first-child {
	border-top: 1px solid #4e5378;
}

.ap-btn {
	margin-top: 10px;
	margin-bottom: 15px;
}

.ap-btn a {
	color: #4e5378;
	background-color: #d6d5e0;
  text-decoration: none;
	padding: 4px 15px;
	border: 1px solid #4e5378;
	border-radius: 15px;
	transition: all 0.3s;
}

.ap-btn a:hover {
	color: #fff;
	background-color: #4e5378;	
	margin-top: 40px;
}


@media screen and (min-width: 65rem) {
	.ap-item {
		display: grid;
	}
	.ap-item p {
		padding: 0;
	}
	.ap-btn {
		margin-top: 0;
	  margin-bottom: 0;
	}
}








