/* RESET */
html, body, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td{
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
}
ol, ul{
list-style:none;
}
blockquote, q{
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after{
content:'';
content:none;
}
:focus{
outline:0;
}
table{
border-collapse:collapse;
border-spacing:0;
}
input::-moz-focus-inner{
border:0!important;
outline:none !important;
}
input, select, textarea, form{
margin:0;
padding:0;
}

/* Color Of Highlight */
::-moz-selection {background:var(--green); color:#fff; text-shadow:none;}
::selection {background:var(--green); color:#fff; text-shadow:none;}

*{
box-sizing:border-box;
}

html{
height:100%;
overflow-y:scroll;
scroll-behavior:smooth;
}

/* GENERAL STYLES */

body{
max-width:2000px;
margin:0 auto;
padding:0;
font-size:16px;
font-family:var(--text);
font-size:18px;
color:#4d4d4d;
line-height:1.8;
background:#fff;
}
hr{
height:1px;
color:var(--gold);
background:var(--gold);
border:0;
padding:0;
margin:40px 0;
}
	#banner hr{
	opacity:0;
	}
	#banner hr.in-view{
	animation:fadeIn 700ms 1 400ms ease-out forwards;
	}
a{
color:var(--green);
text-decoration:underline;
}
a:hover{
color:var(--green);
text-decoration:none;
}

/* ------ VARIABLES ------*/

:root{
--heading: 'Cookie', cursive;
--text: 'Merriweather', sans-serif;
--icons: 'Font Awesome 5 Pro', sans-serif;
--black: #2c2c2c;
--green: #21868c;
--gold: #ceb97c;
--fade: all 0.15s ease-out;
}

/* ------ GLOBAL STYLES ------*/

h1{
font-family:var(--heading);
font-size:100px;
font-weight:normal;
color:#fff;
line-height:0.7;
text-shadow:2px 2px 2px rgba(0,0,0,0.4);
margin:0 0 30px;
}
h2{
font-family:var(--text);
font-size:36px;
font-weight:normal;
color:var(--gold);
line-height:1.4;
margin:0 0 30px;
}
	h2 a{
	color:var(--green);
	text-decoration:none;
	transition:var(--fade);
	}
	h2 a:hover{
	color:var(--gold);
	}
h3{
font-family:var(--text);
font-size:26px;
font-weight:normal;
color:var(--green);
line-height:1.4;
margin:0 0 25px;
}
h4{
font-family:var(--text);
font-size:26px;
font-weight:300;
color:var(--green);
line-height:1.4;
margin:0 0 25px;
}
h5{
font-family:var(--text);
font-size:22px;
font-weight:normal;
color:var(--gold);
line-height:1.4;
margin:0 0 20px;
}
h6{
font-family:var(--text);
font-size:20px;
font-weight:normal;
color:var(--gold);
line-height:1.4;
margin:0 0 10px;
}
h1,h2,h3,h4,h5,h6{
position:relative;
}
.wrap{
width:auto;
max-width:1300px;
padding:0 10px;
margin:0 auto;
}
p,#main ul,#main ol{
font-weight:300;
margin:0 0 30px;
}
#main ul{
list-style:outside disc;
margin:0 0 30px 20px;
}
	#main ul ul{
	list-style:outside circle;
	margin:0 0 0 20px;
	}
#main ol{
list-style:outside decimal;
margin:0 0 30px 20px;
}
.alignleft{
float:left;
margin:0 30px 30px 0;
}
.aligncenter{
float:none;
margin:0 auto 30px;
}
.alignright{
float:right;
margin:0 0 30px 30px;
}
	#main .alignleft,
	#main .alignright{
	position:relative;
	top:40px;
	opacity:0;
	}
	#main .alignleft:not(:first-child),
	#main .alignright:not(:first-child){
	top:0;
	opacity:1;
	}
	#main .alignleft.in-view,
	#main .alignright.in-view{
	animation:slideUp 800ms 1 300ms ease-out forwards;
	}
.featured-img{
float:right;
max-width:420px;
max-height:500px;
margin:0 0 30px 30px;
}
	.featured-img.small{
	max-width:260px;
	max-height:175px;
	}
.with-square{
position:relative;
display:grid;
margin:10px 0 0;
transition:var(--fade);
}
	.with-square.left{
	float:left;
	margin:8px 30px 60px 0;
	}
	.with-square.right{
	float:right;
	margin:8px 0 60px 30px;
	}
	.with-square img,
	.rem-columns .with-square img{
	max-width:420px;
	max-height:500px;
	float:none;
	margin:0 auto;
	object-fit:cover;
	}
.with-square:after{
position:absolute;
z-index:-1;
content:'';
bottom:-16px;
width:202px;
height:202px;
border:4px solid var(--green);
transition:var(--fade);
opacity:0;
}
	.with-square.left:after{
	left:-16px;
	}
	.with-square.right:after{
	right:-16px;
	}
	.with-square.left.in-view:after{
	animation:slideUpleft 400ms 1 900ms ease-out forwards;
	}
	.with-square.right.in-view:after{
	animation:slideUpright 400ms 1 900ms ease-out forwards;
	}
	@keyframes slideUpleft{
		0% {
		bottom:-8px;
		left:-8px;
		opacity:0;
		}
		100% {
		bottom:-16px;
		left:-16px;
		opacity:1;
		}
	}
	@keyframes slideUpright{
		0% {
		bottom:-8px;
		right:-8px;
		opacity:0;
		}
		100% {
		bottom:-16px;
		right:-16px;
		opacity:1;
		}
	}
.button,
.nav-previous a,
.nav-next a,
.nav-links .next{
position:relative;
display:inline-block;
padding:16px 32px;
margin:0 0 30px 10px;
font-family:var(--text);
font-size:17px;
font-weight:300;
color:#fff;
line-height:1;
letter-spacing:1px;
text-align:center;
text-decoration:none;
background:var(--green);
border-radius:30px;
transition:var(--fade);
}
	.button:hover,
	.nav-previous a:hover,
	.nav-next a:hover,
	.nav-links .next:hover{
	background:none;
	box-shadow:inset 0 0 0 2px var(--green);
	}
	.button:after,
	.nav-next a:after,
	.nav-links .next:after{
	font-family:'Font Awesome 5 Pro', sans-serif;
	font-weight:400;
	content:'\f30b';
	margin:0 0 0 7px;
	}
	.nav-previous a:before,
	.nav-links .previous:before{
	font-family:'Font Awesome 5 Pro', sans-serif;
	font-weight:400;
	content:'\f30a';
	margin:0 7px 0 0;
	}
.rem-columns{
clear:both;
width:100%;
display:grid;
grid-gap:0 40px;
grid-template-columns: repeat(auto-fit, minmax(25%, 1fr));
}
.rem-columns.single-column{
width:auto;
display:block;
}
.rem-columns.single-column:first-of-type{
clear:none;
}
	.rem-columns img{
	max-width:100%;
	height:auto;
	}
@media screen and (max-width: 1024px) {
	img{
	max-width:100%;
	height:auto;
	}
}
@media screen and (max-width: 768px) {
	.with-square{
	text-align:center;
	}
	.with-square.left,
	.with-square.right{
	float:none;
	margin:0 auto 60px;
	}
	.with-square img,
	.rem-columns .with-square img{
    max-width:100%;
	max-height:none;
	margin:0 auto;
	}
	.with-square:after,
	.with-square.left:after,
	.with-square.right:after{
	left:50%;
	margin:0 0 0 -101px;
	}
	.featured-img.small{
	max-width:100%;
	max-height:100%;
	}
	.rem-columns{
	grid-template-columns: repeat(auto-fit, minmax(50%, 1fr));
	}
	.rem-columns img{
	width:100%;
	}
	.with-square.left.in-view:after{
	animation:none;
	opacity:1;
	}
}
@media screen and (max-width: 580px) {
	.rem-columns{
	grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
	}
}

/* HEADER */

#header{
width:100%;
padding:30px 0;
}
#header .wrap{
display:flex;
}
	#header .logo{
	max-width:80%;
	}
	#header .logo img{
	width:100%;
	}

/* MAIN NAVIGATION */

.menu-icon{
display:none;
}
#menu-main-navigation{
position:relative;
display:flex;
align-items:center;
justify-content:flex-end;
flex-grow:1;
}
	#menu-main-navigation li{
	position:relative;
	display:inline-block;
	}
	#menu-main-navigation a{
	position:relative;
	display:inline-block;
	font-family:var(--text);
	font-size:16px;
	font-weight:400;
	color:var(--black);
	line-height:1;
	letter-spacing:1px;
	text-decoration:none;
	text-transform:uppercase;
	padding:14px 20px;
	transition:var(--fade);
	}
		#menu-main-navigation > li:last-child a,
		#menu-main-navigation > li:last-child.current-menu-item a{
		text-transform:none;
		padding:16px 32px;
		margin:0 0 0 10px;
		color:var(--green);
		border:2px solid var(--green);
		border-radius:30px;
		}
			#menu-main-navigation > li:last-child:hover a{
			color:#fff;
			background:var(--green);
			}
		#menu-main-navigation li:hover a,
		#menu-main-navigation li.current-menu-item a,
		#menu-main-navigation li.current-menu-parent a,
		#menu-main-navigation li.current_page_parent a{
		color:var(--gold);
		}
		#menu-main-navigation li.menu-item-has-children a:after{
		font-family:var(--icons);
		content:'\f107';
		margin:0 0 0 4px;
		}
	#menu-main-navigation > li:not(:last-child)::before{
	right:0;
	top:0;
	transform-origin:100% 50%;
	}
	#menu-main-navigation > li:not(:last-child)::after{
	left:0;
	bottom:0;
	transform-origin:0 50%;
	}
	#menu-main-navigation > li:not(:last-child)::before,
	#menu-main-navigation > li:not(:last-child)::after{
	content:'';
	width:100%;
	height:2px;
	z-index:-1;
	background:var(--gold);
	position:absolute;
	transform:scale3d(0,1,1);
	transition:transform 0.5s;
	}
	#menu-main-navigation > li:not(:last-child):hover::before,
	#menu-main-navigation > li:not(:last-child):hover::after{
	transform:scale3d(1,1,1);
	}
	#menu-main-navigation > li:not(:last-child)::before{
	right:0;
	top:0;
	transform-origin:100% 50%;
	}
	#menu-main-navigation > li:not(:last-child)::after{
	left:0;
	bottom:0;
	transform-origin:0 50%;
	}

	/* Second Level */

	#menu-main-navigation .sub-menu{
	position:absolute;
	z-index:10;
	top:calc(100% - 2px);
	right:0;
	display:inline;
	min-width:200px;
	max-width:300%;
	padding:6px;
	margin:0;
	opacity:0;
	background:#fff;
	border:2px solid var(--gold);
	text-align:center;
	white-space:nowrap;
	visibility:hidden;
	transition:var(--fade);
	border-radius:18px 0 18px 18px;
	}
		#menu-main-navigation li:hover > .sub-menu{
		opacity:1;
		margin:0 0 -15px;
		visibility:visible;
		}
		#menu-main-navigation .sub-menu li{
		position:relative;
		display:block;
		margin:0;
		}
		#menu-main-navigation .sub-menu li a{
		display:block;
		font-size:13px;
		color:var(--black);
		text-transform:none;
		padding:11px 15px 10px;
		transition:none;
		}
			#menu-main-navigation .sub-menu li:first-child a{
			border-radius:12px 0 0 0;
			}
			#menu-main-navigation .sub-menu li:last-child a{
			border-radius:0 0 12px 12px;
			}
		#menu-main-navigation .sub-menu li:not(:last-child) a{
		margin:0 0 2px;
		}
		#menu-main-navigation .sub-menu li a:before,
		#menu-main-navigation .sub-menu li a:after{
		display:none;
		}
		#menu-main-navigation li.current-menu-item .sub-menu a{
		display:block;
		color:var(--black);
		text-transform:none;
		}
			#menu-main-navigation .sub-menu li:hover a,
			#menu-main-navigation .sub-menu li.current-menu-item a{
			color:#fff;
			background:var(--gold);
			}
@media screen and (max-width: 1200px) {
	.menu-icon,
	.menu-close{
	flex-grow:1;
	align-self:center;
	display:block;
	color:#fff;
	line-height:1;
	text-transform:uppercase;
	text-align:right;
	transition:var(--fade);
	}
	.menu-icon span{
	cursor:pointer;
	display:inline-block;
	font-size:42px;
	font-weight:300;
	color:var(--green);
	text-decoration:none;
	text-align:center;
	transition:var(--fade);
	}
		.menu-icon span:hover,
		.menu-icon span.fa-times{
		color:var(--gold);
		}
		.menu-icon .fa-times{
		position:relative;
		left:-6px;
		animation:flipIn 180ms linear;
		}
		.menu-icon .fa-bars{
		animation:flipOut 180ms linear;
		}
		@keyframes flipIn {
		from {transform:rotate(0deg);}
		to {transform:rotate(180deg);}
		}
		@keyframes flipOut {
		from {transform:rotate(180deg);}
		to {transform:rotate(0deg);}
		}
	#menu-main-navigation.js{
	display:none;
	z-index:1000;
	background:var(--green);
	box-shadow:8px 0 20px 5px rgba(0,0,0,0.4);
	}
	#menu-main-navigation{
	position:fixed;
	top:0;
	left:0;
	width:80vw;
	height:100vh!important;
	padding:20px 0;
	}
		#menu-main-navigation .sub-menu li a:before{
		display:none;
		}
		#menu-main-navigation ul{
		display:block;
		width:100%;
		padding:0;
		}
		#menu-main-navigation li{
		display:block;
		}
    #menu-main-navigation > li:last-child a {
    color:white;
    text-transform:uppercase;
    font-size:100%;
    padding:20px 10px;
    margin:0;
    border:none;
    border-radius:0;
    background:var(--gold);
    }
		#menu-main-navigation a,
		#menu-main-navigation .sub-menu li a {
		display:block;
		line-height:1;
		font-size:120%;
		color:#fff;
		text-transform:uppercase;
		padding:20px 10px;
		}
			#menu-main-navigation li:hover a{
			color:var(--gold);
			}
			#menu-main-navigation li.menu-item-has-children > a{
			display:none;
			}
			#menu-main-navigation li.menu-item-has-children .sub-menu a{
			color:#fff;
			}
	#menu-main-navigation .mobile-only a{
	display:block;
	}
	#menu-main-navigation{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	max-width:80%;
	height:100%;
	padding:20px 0;
	}
	#menu-main-navigation .sub-menu{
	position:relative;
	display:grid;
	padding:0;
	visibility:visible;
	text-align:left;
	opacity:1;
    background:none;
	border:none;
	}
	#menu-main-navigation .sub-menu li a{
	position:relative;
	font-size:120%;
	color:#fff;
	white-space:pre-wrap;
	padding:20px 10px;
	transition:none;
	}
	#menu-main-navigation .sub-menu li a:hover,
	#menu-main-navigation li.current-menu-item a,
	#menu-main-navigation li.current-menu-parent a{
    color:#fff;
    background:none;
	}
	#menu-main-navigation li.menu-item-has-children a:after,
	#menu-main-navigation > li:not(:last-child)::before,
	#menu-main-navigation > li:not(:last-child)::after{
	display:none;
	}
	#menu-main-navigation li:hover > .sub-menu{
    margin:0;
	}
	#menu-main-navigation .sub-menu li.current-menu-item a,
	#menu-main-navigation li.current-menu-item a{
	color:var(--gold);
	background:none;
	}
}
@media screen and (max-width: 580px) {
	.menu-icon span{
	font-size:36px;
	}
	#menu-main-navigation li a,
	#menu-main-navigation .sub-menu li a{
	font-size:100%;
	}
}

/* BANNER AREA */

#banner{
position:relative;
display:flex;
width:100%;
min-height:600px;
background:url(../images/banner-bg.jpg) repeat;
}
	#banner.interior .wrap:not(.images) {
	display: flex;
	gap: 30px;
	position:relative;
	z-index:9;
	justify-content:center;
	align-items:center;
	}
	#banner:not(.interior) .wrap:not(.images) {
		position: relative;
		z-index: 9;
		display: flex;
    flex-direction: column;
    justify-content: center;
		padding-right: 30%;
	}
	#banner hr{
	width:1px;
	height:44%;
	background:var(--gold);
	box-shadow:0 0 8px 4px rgba(0,0,0,0);
	}
	#banner h1{
	font-size:100px;
	font-weight:normal;
	color:#fff;
	text-shadow:2px 2px 2px rgba(0,0,0,0.4);
	margin:0;
	opacity:0;
	}
	#banner h2{
	font-size:40px;
	font-weight:300;
	color:var(--gold);
	text-shadow:2px 2px 2px rgba(0,0,0,0.4);
	padding: 0 0 15px;
	margin:0;
	opacity:0;
	}
		#banner h1.in-view{
		animation:slideRight 800ms 1 400ms ease-out forwards;
		}
		#banner h2.in-view{
		animation:slideLeft 350ms 1 200ms ease-out forwards;
		}
		body.home #banner hr{
		animation:growShadow 1600ms 1 200ms ease-out forwards, fadeIn 700ms 1 400ms ease-out forwards;
		}
		@keyframes growShadow{
			0% {
			box-shadow:0 0 2px 0px rgba(0,0,0,0);
			}
			20% {
			box-shadow:0 0 8px 4px rgba(0,0,0,0.2);
			}
			50% {
			box-shadow:0 0 8px 4px rgba(0,0,0,0);
			}
		}
		@keyframes slideRight{
			0% {
			right:40px;
			opacity:0;
			}
			100% {
			right:0;
			opacity:1;
			}
		}
		@keyframes slideLeft{
			0% {
			left:40px;
			opacity:0;
			}
			100% {
			left:0;
			opacity:1;
			}
		}
	#banner .topper,
	#wedding-event-packages .topper{
	position:absolute;
	z-index:2;
	top:-6px;
	left: 0;
	width:100%;
	height:12px;
	background:url(../images/tile-overlay.png) repeat-x;
	}
	#banner .wrap.images {
		position: relative;
		height: 100%;
	}
	#banner img {
		position: absolute;
		display: block;
		object-fit: cover;
	}
	#banner .slick-list,
	#banner .slick-track {
		height: 100%;
	}
	#banner .image-slider {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
		#banner img.large {
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			opacity: 0.4;
		}
		#banner img.small {
			position: absolute;
			width: 300px;
			height: 450px;
		}
		#banner img.small.left {
			bottom: 30px;
			right: 280px;
		}
		#banner img.small.right {
			top: 30px;
			right: 0;
		}
		#banner .slick-current img.small.left {
			opacity: 0;
			animation: slideImageUp 800ms 1 500ms ease-out forwards;
		}
		#banner .slick-current img.small.right {
			opacity: 0;
			animation: slideImageDown 800ms 1 900ms ease-out forwards;
		}
@keyframes slideImageUp {
	0% {
		bottom: -30px;
		opacity: 0;
	}
	100% {
		bottom: 30px;
		opacity: 1;
	}
}
@keyframes slideImageDown {
	0% {
		top: -30px;
		opacity: 0;
	}
	100% {
		top: 30px;
		opacity: 1;
	}
}


@media screen and (max-width: 1440px) {
	#banner.interior .wrap{
	max-width:80%;
	}
}
@media screen and (max-width: 1366px) {
	#banner:not(.interior) .wrap:not(.images) {
		padding-right: 40%;
	}
}
@media screen and (max-width: 1024px) {
	#banner:not(.interior) .wrap:not(.images) {
		padding-right: 0;
	}
	#banner .wrap.images {
		display: none;
	}
	#banner{
	height: auto;
	min-height: 360px;
	padding: 40px 0;
	}
	#banner img{
	height: 100%;
	}
	#banner .wrap{
	display:flex;
	gap: 15px;
  max-width:100%;
  flex-direction:column;
	text-align:center;
	}
	#banner hr{
	display:none;
	}
	#banner h2{
	font-size:24px;
	}
}
@media screen and (max-width: 580px) {
	#banner h1{
	font-size:60px;
	}
}

/* INTERIOR BANNERS */

#banner.interior{
height:auto;
min-height:120px;
padding:10px 0 0;
background:url(../images/interior-banner-bg.jpg) repeat;
}
	#banner.interior .wrap{
	max-width:1300px;
	padding:15px 10px;
	}
	#banner.interior h1{
	font-size:56px;
	padding:0 23px 0 0;
	margin:0;
	text-align:right;
	}
	#banner.interior h2{
	font-size:18px;
	padding:0 0 0 23px;
	margin:0;
	text-align:left;
	}
	#banner.interior img{
	height:100%;
	opacity:0.2;
	}
@media screen and (max-width: 1024px) {
	#banner.interior h1,
	#banner.interior h2{
	padding:0;
	text-align:center;
	}
	#banner.interior .wrap:not(.images){
	gap: 15px;
  flex-direction:column;
	text-align:center;
	}
}

/* BLOG BANNER */

#banner.blog{
height:auto;
min-height:260px;
padding:10px 0 0;
margin:0 0 20px;
background:url(../images/blog-banner-bg.jpg) repeat;
}
	#banner.blog .wrap{
	width:100%;
	}
	#banner.blog h1{
	font-size:68px;
	padding:0 23px 0 0;
	margin:0;
	text-align:right;
	}
	#banner.blog h2{
	font-size:20px;
	padding:0 0 0 23px;
	margin:0;
	text-align:left;
	}
	#banner.blog img{
	height:100%;
	opacity:0.3;
	}
@media screen and (max-width: 1024px) {
	#banner.blog{
	min-height:0;
	}
	#banner.blog h1,
	#banner.blog h2{
	padding:0;
	text-align:center;
	}
}

/* MAIN CONTENT */

#banner + #main {
	padding-top: 90px;
}
#main{
clear:both;
width:100%;
padding:35px 0;
}
#main.intro-text .with-square{
position:relative;
z-index:9;
}
#main.with-sidebar{
padding:35px 0 0;
}
	body.home #main.with-sidebar .wrap{
	overflow:visible;
	}
body.home #main.with-sidebar{
padding:0;
}
#main.with-sidebar .wrap{
display:grid;
grid-template-columns:4fr 2fr;
grid-gap:30px;
}
#main.intro-text img{
position:relative;
top:40px;
opacity:0;
}
#main.intro-text img.in-view{
animation:slideUp 900ms 1 500ms ease-out forwards;
}
.wp-caption{
position:relative;
width:auto!important;
margin:0!important;
}
.wp-caption-text,
.featured-caption{
position:absolute;
bottom:10px;
left:0;
width:100%;
padding:4px 8px;
margin:0;
background:rgba(255,255,255,0.4);
font-size:14px;
font-weight:300;
color:#000;
}
.featured-caption{
bottom:0;
}
@keyframes slideUp{
	0% {
	top:40px;
	opacity:0;
	}
	100% {
	top:0;
	opacity:1;
	}
}
#sidebar{
position:relative;
z-index:10;
padding:30px 15px;
text-align:center;
background:var(--gold);
box-shadow:0 16px 10px 0 rgba(0,0,0,0.2);
}
	body.home #sidebar{
	top:-50px;
	margin-bottom:-70px;
	opacity:0;
	display:flex;
    flex-direction:column;
    justify-content:space-around;
	}
	body.home #sidebar.in-view{
	animation:slideSidebar 600ms 1 200ms ease-out forwards;
	}
	@keyframes slideSidebar{
		0% {
		top:80px;
		opacity:0;
		}
		100% {
		top:-40px;
		opacity:1;
		}
	}
#sidebar:before{
position:absolute;
z-index:2;
content:'';
top:-6px;
left:0;
width:100%;
height:12px;
background:url(../images/tile-overlay.png) repeat-x;
}
#sidebar:after{
position:absolute;
z-index:2;
content:'';
bottom:-6px;
left:0;
width:100%;
height:6px;
background:url(../images/sidebar-btm.png) repeat-x;
}
#sidebar h4{
margin:0 0 30px;
}
#sidebar h4:after,
#sidebar hr{
position:absolute;
content:'';
bottom:-8px;
left:30%;
width:40%;
height:1px;
background:var(--green);
}
#sidebar hr{
position:relative;
bottom:0;
margin:10px 0 20px;
}
#sidebar #service-list{
padding:0 15%;
}
	#sidebar #service-list a{
	position:relative;
	left:0;
	opacity:0;
	}
	#sidebar #service-list a:nth-child(2n){
	left:15px;
	opacity:0;
	}
	#sidebar #service-list a:nth-child(2n+1){
	left:-15px;
	opacity:0;
	}
	#sidebar #service-list.in-view a:nth-child(2n){
	animation:fadeInleft 700ms 1 500ms ease-out forwards;
	}
	#sidebar #service-list.in-view a:nth-child(2n+1){
	animation:fadeInright 700ms 1 500ms ease-out forwards;
	}
	@keyframes fadeIn{
		0% {
		left:15px;
		opacity:0;
		}
		100% {
		left:0;
		opacity:1;
		}
	}
	@keyframes fadeInleft{
		0% {
		left:15px;
		opacity:0;
		}
		100% {
		left:0;
		opacity:1;
		}
	}
	@keyframes fadeInright{
		0% {
		left:-15px;
		opacity:0;
		}
		100% {
		left:0;
		opacity:1;
		}
	}
	#sidebar #service-list a{
	display:grid;
	grid-template-columns:auto 1fr;
	grid-gap:22px;
	align-items:center;
	font-weight:300;
	color:#fff;
	line-height:1.2;
	text-align:left;
	text-decoration:none;
	padding:0 0 5px;
	}
	#sidebar #service-list i{
	width:48px;
	height:48px;
	background:var(--green);
	border-radius:50%;
	font-size:24px;
	color:#fff;
	line-height:48px;
	text-align:center;
	transition:var(--fade);
	}
		#sidebar #service-list a:hover i{
		font-size:32px;
		color:#fff;
		background:var(--gold);
		}
	#sidebar p{
	color:#fff;
	line-height:1.4;
	margin:0;
	}
		#sidebar p a{
		font-weight:bold;
		}
.cta-block{
clear:both;
position:relative;
display:inline-block;
width:100%;
padding:40px 0 50px;
margin:35px 0 0;
background:url(../images/banner-bg.jpg) repeat;
}
	.cta-block:after{
	position:absolute;
	z-index:2;
	content:'';
	bottom:-6px;
	left:0;
	width:100%;
	height:12px;
	background:url(../images/tile-overlay.png) repeat-x;
	}
	.cta-block .wrap{
	display:grid;
	grid-template-columns:3fr 1fr;
	grid-gap:100px;
	align-items:center;
	}
		.cta-block.blog .wrap{
		grid-template-columns:1fr;
		}
		.cta-block.blog .nav-links,
		.cta-block.blog .pagination{
		display:grid;
		grid-template-columns:auto auto;
		grid-gap:40px;
		justify-content:center;
		}
		.cta-block.blog .screen-reader-text{
		display:none;
		}
	.cta-block p{
	font-size:32px;
	color:#fff;
	line-height:1.2;
	text-shadow:2px 2px 1px rgba(0,0,0,0.3);
	margin:0;
	}
	.cta-block .button,
	.cta-block .nav-next a,
	.cta-block .nav-previous a,
	.cta-block .next{
	border:2px solid #fff;
	margin:0;
	}
		.cta-block .button:hover,
		.cta-block .nav-next a:hover,
		.cta-block .nav-previous a:hover,
		.cta-block .next:hover{
		background:#fff;
		color:var(--green);
		}
@media screen and (max-width: 1200px) {
	#main .wrap{
	overflow-x:hidden;
	}
	#sidebar #service-list,
	#sidebar #service-list a{
	opacity:1!important;
	left:0!important;
	}
}
@media screen and (max-width: 1024px) {
	#main.intro-text .with-square{
	margin-top:0px;
	}
	#main.with-sidebar .wrap{
	grid-template-columns:1fr;
	}
	body.home #sidebar{
	top:0;
	margin-bottom:-20px;
	}
	body.home #sidebar.in-view{
	animation:none;
	opacity:1;
	top:0;
	}
	#sidebar #service-list{
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	grid-gap:20px;
	padding:0;
	opacity:0;
	}
	#sidebar #service-list a{
	grid-template-columns:1fr;
	grid-template-rows:auto 1fr;
	text-align:center;
	justify-items:center;
	}
	#sidebar #service-list i{
	width:80px;
	height:80px;
	font-size:38px;
	line-height:80px;
	}
	.cta-block .wrap{
	grid-template-columns:1fr;
	grid-gap:30px;
	text-align:center;
	justify-items:center;
	}
}
@media screen and (max-width: 768px) {
	#sidebar #service-list{
	grid-template-columns:repeat(2, 1fr);
	}
	#sidebar #service-list a:last-child{
	grid-column:1 / 3;
	}
	#sidebar hr{
	margin:30px 0;
	}
}
@media screen and (max-width: 480px) {
	#sidebar #service-list i{
	width:120px;
	height:120px;
	font-size:46px;
	line-height:120px;
	}
	#sidebar #service-list{
	grid-template-columns:1fr;
	}
	#sidebar #service-list a:last-child{
	grid-column:1;
	}
	.cta-block.blog .nav-links,
	.cta-block.blog .pagination{
	grid-template-columns:1fr;
	grid-gap:20px;
	}
}

/* TESTIMONIAL ROTATOR */

#main.testimonials .wrap{
display:grid;
grid-gap:2em;
grid-template-columns:repeat( auto-fill, minmax( 33.333%, 1fr ) );
grid-auto-rows:auto;
}
	#main.testimonials .testimonial{
	padding:5%;
	}
	#main.testimonials .testimonial:nth-child(-3n+4),
	#main.testimonials .testimonial:nth-child(3n+5),
	#main.testimonials .testimonial:nth-child(-5n+9){
	background:rgba(0,0,0,0.05);
	}
#testimonials{
position:relative;
z-index:9;
width:100%;
padding:80px 30%;
text-align:center;
background:var(--green);
}
#testimonials:after{
position:absolute;
z-index:2;
content:'';
left:0;
bottom:-6px;
width:100%;
height:12px;
background:url(../images/tile-overlay.png) repeat-x;
}
#testimonials .slick-slide{
position:relative;
opacity:0;
transition:opacity 1.4s ease-out;
transition-delay:100ms;
}
#testimonials .slick-slide.slick-current{
opacity:1;
}
#testimonials .slick-list{
padding:0!important;
}
	#testimonials h2{
	max-width:90%;
	margin:0 auto 55px;
	font-size:36px;
	color:#fff;
	}
	#testimonials h2:after{
	position:absolute;
	content:'';
	bottom:-15px;
	left:50%;
	width:160px;
	height:1px;
	margin:0 0 0 -80px;
	background:var(--gold);
	}
	.testimonial p{
	opacity:0.8;
	font-weight:300;
	font-style:italic;
	color:#fff;
	margin:0 0 20px;
	}
		#main .testimonial p{
		font-size:20px;
		color:#4d4d4d;
		}
	.testimonial .author{
	position:relative;
	font-size:18px;
	font-weight:normal;
	color:var(--gold);
	}
		#main .testimonial .author{
		display:block;
		text-align:right;
		color:var(--green);
		}
		#testimonials .testimonial .author,
		#testimonials .testimonial .author em{
		top:30px;
		}
		.testimonial .author em{
		position:relative;
		display:block;
		font-size:14px;
		font-weight:300;
		color:#fff;
		padding:0 0 0 10px;
		}
		#main .testimonial .author em{
		color:var(--gold);
		}
	#testimonials .testimonial .author,
	#testimonials .testimonial .author em{
	opacity:0;
	transition:all 300ms ease-out;
	transition-delay:300ms;
	}
	#testimonials .testimonial .author em{
	transition:all 500ms ease-out;
	transition-delay:500ms;
	}
	#testimonials .slick-slide.slick-current .author{
	top:0;
	opacity:1;
	}
	#testimonials .slick-slide.slick-current .author em{
	top:0;
	opacity:0.45;
	}
button.slick-prev,
button.slick-next{
top:35%;
width:32px;
height:32px;
}
button.slick-prev:before,
button.slick-next:before{
font-size:32px;
color:var(--gold);
opacity:1;
transform:scale(1);
transition:var(--fade);
}
button.slick-prev:hover:before,
button.slick-next:hover:before{
color:#fff;
opacity:0.7;
}
button.slick-prev{
left:-10%;
}
button.slick-next{
right:-10%;
}
#testimonials .bg-img{
position:absolute;
z-index:-1;
top:0;
left:0;
display:block;
width:100%;
height:100%;
object-fit:cover;
}
@media screen and (max-width: 1200px) {
	#testimonials{
	padding:80px 10%;
	}
}
@media screen and (max-width: 768px) {
	#main.testimonials .wrap{
	display:block;
	}
	#main.testimonials .testimonial:nth-child(-3n+4),
	#main.testimonials .testimonial:nth-child(3n+5),
	#main.testimonials .testimonial:nth-child(-5n+9){
	background:none;
	}
	#main.testimonials .testimonial:nth-child(even){
	background:rgba(0,0,0,0.05);
	}
}
@media screen and (max-width: 580px) {
	button.slick-prev{
	left:-15%;
	}
	button.slick-next{
	right:-10%;
	}
}

/* FOOTER */

#footer{
position:relative;
width:100%;
padding:45px 0;
background:#fff;
}
#footer .wrap{
display:grid;
grid-template-columns:1fr 1fr;
}
#footer .left-side{
display:flex;
align-items:center;
}
	#footer .logo{
	display:grid;
	max-width:32%;
	margin:0 20px 0 0;
	}
	#footer .logo img{
	max-width:100%;
	margin:0 auto;
	}
	#footer a{
	transition:var(--fade);
	}
	#footer .left-side p{
	font-size:14px;
	font-style:italic;
	color:#9f9f9f;
	line-height:1.4;
	margin:0;
	}
		#footer .left-side p a{
		color:#9f9f9f;
		text-decoration:none;
		}
		#footer .left-side p a:hover{
		color:var(--black);
		}
#footer .right-side{
display:flex;
justify-content:flex-end;
align-items:center;
}
	#footer .right-side ul{
	text-align:right;
	line-height:1.4;
	}
	#footer .right-side a{
	font-weight:300;
	font-style:italic;
	color:#fff;
	text-decoration:none;
	}
	#footer .c-info a{
	color:var(--black);
	}
		#footer .right-side a:hover{
		color:var(--gold);
		}
		#footer .c-info a:hover{
		color:var(--green);
		}
	#footer .social{
	display:flex;
	margin:0 0 0 20px;
	}
		#footer .social a{
		display:inline-block;
		width:48px;
		height:48px;
		font-size:22px;
		font-style:normal;
		color:#fff;
		line-height:48px;
		text-align:center;
		background:var(--gold);
		border-radius:50%;
		margin:0 0 0 5px;
		}
		#footer .social a:hover{
		font-size:28px;
		color:#fff;
		background:var(--green);
		}
			body.home #footer .social a:hover{
			font-size:22px;
			}
#topcontrol{
z-index:9999;
width:30px;
height:30px;
font-size:14px;
color:#fff;
text-align:center;
transition:var(--fade);
}
	#topcontrol:hover{
	margin-bottom:4px;
	}
	#topcontrol span{
	width:100%;
	height:100%;
	line-height:26px;
	background:var(--green);
	border:2px solid #fff;
	border-radius:100%;
	}
@media screen and (max-width: 1024px) {
	#footer .wrap{
	grid-template-columns:1fr;
	}
	#footer .left-side,
	#footer .right-side{
	justify-content:center;
	}
	#footer .right-side{
	display:block;
	}
	#footer .right-side ul,
	#footer .social{
	text-align:center;
	justify-content:center;
	margin:10px 0;
	}
}
@media screen and (max-width: 768px) {
	#footer .left-side{
	display:block;
	text-align:center;
	}
	#footer .logo{
	display:inline-block;
	margin:0;
	max-width:80%;
	}
}

/* BLOG POSTS */

#post-content h2{
color:var(--green);
}
.post-block{
clear:both;
}
	.post-block img{
	position:relative;
	top:0;
	left:0;
	width:420px;
    max-height:420px;
	object-fit:cover;
	object-position:100% 80%;
	transition:all 0.15s linear;
	transition-delay:100ms;
	}
	.post-block .with-square.right:hover:after{
	right:-18px;
	bottom:-18px;
	}
	.post-block .with-square.right:hover img{
	top:-4px;
	left:-4px;
	transition:all 0.15s linear;
	transition-delay:100ms;
	}
	.post-block .with-square{
	top:40px;
	opacity:0;
	}
	.post-block .with-square.in-view{
	animation:slideUp 800ms 1 400ms ease-out forwards;
	}
.post-title a{
display:block;
}
.post-meta{
position:relative;
top:-30px;
font-size:14px;
}
	.post-meta i{
	color:var(--gold);
	margin:0 5px 0 0;
	}
	.post-meta a{
	color:#9f9f9f;
	text-decoration:none;
	transition:var(--fade);
	}
		.post-meta a:hover{
		color:var(--gold);
		}
	.post-meta span{
	font-style:italic;
	color:#9f9f9f;
	}
	.post-meta span:not(:first-child){
	color:var(--gold);
	margin:0 0 0 8px;
	}
@media screen and (max-width: 768px) {
	.post-meta span{
	display:block;
	}
	.post-meta i{
	width:20px;
	}
	.post-meta span:not(:first-child){
	margin:0;
	}
}

.pum-theme-233 .pum-content + .pum-close,
.pum-theme-default-theme .pum-content + .pum-close{
background-color:var(--green)!important;
}


/* wedding & event planning page */

#wedding-event-packages {
	position: relative;
	padding: 60px;
	background: var(--green) url(../images/interior-banner-bg.jpg) repeat;
}
#wedding-event-packages .centered {
	grid-column: 1 / -1;
	color: #fff;
	text-align: center;
}
#wedding-event-packages .wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}
	#wedding-event-packages .package {
		display: flex;
		flex-direction: column;
		padding: 30px;
		background: #fff;
	}
	#wedding-event-packages .image {
		width: 100%;
		height: 220px;
		object-fit: cover;
		margin: 0 0 25px;
	}
	#wedding-event-packages h2 {
		font-family: var(--heading);
		font-size: 64px;
		color: var(--green);
		line-height: 0.7;
		text-align: center;
		margin: 0 0 10px;
	}
	#wedding-event-packages h3 {
		color: var(--gold);
		text-align: center;
	}
	#wedding-event-packages p,
	#wedding-event-packages ul,
	#wedding-event-packages ol {
		line-height: 1.5;
	}
	#wedding-event-packages ul {
		font-weight: 300;
		list-style: outside disc;
		margin: 0 0 30px 20px;
	}
		#wedding-event-packages ul ul {
			list-style: outside circle;
			margin: 0 0 0 20px;
		}
@media screen and (max-width: 1200px) {
	#wedding-event-packages .wrap {
		grid-template-columns: repeat(2, 1fr);
	}
	#wedding-event-packages .image {
		height: 160px;
	}
	#wedding-event-packages h2 {
		font-size: 54px;
	}
	#wedding-event-packages h3 {
    font-size: 22px;
	}
}
@media screen and (max-width: 768px) {
	#wedding-event-packages .wrap {
		grid-template-columns: 1fr;
	}
	#wedding-event-packages .image {
		height: 200px;
	}
}