/*--------------------------------------------------------------
1. Global
--------------------------------------------------------------*/
figure {
	margin: 0;
}

a {
	text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'El Messiri', sans-serif;
    font-weight: 400;
}

h2 {
	line-height: 1.25;
}

.cta-button {
	text-transform: uppercase;
}

.nf-form-fields-required {
	display: none;
}


/*--------------------------------------------------------------
2. Header
--------------------------------------------------------------*/
.site-header {
    position: relative;
}

body:not(.home) .site-header {
	overflow: hidden;
	max-height: 500px;
}

body:not(.home) .site-header > img {
	-o-object-fit: cover;
	object-fit: cover;
	height: 100%;
	max-width: none;
	width: 100%;
}

.site-branding {
    position: absolute;
    width: 100%;
    text-align: center;
    padding-top: 2.5%;
}



.site-header .header-video {
    position: relative;
    z-index: -1;
}

.site-header .header-video::after {
    content: "";
    height: 100%;
    background-color: rgba(0,0,0,.35);
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

a.play-video {
    bottom: -35px;
	color: #fff;
    left: 50%;
    position: absolute;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 1;
}

h1.entry-title {
	font-size: 24px;
	line-height: 1.25;
}



/*--------------------------------------------------------------
3. Content
--------------------------------------------------------------*/
body:not(.home) .entry-content {
	padding-bottom: 5%;
	padding-top: 5%;
}

#header-content {
	background: rgb(234,234,234);
	background: -webkit-gradient(linear,  left top, left bottom,  from(rgba(234,234,234,1)),color-stop(56%, rgba(255,255,255,1)),to(rgba(255,255,255,1)));
	background: -o-linear-gradient(top,  rgba(234,234,234,1) 0%,rgba(255,255,255,1) 56%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom,  rgba(234,234,234,1) 0%,rgba(255,255,255,1) 56%,rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eaeaea', endColorstr='#ffffff',GradientType=0 );
	padding: 50px 15px;
}

h1, #header-content .wp-block-column h2 {
	margin: 0;
}

#header-content .wp-block-column {
	background-color: #fff;
	border: 2px solid;
	padding-bottom: 15px;
	overflow: hidden;
}

#header-content .wp-block-column h2 {
	margin: 0;
}

#header-content .wp-block-column .featured-image,
#header-content .wp-block-column p {
	opacity: 1;
	margin-top: 0;
	max-height: 999px;
}

#header-content .wp-block-column .featured-image,
#header-content .wp-block-column h2 + p,
#header-content .wp-block-column ul.venue-details {
	overflow: hidden;
	-webkit-transition: max-height .5s ease-in-out 0s, 
				margin .5s ease-in-out 0s,
				opacity .5s ease-in-out 0s;
	-o-transition: max-height .5s ease-in-out 0s, 
				margin .5s ease-in-out 0s,
				opacity .5s ease-in-out 0s;
	transition: max-height .5s ease-in-out 0s, 
				margin .5s ease-in-out 0s,
				opacity .5s ease-in-out 0s;
}

#header-content .wp-block-column ul.venue-details {
	margin: 0 auto;
	max-width: 360px;
	max-height: 0;
	opacity: 0;
}

#header-content .wp-block-column.active .featured-image,
#header-content .wp-block-column.active h2 + p {
	opacity: 0;
	max-height: 0;
}

#header-content .wp-block-column.active ul.venue-details {
	opacity: 1;
	margin-bottom: 25px;
	max-height: 999px;
	padding-left: 45px;
}

#header-content .wp-block-column ul.venue-details > li {
	line-height: 2;
	text-align: left;
}

#header-content .wp-block-column a.cta-button {
	-webkit-transition: background-color .5s ease-in-out 0s,
				padding .25s ease-in-out 0s;
	-o-transition: background-color .5s ease-in-out 0s,
				padding .25s ease-in-out 0s;
	transition: background-color .5s ease-in-out 0s,
				padding .25s ease-in-out 0s;
}

#header-content .wp-block-column.active a.cta-button {
	background-color: #555;
	padding: 10px 15px;
}

#header-content .wp-block-column.active a.cta-button::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 10px;
  content: "\f410";
}


#header-content .wp-block-column figure > img {
	width: 100%;
}

#header-content .wp-block-column > h2,
#header-content .wp-block-column > p,
#header-content .wp-block-column > a {
	padding-left: 15px;
	padding-right: 15px;
}

#header-content .wp-block-column .explore-venue-media {
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	padding: 0 15px;
}

.explore-venue-media, #header-content .wp-block-column {
	-webkit-transition: all .25s ease-in-out 0s;
	-o-transition: all .25s ease-in-out 0s;
	transition: all .25s ease-in-out 0s;
}

#header-content .wp-block-column.active {
	-webkit-box-shadow: 0 0 10px -2px rgba(0,0,0,.75);
	box-shadow: 0 0 10px -2px rgba(0,0,0,.75);
}

#header-content .wp-block-column.active .explore-venue-media {
	max-height: 1000px;
	padding-bottom: 15px;
	opacity: 1;
	padding-top: 15px;
}

.explore-venue-media .wp-block-gallery {
	display: block;
}

.explore-venue-media .blocks-gallery-grid {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr;
	grid-template-columns: 1fr 1fr;
	grid-gap: 15px 15px;
}

.explore-venue-media .blocks-gallery-grid figure,
.explore-venue-media .blocks-gallery-grid img {
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	max-width: none;
	width: 100%;
}

.explore-venue-media .wp-block-gallery .blocks-gallery-item,
.explore-venue-media .wp-block-gallery .blocks-gallery-item a{
	display: block;
	height: 100%;
}

.explore-venue-media .blocks-gallery-grid .blocks-gallery-item {
	margin: auto;
	width: auto;
}

#header-content .wp-block-column .capacity {
	font-size: 20px;
	font-weight: 600;
}

#hosted-events {
	padding-bottom: 5%;
	padding-top: 5%;
}

#hosted-events .wp-block-gallery {
	padding-top: 5%;
}

#hosted-events h2, 
#hosted-events p, 
#hosted-events .wp-block-gallery {
	padding-left: 15px;
	padding-right: 15px;
}

#hosted-events #weddings {
	background-color: #eee;
}

#hosted-events .wp-block-image {
	margin: 0;
}

#hosted-events .col-img img {
	display: block;
	-o-object-fit: cover;
	object-fit: cover;
	height: 100%;
	width: 100%;
}

#hosted-events #weddings .col-text {
	padding-bottom: 5%;
	padding-top: 5%;
}

.blocks-gallery-grid .blocks-gallery-image figure, 
.blocks-gallery-grid .blocks-gallery-item figure, 
.wp-block-gallery .blocks-gallery-image figure, 
.wp-block-gallery .blocks-gallery-item figure {
	display: block;
}


.blocks-gallery-grid .blocks-gallery-image figcaption, 
.blocks-gallery-grid .blocks-gallery-item figcaption, 
.wp-block-gallery .blocks-gallery-image figcaption, 
.wp-block-gallery .blocks-gallery-item figcaption {
	background: none;
	bottom: 34;
	color: inherit;
	font-family: 'El Messiri', sans-serif;
	padding: 15px;
	position: relative;
}

.blocks-gallery-grid .blocks-gallery-image, 
.blocks-gallery-grid .blocks-gallery-item, 
.wp-block-gallery .blocks-gallery-image, 
.wp-block-gallery .blocks-gallery-item {
	margin-bottom: 50px;
}

.blocks-gallery-grid .blocks-gallery-image img, 
.blocks-gallery-grid .blocks-gallery-item img, 
.wp-block-gallery .blocks-gallery-image img, 
.wp-block-gallery .blocks-gallery-item img {
	display: inline-block;
}


#catering {
	background: #eee;
	padding-bottom: 5%;
}

#catering h2 {
	margin-top: 35px;
}

#catering .blocks-gallery-grid .blocks-gallery-image figure, 
#catering .blocks-gallery-grid .blocks-gallery-item figure, 
#catering .wp-block-gallery .blocks-gallery-image figure, 
#catering .wp-block-gallery .blocks-gallery-item figure {
	background-color: #392627;
	color: #fff;
}

#catering .blocks-gallery-grid .blocks-gallery-image figcaption, 
#catering .blocks-gallery-grid .blocks-gallery-item figcaption, 
#catering .wp-block-gallery .blocks-gallery-image figcaption, 
#catering .wp-block-gallery .blocks-gallery-item figcaption {
	padding: 5px 15px;
	white-space: nowrap;
}

#customize-venue .col-text {
	padding: 5% 15px;
}


body.page-id-83 .entry-content #booking-form {
	padding-top: 25px;
}



/*--------------------------------------------------------------
5. Footer Styles
--------------------------------------------------------------*/
.site-footer {
	border-top: 1px solid #eee;
	text-align: center;
}

.site-footer .contact-info {
	background-color: #555555;
	color: #fff;
	padding: 35px 15px;
}

.site-footer .contact-info h2 {
	border-bottom: 2px solid;
	font-size: 40px;
	margin: 0 auto 15px auto;
	max-width: 400px;
}

.site-footer .contact-info address {
	margin-bottom: 15px;
	margin-top: 15px;
}

.site-footer .contact-info .phone-number {
	font-size: 28px;
	color: inherit;
}

.site-footer .site-info {
	background-color: #392627;
	color: rgba(255,255,255,.35);
	font-size: 12px;
	padding: 10px 15px;
}

.site-footer .site-info a {
	color: inherit;
}


/*--------------------------------------------------------------
6. 404 & Search Pages Styles
--------------------------------------------------------------*/
body.search .content-area,
body.error404 .content-area {
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 5%;
}

body.search-results article.parts {
	-webkit-box-shadow: 1px 1px 10px -5px rgba(0,0,0,.5);
	box-shadow: 1px 1px 10px -5px rgba(0,0,0,.5);
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.search-form {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr auto;
    grid-template-columns: 1fr auto;
}

.search-form label {
	border: 1px solid #ddd;
	border-radius: 4px;
	-ms-grid-column: 1;
	-ms-grid-column-span: 2;
	grid-column: 1 / span 2;
	-ms-grid-row: 1;
	grid-row: 1;
}

.search-form input[type="search"] {
    border: none;
    padding: 5px 10px;
    width: 100%;
}

.search-form .search-submit {
	cursor: pointer;
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    margin: 5px;
    text-transform: uppercase;
}

body.search-results .entry-header,
body.search-results .entry-summary {
	padding-left: 15px;
	padding-right: 15px;
	margin-bottom: 0;
}

body.search-results .page-title > span {
	color: #f7941d;
}



/*--------------------------------------------------------------
7. Media Queries
--------------------------------------------------------------*/
@media screen and ( max-width: 767px ) {
	.custom-logo-link {
		max-width: 100px;
	}

	.play-video path {
	    -webkit-transform: translateY(-40px);
	    -ms-transform: translateY(-40px);
	    transform: translateY(-40px);
	}

	.play-video > i {
	    background-color: #eaeaea;
		border-radius: 15px;
		font-size: 64px;
		padding: 0px 7px;
		color: #555;
	}

	.play-video:hover > i {
		color: #333;
	}

	#header-content .wp-block-column {
		margin-bottom: 25px;
	}


	article.venue-olivia #header-content .wp-block-column.venue-olivia {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}

	article.venue-olivia #header-content .wp-block-column.venue-deluxe {
		-webkit-box-ordinal-group: 3;
		-ms-flex-order: 2;
		order: 2;
	}

	#hosted-events #weddings {
		text-align: center;
	}

	#customize-venue {
		text-align: center;
	}

	#catering .blocks-gallery-grid .blocks-gallery-image figcaption, 
	#catering .blocks-gallery-grid .blocks-gallery-item figcaption, 
	#catering .wp-block-gallery .blocks-gallery-image figcaption, 
	#catering .wp-block-gallery .blocks-gallery-item figcaption {
		font-size: 18px;
	}

	.site-footer {
		margin-bottom: 54px;
	}

	.site-footer .author-link {
		display: block;
	}
	
	#cta-section {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		text-align: center;
		z-index: 9999;
	}

	#cta-wrap {
	    background: #392627;
	    display: -ms-grid;
	    display: grid;
	    grid-auto-rows: auto;
	    grid-gap: 15px;
	    -ms-grid-columns: 60px 1fr;
	    grid-template-columns: 60px 1fr;
	}

	#cta-wrap > .cta-button {
		-ms-grid-column: 2;
		grid-column: 2;
		-ms-grid-row: 1;
		grid-row: 1;
	}

	#cta-wrap > div {
		-ms-grid-column: 1;
		grid-column: 1;
		-ms-grid-row: 1;
		grid-row: 1;
	}

	#cta-wrap div {
	    -webkit-box-align: center;
	    -ms-flex-align: center;
	    align-items: center;
	    background-color: #555;
		color: #fff;
		display: -ms-grid;
		display: grid;
	    grid-auto-columns: auto;
	    grid-auto-rows: auto;
	    grid-gap: 0;
	    -webkit-box-pack: center;
	    -ms-flex-pack: center;
	    justify-content: center;
	    overflow: hidden;
	    text-align: center;
	    width: 75px;
	}

	#cta-wrap div > i, 
	#cta-wrap div > a {
	    -ms-grid-column: 1;
	    grid-column: 1;
	    -ms-grid-row: 1;
	    grid-row: 1;
	}

	#cta-wrap div > i {
	    font-size: 180%;
	    width: inherit;
	}

	#cta-wrap div > a {
	    opacity: 0;
	    width: inherit;
	}

	#cta-wrap .wp-block-alecan-button {
		background-color: transparent;
		border: none;
		padding-left: 5px;
		padding-right: 5px;
		font-size: 14px;
	}

}

@media screen and ( min-width: 768px ) {
	.site-header video {
	    -o-object-fit: cover;
	    object-fit: cover;
	    -o-object-position: center;
	    object-position: center;
	    height: calc(100vh - 170px);
	}

	a.play-video {
	    bottom: 30%;
	    opacity: .5;
	}

	h1.entry-title {
	    font-size: 64px;
	    padding-left: 5%;
	    padding-right: 5%;
	}

	h2 {
		font-size: 40px;
		margin: 0;
	}

	#header-content {
		padding-left: 25px;
		padding-right: 25px;
		padding-top: 35px;
		margin-top: -150px;
	}

	#header-content .wp-block-columns {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: start;
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
		grid-gap: 25px;
	}

	#header-content .wp-block-column {
		-ms-grid-row: 1;
		grid-row: 1;
		margin: 0;
		padding-bottom: 25px
	}

	article.venue-olivia #header-content .wp-block-column.venue-olivia {
		-ms-grid-column: 1;
		grid-column: 1;
	}

	article.venue-olivia #header-content .wp-block-column.venue-deluxe {
		-ms-grid-column: 2;
		grid-column: 2;
	}

	#header-content .wp-block-column > h2,
	#header-content .wp-block-column > p,
	#header-content .wp-block-column > a {
		padding-left: 10%;
		padding-right: 10%;
	}

	#cta-wrap {
	    background: #392627;
	    padding: 3% 15px;
	    position: relative;
	}

	#cta-wrap::before {
	    content: "";
	    border: 1px solid #dcbd92;
	    height: calc(100% - 20px);
	    position: absolute;
	    left: 10px;
	    top: 10px;
	    width: calc(100% - 20px);
	}

	#cta-wrap a, #cta-wrap div {
		display: inline-block;
		margin: 15px;
		position: relative;
		z-index: 2;
	}

	#cta-wrap a.cta-button {
		background-color: #fff;
		color: #392627;
	}

	#cta-wrap .phone-number {
		color: #fff;
		font-size: 30px;
	}

	#cta-wrap a.cta-button:hover {
		background-color: #dcbd92;
	}

	#cta-wrap .phone-number:hover {
		color: #dcbd92;
	}

	#cta-wrap .fa-phone {
		display: none;
	}


	#hosted-events #weddings {
	    display: -ms-grid;
	    display: grid;
	    -ms-grid-columns: 1fr 1fr;
	    grid-template-columns: 1fr 1fr;
	    grid-column-gap: 2%;
	}

	#hosted-events #weddings .col-img {
		-ms-grid-column: 1;
		grid-column: 1;
	}

	#hosted-events #weddings .col-text {
		-ms-grid-column: 2;
		grid-column: 2;
		-ms-grid-row-align: center;
		align-self: center;
		max-width: 700px;
	}

	.blocks-gallery-grid .blocks-gallery-image figcaption, 
	.blocks-gallery-grid .blocks-gallery-item figcaption, 
	.wp-block-gallery .blocks-gallery-image figcaption, 
	.wp-block-gallery .blocks-gallery-item figcaption {
		font-size: 24px;
	}

	#catering {
		background: -webkit-gradient(linear,  left top, left bottom,  from(rgba(255,255,255,1)),color-stop(25%, rgba(255,255,255,1)),color-stop(25%, rgba(238,238,238,1)),to(rgba(238,238,238,1)));
		background: -o-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 25%,rgba(238,238,238,1) 25%,rgba(238,238,238,1) 100%);
		background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 25%,rgba(238,238,238,1) 25%,rgba(238,238,238,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
	}

	#catering p {
		padding-left: 5%;
		padding-right: 5%;
	}

	#customize-venue {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		display: -ms-grid;
		display: grid;
		grid-column-gap: 35px;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
	}

	#customize-venue {
		padding-bottom: 5%;
		padding-top: 5%;
	}

	body.page-id-83 .entry-content .container, 
	body.page-id-83 .entry-content .text-wrap {
	    max-width: 1000px;
	}

	/*404 & Search Page Styles*/
	body.error404 .site-main,
	body.search:not(.search-results) .site-main {
	    -webkit-box-align: center;
	    -ms-flex-align: center;
	    align-items: center;
	    display: -webkit-box;
	    display: -ms-flexbox;
	    display: flex;
	    height: calc(100vh - 800px);
	    -webkit-box-pack: center;
	    -ms-flex-pack: center;
	    justify-content: center;
	}

    body.search-results .site-main {
    	display: -ms-grid;
    	display: grid;
    	-ms-grid-columns: 1fr 1fr;
    	grid-template-columns: 1fr 1fr;
    	grid-gap: 0 15px;
    }

	body.search-results .page-header {
		-ms-grid-row: 1;
		grid-row: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
		grid-column: 1 / span 2;
	}
}

@media screen and ( max-width: 960px ) {
	#catering .blocks-gallery-grid, 
	#catering .wp-block-gallery {
		display: block;
	}

	#catering .blocks-gallery-grid.columns-4 .blocks-gallery-image, 
	#catering .blocks-gallery-grid.columns-4 .blocks-gallery-item, 
	#catering .wp-block-gallery.columns-4 .blocks-gallery-image, 
	#catering .wp-block-gallery.columns-4 .blocks-gallery-item {
		display: inline-block;
		margin: 15px;
		width: auto;
	}
}

@media screen and ( min-width: 1025px ) {
	body.home .wp-custom-header {
	    max-height: 850px;
	}
}