@import url("https://use.fontawesome.com/releases/v5.0.9/css/all.css");

@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;700&display=swap");

@mixin mQ($rem) {
  @media screen and (min-width: $rem) {
    @content;
  }
}

@font-face { 
font-family: 'SnellRoundhand Script';
src: url('Bootstrap/fonts/Snell Roundhand Script.woff') format('woff');
}

body {
    /*description and footer fonts*/
    background-color: #f2eee3;
	font-family: 'Domine', serif;
	/*not needed unless changed to image background
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover; */
}

/*Navbar Background Image*/
.imgbackground {
	background-image: url("img/Venues/Oasis/Wedding Couple Photoshoot.jpg");
	background-position: center;
	width: 100%;
	height: auto;
}

/*Collapsed Navbar Menu*/
.sidenav {
	height: 100%;
	width: 0;
	position: fixed;
	z-index: 1;
	top: 0;
	left: 0;
	background-color: #f8f9fa!important;
	overflow-x: hidden;
	transition: 0.5s;
	padding-top: 60px;
}

/*Navbar Collapsed Menu disable potential unneeded scrollbar*/
.sidenav::-webkit-scrollbar { 
	display: none; 
}

/*Navbar Collapsed Menu Links*/
.nav-link {
	padding: 8px 8px 8px 16px;
	text-decoration: none;
	font-size: 25px;
	color: #404040;
	display: block;
	transition: 0.3s;
}

/*Navbar Collapsed Menu Links on Hover*/
.nav-link:hover {
	color: #818181;
}

/*Navbar Hamburger container*/
.hamburger-nav {
	position: relative;
	z-index: 99 !important;
	padding: 0;
	width: 100px;
}

/*Navbar Hamburger Button*/
.navbar-toggler.hamburger-button {
	outline: 0;
	border: 0;
	border-radius: 10px;
	padding: 4px 12px;
	width: 66px;
	height: 53px;
	margin-top: 15px;
	margin-left: 15px;
	position: fixed;
}

.navbar-toggler.hamburger-button:focus {
	outline: none;
}

/*Navbar Hamburger Button X icon*/
.animated-icon {
	width: 30px;
	height: 25px;
	position: relative;
	margin: 10px 6px;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
}

/*Navbar Hamburger Button X icon lines*/
.animated-icon span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	border-radius: 9px;
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
	background: #e8ca8c;
}

/*Navbar Hamburger Button X icon line 1*/
.animated-icon span:nth-child(1) {
	top: 0px;
	-webkit-transform-origin: left center;
	-moz-transform-origin: left center;
	-o-transform-origin: left center;
	transform-origin: left center;
}

/*Navbar Hamburger Button X icon line 2*/
.animated-icon span:nth-child(2) {
	top: 10px;
	-webkit-transform-origin: left center;
	-moz-transform-origin: left center;
	-o-transform-origin: left center;
	transform-origin: left center;
}

/*Navbar Hamburger Button X icon line 3*/
.animated-icon span:nth-child(3) {
	top: 20px;
	-webkit-transform-origin: left center;
	-moz-transform-origin: left center;
	-o-transform-origin: left center;
	transform-origin: left center;
}

/*Navbar Hamburger Button X icon line 1 animation*/
.animated-icon.open span:nth-child(1) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 0px;
	left: 5px;
}

/*Navbar Hamburger Button X icon line 2 animation*/
.animated-icon.open span:nth-child(2) {
	width: 0%;
	opacity: 0;
}

/*Navbar Hamburger Button X icon line 1 animation*/
.animated-icon.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 21px;
	left: 5px;
}

.navbar-brand {
	position: absolute;
	top: 0;
}

/*Navbar Socials pushed to right side*/
.nav-socials {
	position: fixed;
	right: 0;
	top: 0;
	z-index: 99;
}

/*Navbar Socials*/
.nav-item {
	list-style-type:none;
	display:inline-table;
	margin-right: 15px;
	margin-top: 15px;
}

/*Navbar Social Button Size*/
.nav-item>a>i.fa-brands {
	font-size: 40px;
	position: fixed;
}

/*Navbar Social Instagram Hover Issue Fix*/
.nav-item>a>i.fa-brands.fa-instagram:hover {
	width: auto;
	height: auto;
}

.center {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    text-align: center;
    vertical-align: middle;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Sacramento', cursive;
	font-size: 60px;
	font-weight: bold;
	font-style: italic;
	color: #332f29;
}

p {
    font-size: 30px;
    line-height: 1.6;
    color: white;
}

.intro-text {
    text-transform: uppercase;
    font-size: 25px;
    font-weight: 400;
    letter-spacing: 1px;
	color: #e8ca8c;
}

.title {
	font-size: 35px;
	font-family: "dancing script", cursive;
	color: #2A2A2A;
}

.subtitle {
	font-size: 27px;
	font-family: "dancing script", cursive;
	color: #2A2A2A;
}

.row {
	margin: 0 auto;
	width: 100%;
	padding: 0;
}

.banner {
	background: #FDF6E6;
	padding: 20px;
}

.center-block {
	display: block;
	float: none;
	margin: 0 auto;
	padding: 0;
}

.col-lg-9 {
	float: left;
}

.col-lg-12 {
	float: left;
	margin-top: 30px;
	padding: 15px;
	padding-left: 25px;
	background-color: rgba(125,127,184,0.8);
}

/*Puts Text over Images*/
.caption {
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	text-align: center;
}

/*Puts Text over Images*/
.caption2 {
	position: absolute;
	left: 0px;
	top: 16%;
	width: 99.39%;
	text-align: center;
}

.section-margin {
	padding: 50px 0;
}

.subsection-margin {
	margin: 25px auto;
}

/*Scroll to Top Button*/
#stt {
	display: none; /* Hidden by default */
	position: fixed; /* Fixed/sticky position */
	bottom: 20px;
	right: 30px;
	z-index: 99;
	border: 1px solid #bfbfbf;
	outline: none;
	background-color: #f8f9fa;
	cursor: pointer;
	padding: 12px 15px;
	border-radius: 50px;
	width: 58px;
	height: 58px;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
}

/*Scroll to Top Hover*/
#stt:hover {
	background-color: #f8f9fa;
}

/*Scroll to Top Arrow*/
.fa-angle-up {
	color: black;
	font-size: 30px;
	color: #333333;
}

.about-p {
	font-size: 30px;
}

/*Wedding Packages Caption*/
.packages-caption {
	font-family: 'Dancing Script', cursive;
	font-size: 100px;
	line-height: 100px;
	color: black;
}

/*Wedding Packages Image*/
.archway {
	width: 35%;
	margin: 4% auto;
}

/*Navbar Header Photo*/
.imgbackground {
	height: 750px;
	width: auto;
    background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
    background-color: #cccccc;
}

/*Video Player*/
.video {
	width: 420px;
	margin: 0 auto;
}

/*Video Player*/
.video-container {
	position: relative;
	padding-bottom: 132%; /*4:3*/
	padding-top: 30px; 
	height: 0; 
	overflow: hidden;
}

/*Video Player*/
.video-container iframe,
.video-container object,
.video-container embed,
.video-container video,
.video-fluid {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	z-index: 98;
}

/* Amenities Text Group 1 */
.amenities-1 {
	font-family: 'Playfair Display', serif;
	font-size: 40px;
	font-style: normal;
	font-weight: bold;	
	color: #333333;
}

/* Amenities Text Group 2 */
.amenities-2 {
	font-family: 'Poiret One', cursive;
	color: black;
	padding: 4% 0 0 0;
	font-size: 30px;
}

/*Background Image For Oasis - Venue Section*/
.parallax-oasis {
	background-image: url("img/Venues/Oasis/Happy Newlyweds.jpg");
	min-height: 500px;
}

/*Background Image For Sunset - Venue Section*/
.parallax-sunset {
	background-image: url("img/Venues/Sunset/Altar Couple Ceremony 5.jpg");
	min-height: 500px;
}

/*Parallax Effect - Venue Section*/
.parallax-oasis, .parallax-sunset {
	opacity: 0.65;
	position: relative;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

/*Greyscale on Hover Effect*/
.greyscale {
	position: relative;
	display: block;
	margin: 0 auto;
	width: 100%;
	background: black;
}

.greyscale * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all 2s ease;
	transition: all 2s ease;
}

.greyscale img {
	vertical-align: top;
	width: 100%;
	backface-visibility: hidden;
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	opacity: 0.75;
}

.greyscale:hover > img, .greyscale.hover > img {
	opacity: 1;
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);
}

/* Border and Hover Effect of Logo */
.boxtrans {
	position:relative;
	vertical-align: middle;
	color: #FFFFFF;
	display: inline-block;
	text-align: center;
	padding: 0;
	cursor: pointer;
	border: 4px solid #FFFFFF;
	transition: 0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
	-o-transition:0.5s;
}

.boxtrans:hover {
	border: 4px solid rgba(0,160,80,0);
	color: #ce989f;
}

.boxtrans:before, .boxtrans:after {
	height: 100%;
	width: 100%;
	z-index: 3;
	content:'';
	position: absolute;
	top:0;
	left:0;
	box-sizing: border-box;
	transition: 0.5s;
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	-moz-transform: scale(0);
	-o-transform: scale(0);
}

.boxtrans:hover:after, .boxtrans:hover:before {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	-moz-transform: scale(1);
	-o-transform: scale(1);
}

.foo:before {
	border-bottom: 4px solid #ce989f;
	border-left: 4px solid #ce989f;
	-webkit-transform-origin: 0 100%;
	-ms-transform-origin: 0 100%;
	-moz-transform-origin: 0 100%;
	-o-transform-origin: 0 100%;
}

.foo:after {
	border-top: 4px solid #ce989f;
	border-right: 4px solid #ce989f;
	-webkit-transform-origin: 100% 0%;
	-ms-transform-origin: 100% 0%;
	-moz-transform-origin: 100% 0%;
	-o-transform-origin: 100% 0%;
}

.boxtrans img {
	position: absolute;
	left: 0;
	top: 0;
	-webkit-transition: opacity 0.5s ease-in-out;
	-moz-transition: opacity 0.5s ease-in-out;
	-o-transition: opacity 0.5s ease-in-out;
	transition: opacity 0.5s ease-out;
}

.boxtrans:hover img.top{
	opacity: 0;
}

.bottom, .top {
	height: auto;
	max-width: 375px;
	margin: 15px;
	z-index: 999;
}

.logo-box {
	position: relative;
	margin: 0 auto;
	height: 180px;
	width: 405px;
	background-color: rgba(35, 31, 32, 0.5);
}

/*Fade Up on Scroll Effect*/
.animation-element {
	position: relative;
}

.bounce-up .subject {
	opacity: 0;
	-moz-transition: all 1000ms ease-out;
	-webkit-transition: all 1000ms ease-out;
	-o-transition: all 1000ms ease-out;
	transition: all 1000ms ease-out;
	-moz-transform: translate3d(0px, 200px, 0px);
	-webkit-transform: translate3d(0px, 200px, 0px);
	-o-transform: translate(0px, 200px);
	-ms-transform: translate(0px, 200px);
	transform: translate2d(0px, 200px, 0px);
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	backface-visibility: hidden;
}

.bounce-up.in-view .subject {
	opacity: 1;
	-moz-transform: translate3d(0px, 0px, 0px);
	-webkit-transform: translate3d(0px, 0px, 0px);
	-o-transform: translate(0px, 0px);
	-ms-transform: translate(0px, 0px);
	transform: translate2d(0px, 0px, 0px);
}

.fade-padding {
	margin-top: 100px;
}

/*Line Next to Text*/
.strike {
	display: block;
	text-align: center;
	overflow: hidden;
	white-space: nowrap; 
}

.strike > span {
	position: relative;
	display: inline-block;
}
	
.strike > span:before, .strike > span:after {
	content: "";
	position: absolute;
	top: 50%;
	width: 9999px;
	height: 1px;
	background: #c87d55;
}

.strike > span:before {
	right: 100%;
	margin-right: 15px;
}

.strike > span:after {
	left: 100%;
	margin-left: 15px;
}

.photo-title {
    font-family: 'Domine', serif;
	font-size: 36px;
    color: #1d1d1b;;
    text-align: center;
    font-weight: 500;
	font-style: normal;
    margin-bottom: 70px;
}

.filter-button {
	font-family: "Roboto", sans-serif;
	font-size: 18px;
	font-weight: 500;
	color: #FFFFFF;
	background-color: #94575e;
	border: 0px solid #FFFFFF;
	border-radius: 15px;
	padding: 11px 11px 11px 11px;
	width: 15%;
	white-space: normal;
	box-shadow: 0px 0px 0px 0px #FFFFFF;
	margin-bottom: 30px;
}

.filter-button:hover {
    font-size: 18px;
    border: none;
    color: white;
    background-color: #94575e;
}

.btn.btn-default.filter-button.active, .btn.btn-default.filter-button:hover, .btn.btn-default.filter-button:focus {
	background-color: #c82333;
	color: white;
	outline: 0;
}

.port-image {
    width: 100%;
}

/*Gallery*/
/*Gallery Padding*/
.gal-container {
	padding: 12px;
}

/*Padding Around Images*/
.gal-item {
	overflow: hidden;
	padding: 3px;
}

/*Image Height*/
.gal-item .box {
	height: 350px;
	overflow: hidden;
}

/*Fits Images Inside of Boxes Responsively*/
.box img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	-o-object-fit: cover;
}

.modal-content {
	height: auto;
	background: none;
	box-shadow: none;
	border: none;
}

.gal-container .modal-content img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	-o-object-fit: cover;
}

.gal-container .modal-content .modal-body {
	height: 100%;
	width: 100%;
}

/*No Outline on Image-Box "links"*/
.gal-item a:focus {
	outline: none;
}

/*Fade On Hover + Symbol Effect*/
.gal-item a::after {
	content:"\f00e";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	opacity: 0;
	background-color: rgba(0, 0, 0, 0.75);
	position: absolute;
	right: 3px;
	left: 3px;
	top: 3px;
	bottom: 3px;
	text-align: center;
    line-height: 350px;
	visibility: visible;
    font-size: 30px;
    color: #fff;
    -webkit-transition: all 0.5s ease-in-out 0s;
    -moz-transition: all 0.5s ease-in-out 0s;
    transition: all 0.5s ease-in-out 0s;
}

/*Fade On Hover Effect*/
.gal-item a:hover:after {
	opacity: 1;
}

/*Magified Image = Fade Foreground to Back*/
.modal-open .gal-container .modal {
	background-color: rgba(0,0,0,0.4);
}

/*Magnified Image-Box Frame = No Frame/Border*/
.modal-open .gal-item .modal-body {
	padding: 0px;
}

/*X-to-Exit Button Stylings*/
.modal-open .gal-item button.close {
    position: absolute;
    width: 25px;
    height: 25px;
    background-color: transparent;
    opacity: 1;
    color: #fff;
    z-index: 999;
    right: 2%;
    top: 2%;
    font-size: 40px;
    border: none;
    line-height: 30px;
}

/*No Outline on click of X-to-Exit Button*/
.modal-open .gal-item button.close:focus {
	outline: none;
}

/*Positioning X within X-to-Exit Button*/
.modal-open .gal-item button.close span {
	position: relative;
	top: 5px;
	right: 5px;
	font-weight: bold;
	text-shadow: none;
}

/*Positions Magnified Images in vertical center*/
.gal-container .modal-content {
	position: relative;
	top: 5%;
	transform: translateY(-5%);
	margin: auto;
}

.gal-container .modal-content {
	width: 95%;
	margin: 0 auto;
}

/*Magnified Image Fade-In Effect*/
.gal-container .modal.fade.in .modal-content {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

p.quote.text-center {
	font-size: 50px;
	color: #424242;
	line-height: 80px;
	margin-bottom: 60px;
}

span.quotemarks {
	font-size: 100px;
}

span.quoteauthor {
	line-height: 90px;
}

hr {
    max-width: 400px;
    border-color: #da9d9a;
}

.img-square {
	display: inline-block;
	float: left;
	width: 25%;
	padding: 0;
	margin: 0 auto;
}

/*Preferred Vendor Category Sections*/
.fifth {
	width: 20%;
	float: left;
	position: relative;
	padding: 15px;
	margin: 20px auto;
}

/*Preferred Vendors Category Images*/
.circle {
	height: 100px;
	width: 100px;
	border-radius: 100px;
	position: relative;
	margin: 0 auto;
}

/*Preferred Vendors Screen Size Change*/
.FourPerRow, .ThreePerRow, .TwoPerRow, .OnePerRow {
	display: none;
}

/*image*/
.img-border {
	box-shadow: 3px 3px 6px black;
}

.three-fourths {
	width: 75%;
	position: relative;
	display: inline-block;
	float: left;
	padding: 15px 0px;
	margin: 0 auto;
}

.fourth {
	width: 25%;
	position: relative;
	display: inline-block;
	float: left;
	padding: 15px 0px;
	margin: 0 auto;
}

.fourth.btm, .fourth.tp {
	width: 25%;
	position: relative;
	display: inline-block;
	float: left;
	padding: 15px 0px;
	margin: 0 auto;
}

.fourth img {
	max-width: 320px;
	height: auto;
	float: none;
	margin: 0 auto;
}

.fourth.tp {
	display: none;
	width: 0;
	height: 0;
}

.btm img {
	display: inline-block;
	max-width: 270px;
	height: auto;
	float: none;
	margin: 0 auto;
}

.list {
	font-family: 'Domine', serif;
	font-size: 17px;
	list-style-type: none;
}

.names {
	font-family: 'Domine', serif;
	font-size: 17px;
	color: #c41c19;
}

.one-column {
	display: none;
}

.download {
	background-color: #878762;
	color: white;
	height: 53px;
	width: 300px;
	font-size: 20px;
	font-family: 'Domine', serif;
	border: 0px;
	border-radius: 15px;
	padding: 11px;
}

.download:hover {
	background-color: #69713c;
	color: white;
}

.packages-spacing {
	margin-top: 50px;
}

.packages-break {
	display: none;
	margin: 40px auto;
	padding: 0;
    width: 100%;
    border: 0;
    height: 1px;
    background-image: linear-gradient(to right, rgba(255, 246, 125, 0), rgba(255, 246, 125, 0.75), rgba(255, 246, 125, 0));
}

.pricing {
  font-family: 'Assistant', sans-serif;
  font-weight: normal;
  border-collapse: collapse;
  color: black;
  position: relative;
}

.pricing td, .pricing th {
  padding: 8px;
  padding-left: 25px;
}

.pricing th {
  padding-top: 12px;
  padding-bottom: 12px;
  background-color: #e0e0de;
  font-size: 30px;
  letter-spacing: 1.5px;
  font-weight: 300;
  text-align: center;
}

.pricing tr {
	background-color: #e0e0de;
	font-size: 25px;
}

.pricing tr td:first-child {
	width: 55%;
}

.pricing tr:nth-child(odd) {
	background-color: white;
}

.pricing tr:hover {
	background-color: #c4c4c4;
}

.packages-details2 li {
	margin-left: 5%;
	padding-left: 0.5em;
	text-indent: 0em;
	font-family: 'Assistant', sans-serif;
	font-weight: normal;
	font-size: 20px;
	color: black;
}

.packages-details2 li {
	list-style-type: "◇";
}

.packages-details2 p {
	font-size: 20px;
	color: black;
}

.pricing, .packages-list {
	width: 100%;
}

.packages-details2 {
	width: 100%;
	padding-right: 20px;
}

.packages-list>p {
	color: black;
	font-family: 'Assistant', sans-serif;
	font-size: 20px;
	margin-top: 10px;
}

.two-column {
	display: block;
}

/*New event banner*/
.ribbon-wrapper {
	position: absolute;
	top: -5px;
	right: -5px;
	height: 110px;
	width: 126px;
	overflow: hidden;
}

.ribbon {
	position: relative;
	top: 27px;
	right: -15px;
	height: 28px;
	width: 141px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	background-color: #e43;
	padding: 7px;
	font-family: 'Montserrat Bold', Helvetica, Arial, sans-serif;
	font-size: 12px;
	color: #FFF;
	text-transform: uppercase;
	letter-spacing: .05em;
	line-height: 15px;
	text-align: center;
}

.ribbon:before,
.ribbon:after {
	position: absolute;
	bottom: -3px;
	content: "";
	border-top: 3px solid #9e2c21;
	border-left: 3px solid transparent;
	border-right: 3px solid transparent;
}

.ribbon:before {
	left: 0;
}

.ribbon:after {
	right: 0;
}

/*Product Cards*/
.card {
	position: relative;
}

.event-info {
	padding: 20px;
}

/*New product banner*/
.ribbon-wrapper {
	position: absolute;
	top: -3px;
	right: -3px;
	height: 88px;
	width: 85px;
	overflow: hidden;
}

.ribbon {
	position: relative;
	top: 10px;
	right: -11px;
	height: 28px;
	width: 100px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	background-color: #e43;
	padding: 7px 0;
	font-family: 'Montserrat Bold', Helvetica, Arial, sans-serif;
	font-size: 12px;
	color: #FFF;
	text-transform: uppercase;
	letter-spacing: .05em;
	line-height: 15px;
	text-align: center;
}

.ribbon:before,
.ribbon:after {
	position: absolute;
	bottom: -3px;
	content: "";
	border-top: 3px solid #9e2c21;
	border-left: 3px solid transparent;
	border-right: 3px solid transparent;
}

.ribbon:before {
	left: 0;
}

.ribbon:after {
	right: 0;
}

/* Grid System */
.tab-navigation {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.tab-btn {
    padding: 0.75rem 1.5rem;
    background: #f8f9fa;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 500;
}

.tab-btn:hover {
    background: #e9ecef;
}

.tab-btn.active {
    background: #0d6efd;
    color: white;
}

.tab-content {
    display: none;
    animation: fadeIn 0.5s ease;
}

.tab-content.active {
    display: block;
}

.grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 1.5rem;
}

.grid-item {
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    aspect-ratio: 1/1;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.grid-item:hover {
    transform: translateY(-5px);
}

.grid-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.grid-item:hover img {
    transform: scale(1.1);
}

.image-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
    color: white;
    padding: 1.5rem;
    transform: translateY(100%);
    transition: transform 0.3s ease;
}

.grid-item:hover .image-overlay {
    transform: translateY(0);
}

.photo-title {
	font-family: ;
	font-size: ;
	color: white;
}

.photo-desc {
	
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.half {
	width: 50%;
	position: relative;
	display: inline-block;
	float: left;
	padding: 15px 0px;
	margin: 0 auto;
}

.change-theme-icon {
    position: fixed;
	display: block;
	bottom: 20px;
	right: 30px;
	z-index: 99;
	cursor: pointer;
	padding: 0;
	margin: 0 auto;
	background: black;
    border: 4px solid #cc9c16;
	border-radius: 100px;
    font-weight: bold;
}

.change-theme-icon:active, 
.change-theme-icon:focus {
	outline: none !important;
	box-shadow: none;
	-webkit-box-shadow: none !important;
	box-shadow: none  !important;
}

.change-theme-icon.button-light {
    color: #212121;
    background-color: white;
}

.change-theme-icon.button-dark {
    color: white;
    background-color: #212121;
}

span#lightbulb.fas {
	font-size: 35px;
	font-weight: bold;
	margin: 21px 25.39px;
}

span#lightbulb.fas.lightbulb-off {
    color: white;
}

span#lightbulb.fas.lightbulb-on {
    color: #cc9c16;
}

.text-dark {
	color: #212121;
}

.text-light {
	color: white;
}

/*Reviews*/
blockquote {
	margin: 0 15%;
	padding: 1em;
	border-left: 5px solid #fcd0bb;
}
blockquote:before {
	display: none;
}
blockquote:not(:first-of-type) {
	margin-top: .5em;
}
blockquote p {
	color: #4a5158;
	font-size: 12pt;
	line-height: 1.4;
	font-family: 'PT Serif', Cambria, 'Hoefler Text', Utopia, 'Liberation Serif', 'Nimbus Roman No9 L Regular', Times, 'Times New Roman', serif;
}
blockquote footer {
	margin-top: .5em;
	padding: 0;
	color: #5c636a;
	font-size: 12pt;
	text-align: left;
	font-style: italic;
}
blockquote footer:before {
	content: '— ';
}
blockquote:nth-of-type(even) {
	text-align: right;
	border-left: none;
	border-right: 5px solid #fcd0bb;
}
blockquote:nth-of-type(even) footer {
	text-align: right;
}
blockquote:nth-of-type(even) footer:before {
	content: '';
}
blockquote:nth-of-type(even) footer:after {
	content: ' —';
}
@element 'blockquote' and (min-width: 300px) {
	blockquote {
		padding: 1em 20% 1em 1em;
	}
	blockquote p {
		font-size: 14pt;
	}
	blockquote:nth-of-type(even) {
		padding: 1em 1em 1em 20%;
	}
}

.elfsight-app-f9b0fbcc-0b53-482e-959a-ea4f33f1805c {
	float: left;
}

.contact-form {
	float: right;
	margin-top: -40px;
}

/*Awards*/
.awards-section {
	background-color: #332f29;
	padding-top: 50px;
	padding-bottom: 50px;
}

.awards-section a {
	text-decoration: none;
}

.awards-title {
	font-size: 45px;
	font-family: "Red Hat Display", sans-serif;
	color: white;
}

.awards {
	padding: 25px;
}
.awards img {
	position: relative;
	height: auto;
	width: 100%;
}

.hotel-map {
	padding: 0;
}

/*footer*/
footer {
	width: 100%;
	padding: 10px 0;
}

/*footer tables*/
.footer-resources, .footer-community {
}

/*footer table headers + links*/
.footer-resources th p, .footer-community th p,
.footer-resources tr td a, .footer-community tr td a {
	color: #333333;
}

/*footer text*/
.footer-p {
	margin: 0 auto;
	margin-top: 20px;
	padding: 0;
	font-family: 'Quattrocento', serif;
	color: #333333;
	font-size: 20px;
	text-align: center;
}

.fa, .fab, .fas, .fa-brands {
    font-size: 30px;
	margin: 10px 9px;
	padding: 0;
    text-align: center;
    text-decoration: none;
	color: black;
}

.fa-facebook {
	margin: 10px 14px;
}

.fa-facebook-f:hover, .fa-facebook-f:focus {
	color: #3B5998;
	text-decoration: none;
}

.fa-twitter:hover, .fa-twitter:focus {
	color: #08A0E9;
	text-decoration: none;
}

.fa-yelp:hover, .fa-yelp:focus {
	color: #C41200;
	text-decoration: none;
}

.fa-instagram:hover, .fa-instagram:focus {
	background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); 
    background: -webkit-radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
	color: black;
	border-radius: 10px;
	width: 26px;
	height: 26px;
	text-decoration: none;
}

.line-light {
	border: 1px solid #f2c49d;
}

.line-dark {
	border: 1px solid #212121;
}

.fa-file {
	color: white;
}

.fa-file:hover {
	color: #5b413a;
}

.fa-map-marked-alt {
	color: #262525;
}

.fa-map-marked-alt:hover {
	color: #3d3b3b;
}

.lodging-map {
	padding: 30px 0;
	background: rgba(150,86,76,0.5);
}

#myBtn {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    cursor: pointer;
	padding: 5px;
	margin: 0 auto;
	background: #e06377;
	border: none;
	border-radius: 50%;
}

#myBtn:hover {
	background-color: #555;
}

@media screen and (max-width: 1450px) {
	.three-fourths {
		width: 70%;
		position: relative;
		display: inline-block;
		float: left;
		padding: 15px;
		margin: 0 auto;
	}

	.fourth, .fourth.btm {
		width: 30%;
		position: relative;
		display: inline-block;
		float: left;
		padding: 0;
		margin: 0 auto;
	}

	.fourth img {
		max-width: 300px;
		height: auto;
		float: none;
		margin: 0 auto;
	}
}

@media screen and (max-width: 1375px) {
	.pricing, .packages-list {
		width: 90%;
	}

	.packages-spacing {
		margin-bottom: 6%;
	}
}

@media screen and (max-width: 1332px) {
	.testimonial-title {
		font-size: 40px;
	}

	.testimonial {
		font-size: 24px;
	}

	.overview {
		font-size: 27px;
	}
}

@media screen and (max-width: 1300px) {
	.archway {
		width: 38%;
	}

	.caption2 {
		top: 14%;
	}
}

@media screen and (max-width: 1225px) {
	.pricing, .packages-list {
		width: 95%;
	}
}

@media screen and (max-width: 1213px) {
	.three-fourths {
		width: 65%;
		position: relative;
		display: inline-block;
		float: left;
		padding: 15px;
		margin: 0 auto;
	}

	.fourth, .fourth.btm {
		width: 35%;
		position: relative;
		display: inline-block;
		float: left;
		padding: 0;
		margin: 0 auto;
	}

	.fourth img {
		max-width: 300px;
		height: auto;
		float: none;
		margin: 0 auto;
	}

	p.quote.text-center {
		font-size: 40px;
		line-height: 70px;
	}

	span.quotemarks {
		font-size: 60px;
	}
}

@media screen and (min-width: 1200px) {
	.divider-bar {
		display: none;
	}

	.form-buffer {
		display: none;
	}

	.archway {
		width: 40%;
	}
}

/*Preferred Vendors Rows break point, 4 per*/
@media screen and (max-width: 1199px) {
	.fifth {
		width: 25%;
	}

	.FivePerRow, .ThreePerRow, .TwoPerRow, .OnePerRow {
		display: none;
	}

	.FourPerRow {
		display: block;
	}

	.divider-bar {
		display: block;
	}

	.form-buffer {
		display: block;
		height: 20px;
	}

	.packages-details2 {
		padding-right: 20px;
	}

	.packages-caption {
		font-size: 85px;
		line-height: 85px;
	}
}

@media screen and (max-width: 1158px) {
	.pricing, .packages-list, ul.packages-details2 {
		width: 98%;
	}

	.archway {
		width: 43%;
	}

	.caption2 {
		top: 16%;
	}

	.packages-details2 {
		padding-right: 15px;
	}
}

@media screen and (max-width: 1123px) {
	.pricing, .packages-list {
		width: 100%;
	}

	.archway {
		width: 43%;
	}

	.caption2 {
		top: 16%;
	}
}

@media screen and (max-width: 1103px) {
	.packages-break {
		display: block;
	}

	.archway {
		width: 43%;
	}

	.caption2 {
		top: 16%;
	}

	.pricing, .packages-list {
		width: 80%;
		float: none;
		margin: 0 auto;
	}

	.packages-details2 li {
		width: 85%;
	}
}

@media screen and (max-width: 1075px) {
	.fade-padding {
		margin-top: 35px;
	}

	.caption2 {
		top: 14%;
	}

	.packages-caption {
		font-size: 90px;
	}
}

@media screen and (max-width: 1035px) {
	.three-fourths {
		width: 67%;
		position: relative;
		display: inline-block;
		float: left;
		padding: 15px;
		margin: 0 auto;
	}

	.fourth, .fourth.tp {
		width: 33%;
		position: relative;
		display: inline-block;
		float: left;
		padding: 0;
		margin: 0 auto;
	}

	.fourth img {
		max-width: 270px;
		height: auto;
		float: none;
		margin: 0 auto;
	}
}

@media screen and (min-width: 1001px) {
	.container-fluid {
		display: inline-block;
		text-align: center;
	}
}

@media screen and (max-width: 1000px) {
	.packages-caption {
		font-size: 80px;
		line-height: 80px;
	}
}

@media screen and (max-width: 992px) {
	.about-p {
		font-size: 25px;
	}

	.elfsight-app-f9b0fbcc-0b53-482e-959a-ea4f33f1805c {
		width: auto;
	}

	.contact-form {
		float: none;
		margin-top: 0;
	}

	/*Preferred Vendors Rows break point, 3 per*/
	.fifth {
		width: 33%;
	}

	.FivePerRow, .FourPerRow, .TwoPerRow, .OnePerRow {
		display: none;
	}

	.ThreePerRow {
		display: block;
	}
}

@media screen and (max-width: 991px) {
	.testimonial-div {
		width: 90%;
	}

	.grid-container {
		grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	}

@media screen and (max-width: 970px) {
	.archway {
		width: 47%;
	}
}

@media screen and (max-width: 953px) {
    .navbar-header {
        float: none;
    }

    .navbar-toggle {
        display: block;
    }

    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    }

    .navbar-collapse.collapse {
        display: none!important;
    }

    .navbar-nav {
        float: none!important;
        margin: 7.5px -15px;
    }

    .navbar-nav>li {
        float: none;
    }

    .navbar-nav>li>a {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .navbar-text {
        float: none;
        margin: 15px 0;
    }

    .navbar-collapse.collapse.in { 
        display: block!important;
    }

    .collapsing {
        overflow: hidden!important;
    }

	.greyscale > img {
		opacity: 1;
		-webkit-filter: grayscale(0%);
		filter: grayscale(0%);
	}

	.gal-container .modal-content {
		position: relative;
		top: 10%;
		transform: translateY(-10%);
	}

	/* makes the dropdown full width  */
	.navbar-default .navbar-nav .open {
		position: relative;
		width:100%;
		left:0;
		right:0;
	}
}

@media screen and (max-width: 933px) {
	.three-fourths {
		width: 100%;
		position: relative;
		display: inline-block;
		float: left;
		padding: 15px;
		margin: 0 auto;
	}

	.fourth, .fourth.tp {
		display: block;
		width: 100%;
		height: auto;
		float: none;
		margin: 0 auto;
		padding: 0;
	}

	.fourth.tp img {
		display: block;
		max-width: 270px;
		height: auto;
		float: none;
		margin: 0 auto;
		padding: 0;
	}

	.fourth.btm img {
		display: none;
	}
}

@media screen and (max-width: 900px) {
	.one-column {
		display: block;
	}

	.two-column {
		display: none;
	}
}

@media screen and (max-width: 884px) {
	.caption2 {
		top: 13%;
	}
}

@media screen and (max-width: 832px) {
	.caption2 {
		top: 12%;
	}

	.packages-caption {
		font-size: 80px;
		line-height: 80px;
	}
}

@media screen and (max-width: 800px) {
	.amenities-1 {
		font-size: 35px;
	}

	.testimonial-div {
		width: 100%;
		padding: 0;
	}

	.col-md-12 {
		width: 100%;
		padding: 0;
	}

	.testimonial {
		font-size: 20px;
	}

	.carousel .overview b {
		font-size: 24px;
	}
}

@media screen and (max-width: 775px) {
	.amenities-1 {
		font-size: 30px;
	}
}

@media screen and (min-width: 768px) {
	.navbar-default {
		font-size: 1.2em;
		font-family: 'Domine', serif;
	}
}

@media screen and (max-width: 768px) {
	.about-p {
		font-size: 20px;
	}

	.awards-title {
		font-size: 40px;
	}

	.packages-caption {
		font-size: 70px;
		line-height: 70px;
	}

	.grid-container {
		grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	}
}

@media screen and (max-width: 734px) {
	blockquote {
		margin: 0 10%;
	}
}

@media screen and (max-width: 700px) {
	.caption2 {
		top: 10%;
	}
}

@media screen and (max-width: 645px) {
	.amenities-1 {
		font-size: 25px;
	}

	.amenities-2 {
		font-size: 25px;
	}

	.download {
		font-size: 18px;
		height: 47px;
		width: 260px;
	}

	p {
		font-size: 25px;
	}

	.packages-caption {
		font-size: 60px;
	}

	.col-8 {
		width: auto;
	}
}

/*Preferred Vendors Rows break point, 2 per*/
@media screen and (max-width: 600px) {
	blockquote {
		margin: 0 5%;
	}

	.imgbackground {
		background-position: 70% 50%;
	}

	.fifth {
		width: 50%;
	}

	.FivePerRow, .FourPerRow, .ThreePerRow, .OnePerRow {
		display: none;
	}

	.TwoPerRow {
		display: block;
	}

	.packages-caption {
		font-size: 55px;
		line-height: 60px;
	}

	.pricing, .packages-list {
		width: 90%;
	}

	.packages-details2 li {
		width: 95%;
	}

	.packages-details2 {
		padding-left: 15px;
	}

	.caption2 {
		top: 8%;
	}
}

@media screen and (max-width: 575px) {
	.awards-title {
		font-size: 35px;
	}

	.awards {
		padding: 20px 0;
	}
}

@media screen and (max-width: 560px) {
	h1 {
		font-size: 50px;
	}

	.video {
		width: 80%;
	}

	.amenities-2 {
		font-size: 20px;
	}

	.top {
		max-width: 300px;
	}

	.packages-caption {
		font-size: 50px;
		line-height: 55px;
	}
}

@media screen and (max-width: 531px) {
	.grid-container {
	}
}

@media screen and (max-width: 525px) {
	.pricing th {
		letter-spacing: normal;
	}
}

@media screen and (max-width: 500px) {
	.awards-title {
		font-size: 30px;
	}

	.img-square {
		width: 50%;
	}
	
	#myBtn {
		bottom: 7px;
		right: 7px;
	}

	.fourth.tp img {
		display: block;
		max-width: 250px;
		height: auto;
		float: none;
		margin: 0 auto;
	}

	p.quote.text-center {
		font-size: 30px;
		line-height: 55px;
	}

	span.quotemarks {
		font-size: 45px;
	}

	.archway {
		width: 55%;
	}

	.pricing, .packages-list, .packages-details2 li {
		width: 95%;
	}
}

@media screen and (max-width: 475px) {
	.top {
		max-width: 275px;
		margin-top: 50px;
	}
}

@media screen and (max-width: 450px) {
	.logo-box {
		height: 170px;
		width: 380px;
	}

	.bottom {
		height: auto;
		width: 360px;
		margin: 10px;
	}

	.pricing th {
		font-size: 25px;
	}

	.video {
		width: 90%;
	}

	.col-7 {
		width: 65%;
	}
}

@media screen and (max-width: 430px) {
	.logo-box {
		height: 155px;
		width: 350px;
	}

	.bottom {
		height: auto;
		width: 330px;
		margin: 10px;
	}

	.fourth.tp img {
		display: block;
		max-width: 230px;
		height: auto;
		float: none;
		margin: 0 auto;
	}
}

/*Preferred Vendors Rows break point, 1 per*/
@media screen and (max-width: 420px) {
	.download {
		font-size: 16px;
		height: 47px;
		width: 230px;
	}

	.fifth {
		width: 100%;
		margin: 10px auto;
	}

	.FivePerRow, .FourPerRow, .ThreePerRow, .TwoPerRow {
		display: none;
	}

	.OnePerRow {
		display: block;
	}
}

@media screen and (max-width: 410px) {
	.col-7 {
		width: 75%;
	}

	.logo-box {
		height: 150px;
		width: 330px;
	}

	.bottom {
		height: auto;
		width: 310px;
		margin: 10px;
	}

	.pricing td {
		font-size: 20px;
	}

	.pricing {
		margin-left: 0;
	}

	.pricing, .packages-list, .packages-details2 li {
		width: 100%;
	}

	.caption2 {
		top: 6%;
	}
}

@media screen and (max-width: 384px) {
	.top {
		width: 240px;
		margin-top: 60px;
	}

	.logo-box {
		height: 140px;
		width: 310px;
	}

	.bottom {
		height: auto;
		width: 290px;
		margin: 10px;
	}

	.archway {
		width: 60%;
	}

	.pricing th {
		font-size: 22px;
	}

	.packages-details2 p {
		font-size: 18px;
	}

	.caption2 {
		top: 4%;
	}
}

@media screen and (max-width: 370px) {
	h1 {
		font-size: 40px;
	}

	.fade-padding {
		margin-top: 18px;
	}

	p {
		font-size: 20px;
	}

	.logo-box {
		height: 130px;
		width: 300px;
	}

	.bottom {
		height: auto;
		width: 290px;
		margin: 5px;
	}

	.packages-caption {
		font-size: 45px;
		line-height: 50px;
	}
}

@media screen and (max-width: 355px) {
	.logo-box {
		height: 125px;
		width: 280px;
	}

	.bottom {
		height: auto;
		width: 270px;
		margin: 5px;
	}

	.packages-details2 p {
		font-size: 16px;
	}
}

@media screen and (max-width: 330px) {
	.logo-box {
		height: 115px;
		width: 260px;
	}

	.bottom {
		height: auto;
		width: 250px;
		margin: 5px;
	}

	.fourth.tp img {
		display: block;
		max-width: 210px;
		height: auto;
		float: none;
		margin: 0 auto;
	}

	.archway {
		width: 65%;
	}

	.download {
		padding: 8px 14px;
		height: 40px;
		width: 220px;
		font-size: 16px;
	}
}

@media screen and (max-width: 315px) {
	.top {
		width: 220px;
		margin-top: 60px;
	}

	.logo-box {
		height: 110px;
		width: 240px;
	}

	.bottom {
		height: auto;
		width: 230px;
		margin: 5px;
	}

	.pricing th {
		font-size: 20px;
	}

	.pricing td {
		font-size: 18px;
	}

	.packages-caption {
		font-size: 35px;
		line-height: 35px;
	}

	.caption2 {
		top: 8%;
	}
}

@media screen and (max-width: 295px) {
	.col-7 {
		width: 85%;
	}

	h1 {
		font-size: 35px;
	}

	.logo-box {
		height: 100px;
		width: 230px;
	}

	.bottom {
		height: auto;
		width: 220px;
		margin: 5px;
	}

	.fourth.tp img {
		display: block;
		max-width: 190px;
		height: auto;
		float: none;
		margin: 0 auto;
	}
}