body {
	font-weight: 700;
	font-family: 'PT Serif', serif;
}

/* Utility */
.ff-segoe {
	font-family: 'Segoe UI'
}

.fs-12 {
	font-size: 0.75rem;
}
.fs-14 {
	font-size: 0.875rem;
}
.fs-28 {
	font-size: 1.75rem;
}
.fs-50 {
	font-size: 3.125rem;
}

.fw-normal {
	font-weight: normal;
}

.nav-item:not(:first-child) {
	border-left: 1px solid;
	border-color: #a7a99a;
}

.max-width-700 {
	max-width: 700px;
}

.max-width-1000 {
	max-width: 1000px;
}

.text-story {
	color: #929292;
}

.bg-beige {
	background: #F3F1EC;
}

.z-10 {
	z-index: 10;
}

.pt-100 {
	padding-top: 100px;
}
.pt-150 {
	padding-top: 150px;
}
.pt-200 {
	padding-top: 200px;
}

.pb-100 {
	padding-bottom: 100px;
}
.pb-200{
	padding-bottom: 200px;
}

.py-100{
    padding: 100px 0;
}

.br-0{
	border-radius: 0;
}

.offset-top-100 {
	position: relative;
	top: 100px;
	margin-top: -100px;
}

.offset-bottom-100 {
	position: relative;
	top: -100px;
	margin-bottom: -100px;
}

.services-price-list tr {
	box-shadow: 0px 0.5px 0px 0px rgba(128, 131, 105, 1);
}

.border-bottom-dark {
	border-bottom: 1px solid rgba(0, 0, 0, 0.09);
}

@media (min-width: 576px) {
	.services-price-list td:first-child::before {
		content: '•';
		position: absolute;
		margin-left: -1rem;
	}
}


@media (min-width: 768px) {
	.text-md-left {
		text-align: left !important;
	}
}

.about-us-bg {
	background-image: url('../img/about-us-bg.webp');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	min-height: 360px;
}

.text-pie{
    color: #808369 !important;
    transition: 1s;
}
a.text-pie:hover{
    color: #434343 !important;
}

.text-pink{
    color: #FFB18B;
}

.logoHolder {
	width: 200px;
	height: 200px !important;
	display: flex;
	margin: auto;
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	padding: 10px;
	background: white;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	z-index: 20;
	bottom: -100px;
}
.img-fluid.logo.bg-white.rounded-circle {
	position: absolute;
	transform: translateY(50%) scale(1.4) !important;
	bottom: 50%;
	background: unset !important;
	/* transform: translateY(50%); */
}

.carousel {
	position: relative;
	top: 100px;
	margin-top: -50px;
}

.carousel__slide {
	width: auto;
}

.js-language-select a {
	transition: all 0.3s ease;
}

.js-language-select.collapsed a {
	background: #F2F2F2;
}

.js-language-select.collapsed a:hover {
	background: #E6E6E6;
}

@media (min-width: 992px) {
	.js-language-select.collapsed a {
		background: #E6E4DF;
	}
	
	.js-language-select.collapsed a:hover {
		background: #DAD8D3;
	}
}

.js-language-select a:not(:first-of-type) {
	opacity: 0;
	pointer-events: none;
	min-width: 52.53px;
}

.js-language-select.collapsed a:nth-of-type(2) {
	transform: translateY(28.8px);
	opacity: 1;
	pointer-events: all;
}

.js-language-select.collapsed a:nth-of-type(3) {
	transform: translateY(57px);
	opacity: 1;
	pointer-events: all;
}

/* banner */
.banner{
	background-image: linear-gradient(rgba(0,0,0,0.3),rgba(0,0,0,0.3)),url("../img/banner.webp");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.line {
	height: 2px;
	background: white;
	width: 100px;
	margin: auto;
}
h1{
    font-size: 42px;
}
.btn.btn-pink {
	margin-top: 100px;
	background: #FFB18B;
	color: white;
	padding: 15px 75px;
	border-radius: 0;
	font-size: 18px;
}
.tobest {
	background: white;
	display: block;
	width: 130px;
	height: 120px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: navajowhite;
	color: black;
	font-size: 20px;
	border-radius: 50%;
	position: absolute;
	left: 50%;
	bottom: -70px;
	transform: translate(-50%);
}
.tobest i {
	position: relative;
	top: -20px;
}
h2.text-dark.fw-bold {
	font-size: 35px !important;
	color: #434343 !important;
}
h2.text-white.fw-bold {
	font-size: 35px !important;
}
.img-fluid.downArrow {
	height: 20px;
	top: 10px;
	position: relative;
}
.bannerArrow{
	top: -20px !important;
}
.btn {
	overflow: hidden;
	position: relative;
}
.overlay {
	position: absolute;
	background: #EFA27D;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	transition: 0.3s;
	transform: translateX(-100%);
}
.btn:hover .overlay{
	transform: translateX(0);
}
#navMenu {
	background: #F3F1EC;
	z-index: 100;
	position: fixed;
	top: 0;
	left: 50%;
	width: 100%;
	transform: translateX(-50%);
	box-shadow: 0 3px 0px 0px rgba(0, 0, 0, 0.20);
}
body {
	padding-top: 50px;
}
.btn.btn-pink span {
	position: relative;
	z-index: 20;
}
.btn{
	border: unset !important;
}
/* best */
section {
    position: relative;
}
.img-fluid.titleBg {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.bg-pie{
    background-color: #808369 !important;
}
.yellow{
    font-family: 'Yellowtail', cursive;
}
.card.position-relative .card-body {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	background: rgba(0,0,0,0.5);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
h2.yellow{
    font-size: 45px;
}
.card{
    overflow: hidden;
}
.card-body{
    transition: 0.2s;
}
.card.card.position-relative:hover .card-body{
    transform: translateX(-100%);
}
.linkHolder.bg-white {
	position: absolute;
	display: inline-block;
	width: 100px;
	height: 100px;
	bottom: -60px;
	border-radius: 50%;
	transform: translateX(-50%);
	color: black;
	text-decoration: none;
}
.card-footer.bg-transparent {
	padding: 0;
}

/* about */
span.fs-28 {
	vertical-align: bottom;
}
.cards {
	background-color: #F3F1EC;
}

/* menu */
.menu .card:hover .card-body {
	transform: unset !important;
}
.menu .card.card.position-relative .card-body{
	transition: 0.2s;
	opacity: 0;
}
.menu .card.card.position-relative .card-body:hover{
	transition: 0.2s;
	opacity: 1;
}
.card-footer.bg-white.border-0 {
	background: #FDFDFD !important;
}
.menu .linkHolder {
	background: #F5F2ED;
	width: 50px;
	height: 45px;
	display: block;
	border-radius: 50%;
	position: absolute;
	bottom: -25px;
	left: 50%;
	transform: translateX(-50%);
	color: black;
}
.menu .linkHolder:hover {
	background: #FFB18B;
	color: white;
}
.card-footer.bg-white.border-0 p {
	margin-bottom: 30px !important;
}
.line.bg-pie.ml-auto {
	margin-left: auto !important;
	display: inline-block;
	position: relative;
	top: -10px;
}
td h3 {
	color: #F5F2ED;
	font-weight: bold;
	font-size: 45px;
	line-height: 1;
}
.table:hover h3 {
	color: #FFB18B;
}

/* blog */
.text-dark.hovPink.fw-bold:hover {
	color: #F3AB7D !important;
}
.linkhoverHolder {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	background: rgba(0,0,0,0.5);
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: white;
	transition: 0.5s;
	opacity: 0;
}
.linkhoverHolder:hover{
	opacity: 1;
}
.linkBtn {
	background: white;
	width: 65px;
	height: 65px;
	color: #81846A !important;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	transition: 0.8s;
	opacity: 0;
}
.linkhoverHolder:hover .linkBtn{
	opacity: 1;
}



/* team */
.team{
	background-color: #F3F1EC;
}
.card.rounded-circle.overflow-hidden .card-body {
	position: absolute;
	left: 0;
	top: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	background: rgba(0,0,0,0.5);
	height: 100%;
	width: 100%;
	opacity: 0;
}
.bg-pink {
	background: #EFA27D;
	margin: 2px;
	display: inline-flex;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	justify-content: center;
	align-items: center;
	transform: translateY(500%);
	transition: 0.1s;
}
.card.rounded-circle.overflow-hidden .card-body:hover{
	opacity: 1;
}
.card.rounded-circle.overflow-hidden .card-body:hover .bg-pink{
	transform: translateY(0);
}


/* gallery */
.gallery .card.position-relative .card-body {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	background: rgba(0,0,0,0.5);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	transform: translateY(-100%);
}
.gallery .card:hover .card-body{
	transform: translate(0) !important;
}
.searchBtn {
	font-size: 24px;
	color: grey;
	text-decoration: none;
	display: inline-flex;
	width: 65px;
	height: 65px;
	background: white;
	border-radius: 50%;
	justify-content: center;
	align-items: center;
}
.searchBtn:hover {
	color: white;
	background: #FFB18B;
}


/* contact */
.form-control {
	border-radius: 0;
	min-height: 60px;
}
textarea{
	resize: unset;
}

/* back top */
a.top {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 90px;
	background: white;
	text-decoration: none;
	color: black;
	left: 50%;
	top: -51px;
	border-radius: 50%;
	transform: translateX(-50%);
}

a.social {
	background: grey;
	display: inline-flex;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	justify-content: center;
	align-items: center;
	color: white;
	text-decoration: none;
}
a.social:hover {
	background: #EFA27D;
}

/* resets */
.btn:focus{
	outline: unset !important;
	box-shadow: unset !important;
}
.form-control:focus{
	outline: unset !important;
	box-shadow: unset !important;
}

/* hide n show */
.mobileMenu{
	display: none;
	z-index: 1;
}

@media screen and (max-width: 991.98px){
	.desktopMenu{
		display: none;
	}
	.mobileMenu{
		display: block;
	}
	.menuItems a {
		text-decoration: none;
		color: white;
		transition: all 0.15s ease;
	}

	.menuItems a:hover {
		background: rgba(0, 0, 0, 0.2);
	}

	.mobileMenu.py-4 .container {
		padding: 0;
	}
	
	.menuItems {
		background: #FFB18B;
		height: calc(100vh - 90px);
		overflow: scroll;
		line-height: 3;
		position: fixed;
		width: 100%;
		top: 90px;
		left: 0;
		z-index: 900;
		transition: 0.5s;
		transform: translateX(-100%);
	}
	.card.shadow.br-0.border-0 .container {
		padding: 20px;
	}
	body {
		padding-top: 0;
	}
	.mobileMenu a {
		display: block;
	}
}

.services-card {
	font-family: 'GlacialIndifference';
	background-color: #2b2b2b;
	max-width: 1000px;
}

.services-bg-1,
.services-bg-2 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right center;
	min-height: 250px;
	height: 100%;
}

.services-bg-1 {
	background-image: url('../img/services-bg-1.webp');
}

.services-bg-2 {
	background-image: url('../img/services-bg-2.webp');
}

.services-btn {
	appearance: none;
	-webkit-appearance: none;
	position: relative;
	background-color: #fff;
	border-radius: 20px;
	color: black;
	font-weight: 400;
	padding: .5rem 2.5rem;
	text-transform: uppercase;
	text-decoration: none;
	transition: all .3s ease;
}

.services-btn:hover {
	background-color: #E6E6E6;
	color: #000;
}

.why-us {
	/*
	position: relative;
	top: 4rem;
	background-color: #24232B;
	*/
	max-width: 850px;
}

.why-us .icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	height: 64px;
	width: 64px;
}

.why-us .icon img {
	filter: invert(58%) sepia(2%) saturate(3132%) hue-rotate(27deg) brightness(86%) contrast(109%);
	object-fit: contain;
	max-width: 100%;
	max-height: 100%;
}

.why-us-bg {
	background-image: url('../img/why-us-bg.webp');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	min-height: 360px;
}

.quote {
	max-width: 800px;
}

.benefits {
	display: grid;
	grid-template-columns: 1fr;
	padding: 0 1rem;
	margin: 0 auto 4rem;
	max-width: 400px;
}

.benefits .benefit {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	background-color: #24232B;
	padding: 2rem;
}

.benefits .benefit:nth-of-type(2n) {
	background-color: #919191;
}

.benefits .benefit__img {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	height: 64px;
	width: 64px;
}

.benefits .benefit__img img {
	object-fit: contain;
	max-height: 100%;
	max-width: 100%;
}

.benefits .benefit__text {
	font-family: 'Segoe UI';
	font-size: 1.125rem;
	color: #fff;
	letter-spacing: .03em;
	margin-bottom: 0;
	text-transform: uppercase;
}

@media (min-width: 576px) {
	.benefits {
		grid-template-columns: repeat(2, 1fr);
		max-width: 540px;
	}

	.benefits .benefit {
		aspect-ratio: 1;
		flex-direction: column;
		justify-content: center;
	}

	.benefits .benefit__text {
		text-align: center;
		height: 45px;
	}
}

@media (min-width: 576px) and (max-width: 991.98px) {
	.benefits .benefit:nth-of-type(4) {
		background-color: #24232B;
	}

	.benefits .benefit:nth-of-type(2),
	.benefits .benefit:nth-of-type(3),
	.benefits .benefit:nth-of-type(6) {
		background-color: #919191;
	}
}

@media (min-width: 992px) {
	.benefits {
		grid-template-columns: repeat(3, 1fr);
		max-width: 800px;
	}
}

.footer-col {
	max-width: 220px;
	margin-inline: auto;
}

.cookie-popup {
	position: fixed;
	left: 1rem;
	right: 1rem;
	bottom: 1rem;
	background-color: #fff;
	max-width: 460px;
	padding: 1rem;
	z-index: 10000;
}

.cookie-popup .btn-close {
	appearance: none;
	-webkit-appearance: none;
	border: none;
	position: absolute;
	top: 1rem;
	right: 1rem;
}

@media (min-width: 576px) {
	.cookie-popup {
		left: auto;
		padding: 1.5rem;
	}
}