/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/
.block-card-9 .grid-inner .btn-hover {
	opacity: 0;
	display: block;
	transition: opacity .3s ease, transform .3s .1s ease;
	margin-top: 15px;
	position: absolute;
	transform: translateY(0);
}
.block-card-9 .grid-inner:hover .btn-hover {
	opacity: 1;
	transform: translateY(-5px);
}

.block-card-9 .grid-inner .grid-image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center center;
}

.block-card-9 .grid-inner:hover .grid-image {
	-webkit-animation: kenburns 20s ease-out both;
	animation: kenburns 20s ease-out both;
}

.block-card-9 .grid-inner .grid-icon,
.block-card-9 .grid-inner .grid-content {
	transition: transform .3s ease;
}

.block-card-9 .grid-inner:hover .grid-content { transform: translateY(-45px); }
.block-card-9 .grid-inner:hover .grid-icon { transform: translateY(-5px); }

@-webkit-keyframes kenburns {
	0% {
	-webkit-transform: scale(1) translate(0, 0);
			transform: scale(1) translate(0, 0);
	-webkit-transform-origin: 84% 84%;
			transform-origin: 84% 84%;
	}
	100% {
	-webkit-transform: scale(1.25) translate(20px, 15px);
			transform: scale(1.25) translate(20px, 15px);
	-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
	}
}
@keyframes kenburns {
	0% {
	-webkit-transform: scale(1) translate(0, 0);
			transform: scale(1) translate(0, 0);
	-webkit-transform-origin: 84% 84%;
			transform-origin: 84% 84%;
	}
	100% {
	-webkit-transform: scale(1.25) translate(20px, 15px);
			transform: scale(1.25) translate(20px, 15px);
	-webkit-transform-origin: right bottom;
			transform-origin: right bottom;
	}
}

.text-justify {
	text-align: justify;
	hyphens: auto;
}

/* Social icons with svg */
.social-icon svg {
	transition: all 0.3s ease;
}
@media (prefers-reduced-motion: reduce) {
	.social-icon svg {
		transition: none;
	}
}
.social-icon:hover svg:first-child {
	margin-top: -62px;
}
.social-icon:hover svg:last-child {
	margin-top: -62px;
}
/* Social icons with svg */

.text-brand {
	color: var(--cnvs-themecolor);
}

.header-extras li {
	margin: 0 0 20px 0;
}
.header-extras li:last-child {
	margin: 0;
}

@media screen and (min-width: 768px) {
	.header-extras li {
		margin: 0 20px;
	}
}

/**/
.emphasis-title h1,
.emphasis-title .h1,
.emphasis-title h2,
.emphasis-title .h2
{
	--cnvs-emphasis-title-font-size: 42px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--cnvs-contrast-600);
    font-weight: 400;
    text-transform: none;
    font-size: var(--cnvs-emphasis-title-font-size);
    letter-spacing: 2px;
}

/* Header text */
.page-header-text {
	max-width: 380px;
}
.page-header-text p {
	margin-bottom: 10px;
}

.card-text p:last-child {
	margin-bottom: 0;
}

/**/
.fbox-icon svg {
    font-style: normal;
    font-size: var(--cnvs-featured-box-icon-size);
    line-height: var(--cnvs-featured-box-icon);
    text-align: center;
}
.fbox-icon svg {
    border-radius: 50%;
}
.fbox-icon.amenities svg {
    background-color: var(--cnvs-themecolor);
}
.fbox-icon.restrictions svg {
    background-color: var(--bs-red);
}

/**/
.p-margin-fix p:last-child {
	margin-bottom: 0;
}

/**/
.menu-item.active > .menu-link {
    color: var(--cnvs-primary-menu-hover-color);
}
.top-links-item.active {
    background-color: var(--cnvs-contrast-200);
}

/**/
.flip-card-front::after, .flip-card-back::after {
    opacity: 0.35;
}
.flip-card-inner p {
    color: rgba(255, 255, 255, 1);
}

/**/
.fbox-image {
    width: 100px;
    height: 100px;
    padding: 0 var(--cnvs-featured-box-padding-x);
}
/**/
.emphasis-title h1, .emphasis-title .h1, .emphasis-title h2, .emphasis-title .h2 {
    --cnvs-emphasis-title-font-size: 36px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--cnvs-contrast-900);
}

/**/
:root {
	--cnvs-themecolor: #117e68;
	--cnvs-themecolor-rgb: 17, 126, 104;
	--bs-success-rgb: var(--cnvs-themecolor-rgb);
	--bs-text-opacity: 1;
	--cnvs-secondary-font: "Papyrus", serif !important;
}

/**/
.emphasis-title h1, .emphasis-title .h1, .emphasis-title h2, .emphasis-title .h2 {
    text-transform: none;
}