.col-third.tablet-col-half.location {
  margin-bottom: 20px;
}

.location a.location-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  color: #333;
}

.location a.location-link:hover {
  text-decoration: none;
}

.location img.location-image {
  border-radius: 10px;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin-bottom: 10px;
  opacity: 1;
  transition: opacity 0.3s ease-in-out;
}

.location img.location-image:hover {
  opacity: 0.8;
}

.location h4.location-title {
  font-size: 18px;
  font-weight: bold;
  margin-top:0;
  margin-bottom: 5px;
}

.modal {
  display: none;
  position: fixed;
  z-index: 99999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
	overflow-x:hidden;
	overflow-y:auto;
  background-color: rgba(0, 0, 0, 0.4);
}

.modal-content {
  background-color: #fff;
  margin: 1.75rem auto;
  border-radius: 5px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  max-width: 840px;
  width: 100%;
  position: relative;
	height:calc(100% - 3.5rem);
}

.close {
  position: absolute;
  top: 8px;
  right: 25px;
  font-size: 28px;
  font-weight: bold;
  color: #aaa;
  cursor: pointer;
  z-index: 99;
}

.close:hover,
.close:focus {
  color: #777;
}
#location-content-wrap {
	padding:20px;
	height:100%;
	overflow-y:auto;
}
.location-inner-content {
  display: block;
}
.location-content ul {
	margin:0;
	padding:0;
	list-style:none;
}
.location-content ul li {
	margin:0 0 7px;
	padding-left:20px;
	position:relative;
	box-sizing:border-box;
	-ms-box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.location-content ul li:before {
	position:absolute;
	left:0;
	top:12px;
	width:10px;
	height:10px;
	content:"";
	border-radius:100%;
	background:var(--gold);
}

.location-title h2 {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 20px;
  color: #333;
}

.location-content h3,
.location-content h4 {
  margin-top: 0;
  font-weight: bold;
}

.primary-info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.primary-info .portrait img {
	border-radius: 15px;
	width: 100%;
	max-width: 100%;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
	-webkit-box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
}

.primary-info .contact-info {
  display: flex;
  flex-direction: column;
  align-self: center;
}

.primary-info .contact-info .fa{
	color:#fff;
	width:30px;
	height:30px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-right: 10px;
	border-radius:100%;
	background:var(--gold);
}

.primary-info .contact-info .box {
	padding:15px;
	width:100%;
	margin-bottom: 10px;
	border-radius:10px;
	border:solid 1px var(--gold);
	box-sizing:border-box;
	-ms-box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.primary-info .contact-info .box .icon-box {
	display:flex;
	align-items:center;
	margin-bottom:5px;
}

.primary-info .contact-info .box a {
  color: var(--primary);
}
.primary-info .contact-info .box a:hover{color:var(--gold);}

.primary-info .contact-info .address a {
  font-style: italic;
}

.primary-info .contact-info .website {

	width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.primary-info .contact-info .website a {
	width: 100%;
	white-space: normal;
}

.additional-info {
	color:#fff;
	display: flex;
	padding:20px;
	flex-direction: column;
	margin-top: 20px;
	background:var(--gold);
	border-radius:15px;
}
.additional-info h4 {color:#fff;}
.additional-info p{
  margin-top: 0;
}

.additional-info ul {
  margin-top: 0;
}
.location-content .additional-info ul li:before {background:#fff;}

.additional-info div {
  margin-bottom: 10px;
  color: #777;
}

.location-section {
  margin-bottom:30px;
}

.location-features{
  display: flex;
	padding-top:30px;
}

.location-features .feature-col{
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.location-features .feature-col .feature-box {
	padding:30px;
	text-align:center;
	background:#fff;
	border-radius:10px;
	transition:all 0.5s;
	-ms-transition:all 0.5s;
	-webkit-transition:all 0.5s;
	box-shadow:0 0 10px 0 rgba(0,0,0,0.1);
	-webkit-box-shadow:0 0 10px 0 rgba(0,0,0,0.1);
}
.location-features .feature-col .icon-box {
	width:90px;
	height:90px;
	display:flex;
	margin:0 auto 15px;
	align-items:center;
	justify-content:center;
	background:#fff;
	border-radius:100%;
	border:solid 1px var(--gold);
	transition:all 0.5s;
	-ms-transition:all 0.5s;
	-webkit-transition:all 0.5s;
}
.location-features .feature-col .icon-box i {font-size:35px;}
.location-features .feature-col span{
  display: flex;
  align-items: center;
  padding: 20px;
  font-size: 1.5em;
  font-weight: bold;
  text-transform: uppercase;
  box-shadow: var(--shadow-1);
  border: 4px solid var(--light-2);
  height: 100%;
}

.location-features .feature-col span i{
  margin-right: 15px;
  font-size: 24px;
}
.location-content .location-amenities ul {
	margin:0 -5px;
	letter-spacing:-5px;
}
.location-content .location-amenities ul li {
	color:#fff;
	display:inline-block;
	vertical-align:top;
	letter-spacing:0;
	width:calc(50% - 10px);
	margin:0 5px 10px;
	background:var(--gold);
	padding:8px 10px;
}
.location-content .location-amenities ul li:before{display:none;}
.location-content .location-amenities ul li i {
	color:#fff;
	margin-right:8px;
}
.location-video iframe{
  width: 100%;
}
.location-gallery .gallery-box-link {
	display:block;
	overflow:hidden;
	border-radius:15px;
	box-shadow:0 0 10px 0 rgba(0,0,0,0.2);
}
.location-gallery .gallery-box-link img {
	filter:grayscale(1);
	transition:all 0.5s;
	-ms-transition:all 0.5s;
	-webkit-transition:all 0.5s;
}
.location-gallery .gallery-box-link:hover img {
	filter:grayscale(0);
	transform:scale(1.1,1.1);
	-ms-transform:scale(1.1,1.1);
	-webkit-transform:scale(1.1,1.1);
}
@media screen and (max-width: 900px) {
	.location-features .feature-col .feature-box {
		padding:20px 10px;
	}
	.location-content .location-amenities ul li {
		width:100%;
	}
}
@media screen and (max-width: 480px) {
  .primary-info {
    display: flex;
    flex-direction: column;
  }

  .primary-info .portrait {
    width: 100%;
    margin-right: 0;
  }

  .primary-info .contact-info {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-self: center;
  }

  .col-third.tablet-col-half.location {
    margin-bottom: 10px;
  }
}