html {
	background-color: #000;
}

body {
	background-color: #fff;
	min-height: 100%;
	font-family: "Roboto", sans-serif;
}

body.frozen {
	overflow: hidden;
}

a,
button {
	-webkit-transition: all .1s ease-in-out;
	-moz-transition: all .1s ease-in-out;
	transition: all .1s ease-in-out;
}

.animo {
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.wow {
	visibility: hidden;
}

.bg-center {
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	-o-background-size: cover;
}

.bg-left {
	background-position: left center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	-o-background-size: cover;
}

.bg-top {
	background-position: top center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	-o-background-size: cover;
}

.bg-bottom {
	background-position: bottom center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	-o-background-size: cover;
}

.bg-contain {
	background-position: center center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	-o-background-size: contain;
	background-repeat: no-repeat;
}

.anchor{
	display:block;
	float:left;
	width:100%;
	padding-top:90px;
	margin-top:-90px;
  }

ul li{
	margin:0 0 1rem 0;
}

/*

	PLACEHOLDER

--------------- */

/* Chrome, Safari, newer versions of Opera and Edge */
::-webkit-input-placeholder {
	color: #ccc;
	font-size: 1rem;
}

/* Firefox 19+ */
::-moz-placeholder {
	color: #ccc;
	font-size: 1rem;
	opacity: 1;
	/* Firefox lowers the opacity of the placeholder by default */
}

/* Internet Explorer 10+ */
:-ms-input-placeholder {
	color: #ccc;
	font-size: 1rem;
}

/* Standard syntax for most modern browsers */
::placeholder {
	color: #ccc;
	font-size: 1rem;
}

::selection {
	background-color: #222a19;
	/* Yellow background */
	color: #fff;
	/* Black text */
}


/*

	NO SCROLLBAR

----------------- */
.hidden-scrollbar {
	overflow: scroll;
	/* Enable scrolling */
	-ms-overflow-style: none;
	/* Internet Explorer 10+ */
	scrollbar-width: none;
	/* Firefox */
}

/* Hide scrollbar for WebKit-based browsers (Chrome, Safari) */
.hidden-scrollbar::-webkit-scrollbar {
	display: none;
}

/* For Edge and IE */
@supports (-ms-overflow-style: none) {
	.hidden-scrollbar {
		-ms-overflow-style: none;
		/* Internet Explorer 10+ */
	}
}

/* For Firefox */
@supports (scrollbar-width: none) {
	.hidden-scrollbar {
		scrollbar-width: none;
		/* Firefox */
	}
}

.darken {
	position: fixed;
	z-index: 90;
	background-color: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: none;
}

.container-fluid {
	max-width: 1400px;
}

/*

	COOKIES

------------ */
.cookies{
	position:fixed;
	bottom:0;
	left:0;
	right:0;
	padding:30px;
	background-color:rgba(255,255,255,0.9);
	backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
	z-index:999999;
	text-align:center;
	font-size:14px;
	line-height:22px;
	display:none;
	border-top:solid 1px #eee;
}
.cookies-content{
	margin:0 0 15px 0;
}
.cookies a.btn-cookies{
	display:inline-block;
	border:solid 1px #aaa;
	color:#aaa;
	padding:10px 15px;
	text-decoration:none;
	margin:0 2px;
	border-radius:5px;
}
.cookies a.btn-cookies:hover{
	border-color:#555;
	color:#555;
}
.cookies a.btn-cookies.highlight{
	border-color:#ae9467;
	background-color:#ae9467;
	color:#000;
}
.cookies a.btn-cookies.highlight:hover{
	color:#000;
	background-color:#ae9467;
	border-color:#ae9467;
}
@media(min-width:1200px){
	.cookies{
		padding:60px;
	}
}

/*

	MESSAGE

------------ */
.message-container{
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	background-color:rgba(0,0,0,0.3);
	backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    z-index:998;
}
.message{
	position:absolute;
	top:30px;
	left:15px;
	right:15px;
	background-color:#fff;
	color:#000;
	padding:30px;
	text-align:center;
	border-radius:15px;
	-webkit-box-shadow: 0px 4px 10px -6px rgba(37,55,134,0.7);
	-moz-box-shadow: 0px 4px 10px -6px rgba(37,55,134,0.7);
	box-shadow: 0px 4px 10px -6px rgba(37,55,134,0.7);
}
.message p{
	margin:0;
}
.message .btn-close-message{
	width:32px;
	height:32px;
	line-height:32px;
	color:#2f4738;
	background-color:#ae9467;
	border-radius:50%;
	text-align:center;
	position:absolute;
	top:-5px;
	right:-5px;
}
.message .btn-close-message:hover{
	transform: rotate(90deg);
  	-webkit-transform: rotate(90deg);
  	-moz-transform: rotate(90deg);
  	-ms-transform: rotate(90deg);
 	 -o-transform: rotate(90deg);
}
@media(min-width:768px){
	.message{
		left:50%;
		top:60px;
		width:500px;
		margin-left:-250px;
		right:auto;
		padding:60px;
	}
	.message .btn-close-message{
		width:40px;
		height:40px;
		line-height:40px;
		right:-10px;
		top:-10px;
	}
}

.btn-default{
	display:inline-block;
	background-color:#ae9467;
	color:#000;
	text-decoration:none;
	padding:20px 25px;
	text-transform: uppercase;
	letter-spacing: 1px;
	border-radius:5px;
}
.btn-default:hover{
	background-color:#c4a774;
	color:#000;
}
.btn-dark{
	background-color:#222a19;
	color:#fff;
}
.btn-dark:hover{
	background-color:#9bdc41;
	color:#000;
}
.btn-icon{
	display:inline-block;
	text-decoration:none;
	color:#000;
	font-size:1rem;
	display:inline-flex;
	align-items: center;
}
.btn-icon .icon{
	display: inline-block;
	border-radius:30px;
	width:50px;
	height:50px;
	background-color:#d4ed77;
	color:#2f4738;
	text-align:center;
	line-height:50px;
	flex-shrink: 0; /* prevent it from shrinking */
	display: flex;
	justify-content: center;
	align-items: center;
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.btn-icon .title{
	display:inline-block;
	line-height:1.3;
	padding:0 0 0 15px;
}
.btn-icon .title b{
	font-family: "Fraunces", serif;
	font-weight:bold;
	font-size:1.2rem;
}
.btn-icon:hover .icon{
	background-color:#2f4738;
	color:#fff;
}

/*

	PAGE HEADER

---------------- */
.page-header{
	height:300px;
	background-color:#0b1413;
	width:100%;
	position: relative;
}
.page-header::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background: rgb(0,0,0);
	background: -moz-linear-gradient(-180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(-180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
	background: linear-gradient(-180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
	height: 50%;
	z-index: 1;
}
.page-header a{
	color:#ae9467;
}
.page-header h2{
	color:#fff;
}
.page-header .details{
	position: absolute;
	bottom:60px;
	text-align:center;
	left:0;
	right:0;
}
.page-header .details .crumbs{
	color: #ae9467;;
	font-size:0.8rem;
	margin:0 0 0.5rem 0;
}
@media(min-width:1200px){
	.page-header{
		height:350px;
	}
}

/*

	PAGE

-------- */
.page{
	padding:3rem 1rem;
	min-height:200px;
	background-color:#fff;
}
.page .intro{
	margin:0 0 30px 0;
}
.page .intro a{
	color:#000;
}
@media(min-width:768px){
	.page{
		padding:4rem 2rem 6rem 2rem;
	}
}
@media(min-width:1200px){
}

/*

	HERO

-------- */
.hero{
	height:100vh;
	background-color:#fff;
	width:100%;
	position: relative;
}
.hero::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background: rgb(0,0,0);
	background: -moz-linear-gradient(-180deg, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(-180deg, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0) 100%);
	background: linear-gradient(-180deg, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0) 100%);
	height: 30%;
	z-index: 1;
}
.hero::after{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgb(0,0,0);
	background: -moz-linear-gradient(0, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(0, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
	background: linear-gradient(0, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
	height: 50%;
	z-index: 1;
}
.hero .details{
	position: absolute;
	z-index: 10;
	bottom:30px;
	padding:1rem;
	left:0;
	width:100%;
}
.hero .info{
	color:#fff;
	display:block;
	margin:0 0 15px 0;
}
.hero h1{
	color:#fff;
	font-family: "Cinzel", serif;
	font-size:2rem;
	line-height:1.1;
	text-transform: none;
}
h1{
	color:#000;
	font-family: "Cinzel", serif;
	font-size:1.5rem;
	line-height:1.1;
	font-weight:normal;
}
@media(min-width:768px){
	.hero h1{
		font-size:3rem;
	}
	h1{
		font-size:2rem;
	}
	.hero .details{
		bottom:90px;
	}
}
@media(min-width:992px){
	.hero .details{
		width:700px;
		left:50%;
		margin-left:-350px;
	}
	h1{
		font-size:2.5rem;
	}
}
@media(min-width:1200px){
	.hero .details{
		width:1000px;
		margin-left:-500px;
		bottom:120px;
	}
	.hero .info{
		font-size:1.2rem;
	}
}

h2{
	font-size:1.5rem;
	font-family: "Cinzel", serif;
	font-weight:normal;
	line-height:1.2;
	color:#222a19;
	text-transform: none;
}
h3{
	font-size:1.5rem;
	font-family: "Cinzel", serif;
	font-weight:normal;
	line-height:1.2;
	text-transform: none;
	color: #ae9467;
	margin-top:30px;
	font-weight:bold;
}
h4{
	font-size:1.4rem;
	font-family: "Cinzel", serif;
	font-weight:bold;
	line-height:1.2;
	margin:30px 0 10px 0;
}
@media(min-width:992px){
	h2{
		font-size:2.5rem;
	}
}

/*

	SECTION

----------- */
.section{
	background-color:#fff;
	min-height:200px;
	padding:3rem 1rem;
}
.section.grey{
	background-color:#fafcf8;
}
.section.dark{
	background-color:#222a19;
	color:#fff;
}
.section.dark h2{
	color:#fff;
}
p{
	font-size:1rem;
	color:#151515;
}
.welcome-pic{
	position:relative;
}
.welcome-pic i{
	color:rgba(255,255,255,0.5);
	font-size:4rem;
	position: relative;
	z-index: 1;
}
.welcome-pic span{
	position: absolute;
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	margin-left:-32px;
	margin-top:-32px;
}
.welcome-pic span::after{
	content:'';
	position:absolute;
	top:-5px;
	left:-5px;
	bottom:-5px;
	right:-5px;
	background-color:#ae9467;
	border-radius:50%;
	z-index: 0;
}
@media(min-width:992px){
	.section{
		padding:4rem 2rem;
	}
}
@media(min-width:1200px){
	.section{
		padding:8rem 2rem;
	}
	.section-container{
		position: relative;
	}
	.section.half .intro{
		padding-right:10rem;
	}
}

.main-pic{
	border-radius:5px;
}
.pics a{
	display:block;
	height:140px;
	border-radius:5px;
}
.pics img{
	border-radius:5px;
}
.pics a:hover{
	opacity: 0.8;;
}
@media(min-width:768px){
	.pics a{
		height:210px;
	}
}

/*

	HEADER MOBILE

----------------- */
.header-mobile{
	position: fixed;
	width:100%;
	background-color:transparent;
	padding:1rem;
	z-index: 99;
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	color:#000;
	-webkit-box-shadow: 0px 0px 30px -15px rgba(0, 0, 0, 0.25);
	-moz-box-shadow: 0px 0px 30px -15px rgba(0, 0, 0, 0.25);
	box-shadow: 0px 0px 30px -15px rgba(0, 0, 0, 0.25);
}
.header-mobile.fixed{
	background-color: rgba(0, 0, 0, 0.9);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}
.header-mobile .logo{
	font-family: "Cinzel", serif;
	font-weight:bold;
	color:#000;
	font-size:1.3rem;
	text-decoration:none;
}
.header-mobile .logo{
	display: flex;
}
.header-mobile .logo img{
	display:flexbox;
	vertical-align: middle;
	align-self: center;
	max-width:240px;
}
.header-mobile .logo span.name{
	display:flexbox;
	vertical-align: middle;
	align-self: center;
	padding:0 0 0 1rem;
	line-height:1.4;
}
.header-mobile .logo span.name b{
	font-weight:normal;
	display:block;
}
.header-mobile .logo span.name em{
	font-style: normal;
	font-size:0.6rem;
	display: block;
	padding:0 0 0 2px;
	font-weight:normal;
}
.btn-open-nav{
	color:#ae9467;
	display:block;
	font-size:2rem;
}
@media(min-width:768px){
	.header-mobile .logo{
		font-size:1.6rem;
	}
	.header-mobile .logo span.name em{
		font-size:0.8rem;
	}
}

/*

	FOOTER

----------- */
footer{
	background-color:#0b1413;
	padding:3rem 1rem;
	color:#ae9467;
}
footer p{
	color:#ae9467;
}
footer a{
	color:#ae9467;
}
footer h2{
	color:#ae9467;
}
footer .btn-icon .title{
	color:#ae9467;
}
@media(min-width:992px){
	footer{
		padding:4rem 2rem;
	}
}

.bottom-bar a{
	text-decoration: none;
}

/*

	NAV MOBILE

-------------- */
.nav-mobile {
	position: fixed;
	z-index: 100;
	background-color: #050505;
	top: 0;
	right: -100%;
	bottom: 0;
	width: 100%;
	padding: 3rem;
	overflow-y: scroll;
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	z-index: 100;
}

.nav-mobile.open {
	right: 0;
}

.btn-close-nav {
	position: absolute;
	top: 0;
	right: 0;
	padding: 1.5rem;
	color: #ae9467;
	font-size: 2rem;
	line-height: 1;
}

.nav-mobile .items{
	margin-top:60px;
}
.nav-mobile .items a.item {
	display: block;
	padding: 1.5rem 0;
	color: #ae9467;
	font-size: 1.2rem;
	line-height: 1.1;
	text-decoration: none;
	text-transform: uppercase;
	text-align:center;
	letter-spacing: 2px;
}

.nav-mobile .items a.item:hover {
	color: #000;
}

.nav-mobile .sub-items {
	display: none;
}

.nav-mobile .sub-items a.sub-item {
	display: block;
	padding: 0.5rem;
	color: #888;
	font-size: 1rem;
	line-height: 1.1;
	text-decoration: none;
}

.nav-mobile .btns {
	padding: 2rem 0;
}

.nav-mobile .socials {
	padding:0;
}
.nav-mobile .socials a {
	display: inline-block;
	font-size: 1.2rem;
	line-height: 42px;
	color: #000;
	text-decoration: none;
	background-color: #ae9467;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	margin: 0 0.2rem;
	text-align: center;
}

/*

	NAV DESKTOP

--------------- */
.nav-desktop {
	padding: 1rem;
	background-color: transparent;
	position: fixed;
	width:100%;
	color:#fff;
	z-index:20;
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.nav-desktop .logo{
	font-family: "Cinzel", serif;
	color:#000;
	font-size:2rem;
	text-decoration:none;
}
.nav-desktop .logo{
	display: flex;
}
.nav-desktop .logo img{
	display:flexbox;
	vertical-align: middle;
	align-self: center;
	max-width: 240px;
}
.nav-desktop .logo span.name{
	display:flexbox;
	vertical-align: middle;
	align-self: center;
	padding:0 0 0 1rem;
	line-height:1.4;
}
.nav-desktop .logo span.name b{
	font-weight:normal;
	display:block;
}
.nav-desktop .logo span.name em{
	font-style: normal;
	font-size:0.8rem;
	display: block;
	padding:0 0 0 2px;
}
.nav-desktop.fixed {
	background-color:rgba(0,0,0,0.9);
	backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
	-webkit-box-shadow: 0px 0px 30px -15px rgba(0, 0, 0, 0.25);
	-moz-box-shadow: 0px 0px 30px -15px rgba(0, 0, 0, 0.25);
	box-shadow: 0px 0px 30px -15px rgba(0, 0, 0, 0.25);
}

.nav-desktop .container-fluid {
	max-width: 1400px;
}

.nav-desktop .items {
	display: inline;
}

.nav-desktop .items a.item {
	display: inline-block;
	color: #ae9467;
	text-decoration: none;
	font-size: 1rem;
	line-height: 1;
	padding: 1rem;
	text-transform: uppercase;
	letter-spacing: 2px;
}

.nav-desktop .items a.item.current {
	font-weight: bold;
}

.nav-desktop .items a.item:hover {
	color: #fff;
}

.nav-desktop .items .item-container {
	position: relative;
	display: inline-block;
}

.nav-desktop .items .sub-items {
	position: absolute;
	background-color: #fff;
	top: 100%;
	left: -15px;
	z-index: 10;
	min-width: 250px;
	-webkit-box-shadow: 0px 8px 13px -9px rgba(0, 0, 0, 0.45);
	-moz-box-shadow: 0px 8px 13px -9px rgba(0, 0, 0, 0.45);
	box-shadow: 0px 8px 13px -9px rgba(0, 0, 0, 0.45);
	display: none;
	padding: 15px;
	border-radius: 10px;
}

.nav-desktop .items .sub-items a {
	display: block;
	text-decoration: none;
	font-size: 16px;
	line-height: 1;
	padding: 10px;
	color: #555;
	text-align: left;
}

.nav-desktop .items .sub-items a:hover {
	color: #151515;
}

.nav-desktop .btns {
	display: inline;
	margin: 0 0 0 1rem;
}

.nav-desktop .btns a {
	margin: 0 0.3rem;
}

.nav-desktop .socials a {
	display: inline-block;
	font-size: 1.2rem;
	line-height: 42px;
	color: #000;
	text-decoration: none;
	background-color: #ae9467;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	margin: 0.5rem 0 0.5rem 0.2rem;
	text-align: center;
}

.nav-desktop .socials a:hover {
	background-color: #000;
	color:#ae9467;
}

/*

	FORM

-------- */
label {
	color: #777;
}

.form-row {
	margin: 0 0 15px 0;
}

.form-group {
	margin: 0 0 1rem 0;
}

.form-control:focus,
.form-check-input:focus,
.form-select:focus {
	border-color: #ccc;
	box-shadow: 0 0 0 .25rem rgba(0, 0, 0, 0.25);
}

.form-check-input:checked {
	background-color: #d2b75f;
	border-color: #d2b75f;
}
.form-check-input:checked[type=checkbox] {
	background-color: #d2b75f;
	border-color: #d2b75f;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23000000' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3 6-6'/%3E%3C/svg%3E");
}

.form-floating>label {
	color: #555;
}

.form-label {
	margin-bottom: .2rem;
	font-weight: bold;
}

textarea::placeholder {
	color: #aaa !important;
	/* Change the placeholder color */
	opacity: 1;
	/* Ensures the placeholder is fully opaque */
	font-size: 1rem;
}

textarea:-ms-input-placeholder {
	/* Internet Explorer 10+ */
	color: #aaa !important;
}

textarea::-ms-input-placeholder {
	/* Microsoft Edge */
	color: #aaa !important;
}

input:focus-visible {
	outline-offset: 0px;
	outline-color: #9bdc41;
	/* Change this to your desired color */
	outline-width: 2px;
	/* Adjust the outline width if needed */
	outline-style: solid;
	/* Ensure the outline has a visible style */
}

.form-check-label a {
	color: #777;
	line-height: 1.2;
}

.form-floating>.form-control, .form-floating>.form-control-plaintext{
	border:solid 1px #ccc;
	border-radius:5px;
}

.gallery{
	margin-top:30px;
}
.gallery a{
	height:200px;
	display:block;
	border-radius: 20px;
}
.gallery a:hover{
	opacity: 0.7;
}
@media(min-width:992px){
	.gallery a{
		height:280px;
	}
}

.card-item .icon{
	color:#ae9467;
	font-size:3rem;
	line-height:1;
}
.card-item .title{
	font-size:1.8rem;
	font-weight:bold;
	font-family: "Cinzel", serif;
	color:#ae9467;
}
.card-item .info{
	font-size:1rem;
	font-style: italic;
	margin:5px 0 20px 0;
}
.card-item .item{
	margin:0 0 20px 0;
}
.card-item .subtitle{
	font-weight:bold;
	font-size:1.1rem;
	line-height:1;
	padding:0 0 5px 0;
	border-bottom:solid 1px #eee;
	margin:0 0 10px 0;
	color:#000;
}
.card-item .details a{
	color:#000;
}
@media(min-width:992px){
	.card-item{
		padding:0 45px;
	}
	.card-item .subtitle{
		margin-top:30px;
	}
}

.card-icon{
	text-align:center;
}
.card-icon .icon{
	font-size:2rem;
}
.card-icon .title{
	font-weight:bold;
}
.card-icon .info a{
	color:#000;
}

sup{
	color:red;
}

p a{
	color:#000;
}