/******************************************************************
  Template Name: Sona
  Description: Sona Hotel Html Template
  Author: Colorlib
  Author URI: https://colorlib.com
  Version: 1.0
  Created: Colorlib
******************************************************************/

/*------------------------------------------------------------------
[Table of contents]

1.  Template default CSS
	1.1	Variables
	1.2	Mixins
	1.3	Flexbox
	1.4	Reset
2.  Helper Css
3.  Header Section
4.  Hero Section
5.  About Section
6.  Services Section
7.  Testimonial Section
8.  Blog Section
9.  Contact
10.  Footer Style

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

/*----------------------------------------*/
/* Hale Manna Brand Colors - Based on Logo
/*----------------------------------------*/
:root {
  /* Primary brand colors from logo */
  --tropical-green: #2E8B57;    /* Main accent color - palm fronds */
  --ocean-blue: #4682B4;        /* Header/hero backgrounds */
  --sunset-yellow: #FFD700;     /* Call-to-action buttons and highlights */
  --coral-orange: #FF7F50;      /* Secondary accents */
  --light-ocean: #87CEEB;       /* Light backgrounds and hover states */
  
  /* Supporting colors */
  --white: #ffffff;
  --dark-text: #19191a;
  --gray-text: #6b6b6b;
  --light-gray: #e5e5e5;
}

/*----------------------------------------*/
/* Logo Styling
/*----------------------------------------*/
/* Header/Navigation Logo */
.menu-item .logo {
  position: relative;
  z-index: 10;
  /* Fixed height to maintain consistent container size */
  padding: 15px 0;
  height: 60px; /* Fixed height so logo doesn't affect it */
  overflow: visible;
  /* Allow logo to extend beyond boundaries */
}

.menu-item .logo a {
  display: block;
  position: relative;
  height: 100%; /* Take full height of container */
  /* Remove content so logo can float independently */
}

/* Desktop Logo Positioning */
@media (min-width: 992px) {
  .menu-item .logo img.main-logo {
    /* Temporary: back to relative to see if logo appears */
    position: relative !important;
    display: block !important;
    max-height: 140px !important;
    width: auto !important;
    margin: -20px auto !important;
    z-index: 999 !important;
  }

  .menu-item .logo img.logo-text {
    /* Position logo text to the right of main logo */
    position: relative;
    max-height: 28px !important; /* Force override with !important */
    min-height: 28px !important; /* Set minimum height to ensure it displays at full size */
    width: auto !important;
    max-width: none !important; /* Override the global max-width: 100% rule */
    object-fit: contain;
    margin-left: 160px; /* Space for the main logo */
    z-index: 14;
  }
}

/* Footer Logo */
.footer-section .footer-text .ft-about .logo img {
  max-height: 80px;
  width: auto;
  object-fit: contain;
}

/* Tablet Logo Adjustments (between mobile and desktop) */
@media (min-width: 769px) and (max-width: 1024px) {
  .menu-item .logo img.logo-text {
    max-height: 160px !important; /* Increased with !important to override other rules */
    min-height: 160px !important; /* Set minimum height */
    max-width: none !important; /* Override global max-width constraint */
    margin-left: 140px; /* Adjust spacing for tablet */
  }
  
  .menu-item .logo img.main-logo {
    max-height: 120px; /* Restore larger size for tablet floating effect */
  }
}

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

/* Template default CSS
/*----------------------------------------*/

html, body {
	height: 100%;
	font-family: "Cabin", sans-serif;
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	color: #2E8B57 !important;
	font-weight: 600;
	font-family: "Cabin", sans-serif;
}
h1 {
	font-size: clamp(2.5rem, 8vw, 3rem);
}

/* Hero Slider H1 - White text override */
h1.hero-title, .hero-slider h1, .hero-content h1 {
	color: #ffffff !important;
	font-size: clamp(3rem, 10vw, 4.5rem);
	font-weight: 700;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
	line-height: 1.2;
	margin-bottom: 1rem;
}

h2 {
	font-size: clamp(1.5rem, 5vw, 1.875rem);
}
h3 {
	font-size: clamp(1.25rem, 4vw, 1.5rem);
}
h4 {
	font-size: clamp(1rem, 3vw, 1.125rem);
}
h5 {
	font-size: clamp(0.875rem, 2.5vw, 1rem);
}
h6 {
	font-size: clamp(0.75rem, 2vw, 0.875rem);
}
p {
	font-size: clamp(0.875rem, 2.5vw, 1rem);
	font-family: "Cabin", sans-serif;
	color: #555;
	font-weight: 500;
	line-height: clamp(1.375rem, 3vw, 1.625rem);
	margin: 0 0 15px 0;
}
img {
	max-width: 100%;
}
input:focus, select:focus, button:focus, textarea:focus {
	outline: none;
}
a:hover, a:focus {
	text-decoration: none;
	outline: none;
	color: #2E8B57;
}
ul, ol {
	padding: 0;
	margin: 0;
}

ul ul li:before {
	color: #2E8B57;
}
/*---------------------
  Helper CSS
-----------------------*/

.section-title {
	text-align: center;
	margin-bottom: 22px;
}
.section-title span {
	font-size: 14px;
	color: #2E8B57;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
}
.section-title h2 {
	font-size: 44px;
	color: #19191a;
	line-height: 58px;
	margin-top: 10px;
}
.set-bg {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
}
.spad {
	padding-top: 100px;
	padding-bottom: 100px;
}
.spad-2 {
	padding-top: 50px;
	padding-bottom: 70px;
}
.text-white h1, .text-white h2, .text-white h3, .text-white h4, .text-white h5, .text-white h6, .text-white p, .text-white span, .text-white li, .text-white a {
	color: #fff;
}
/* buttons */

/* Button pulse animation */
@keyframes pulse {
	0% {
		box-shadow: 0 5px 15px rgba(46, 139, 87, 0.4), 0 0 0 0 rgba(46, 139, 87, 0.7);
	}
	70% {
		box-shadow: 0 5px 15px rgba(46, 139, 87, 0.4), 0 0 0 10px rgba(46, 139, 87, 0);
	}
	100% {
		box-shadow: 0 5px 15px rgba(46, 139, 87, 0.4), 0 0 0 0 rgba(46, 139, 87, 0);
	}
}

.primary-btn {
	display: inline-block;
	font-size: 13px;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-weight: 700;
	position: relative;
	background: linear-gradient(135deg, var(--tropical-green), #20704a);
	padding: 12px 25px;
	border-radius: 25px;
	transition: all 0.3s ease;
	border: none;
	text-decoration: none;
	animation: pulse 2s infinite;
}
.primary-btn:hover {
	background: linear-gradient(135deg, #20704a, var(--tropical-green));
	transform: translateY(-2px);
	box-shadow: 0 5px 15px rgba(46, 139, 87, 0.3);
	color: #ffffff;
	animation: none; /* Stop pulsing on hover */
}
.primary-btn:after {
	display: none; /* Remove the bottom border line for the new button design */
}
/* Preloder */

#preloder {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 999999;
	background: #ffffff;
}
.loader {
	width: 40px;
	height: 40px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -13px;
	margin-left: -13px;
	border-radius: 60px;
	animation: loader 0.8s linear infinite;
	-webkit-animation: loader 0.8s linear infinite;
}

/* New Logo Loader with Radiating Energy Animation */
.logo-loader {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	width: 200px;
	height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.logo-image {
	width: 80px;
	height: 80px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
	border-radius: 50%;
	animation: logoGlow 2s ease-in-out infinite alternate;
	-webkit-animation: logoGlow 2s ease-in-out infinite alternate;
	filter: drop-shadow(0 0 10px rgba(46, 139, 87, 0.3));
	-webkit-filter: drop-shadow(0 0 10px rgba(46, 139, 87, 0.3));
}

.energy-ring {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	border: 2px solid rgba(46, 139, 87, 0.3);
	border-radius: 50%;
	animation: energyRadiate 2s ease-out infinite;
	-webkit-animation: energyRadiate 2s ease-out infinite;
}

.ring-1 {
	width: 100px;
	height: 100px;
	animation-delay: 0s;
}

.ring-2 {
	width: 130px;
	height: 130px;
	animation-delay: 0.6s;
}

.ring-3 {
	width: 160px;
	height: 160px;
	animation-delay: 1.2s;
}

.loading-text {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	margin-top: 20px;
	color: #2E8B57;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	white-space: nowrap;
	animation: textPulse 1.5s ease-in-out infinite;
	-webkit-animation: textPulse 1.5s ease-in-out infinite;
}

@keyframes logoGlow {
	0% {
		filter: drop-shadow(0 0 10px rgba(46, 139, 87, 0.3));
	}
	100% {
		filter: drop-shadow(0 0 20px rgba(46, 139, 87, 0.6));
	}
}

@keyframes energyRadiate {
	0% {
		transform: translate(-50%, -50%) scale(0.8);
		opacity: 1;
		border-color: rgba(46, 139, 87, 0.8);
	}
	100% {
		transform: translate(-50%, -50%) scale(1.5);
		opacity: 0;
		border-color: rgba(46, 139, 87, 0);
	}
}

@keyframes textPulse {
	0%, 100% {
		opacity: 0.6;
	}
	50% {
		opacity: 1;
	}
}
@keyframes loader {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
	50% {
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
		border: 4px solid #673ab7;
		border-left-color: transparent;
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
}

/* Webkit Animation Support */
@-webkit-keyframes logoGlow {
	0% {
		filter: drop-shadow(0 0 10px rgba(46, 139, 87, 0.3));
	}
	100% {
		filter: drop-shadow(0 0 20px rgba(46, 139, 87, 0.6));
	}
}

@-webkit-keyframes energyRadiate {
	0% {
		transform: translate(-50%, -50%) scale(0.8);
		opacity: 1;
		border-color: rgba(46, 139, 87, 0.8);
	}
	100% {
		transform: translate(-50%, -50%) scale(1.5);
		opacity: 0;
		border-color: rgba(46, 139, 87, 0);
	}
}

@-webkit-keyframes textPulse {
	0%, 100% {
		opacity: 0.6;
	}
	50% {
		opacity: 1;
	}
}
@-webkit-keyframes loader {
	0% {
		-webkit-transform: rotate(0deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
	50% {
		-webkit-transform: rotate(180deg);
		border: 4px solid #673ab7;
		border-left-color: transparent;
	}
	100% {
		-webkit-transform: rotate(360deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
}
.spacial-controls {
	position: fixed;
	width: 111px;
	height: 91px;
	top: 0;
	right: 0;
	z-index: 999;
}
.spacial-controls .search-switch {
	display: block;
	height: 100%;
	padding-top: 30px;
	background: #323232;
	text-align: center;
	cursor: pointer;
}
.search-model {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #000;
	z-index: 99999;
}
.search-model-form {
	padding: 0 15px;
}
.search-model-form input {
	width: 500px;
	max-width: calc(100vw - 60px);
	font-size: 40px;
	border: none;
	border-bottom: 2px solid #333;
	background: none;
	color: #999;
	outline: none;
}
.search-model-form input:focus {
	border-bottom-color: #2E8B57;
	color: #fff;
}
.search-close-switch {
	position: absolute;
	width: 50px;
	height: 50px;
	background: #333;
	color: #fff;
	text-align: center;
	border-radius: 50%;
	font-size: 28px;
	line-height: 28px;
	top: 30px;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
/*---------------------
  Header
-----------------------*/

.header-section {
	position: relative;
	background: #ffffff url('../img/header-bg.png') no-repeat left center;
	background-size: cover;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.header-section.header-normal .menu-item {
	-webkit-box-shadow: 0px 12px 15px rgba(36, 11, 12, 0.05);
	box-shadow: 0px 12px 15px rgba(36, 11, 12, 0.05);
}
.top-nav {
	border-bottom: 1px solid rgba(229, 229, 229, 0.3);
	min-height: 50px;
	display: flex;
	align-items: center;
}
.top-nav .tn-left li {
	list-style: none;
	display: inline-block;
	font-size: 16px;
	color: #19191a;
	font-weight: 500;
	padding: 14px 0 12px;
	margin-right: 64px;
	position: relative;
}
.top-nav .tn-left li:after {
	display: none;
}
.top-nav .tn-left li:last-child {
	margin-right: 0;
}
.top-nav .tn-left li i {
	color: #2E8B57;
	margin-right: 4px;
}
.top-nav .tn-right {
	text-align: right;
}
.top-nav .tn-right .top-social {
	display: inline-block;
	margin-right: 35px;
	padding: 13px 0;
}
.top-nav .tn-right .top-social a {
	display: inline-block;
	font-size: 16px;
	color: #19191a;
	margin-left: 15px;
}
.top-nav .tn-right .bk-btn {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	padding: 16px 28px 15px;
	background: #2E8B57;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: 2px;
}
.top-nav .tn-right .language-option {
	display: inline-block;
	margin-left: 30px;
	cursor: pointer;
	padding: 13px 0px 11px;
	position: relative;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
}
.top-nav .tn-right .language-option:hover .flag-dropdown,
.top-nav .tn-right .language-option.active .flag-dropdown {
	top: 36px; /* Reduced gap - positioned closer to the language option */
	opacity: 1;
	visibility: visible;
}
/* Keep language dropdown visible when hovering over the dropdown itself */
.top-nav .tn-right .language-option .flag-dropdown:hover {
	opacity: 1;
	visibility: visible;
}
/* Add invisible bridge to prevent hover interruption for language dropdown */
.top-nav .tn-right .language-option:hover::after {
	content: "";
	position: absolute;
	top: 36px;
	left: 0;
	width: 140px;
	height: 5px;
	background: transparent;
	z-index: 998;
}
.top-nav .tn-right .language-option.active span {
	color: #2E8B57;
}
.top-nav .tn-right .language-option .flag-emoji {
	font-size: 20px;
	margin-right: 8px;
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
}

.top-nav .tn-right .language-option .flag-dropdown ul li a .flag-emoji {
	font-size: 16px;
	margin-right: 8px;
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
}

.top-nav .tn-right .language-option img {
	height: 26px;
	width: 26px;
	border-radius: 50%;
	margin-right: 10px;
}
.top-nav .tn-right .language-option .language-display {
	font-size: 16px;
	color: #19191a;
	text-transform: uppercase;
	font-weight: 500;
	display: inline-block;
	white-space: nowrap;
	vertical-align: middle;
}
.top-nav .tn-right .language-option span {
	font-size: 16px;
	color: #19191a;
	text-transform: uppercase;
	font-weight: 500;
	display: inline-block;
	white-space: nowrap;
	vertical-align: middle;
}
.top-nav .tn-right .language-option .flag-dropdown {
	position: absolute;
	left: 0;
	top: 38px; /* Adjusted to reduce the gap between language option and dropdown */
	width: 140px;
	min-width: 140px;
	background: #ffffff;
	display: block;
	padding: 10px 15px;
	-webkit-box-shadow: 0px 9px 10px rgba(25, 25, 26, 0.2);
	box-shadow: 0px 9px 10px rgba(25, 25, 26, 0.2);
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	z-index: 100 !important; /* Reduced from 999 to ensure language dropdown can override */
	border-radius: 4px;
}
.top-nav .tn-right .language-option .flag-dropdown ul li {
	list-style: none;
	text-align: left;
}
.top-nav .tn-right .language-option .flag-dropdown ul li a {
	font-size: 14px;
	text-transform: uppercase;
	font-weight: 500;
	color: #19191a;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	display: flex;
	align-items: center;
	padding: 8px 0;
	white-space: nowrap;
}
.top-nav .tn-right .language-option .flag-dropdown ul li a:hover {
	color: #2E8B57;
}
.menu-item {
	position: relative;
	z-index: 9;
	min-height: 60px; /* Reduced from 70px to make header less tall on desktop */
	display: flex;
	align-items: center;
}
.menu-item .container {
	position: relative;
}
.menu-item .logo {
	/* Fixed height approach to prevent logo from affecting container */
	padding: 15px 0;
	height: 60px;
	position: relative;
	z-index: 10;
	overflow: visible;
}
.menu-item .logo a {
	display: inline-block;
}
.menu-item .nav-menu {
	text-align: right;
}
.menu-item .nav-menu .mainmenu {
	display: inline-block;
}
.menu-item .nav-menu .mainmenu li {
	list-style: none;
	display: inline-block;
	position: relative;
	z-index: 1;
}
.menu-item .nav-menu .mainmenu li.active a:after {
	opacity: 1;
}
.menu-item .nav-menu .mainmenu li:hover>a:after {
	opacity: 1;
}
.menu-item .nav-menu .mainmenu li:hover .dropdown {
	top: 49px; /* Reduced gap - positioned right at the bottom of the nav link */
	opacity: 1;
	visibility: visible;
}
/* Keep dropdown visible when hovering over the dropdown itself */
.menu-item .nav-menu .mainmenu li .dropdown:hover {
	opacity: 1;
	visibility: visible;
}
/* Add invisible bridge to prevent hover interruption */
.menu-item .nav-menu .mainmenu li:hover::after {
	content: "";
	position: absolute;
	top: 49px;
	left: 0;
	width: 180px;
	height: 10px;
	background: transparent;
	z-index: 998;
}
.menu-item .nav-menu .mainmenu li a {
	font-size: 16px;
	color: #19191a;
	margin-right: 42px;
	font-weight: 500;
	display: inline-block;
	padding: 22px 0; /* Reduced from 27px to make header less tall */
	position: relative;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.menu-item .nav-menu .mainmenu li a:after {
	position: absolute;
	left: 0;
	top: 47px; /* Adjusted from 52px to match reduced menu padding */
	width: 100%;
	height: 2px;
	background: #2E8B57;
	content: "";
	opacity: 0;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.menu-item .nav-menu .mainmenu li .dropdown {
	position: absolute;
	left: 0;
	top: 69px; /* Adjusted to position right at the bottom of the nav link */
	width: 180px;
	background: #ffffff;
	z-index: 50 !important; /* Reduced from 999 to ensure language dropdown can override */
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-box-shadow: 0px 9px 15px rgba(25, 25, 26, 0.05);
	box-shadow: 0px 9px 15px rgba(25, 25, 26, 0.05);
}
.menu-item .nav-menu .mainmenu li .dropdown li {
	list-style: none;
	display: block;
}
.menu-item .nav-menu .mainmenu li .dropdown li a {
	font-size: 16px;
	color: #19191a;
	display: block;
	text-align: left;
	padding: 8px 15px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.menu-item .nav-menu .mainmenu li .dropdown li a:hover {
	color: #2E8B57;
}
.menu-item .nav-menu .mainmenu li .dropdown li a:after {
	display: none;
}
.menu-item .nav-menu .nav-right {
	display: inline-block;
	margin-left: 43px;
	padding: 22px 0px; /* Reduced from 27px to match menu item padding */
}
.menu-item .nav-menu .nav-right i {
	font-size: 16px;
	color: #19191a;
	cursor: pointer;
}
.canvas-open {
	display: none;
	position: relative;
}
/* Custom hamburger menu - optimized for mobile touch */
.hamburger-menu {
	display: inline-block;
	position: relative;
	width: 20px; /* Increased for better visibility and usability */
	height: 14px; /* Increased for better visibility and usability */
}
.hamburger-menu span {
	display: block;
	position: absolute;
	height: 2px;
	width: 100%;
	background: #19191a;
	border-radius: 1px;
	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;
}
.hamburger-menu span:nth-child(1) {
	top: 0px;
}
.hamburger-menu span:nth-child(2) {
	top: 6px; /* Increased spacing for better visibility */
}
.hamburger-menu span:nth-child(3) {
	top: 12px; /* Increased spacing for better visibility */
}
/* Hover effect for hamburger menu */
.canvas-open:hover {
	background-color: #f8f8f8;
	border-color: #2E8B57;
}
.canvas-open:hover .hamburger-menu span {
	background-color: #2E8B57;
}
.offcanvas-menu-wrapper {
	display: none;
}
/*---------------------
  Hero
-----------------------*/

.hero-section {
	position: relative;
	padding-top: 80px; /* Increased from 60px to accommodate floating logo */
	padding-bottom: 100px;
}
.hero-section .container {
	position: relative;
	z-index: 5;
}
.hero-text {
	padding-top: 145px;
}
.hero-text h1 {
	font-size: 80px;
	line-height: 90px;
	color: #ffffff;
	margin-bottom: 16px;
}
.hero-text p {
	font-size: 18px;
	color: #ffffff;
	line-height: 28px;
	margin-bottom: 35px;
}
.booking-form {
	background: #ffffff;
	padding: 44px 40px 50px 40px;
	border-radius: 4px;
}
.booking-form h3 {
	color: #19191a;
	margin-bottom: 36px;
	font-size: 30px; /* Override Bootstrap default */
	font-weight: 400; /* Override Bootstrap font-weight: 500 */
	font-family: "Lora", serif; /* Ensure proper font family */
}
.booking-form form .check-date {
	position: relative;
	margin-bottom: 15px;
}
.booking-form form .check-date label {
	font-size: 14px;
	color: #707079;
	display: block;
	margin-bottom: 10px;
}
.booking-form form .check-date input {
	width: 100%;
	height: 50px;
	border: 1px solid #ebebeb;
	border-radius: 2px;
	font-size: 16px;
	color: #19191a;
	text-transform: uppercase;
	font-weight: 500;
	padding-left: 20px;
}
.booking-form form .check-date i {
	color: #2E8B57;
	position: absolute;
	right: 18px;
	bottom: 17px;
}
.booking-form form .select-option {
	margin-bottom: 15px;
}
.booking-form form .select-option label {
	font-size: 14px;
	color: #707079;
	display: block;
	margin-bottom: 10px;
}
.booking-form form .select-option .nice-select {
	border-radius: 2px;
	border: 1px solid #ebebeb;
	height: 50px;
	line-height: 50px;
	outline: none;
	padding-left: 20px;
	width: 100%;
	float: none;
}
.booking-form form .select-option .nice-select:after {
	border-bottom: 2px solid #2E8B57;
	border-right: 2px solid #2E8B57;
	height: 10px;
	margin-top: 0;
	right: 20px;
	width: 10px;
	top: 36%;
}
.booking-form form .select-option .nice-select span {
	font-size: 16px;
	color: #19191a;
	text-transform: uppercase;
	font-weight: 500;
}
.booking-form form .select-option .nice-select .list {
	margin-top: 0;
	width: 100%;
}
.booking-form form button {
	display: block;
	font-size: 14px;
	text-transform: uppercase;
	border: 1px solid #2E8B57;
	border-radius: 2px;
	color: #2E8B57;
	font-weight: 500;
	background: transparent;
	width: 100%;
	height: 46px;
	margin-top: 30px;
}
.hero-slider {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}
.hero-slider.owl-carousel .owl-dots {
	position: absolute;
	left: 0;
	bottom: 23px;
	width: 100%;
	text-align: center;
}
.hero-slider.owl-carousel .owl-dots button {
	height: 6px;
	width: 6px;
	background: #ffffff;
	opacity: 0.5;
	border-radius: 50%;
	margin-right: 10px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.hero-slider.owl-carousel .owl-dots button.active {
	width: 30px;
	border-radius: 50px;
	opacity: 1;
}
.hero-slider.owl-carousel .owl-dots button:last-child {
	margin-right: 0;
}
.hero-slider .owl-stage-outer, .hero-slider .owl-stage, .hero-slider .owl-item, .hero-slider .hs-item {
	height: 100%;
}
/*---------------------
  About US
-----------------------*/

.about-text {
	text-align: center;
	padding: 0 35px;
}
.about-text p {
	color: #595960;
	font-weight: 500;
}
.about-text p.f-para {
	margin-bottom: 10px;
}
.about-text p.s-para {
	margin-bottom: 35px;
}
.about-text .about-btn {
	color: #19191a;
}
.about-pic img {
	min-width: 100%;
}
/*---------------------
  Service Section
-----------------------*/

.services-section {
	padding-bottom: 60px;
	border-top: 1px solid #e5e5e5;
}
.services-section .section-title {
	margin-bottom: 36px;
}
.service-item {
	text-align: center;
	padding: 30px 35px 18px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.service-item:hover {
	background: #2E8B57;
}
.service-item:hover i {
	color: #ffffff;
}
.service-item:hover h4 {
	color: #ffffff;
}
.service-item:hover p {
	color: #ffffff;
}
.service-item i {
	display: inline-block;
	color: #2E8B57;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.service-item h4 {
	color: #19191a;
	font-size: 22px;
	margin-bottom: 15px;
	margin-top: 10px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.service-item p {
	color: #707079;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
/*------------------------
  Home Page Room Section 
-------------------------*/

.hp-room-items {
	margin-left: -15px;
	margin-right: -15px;
	overflow: hidden;
}
.hp-room-items .hp-room-item {
	height: 600px;
	margin-right: -15px;
	position: relative;
	overflow: hidden;
}
.hp-room-items .hp-room-item:hover .hr-text {
	bottom: 135px;
}
.hp-room-items .hp-room-item:hover .hr-text h2 {
	margin-bottom: 30px;
}
.hp-room-items .hp-room-item .hr-text {
	position: absolute;
	left: 45px;
	right: 25px;
	bottom: -250px;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
.hp-room-items .hp-room-item .hr-text h3 {
	color: #ffffff;
	margin-bottom: 15px;
}
.hp-room-items .hp-room-item .hr-text h2 {
	color: #2E8B57;
	font-weight: 700;
	margin-bottom: 50px;
	-webkit-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}
.hp-room-items .hp-room-item .hr-text h2 span {
	font-family: "Cabin", sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: #ffffff;
}
.hp-room-items .hp-room-item .hr-text table {
	margin-bottom: 30px;
}
.hp-room-items .hp-room-item .hr-text table tbody tr td {
	font-size: 16px;
	color: #ffffff;
	line-height: 36px;
}
.hp-room-items .hp-room-item .hr-text table tbody tr td.r-o {
	width: 120px;
}
.hp-room-items .hp-room-item .hr-text .primary-btn:after {
	background: #ffffff;
}
/*---------------------
  Testimonial Slider
-----------------------*/

.testimonial-section {
	background: #f9f9f9;
}
.testimonial-section .section-title {
	margin-bottom: 30px;
}
.testimonial-slider.owl-carousel .owl-item img {
	width: auto;
	margin: 0 auto;
}
.testimonial-slider.owl-carousel .owl-nav button {
	height: 44px;
	width: 44px;
	border: 1px solid #ebebeb;
	font-size: 24px;
	color: #707079;
	background: #ffffff;
	line-height: 48px;
	text-align: center;
	border-radius: 50%;
	position: absolute;
	left: -190px;
	top: 50%;
	-webkit-transform: translateY(-6px);
	-ms-transform: translateY(-6px);
	transform: translateY(-6px);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.testimonial-slider.owl-carousel .owl-nav button:hover {
	border-color: #19191a;
	color: #19191a;
}
.testimonial-slider.owl-carousel .owl-nav button.owl-next {
	left: auto;
	right: -190px;
}
.testimonial-slider .ts-item {
	text-align: center;
}
.testimonial-slider .ts-item p {
	font-size: 20px;
	color: #707079;
	line-height: 30px;
	margin-bottom: 50px;
}
.testimonial-slider .ts-item .ti-author {
	margin-bottom: 60px;
}
.testimonial-slider .ts-item .ti-author .rating {
	display: inline-block;
}
.testimonial-slider .ts-item .ti-author .rating i {
	color: #f5b917;
	font-size: 16px;
}
.testimonial-slider .ts-item .ti-author h5 {
	font-size: 20px;
	color: #19191a;
	display: inline-block;
}
/*---------------------
  Blog and Event
-----------------------*/

.blog-section {
	padding-bottom: 70px;
}
.blog-section .section-title {
	margin-bottom: 36px;
}
/*---------------------
  Footer Section
-----------------------*/

.footer-section {
	background: #222736;
}
.footer-section .footer-text {
	padding: 80px 0 30px;
}
.footer-section .footer-text .ft-about {
	margin-bottom: 30px;
}
.footer-section .footer-text .ft-about .logo {
	margin-bottom: 20px;
}
.footer-section .footer-text .ft-about .logo a {
	display: inline-block;
}
.footer-section .footer-text .ft-about p {
	color: #aaaab3;
	margin-bottom: 20px;
}
.footer-section .footer-text .ft-about .fa-social a {
	display: inline-block;
	height: 40px;
	width: 40px;
	font-size: 16px;
	line-height: 40px;
	text-align: center;
	color: #ffffff;
	border: 1px solid #5A4D48;
	border-radius: 50%;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	margin-right: 7px;
}
.footer-section .footer-text .ft-about .fa-social a:hover {
	background: #2E8B57;
	border-color: #2E8B57;
}
.footer-section .footer-text .ft-contact {
	margin-bottom: 30px;
}
.footer-section .footer-text .ft-contact h6 {
	font-size: 14px;
	color: #2E8B57;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 3px;
	font-family: "Cabin", sans-serif;
	margin-bottom: 20px;
}
.footer-section .footer-text .ft-contact ul li {
	font-size: 16px;
	color: #aaaab3;
	line-height: 32px;
	list-style: none;
}
.footer-section .footer-text .ft-newslatter h6 {
	font-size: 14px;
	color: #2E8B57;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 3px;
	font-family: "Cabin", sans-serif;
	margin-bottom: 20px;
}
.footer-section .footer-text .ft-newslatter p {
	color: #aaaab3;
	margin-bottom: 20px;
}
.footer-section .footer-text .ft-newslatter .fn-form {
	position: relative;
}
.footer-section .footer-text .ft-newslatter .fn-form input {
	width: 100%;
	height: 50px;
	border-radius: 2px;
	background: #393D4A;
	border: none;
	padding-left: 20px;
	font-size: 16px;
	color: #707079;
}
.footer-section .footer-text .ft-newslatter .fn-form button {
	position: absolute;
	right: 0;
	top: 0;
	font-size: 16px;
	background: #2E8B57;
	color: #ffffff;
	padding: 0 16px;
	height: 50px;
	border: none;
	border-radius: 0 2px 2px 0;
}
.footer-section .copyright-option {
	background: rgba(16, 20, 31, 0.2);
	padding: 20px 0;
}
.footer-section .copyright-option ul li {
	list-style: none;
	display: inline-block;
	margin-right: 34px;
}
.footer-section .copyright-option ul li:last-child {
	margin-right: 0;
}
.footer-section .copyright-option ul li a {
	font-size: 16px;
	color: #aaaab3;
}
.footer-section .copyright-option .co-text {
	font-size: 16px;
	color: #707079;
	text-align: right;
}
/* --------------------------------- Other Pages Styles ----------------------------------- */

/*---------------------
  Breadcrumb Section
-----------------------*/

.breadcrumb-section {
	padding-top: 90px; /* Increased from 70px to accommodate floating logo */
	padding-bottom: 80px;
}
.breadcrumb-text {
	text-align: center;
}
.breadcrumb-text h2 {
	font-size: 44px;
	color: #19191a;
	margin-bottom: 12px;
}
.breadcrumb-text .bt-option a {
	display: inline-block;
	font-size: 18px;
	color: #19191a;
	margin-right: 20px;
	position: relative;
	font-weight: 500;
}
.breadcrumb-text .bt-option a:after {
	position: absolute;
	right: -13px;
	top: 1px;
	content: "";
	font-size: 18px;
	font-family: "FontAwesome";
	color: #aaaab3;
}
.breadcrumb-text .bt-option span {
	display: inline-block;
	font-size: 18px;
	color: #aaaab3;
}
/*------------------------
  About Us Page Section
-------------------------*/

.aboutus-page-section {
	padding-top: 0;
	padding-bottom: 70px;
}
.about-page-text {
	margin-bottom: 65px;
}
.about-page-text .ap-title {
	margin-bottom: 30px;
}
.about-page-text .ap-title h2 {
	font-size: 44px;
	color: #19191a;
	margin-bottom: 18px;
}
.about-page-text .ap-title p {
	font-size: 18px;
	color: #707079;
	line-height: 28px;
}
.about-page-text .ap-services li {
	list-style: none;
	font-size: 20px;
	color: #707079;
	line-height: 42px;
}
.about-page-text .ap-services li i {
	color: #2E8B57;
	margin-right: 5px;
}
.about-page-services .ap-service-item {
	position: relative;
	height: 420px;
	border-radius: 5px;
	margin-bottom: 30px;
}
.about-page-services .ap-service-item .api-text {
	position: absolute;
	left: 0;
	bottom: 40px;
	width: 100%;
	text-align: center;
}
.about-page-services .ap-service-item .api-text h3 {
	color: #ffffff;
}
/*---------------------
  Video Section
-----------------------*/

.video-section {
	height: 500px;
	padding-top: 140px;
}
.video-section .video-text {
	text-align: center;
}
.video-section .video-text h2 {
	font-size: 48px;
	color: #ffffff;
	margin-bottom: 16px;
}
.video-section .video-text p {
	font-size: 20px;
	color: #ffffff;
	margin-bottom: 40px;
}
.video-section .video-text .play-btn {
	display: inline-block;
}
/*---------------------
  Gallery Section
-----------------------*/

.gallery-section {
	padding-bottom: 80px;
}
.gallery-section .section-title {
	margin-bottom: 38px;
}
.gallery-item {
	position: relative;
	height: 279px;
	margin-bottom: 20px;
	border-radius: 5px;
	position: relative;
	z-index: 1;
}
.gallery-item:hover:after {
	opacity: 1;
}
.gallery-item:hover .gi-text {
	opacity: 1;
}
.gallery-item:after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(25, 25, 26, 0.3);
	content: "";
	z-index: -1;
	border-radius: 5px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 0;
}
.gallery-item.large-item {
	height: 576px;
}
.gallery-item .gi-text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 0;
}
.gallery-item .gi-text h3 {
	color: #ffffff;
}
/*---------------------
  Room Section
-----------------------*/

.rooms-section {
	padding-top: 0;
	padding-bottom: 80px;
}
.room-item {
	margin-bottom: 30px;
}
.room-item img {
	min-width: 100%;
}
.room-item .ri-text {
	border: 1px solid #ebebeb;
	border-top: none;
	padding: 24px 24px 30px 28px;
}
.room-item .ri-text h4 {
	color: #19191a;
	margin-bottom: 17px;
}
.room-item .ri-text h3 {
	color: #2E8B57;
	font-weight: 700;
	margin-bottom: 14px;
}
.room-item .ri-text h3 span {
	font-family: "Cabin", sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: #19191a;
}
.room-item .ri-text table {
	margin-bottom: 18px;
}
.room-item .ri-text table tbody tr td {
	font-size: 16px;
	color: #707079;
	line-height: 36px;
}
.room-item .ri-text table tbody tr td.r-o {
	width: 125px;
}
.room-item .ri-text .primary-btn {
	color: #19191a;
}
.room-pagination {
	text-align: center;
	padding-top: 20px;
}
.room-pagination a {
	font-size: 16px;
	color: #707079;
	border: 1px solid #EFD4B9;
	border-radius: 2px;
	padding: 7px 13px 5px;
	margin-right: 7px;
	display: inline-block;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.room-pagination a:last-child {
	margin-right: 0;
}
.room-pagination a:hover {
	background: #2E8B57;
	color: #ffffff;
}
/*-----------------------
  Room Details Section
-------------------------*/

.room-details-section {
	padding-top: 0;
	padding-bottom: 80px;
}
.room-details-item {
	margin-bottom: 50px;
}
.room-details-item img {
	margin-bottom: 40px;
}
.room-details-item .rd-text .rd-title {
	overflow: hidden;
	margin-bottom: 8px;
}
.room-details-item .rd-text .rd-title h3 {
	color: #19191a;
	float: left;
}
.room-details-item .rd-text .rd-title .rdt-right {
	float: right;
	text-align: right;
}
.room-details-item .rd-text .rd-title .rdt-right .rating {
	display: inline-block;
	margin-right: 25px;
	margin-bottom: 10px;
}
.room-details-item .rd-text .rd-title .rdt-right .rating i {
	color: #f5b917;
}
.room-details-item .rd-text .rd-title .rdt-right a {
	display: inline-block;
	color: #ffffff;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 700;
	background: #2E8B57;
	padding: 14px 28px 13px;
}
.room-details-item .rd-text h2 {
	color: #2E8B57;
	font-weight: 700;
	margin-bottom: 25px;
}
.room-details-item .rd-text h2 span {
	font-family: "Cabin", sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: #19191a;
}
.room-details-item .rd-text table {
	margin-bottom: 32px;
}
.room-details-item .rd-text table tbody tr td {
	font-size: 16px;
	color: #19191a;
	line-height: 36px;
}
.room-details-item .rd-text table tbody tr td.r-o {
	width: 120px;
	color: #707079;
}
.room-details-item .rd-text p {
	color: #707079;
}
.room-details-item .rd-text p.f-para {
	margin-bottom: 22px;
}
.rd-reviews {
	padding-top: 55px;
	border-top: 1px solid #e5e5e5;
	margin-bottom: 50px;
}
.rd-reviews h4 {
	color: #19191a;
	letter-spacing: 1px;
	margin-bottom: 45px;
}
.rd-reviews .review-item {
	margin-bottom: 32px;
}
.rd-reviews .review-item .ri-pic {
	float: left;
	margin-right: 30px;
}
.rd-reviews .review-item .ri-pic img {
	height: 70px;
	width: 70px;
	border-radius: 50%;
}
.rd-reviews .review-item .ri-text {
	overflow: hidden;
	position: relative;
	padding-left: 30px;
}
.rd-reviews .review-item .ri-text:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 100%;
	background: #e9e9e9;
	content: "";
}
.rd-reviews .review-item .ri-text span {
	font-size: 12px;
	color: #2E8B57;
	text-transform: uppercase;
	letter-spacing: 3px;
}
.rd-reviews .review-item .ri-text .rating {
	position: absolute;
	right: 0;
	top: 0;
}
.rd-reviews .review-item .ri-text .rating i {
	color: #f5b917;
}
.rd-reviews .review-item .ri-text h5 {
	color: #19191a;
	margin-top: 4px;
	margin-bottom: 8px;
}
.rd-reviews .review-item .ri-text p {
	color: #707079;
	margin-bottom: 0;
}
.review-add h4 {
	color: #19191a;
	letter-spacing: 1px;
	margin-bottom: 45px;
}
.review-add .ra-form input {
	width: 100%;
	height: 50px;
	border: 1px solid #e5e5e5;
	font-size: 16px;
	color: #aaaab3;
	padding-left: 20px;
	margin-bottom: 25px;
}
.review-add .ra-form input::-webkit-input-placeholder {
	color: #aaaab3;
}
.review-add .ra-form input::-moz-placeholder {
	color: #aaaab3;
}
.review-add .ra-form input:-ms-input-placeholder {
	color: #aaaab3;
}
.review-add .ra-form input::-ms-input-placeholder {
	color: #aaaab3;
}
.review-add .ra-form input::placeholder {
	color: #aaaab3;
}
.review-add .ra-form h5 {
	font-size: 20px;
	color: #19191a;
	margin-bottom: 24px;
	float: left;
	margin-right: 10px;
}
.review-add .ra-form .rating {
	padding-top: 3px;
	display: inline-block;
}
.review-add .ra-form .rating i {
	color: #f5b917;
	font-size: 16px;
}
.review-add .ra-form textarea {
	width: 100%;
	height: 132px;
	border: 1px solid #e5e5e5;
	font-size: 16px;
	color: #aaaab3;
	padding-left: 20px;
	padding-top: 12px;
	margin-bottom: 24px;
	resize: none;
}
.review-add .ra-form textarea::-webkit-input-placeholder {
	color: #aaaab3;
}
.review-add .ra-form textarea::-moz-placeholder {
	color: #aaaab3;
}
.review-add .ra-form textarea:-ms-input-placeholder {
	color: #aaaab3;
}
.review-add .ra-form textarea::-ms-input-placeholder {
	color: #aaaab3;
}
.review-add .ra-form textarea::placeholder {
	color: #aaaab3;
}
.review-add .ra-form button {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	color: #ffffff;
	letter-spacing: 2px;
	background: #2E8B57;
	border: none;
	padding: 14px 34px 13px;
	display: inline-block;
}
.room-booking {
	padding: 0 30px 0 40px;
}
.room-booking h3 {
	color: #19191a;
	margin-bottom: 30px;
}
.room-booking form .check-date {
	position: relative;
	margin-bottom: 15px;
}
.room-booking form .check-date label {
	font-size: 14px;
	color: #707079;
	display: block;
	margin-bottom: 10px;
}
.room-booking form .check-date input {
	width: 100%;
	height: 50px;
	border: 1px solid #ebebeb;
	border-radius: 2px;
	font-size: 16px;
	color: #19191a;
	text-transform: uppercase;
	font-weight: 500;
	padding-left: 20px;
}
.room-booking form .check-date i {
	color: #2E8B57;
	position: absolute;
	right: 18px;
	bottom: 17px;
}
.room-booking form .select-option {
	margin-bottom: 15px;
}
.room-booking form .select-option label {
	font-size: 14px;
	color: #707079;
	display: block;
	margin-bottom: 10px;
}
.room-booking form .select-option .nice-select {
	border-radius: 2px;
	border: 1px solid #ebebeb;
	height: 50px;
	line-height: 50px;
	outline: none;
	padding-left: 20px;
	width: 100%;
	float: none;
}
.room-booking form .select-option .nice-select:after {
	border-bottom: 2px solid #2E8B57;
	border-right: 2px solid #2E8B57;
	height: 10px;
	margin-top: 0;
	right: 20px;
	width: 10px;
	top: 36%;
}
.room-booking form .select-option .nice-select span {
	font-size: 16px;
	color: #19191a;
	text-transform: uppercase;
	font-weight: 500;
}
.room-booking form .select-option .nice-select .list {
	margin-top: 0;
	width: 100%;
}
.room-booking form button {
	display: block;
	font-size: 14px;
	text-transform: uppercase;
	border: 1px solid #2E8B57;
	border-radius: 2px;
	color: #2E8B57;
	font-weight: 500;
	background: transparent;
	width: 100%;
	height: 46px;
	margin-top: 30px;
}
/*---------------------
  Blog Section
-----------------------*/

.blog-section.blog-page {
	padding-top: 0;
	padding-bottom: 88px;
}
.blog-item {
	height: 450px;
	position: relative;
	margin-bottom: 30px;
	border-radius: 5px;
}
.blog-item.small-size {
	height: 400px;
}
.blog-item .bi-text {
	position: absolute;
	left: 0;
	bottom: 25px;
	width: 100%;
	padding-left: 30px;
	padding-right: 30px;
}
.blog-item .bi-text .b-tag {
	display: inline-block;
	color: #ffffff;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 1px;
	background: #2E8B57;
	padding: 3px 10px;
	border-radius: 2px;
}
.blog-item .bi-text h4 {
	margin-top: 18px;
	margin-bottom: 18px;
}
.blog-item .bi-text h4 a {
	color: #ffffff;
}
.blog-item .bi-text .b-time {
	font-size: 12px;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: 3px;
}
.load-more {
	text-align: center;
	padding-top: 30px;
}
.load-more .primary-btn {
	color: #19191a;
}
/*----------------------------
  Blog Details Hero Section
----------------------------*/

.blog-details-hero {
	height: 530px;
	padding-top: 165px;
}
.bd-hero-text {
	text-align: center;
}
.bd-hero-text span {
	font-size: 12px;
	color: #ffffff;
	background: #2E8B57;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 1px;
	display: inline-block;
	padding: 4px 16px;
	border-radius: 2px;
}
.bd-hero-text h2 {
	font-size: 44px;
	color: #ffffff;
	line-height: 54px;
	margin-top: 30px;
	margin-bottom: 12px;
}
.bd-hero-text ul li {
	list-style: none;
	font-size: 14px;
	color: #2E8B57;
	margin-right: 35px;
	display: inline-block;
}
.bd-hero-text ul li:last-child {
	margin-right: 0;
}
.bd-hero-text ul li.b-time {
	text-transform: uppercase;
}
/*---------------------
  Blog Details Section
-----------------------*/

.blog-details-section {
	padding-top: 55px;
}
.blog-details-text .bd-title {
	margin-bottom: 52px;
}
.blog-details-text .bd-title p {
	font-size: 18px;
	color: #707079;
	line-height: 30px;
}
.blog-details-text .bd-pic {
	overflow: hidden;
	margin-bottom: 35px;
}
.blog-details-text .bd-pic .bp-item {
	width: calc(33.33% - 10px);
	float: left;
	margin-right: 15px;
}
.blog-details-text .bd-pic .bp-item:last-child {
	margin-right: 0;
}
.blog-details-text .bd-pic .bp-item img {
	min-width: 100%;
}
.blog-details-text .bd-more-text {
	margin-bottom: 50px;
}
.blog-details-text .bd-more-text .bm-item {
	margin-bottom: 30px;
}
.blog-details-text .bd-more-text .bm-item h4 {
	color: #19191a;
	margin-bottom: 20px;
}
.blog-details-text .bd-more-text .bm-item p {
	font-size: 18px;
	color: #707079;
	line-height: 30px;
}
.blog-details-text .tag-share {
	overflow: hidden;
	border-top: 1px solid #ebebeb;
	padding-top: 30px;
	margin-bottom: 75px;
}
.blog-details-text .tag-share .tags {
	float: left;
}
.blog-details-text .tag-share .tags a {
	font-size: 12px;
	color: #707079;
	background: #ebebeb;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 1px;
	display: inline-block;
	padding: 4px 16px;
	border-radius: 2px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	margin-right: 6px;
}
.blog-details-text .tag-share .tags a:hover {
	color: #ffffff;
	background: #2E8B57;
}
.blog-details-text .tag-share .social-share {
	float: right;
}
.blog-details-text .tag-share .social-share span {
	display: inline-block;
	font-size: 18px;
	color: #707079;
}
.blog-details-text .tag-share .social-share a {
	display: inline-block;
	font-size: 16px;
	color: #707079;
	margin-left: 30px;
}
.blog-details-text .comment-option {
	margin-bottom: 75px;
}
.blog-details-text .comment-option h4 {
	color: #19191a;
	margin-bottom: 35px;
}
.blog-details-text .comment-option .single-comment-item {
	margin-bottom: 30px;
}
.blog-details-text .comment-option .single-comment-item.first-comment .sc-text {
	padding-left: 22px;
}
.blog-details-text .comment-option .single-comment-item.first-comment .sc-text:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 255px;
	background: #ebebeb;
	content: "";
}
.blog-details-text .comment-option .single-comment-item.reply-comment {
	padding-left: 120px;
	margin-bottom: 52px;
}
.blog-details-text .comment-option .single-comment-item.second-comment .sc-text {
	padding-left: 22px;
}
.blog-details-text .comment-option .single-comment-item.second-comment .sc-text:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 100px;
	background: #ebebeb;
	content: "";
}
.blog-details-text .comment-option .single-comment-item .sc-author {
	float: left;
	margin-right: 28px;
}
.blog-details-text .comment-option .single-comment-item .sc-author img {
	height: 70px;
	width: 70px;
	border-radius: 50%;
}
.blog-details-text .comment-option .single-comment-item .sc-text {
	display: table;
	position: relative;
}
.blog-details-text .comment-option .single-comment-item .sc-text span {
	font-size: 12px;
	color: #2E8B57;
	text-transform: uppercase;
	letter-spacing: 2px;
}
.blog-details-text .comment-option .single-comment-item .sc-text h5 {
	font-size: 20px;
	color: #19191a;
	margin-top: 4px;
	margin-bottom: 8px;
}
.blog-details-text .comment-option .single-comment-item .sc-text p {
	color: #707079;
	margin-bottom: 18px;
}
.blog-details-text .comment-option .single-comment-item .sc-text a {
	display: inline-block;
	color: #19191a;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 5px 24px;
	border: 1px solid #F9EEE3;
	border-radius: 50px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	margin-right: 10px;
}
.blog-details-text .comment-option .single-comment-item .sc-text a:hover {
	background: #2E8B57;
	color: #ffffff;
	border-color: #2E8B57;
}
.blog-details-text .leave-comment h4 {
	color: #19191a;
	margin-bottom: 35px;
}
.blog-details-text .leave-comment .comment-form input {
	width: 100%;
	height: 50px;
	color: #707079;
	font-size: 16px;
	padding-left: 20px;
	border: 1px solid #e5e5e5;
	border-radius: 2px;
	margin-bottom: 20px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.blog-details-text .leave-comment .comment-form input:focus {
	border-color: #2E8B57;
}
.blog-details-text .leave-comment .comment-form textarea {
	width: 100%;
	height: 116px;
	color: #707079;
	font-size: 16px;
	padding-left: 20px;
	border: 1px solid #e5e5e5;
	border-radius: 2px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	margin-bottom: 42px;
	resize: none;
	padding-top: 12px;
}
.blog-details-text .leave-comment .comment-form textarea:focus {
	border-color: #2E8B57;
}
.blog-details-text .leave-comment .comment-form button {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	color: #ffffff;
	letter-spacing: 2px;
	background: #2E8B57;
	border: none;
	padding: 14px 42px 13px;
	display: inline-block;
}
/*---------------------
  Recommend Blog
-----------------------*/

.recommend-blog-section {
	padding-top: 65px;
	padding-bottom: 50px;
}
.recommend-blog-section .section-title {
	margin-bottom: 37px;
}
.recommend-blog-section .section-title h2 {
	margin-top: 0;
}
/*---------------------
  Contact Section
-----------------------*/

.contact-section {
	padding-top: 80px;
	padding-bottom: 80px;
}
.contact-text h2 {
	font-size: 44px;
	color: #19191a;
	margin-bottom: 24px;
}
.contact-text p {
	color: #707079;
}
.contact-text table tbody tr td {
	font-size: 16px;
	color: #19191a;
	line-height: 36px;
	font-weight: 500;
}
.contact-text table tbody tr td.c-o {
	color: #707079;
	width: 75px;
}
.contact-form input {
	width: 100%;
	height: 50px;
	border: 1px solid #e1e1e1;
	font-size: 16px;
	color: #aaaab3;
	padding-left: 25px;
	margin-bottom: 28px;
}
.contact-form input::-webkit-input-placeholder {
	color: #aaaab3;
}
.contact-form input::-moz-placeholder {
	color: #aaaab3;
}
.contact-form input:-ms-input-placeholder {
	color: #aaaab3;
}
.contact-form input::-ms-input-placeholder {
	color: #aaaab3;
}
.contact-form input::placeholder {
	color: #aaaab3;
}
.contact-form textarea {
	width: 100%;
	height: 150px;
	border: 1px solid #e1e1e1;
	font-size: 16px;
	color: #aaaab3;
	padding-left: 25px;
	padding-top: 12px;
	margin-bottom: 33px;
	resize: none;
}
.contact-form textarea::-webkit-input-placeholder {
	color: #aaaab3;
}
.contact-form textarea::-moz-placeholder {
	color: #aaaab3;
}
.contact-form textarea:-ms-input-placeholder {
	color: #aaaab3;
}
.contact-form textarea::-ms-input-placeholder {
	color: #aaaab3;
}
.contact-form textarea::placeholder {
	color: #aaaab3;
}
.contact-form button {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	color: #ffffff;
	letter-spacing: 2px;
	background: #2E8B57;
	border: none;
	padding: 14px 34px 13px;
	display: inline-block;
}
.map {
	height: 470px;
	-webkit-box-shadow: 0px 14px 35px rgba(0, 0, 0, 0.15);
	box-shadow: 0px 14px 35px rgba(0, 0, 0, 0.15);
	margin-top: 75px;
}
.map iframe {
	width: 100%;
}
/*-------------------------------- Respinsive Media Styles --------------------------------*/

@media only screen and (min-width: 1554px) and (max-width: 1920px) {
	.hp-room-items .hp-room-item .hr-text {
		bottom: -200px;
	}
}
@media only screen and (min-width: 1200px) and (max-width: 1250px) {
	.hp-room-items .hp-room-item .hr-text {
		bottom: -288px;
	}
}
@media only screen and (min-width: 1200px) {
	.container {
		max-width: 1170px;
	}
}
/* Medium Device: 1200px */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.testimonial-slider.owl-carousel .owl-nav button {
		left: -150px;
	}
	.testimonial-slider.owl-carousel .owl-nav button.owl-next {
		right: -150px;
	}
	.hp-room-items .hp-room-item .hr-text {
		bottom: -322px;
	}
	.hp-room-items .hp-room-item:hover .hr-text {
		bottom: 80px;
	}
	/* Responsive header layout for medium screens */
	.top-nav .tn-right {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-end;
	}
	.top-nav .tn-right .top-social {
		order: 1;
		margin-right: 15px;
	}
	.top-nav .tn-right .bk-btn {
		order: 3;
		margin-left: 15px;
		padding: 12px 20px 11px;
		font-size: 12px;
	}
	.top-nav .tn-right .language-option {
		order: 2;
		margin-left: 15px;
	}
	.top-nav .tn-left li {
		font-size: 13px;
		margin-right: 15px;
	}
}

/* Better spacing for larger screens */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
	.top-nav .tn-right .bk-btn {
		padding: 14px 24px 13px;
		font-size: 12px;
	}
	.top-nav .tn-right .language-option {
		margin-left: 20px;
	}
}
@media only screen and (max-width: 991px) {
	/* Prevent horizontal overflow */
	html, body {
		overflow-x: hidden;
		max-width: 100%;
	}
	
	.container {
		max-width: 100%;
		padding-left: 15px;
		padding-right: 15px;
	}
	
	.top-nav {
		display: none;
	}
	.menu-item .nav-menu {
		display: none;
	}
	.offcanvas-menu-overlay {
		position: fixed;
		left: 0;
		top: 0;
		background: rgba(0, 0, 0, 0.7);
		z-index: 9998;
		height: 100%;
		width: 100%;
		visibility: hidden;
		-webkit-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s;
	}
	.offcanvas-menu-overlay.active {
		visibility: visible;
	}
	.canvas-open {
		position: absolute;
		right: 15px; /* Slightly moved from edge for better touch target */
		top: 50%;
		transform: translateY(-50%);
		width: 44px; /* Increased for better touch usability - recommended minimum 44px */
		height: 44px; /* Increased for better touch usability - recommended minimum 44px */
		border: 1px solid #19191a;
		border-radius: 4px; /* Slightly larger radius for larger button */
		text-align: center;
		z-index: 100;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
	}
	.menu-item {
		min-height: 60px; /* Increased for better mobile usability and touch targets */
		padding: 12px 0; /* Increased padding for more comfortable header */
	}
	.menu-item .logo {
		padding: 0; /* No padding to minimize header height */
		position: relative;
		z-index: 10;
		overflow: visible; /* Allow logo to float outside container */
		min-height: 0; /* No minimum height requirement */
		height: 0; /* Force zero height to not affect header */
		text-align: center;
	}
	
	/* Mobile logo - working approach optimized for thin header */
	.menu-item .logo img.main-logo {
		position: relative !important;
		display: block !important;
		margin: 0 auto !important;
		margin-top: -30px !important; /* Pull logo up higher into header space */
		margin-bottom: -80px !important; /* Large negative margin to not affect header height */
		max-height: 120px !important;
		width: auto !important;
		object-fit: contain !important;
		z-index: 15 !important;
		opacity: 1 !important;
		transform: translateY(0px) !important; /* Moved higher - removed downward transform */
	}
	
	/* Fallback: ensure logo is always visible */
	.menu-item .logo img {
		visibility: visible !important;
		display: block !important;
	}
	
	/* Hide logo text on mobile */
	.menu-item .logo img.logo-text {
		display: none !important;
	}
	
	/* Mobile footer logo */
	.footer-section .footer-text .ft-about .logo img {
		max-height: 40px;
	}
	
	/* Adjust hero section for floating logo on mobile */
	.hero-section {
		padding-top: 120px; /* Increased to accommodate larger floating mobile logo */
	}
	.offcanvas-menu-wrapper {
		position: fixed;
		left: -300px;
		top: 0;
		width: 300px;
		z-index: 9999;
		background: #ffffff;
		text-align: center;
		overflow-y: auto;
		height: 100%;
		opacity: 0;
		visibility: hidden;
		-webkit-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
		padding: 80px 30px 30px 30px;
		display: block;
	}
	.offcanvas-menu-wrapper .canvas-close {
		height: 30px;
		width: 30px;
		border: 1px solid #19191a;
		border-radius: 50%;
		text-align: center;
		line-height: 30px;
		cursor: pointer;
		position: absolute;
		right: 30px;
		top: 30px;
		padding-right: 1px;
	}
	.offcanvas-menu-wrapper .search-icon {
		color: #19191a;
		text-align: center;
		cursor: pointer;
		margin-bottom: 10px;
	}
	.offcanvas-menu-wrapper .header-configure-area {
		margin-bottom: 30px;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option {
		display: block;
		cursor: pointer;
		padding: 13px 0;
		position: relative;
		margin-bottom: 15px;
		width: 100%;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		-webkit-tap-highlight-color: transparent;
	}
	.offcanvas-menu-wrapper .header-configure-area .mobile-book-button {
		width: 100%;
	}
	.offcanvas-menu-wrapper .header-configure-area .mobile-book-button .bk-btn {
		display: block;
		width: 100%;
		text-align: center;
		font-size: 13px;
		font-weight: 700;
		padding: 16px 28px 15px;
		background: #2E8B57;
		color: #ffffff;
		text-transform: uppercase;
		letter-spacing: 2px;
		border-radius: 4px;
		text-decoration: none;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
	}
	.offcanvas-menu-wrapper .header-configure-area .mobile-book-button .bk-btn:hover {
		background: #c7926a;
		color: #ffffff;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option:hover .flag-dropdown,
	.offcanvas-menu-wrapper .header-configure-area .language-option.active .flag-dropdown {
		top: 40px;
		opacity: 1;
		visibility: visible;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option.active span {
		color: #2E8B57;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option .flag-emoji {
		font-size: 20px;
		margin-right: 8px;
		display: inline-block;
		vertical-align: middle;
		line-height: 1;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option .flag-dropdown ul li a .flag-emoji {
		font-size: 16px;
		margin-right: 8px;
		display: inline-block;
		vertical-align: middle;
		line-height: 1;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option img {
		height: 26px;
		width: 26px;
		border-radius: 50%;
		margin-right: 10px;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option .language-display {
		font-size: 16px;
		color: #19191a;
		text-transform: uppercase;
		font-weight: 500;
		display: inline-block;
		white-space: nowrap;
		vertical-align: middle;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option span {
		font-size: 16px;
		color: #19191a;
		text-transform: uppercase;
		font-weight: 500;
		display: inline-block;
		white-space: nowrap;
		vertical-align: middle;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option .flag-dropdown {
		position: absolute;
		left: 0;
		top: 60px;
		width: 140px;
		min-width: 140px;
		background: #ffffff;
		display: block;
		padding: 10px 15px;
		-webkit-box-shadow: 0px 9px 10px rgba(25, 25, 26, 0.2);
		box-shadow: 0px 9px 10px rgba(25, 25, 26, 0.2);
		opacity: 0;
		visibility: hidden;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
		z-index: 99;
		border-radius: 4px;
		max-width: calc(100vw - 40px);
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option .flag-dropdown ul li {
		list-style: none;
		text-align: left;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option .flag-dropdown ul li a {
		font-size: 14px;
		text-transform: uppercase;
		font-weight: 500;
		color: #19191a;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
		display: flex;
		align-items: center;
		padding: 8px 0;
		white-space: nowrap;
	}
	.offcanvas-menu-wrapper .header-configure-area .language-option .flag-dropdown ul li a:hover {
		color: #2E8B57;
	}
	.offcanvas-menu-wrapper .mainmenu {
		display: none;
	}
	.offcanvas-menu-wrapper .slicknav_menu {
		background: transparent;
		padding: 0;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_btn {
		float: none;
		margin: 0 0 10px 0;
		display: none;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav {
		display: block !important;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav ul {
		margin: 0;
		text-align: left;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav ul li .dropdown {
		padding-left: 20px;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav ul li a {
		margin: 0;
		padding: 10px;
		font-weight: 600;
		font-size: 14px;
		color: #19191a;
		border-bottom: 1px solid #e5e5e5;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav ul li a:hover {
		border-radius: 0;
		background: transparent;
		color: #2E8B57;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav .slicknav_row a {
		border-bottom: 0;
		padding-left: 0;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav .slicknav_row span {
		color: #19191a;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav .slicknav_row:hover a {
		color: #2E8B57;
	}
	.offcanvas-menu-wrapper .slicknav_menu .slicknav_nav .slicknav_row:hover span {
		color: #2E8B57;
	}
	.offcanvas-menu-wrapper .top-social {
		display: inline-block;
		margin-top: 30px;
		margin-bottom: 20px;
	}
	.offcanvas-menu-wrapper .top-social a {
		display: inline-block;
		font-size: 16px;
		color: #19191a;
		margin-right: 20px;
	}
	.offcanvas-menu-wrapper .top-social a:last-child {
		margin-right: 0;
	}
	.offcanvas-menu-wrapper .top-widget li {
		list-style: none;
		font-size: 16px;
		color: #19191a;
		font-weight: 500;
		line-height: 28px;
	}
	.offcanvas-menu-wrapper .top-widget li i {
		color: #2E8B57;
		margin-right: 4px;
	}
	.offcanvas-menu-wrapper.show-offcanvas-menu-wrapper {
		left: 0;
		opacity: 1;
		visibility: visible;
	}
	.about-text {
		margin-bottom: 30px;
	}
	.footer-section .copyright-option ul {
		text-align: center;
		margin-bottom: 10px;
	}
	.footer-section .copyright-option .co-text {
		text-align: center;
	}
	.about-pic img {
		margin-bottom: 20px;
	}
	.room-booking {
		padding: 0;
		margin-top: 40px;
	}
	.contact-form {
		padding-top: 30px;
	}
	.hero-text {
		margin-bottom: 40px;
	}
}

/* Calendar Icon Mobile Fixes - Prevent conflicts with existing booking form styles */
@media only screen and (max-width: 991px) {
	/* Override existing booking form input styles for calendar functionality */
	.booking-form #booking-form input[type="date"] {
		padding-right: 50px !important;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%232E8B57' viewBox='0 0 24 24'%3E%3Cpath d='M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z'/%3E%3C/svg%3E") !important;
		background-repeat: no-repeat !important;
		background-position: right 15px center !important;
		background-size: 20px 20px !important;
		border-radius: 4px !important;
		font-size: 18px !important;
		height: 55px !important;
		touch-action: manipulation !important;
		-webkit-appearance: none !important;
		-moz-appearance: textfield !important;
		appearance: none !important;
	}
	
	/* Ensure calendar picker is visible and functional */
	.booking-form #booking-form input[type="date"]::-webkit-calendar-picker-indicator {
		position: absolute !important;
		right: 15px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		width: 20px !important;
		height: 20px !important;
		opacity: 1 !important;
		background: transparent !important;
		cursor: pointer !important;
	}
	
	/* Hide default spinners and clear buttons */
	.booking-form #booking-form input[type="date"]::-webkit-inner-spin-button,
	.booking-form #booking-form input[type="date"]::-webkit-clear-button {
		display: none !important;
	}
	
	/* iOS Safari specific fixes */
	@supports (-webkit-touch-callout: none) {
		.booking-form #booking-form input[type="date"]::-webkit-calendar-picker-indicator {
			-webkit-appearance: none !important;
			display: block !important;
			width: 20px !important;
			height: 20px !important;
			background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%232E8B57' viewBox='0 0 24 24'%3E%3Cpath d='M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z'/%3E%3C/svg%3E") !important;
			background-size: 100% !important;
			background-repeat: no-repeat !important;
			background-position: center !important;
			position: absolute !important;
			right: 15px !important;
			top: 50% !important;
			transform: translateY(-50%) !important;
			cursor: pointer !important;
		}
	}
	
	/* Enhanced booking form padding for better mobile experience */
	.booking-form {
		padding: 25px 20px !important;
	}
	
	/* Increase text size for booking form heading on mobile - Override Bootstrap */
	.hero-section .booking-form h3 {
		font-size: 24px !important;
		font-weight: 400 !important;
		line-height: 1.2 !important;
		margin-bottom: 30px !important;
		text-align: center !important;
		font-family: "Lora", serif !important;
		color: #19191a !important;
	}
}

/* Desktop calendar icon styles - ensure compatibility */
@media only screen and (min-width: 992px) {
	.booking-form #booking-form input[type="date"] {
		-webkit-appearance: none;
		-moz-appearance: textfield;
		appearance: none;
		position: relative;
	}
	
	.booking-form #booking-form input[type="date"]::-webkit-calendar-picker-indicator {
		cursor: pointer;
		opacity: 1;
		width: 20px;
		height: 20px;
		padding: 0;
		margin: 0;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%232E8B57' viewBox='0 0 24 24'%3E%3Cpath d='M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z'/%3E%3C/svg%3E");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		transition: opacity 0.3s ease, transform 0.2s ease;
	}
	
	.booking-form #booking-form input[type="date"]::-webkit-calendar-picker-indicator:hover {
		opacity: 0.7;
		transform: scale(1.1);
	}
	
	/* Firefox support */
	.booking-form #booking-form input[type="date"]::-moz-calendar-picker-indicator {
		cursor: pointer;
		opacity: 1;
		width: 20px;
		height: 20px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%232E8B57' viewBox='0 0 24 24'%3E%3Cpath d='M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z'/%3E%3C/svg%3E");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
	}
}