/*!
Theme Name: Sportsman's Lodge
Theme URI: http://underscores.me/
Author: Webrammer
Author URI: http://www.webrammer.com
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: sl
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Sportsman\'s Lodge is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

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

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');

* {
	box-sizing: border-box;
}

body {
	margin: 0;
	padding: 0;
	font-family: 'Montserrat', sans-serif;
}

.container {
	max-width: 1440px;
}

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

a {
	text-decoration: none;
	font-family: 'Montserrat', sans-serif;
	color: #000;
}

ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'Poppins', sans-serif;
}

.cta a,
.wpbutton {
	background: #0e930c !important;
	color: #fff !important;
	padding: 10px !important;
	border-radius: 25px !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	position: relative !important;
}

.cta a:hover,
.wpbutton:hover {
	background: #fff !important;
	color: #0e930c !important;
	border: 1px solid #0e930c !important;
}

.wpbutton {
	padding-right: 28px !important;
}

.wpbutton::after {
	content: '\f105';
	color: #fff;
	font-family: "Font Awesome 6 Pro";
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}

.header_top a {
	color: #fff;
	font-family: 'Poppins', sans-serif;
}

header {
	padding: 20px 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 99;
}

.header {
	background: #fff;
	border-radius: 60px;
	padding: 20px 20px 10px 40px;
	position: relative;
	z-index: 1;
}

.header .custom-logo-link img {
	max-width: 130px;
	height: auto;
}

#menu-main-menu {
	display: flex;
	justify-content: space-around;
	margin-bottom: 10px;
}

#menu-main-menu a {
	color: #000;
	font-size: 18px;
	padding: 0 5px 5px 5px;
	position: relative;
}

#menu-main-menu a::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 2px;
	bottom: -35px;
	left: 0;
	background: #278926;
	height: 5px;
	display: none;
}

#menu-main-menu a:hover::before {
	display: block;
}



.header_contact {
	margin-bottom: 10px;
}

.header_contact a {
	background: #0e930c;
	color: #fff;
	padding: 10px;
	border-radius: 25px;
	font-weight: 500;
	text-transform: uppercase;
}

.header_contact a:hover {
	background: #fff;
	color: #0e930c;
	border: 1px solid #0e930c;
}

/* Inner Page Header */
.inner_header {
	position: relative;
	background: url(images/low-clouds.png) no-repeat center center/cover;
	z-index: 1;
}

.inner_header::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #053303A3;
	z-index: -1;
}

.inner_header .page_title h1 {
	color: #fff;
	font-size: 45px;
	font-weight: bold;
	margin-top: 60px;
}


/* Home Page */
.banner {
	position: relative;
}

.banner .reserve_form {
	padding: 36px 35px;
	position: absolute;
	right: 220px;
	bottom: 45%;
	z-index: 99;
	transform: translateY(50%);
	margin: px 0;
	background: #FFFFFF24 0% 0% no-repeat padding-box;
	border-radius: 30px;
	opacity: 1;
	backdrop-filter: blur(50px);
	-webkit-backdrop-filter: blur(50px);
}

.mphb-required-fields-tip {
	display: none !important;
}

.datepick {
	border: 1px solid #079B05;
	border-radius: 12px !important;
	overflow: hidden;
}

.datepick a {
	color: #000 !important;
}

.datepick-nav,
.datepick-ctrl {
	background-color: #fff;
	color: #000;
}

.datepick-month-header,
.datepick-month-header select,
.datepick-month-header input {
	background-color: #fff;
	color: #000;
}

.datepick-month {
	border: 1px solid #079B05;
}

.datepick-month th {
	border: 0px solid #777;
}

.datepick-month th,
.datepick-month th a {
	background-color: #fff;
	color: #000;
}

.mphb-datepick-popup .datepick-month td .mphb-past-date {
	background-color: #fff;
	color: #000;
}

.mphb-datepick-popup .datepick-month td a.datepick-highlight,
.mphb-datepick-popup .datepick-month td a.datepick-selected {
	background-color: #079B05;
	color: #fff !important;
}

.datepick-month td {
	background-color: #fff;
	border: 0px solid #aaa;
}

.datepick-month td .datepick-weekend {
	background-color: #fff;
}

.datepick-month a {
	background-color: #fff;
}

.datepick-month {
	border: 1px solid #079B05;
	border-top: 1px solid #079B05;
	border-right: 0px !important;
}

.datepick-popup,
.datepick-popup a {
	font-family: 'Poppins', sans-serif !important;
}

.banner .reserve_form h3 {
	font-size: 28px;
	color: #fff;
	text-transform: uppercase;
	text-align: center;
	font-weight: 700;
}

.banner .reserve_form input {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	width: 100%;
	padding: 10px !important;
	border-radius: 50px !important;
	border: 1px solid #278926 !important;
	background: #fff !important;
}

.banner .reserve_form input::placeholder {
	color: #000 !important;
	opacity: 1 !important;
}

.banner .reserve_form select {
	width: 100% !important;
	padding: 10px !important;
	border-radius: 50px !important;
	border: 1px solid #278926 !important;
	background: #fff !important;
	;
}

.mphb_sc_search-adults,
.mphb_sc_search-children {
	width: 49%;
	display: inline-block;
}

.mphb_sc_search-submit-button-wrapper input {
	background: #0e930c !important;
	color: #fff;
	padding: 10px;
	border-radius: 25px;
	font-weight: 500;
	text-transform: uppercase;
	border: 0 !important;
	margin-top: 20px !important;
}

/*.mphb_sc_search-form label
{
	display: none;
}*/
.mphb_sc_search-form label abbr {
	display: none;
}

.mphb_sc_search-form p {
	margin-bottom: 0;
}

.wpforms-datepicker-wrap,
.mphb_sc_search-check-in-date,
.mphb_sc_search-check-out-date {
	position: relative;
}

.wpforms-datepicker-wrap::after,
.mphb_sc_search-check-in-date::after,
.mphb_sc_search-check-out-date::after {
	position: absolute;
	right: 16px;
	top: 2px;
	height: auto;
	content: '\f133';
	font-family: "Font Awesome 6 Pro";
	font-size: 26px;
	font-weight: 300;
}

.mphb_sc_search-check-in-date::after,
.mphb_sc_search-check-out-date::after {
	top: 24px;
}


#wpforms-95 {
	max-width: 320px;
}

.reserve_form .wpforms-container .wpforms-field {
	padding: 8px 0;
	position: relative;
}

#wpforms-95-field_2-container {
	padding: 8px 0 0 0;
}

#wpforms-95-field_5-container {
	padding: 0 0 8px 0;
}

.reserve_form .wpforms-submit-container {
	text-align: center;
}

.rooms {
	padding: 40px 0 10px 0;
}

.rooms h4 {
	font-size: 28px;
	font-weight: 400;
	text-align: center;
	text-transform: uppercase;
	font-family: 'Poppins', sans-serif;
}

.rooms h2 {
	font-size: 36px;
	font-weight: bold;
	text-align: center;
	margin: 20px 0;
	text-transform: uppercase;
}

.accomodation h2 {
	margin: 0 0 20px 0;
}

.room-item {
	padding: 20px 15px;
	border: 2px solid #c2c9c1;
	border-radius: 12px;
	font-size: 18px;

}

.room-price span {
	color: #079b05;
	font-size: 30px;
	font-weight: 500;

}

.room-item img {
	border-radius: 12px;
}

.item_desc {
	background: #fff;
	border-radius: 12px;
	color: #000;
	padding: 12px 12px 1px 12px;
	margin-top: 20px;
}

.item_desc h3 {
	font-size: 28px;
	color: #000;
	font-weight: 700;
}

.room-item .cta a {
	font-family: 'Poppins', sans-serif;
	font-size: 16px;
	text-transform: capitalize;
}

.room-item:hover .cta {
	display: block;
}

.room-item:hover {
	border-color: #0e930c;
}

.owl-dots.disabled,
.owl-dots {
	display: block !important;
	text-align: center !important;
	margin: 20px 0;
}

.owl-dot {
	background: #a2a2a2 !important;
	border-radius: 50%;
	height: 12px;
	width: 12px;
	margin-right: 10px;
	border: 0 !important;
}

.owl-dot.active {
	width: 30px;
	height: 10px;
	background: #079b05 !important;
	border-radius: 50px;
}

.owl-nav {
	display: none !important;
}

.home_page .about_us {
	padding-top: 110px;
	background: transparent url(images/mountain-bg.webp) 0% 75% no-repeat padding-box;
}

.about_us h4 {
	font-size: 28px;
	text-align: center;
	font-weight: 300;
	text-transform: uppercase;
	margin-bottom: 15px;
}

.about_us p {
	font-family: 'Montserrat', sans-serif;
	max-width: 992px;
	margin: 0 auto;
	margin-top: 30px;
}

.why_us_owl {
	max-width: 1024px;
	margin: 0 auto;
}

.why_us_owl .owl-item {
	border: 1px solid #079b05;
	border-radius: 12px;
	padding: 40px 30px;
}

.why_us_owl .icon {
	width: 50px;
	margin: 5px auto;
}

.why_us_owl h4 {
	font-size: 22px;
	font-weight: 600;
}

.why_us_owl p {
	font-size: 16px;
	font-family: 'Montserrat', sans-serif;
	text-align: center;
	margin-top: 0;
}

.amenities {
	margin-top: 80px;
}

.amenities h2 {
	font-size: 45px;
	font-weight: 700;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.amenities h5 {
	font-size: 28px;
	font-weight: 200;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.amenities p {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	margin-bottom: 40px;
}

.amenity-item {
	display: flex;
	align-items: center;
	margin-bottom: 40px;
}

.amenity-icon {
	margin-right: 30px;
}

.amenity-icon img {
	width: 60px;
	height: auto;
}

.amenity-desc p {
	margin-bottom: 0;
}

.amenity-item h4 {
	font-size: 28px;
	text-transform: uppercase;
	font-weight: 700;
}

.mountain {
	position: relative;
	z-index: 1;
}

.mountain::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(images/rooms-bg.webp) no-repeat center bottom/contain;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.explore h2 {
	font-size: 40px;
	font-weight: bold;
	text-transform: uppercase;

}

.explore a {
	color: #079b05;
	font-family: "Monterrat", sans-serif;
	font-weight: 400;
	text-transform: uppercase;
}

.explore p {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 18px;
}

.coronado,
.pets,
.resturant,
.health_club {
	height: 280px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	border-radius: 12px;
	position: relative;
	padding: 20px;
	color: #fff;
	margin-bottom: 25px;
	z-index: 1;
}

.coronado {
	background: url(images/coronado-bg.webp) no-repeat center center/cover;

}

.pets {
	background: url(images/pets-bg.webp) no-repeat center center/cover;
}

.resturant {
	background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)),url('https://projects.thewebworkers.org/slnew/wp-content/uploads/2026/04/local-dining.jpg');
  background-size: cover;
  background-position: center;
	/*background: url(images/resturant-bg.webp) no-repeat center center/cover;*/
	/*background:url(https://projects.thewebworkers.org/slnew/wp-content/uploads/2026/02/fox-fire.webp) no-repeat center center/cover;*/
}

.health_club {
	background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)),url('https://projects.thewebworkers.org/slnew/wp-content/uploads/2026/04/nature-best.jpg');
  background-size: cover;
  background-position: center;
	/*background: url(images/health-club-bg.webp) no-repeat center center/cover;*/
	/*background: url(https://projects.thewebworkers.org/slnew/wp-content/uploads/2026/02/hiking.webp) no-repeat center center/cover;*/
}

.explore .cta_sec {
	margin-bottom: 10px;
}

.explore .cta_sec a {
	background: transparent;
	border: 1px solid #fff;
	color: #E5FFFF;
	padding: 10px 25px;
	border-radius: 55px;

}

.coronado h3,
.pets h3,
.resturant h3,
.health_club h3 {
	font-size: 40px;
	font-weight: 700;
	text-transform: capitalize;
}

.coronado h4,
.pets h4,
.resturant h4,
.health_club h4 {
	font-weight: 400;
	font-size: 24px;
}

.hover_bx {
	display: none;
}

.coronado:hover .hover_bx,
.pets:hover .hover_bx,
.resturant:hover .hover_bx,
.health_club:hover .hover_bx {
	display: block;
}

.coronado:hover::after,
.pets:hover::after,
.resturant:hover::after,
.health_club:hover::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: #022501d6;
	border-radius: 15px;
}

.reviews h2 {
	font-family: 'Poppins', sans-serif;
	font-size: 38px;
	font-weight: bold;
	text-transform: uppercase;
}


.five-stars {
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
	text-align: center;
	border-radius: 10px;
}


/* About Us */
.about_banner_sec {
	height: 100vh;
	background: url(images/about-us-hero-bg.webp) no-repeat center center/cover;
	display: flex;
	align-items: center;
	padding-top: 100px;
	color: #fff;
}

.about_banner_sec h1 {
	font-size: 80px;
	color: #fff;
	font-family: 'Poppins', sans-serif;
	font-weight: bold;
	line-height: 0.9;
	margin-bottom: 20px;
}

.about_banner_sec h6 {
	font-size: 22px;
	font-weight: 300;
	font-family: 'Montserrat', sans-serif;
}

.about_us_pg .history {
	padding: 80px 0;
	background: url(images/mountain-bg.webp) no-repeat center center/cover;
}

.about_us_pg h3 {
	font-size: 28px;
	font-weight: 300;
	text-transform: uppercase;
	font-family: 'Poppins', sans-serif;
}

.about_us_pg h2 {
	font-size: 45px;
	font-weight: bold;
	text-transform: uppercase;
	font-family: 'Poppins', sans-serif;
}

.about_us_pg .history img {
	border-radius: 20px;
}

.about_us_pg .owners {
	padding: 80px 0;
	background: url(images/rooms-bg.webp) no-repeat center center/cover;
	background-position-y: -40px;
}

.about_us_pg .owner-box img {
	background: #fff;
	border-radius: 20px;
	margin: 0 auto;
	text-align: center;
}

.about_us_pg .owner-box h3 {
	font-weight: bold;
}

.about_us_pg .owner-box .designation {
	font-size: 15px;
	font-weight: 400;
	font-family: 'Poppins', sans-serif;
	font-style: italic;
}

.property_features {
	padding: 80px 0;
}

.property_features .quote {
	font-weight: 600;
	font-family: 'poppins', sans-serif;
	font-style: normal;
}

/* Allow side cards to be visible */
.testimonials .owl-carousel .owl-stage-outer {
	overflow: visible;
}

.testimonials {
	overflow: hidden;
}

/* Default (side items) */
.testimonial-item {
	border: 4px solid #707070;
	padding: 40px 60px;
	border-radius: 20px;
	transition: all 0.4s ease;
	transform: scale(0.85);
	min-height: 400px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.testimonial-rating {
	padding-top: 20px;
	border-top: 1px solid #707070;
	margin-bottom: 0 !important;
}

.testimonial-item h3 {
	font-weight: bold;
	text-transform: capitalize;
}

/* Center item */
.owl-item.center .testimonial-item {
	transform: scale(1);
	opacity: 1;
	border: 4px solid #079B05;
	/* green border */
}

/* Accomodation Page */
.accomodation {
	background: url(images/whole-bg.webp) no-repeat center center/ cover;
	background-position-y: 350px;
	background-color: #FBFBFD;
}

.main-image {
	border-radius: 20px;
	overflow: hidden;
}

.main-image img {
	height: 500px;
	object-fit: cover;
}

.accomodation .mphb_sc_search-wrapper.is-style-horizontal-form form>* select {
	height: 100% !important;
	background: transparent !important;
	border: 0px solid #ddd !important;
	border-radius: 3px !important;
	padding: 10px !important;
}

.accomodation .mphb_sc_search-check-in-date input,
.accomodation .mphb_sc_search-check-out-date input {
	background: transparent !important;
}

.accomodation .mphb_sc_search-wrapper.is-style-horizontal-form form>* input::placeholder {
	color: #000 !important;
}

.accomodation_search {
	box-shadow: 0px 3px 6px #00000029;
	margin-bottom: 30px;
}

.gallery-prev,
.gallery-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: transparent;
	color: #fff;
	border: none;
	font-size: 30px;
	padding: 10px 15px;
	cursor: pointer;
	border-radius: 50%;
}

.gallery-prev {
	left: 15px;
}

.gallery-next {
	right: 15px;
}

.side-thumb {
	cursor: pointer;
	height: 170px;
	object-fit: cover;
	border-radius: 8px !important;
}

.bottom-thumb {
	width: 100px;
	cursor: pointer;
	border-radius: 6px !important;
}

.mphb-room-type-title.entry-title {
	text-align: left !important;
}

.mphb-room-type-title.entry-title a {
	font-size: 28px !important;
	font-weight: bold;
	font-family: 'Poppins', sans-serif;
	color: #000 !important;
	text-align: left !important;

}

#haf-popup .mphb-check-in-date-wrapper,
#haf-popup .mphb-check-out-date-wrapper,
.is-direct-booking .mphb-check-in-date-wrapper,
.is-direct-booking .mphb-check-out-date-wrapper {
	display: inline-block;
	width: 49% !important;
}

#haf-popup .mphb-check-in-date-wrapper input,
#haf-popup .mphb-check-out-date-wrapper input,
.is-direct-booking .mphb-check-in-date-wrapper input,
.is-direct-booking .mphb-check-out-date-wrapper input {
	border: 1.5px solid #d0d0d0;
	border-radius: 10px;
	padding: 10px 12px;
	font-size: .9rem;
	font-family: inherit;
	outline: none;
	transition: border-color .2s;
	width: 100%;
	box-sizing: border-box;
}

.is-direct-booking {
	border: 1px solid #d0d0d0;
	border-radius: 16px;
	padding: 24px;
	font-family: inherit;
	background: #fff;
	position: relative;
	overflow: visible;
}

#haf-popup .mphb-adults-wrapper.mphb-capacity-wrapper,
#haf-popup .mphb-children-wrapper.mphb-capacity-wrapper,
.is-direct-booking .mphb-adults-wrapper.mphb-capacity-wrapper,
.is-direct-booking .mphb-children-wrapper.mphb-capacity-wrapper {
	display: flex;
	align-items: start;
	flex-direction: column;
	justify-content: space-between;
	padding: 2px 18px;
	border-bottom: 1px solid #f0f0f0;
}

#haf-popup label,
#mphb-booking-details label,
.is-direct-booking label {
	font-size: .78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #555;
}

#haf-popup .quantity-button,
.is-direct-booking .quantity-button {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	border: 2px solid #079b05 !important;
	background: transparent;
	color: #079b05;
	font-size: 1.1rem;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	transition: background .15s, color .15s;
	padding: 0;
}

#haf-popup .quantity-button:hover,
.is-direct-booking .quantity-button:hover {
	background: #079b05;
	color: #fff;
}

#haf-popup .mphb-reserve-btn,
#haf-popup .mphb-confirm-reservation,
.is-direct-booking .mphb-confirm-reservation,
.is-direct-booking .mphb-reserve-btn {
	width: 100%;
	padding: 14px;
	background: #0e930c;
	color: #fff;
	border: 1px solid #0e930c;
	border-radius: 50px;
	font-size: 1rem;
	font-weight: 700;
	cursor: pointer;
	letter-spacing: .03em;
	transition: background .2s, color .2s;
	font-family: inherit;
	text-transform: uppercase;
}

/* Check Out */
#mphb_room_details-0-adults,
#mphb_room_details-0-children {
	width: 100%;
	background: #fff;
	border: 1px solid #000;
	padding: 10px 20px;
	border-radius: 20px;
}

#mphb-booking-details,
#mphb-price-details {
	padding: 20px;
	border: 1px solid #000;
	border-radius: 15px;
	background: #fff;
}


/* ........ Single Room ....... */
/* ── Page Wrap ── */
.room-page-wrap {
	margin: 0 auto;
	padding: 0 0px 80px;
	font-family: var(--font-body);
	color: var(--text-dark);
	background: url(images/whole-bg.webp) no-repeat center center/cover;
}

/* ── Breadcrumb ── */
.room-breadcrumb {
	font-size: 12px;
	color: var(--text-light);
	padding: 18px 0 10px;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.room-breadcrumb a {
	color: var(--text-light);
	text-decoration: none;
}

.room-breadcrumb a:hover {
	color: var(--green);
}

.room-breadcrumb span {
	margin: 0 6px;
}

/* ── Gallery shared image styles ── */
.room-gallery img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.3s ease;
	cursor: pointer;
	border-radius: var(--radius);
}

.room-gallery>* {
	overflow: hidden;
	border-radius: var(--radius);
}

.room-gallery img:hover {
	transform: scale(1.04);
}

.img-thumb {
	border-radius: 20px;
}

.img-main {
	border-radius: 20px;
}

/* ── Two-column body ── */
.room-body {
	display: grid;
	grid-template-columns: 1fr 0px;
	gap: 40px;
	align-items: start;
	margin-top: 30px;
}

/* ── Room Details ── */
.room-meta-top {
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #000;
	margin-bottom: 6px;
}

.room-title {
	font-size: 42px;
	font-weight: 700;
	margin-bottom: 5px;
	text-transform: uppercase;
}

.room-stars {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 12px;
}

.room-stars .stars {
	color: #000;
	font-size: 18px;
	letter-spacing: 2px;
}

.room-stars .review-count {
	color: #000;
}

.room-stats {
	display: flex;
	gap: 24px;
	padding: 0 0 14px 0;
	flex-wrap: wrap;
}

.room-stat {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 14px;
	color: var(--text-mid);
	margin-left: 6px;
}

.room-stat svg {
	width: 18px;
	height: 18px;
	color: #000;
	flex-shrink: 0;
}

.room-about {
	border: 2px solid #000;
	border-right: 0;
	border-left: 0;
	padding: 38px 0;
}

.room-about h2,
.room-amenities h2 {
	font-size: 22px;
	font-weight: 600;
	margin-bottom: 18px;
}

.room-about .room-description {
	font-size: 15px;
	line-height: 1.7;
	color: var(--text-mid);
}

.room-about .room-description p {
	margin-bottom: 12px;
}

.room-divider {
	border: none;
	border-top: 1px solid var(--border);
	margin: 30px 0;
}

/* ── Amenities ── */
.amenities-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px 10px;
}

.amenity-item {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #000;
	font-family: 'Montserrat', sans-serif;
}



/* ── Booking Widget ── */
.room-booking-widget {
	position: sticky;
	top: 100px;
	background: var(--white);
	border: 1.5px solid var(--border);
	border-radius: var(--radius);
	padding: 28px 24px;
	box-shadow: var(--shadow-md);
}

.booking-price {
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 20px;
}

.booking-price span {
	font-size: 15px;
	font-weight: 400;
	color: var(--text-light);
}

/* MotoPress form overrides */
.room-booking-widget input[type="text"],
.room-booking-widget input[type="date"],
.room-booking-widget select {
	width: 100% !important;
	padding: 10px 14px !important;
	border: 1.5px solid var(--border) !important;
	border-radius: 6px !important;
	font-size: 14px !important;
	margin-bottom: 10px !important;
	background: var(--white) !important;
}

.room-booking-widget input:focus,
.room-booking-widget select:focus {
	outline: none !important;
	border-color: var(--green) !important;
}

.room-booking-widget button[type="submit"],
.room-booking-widget input[type="submit"],
.room-booking-widget .mphb-check-button {
	width: 100% !important;
	background: var(--green-btn) !important;
	color: var(--white) !important;
	border: none !important;
	padding: 14px !important;
	border-radius: 6px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	transition: background 0.2s !important;
	margin-top: 6px !important;
}

.room-booking-widget button[type="submit"]:hover,
.room-booking-widget .mphb-check-button:hover {
	background: var(--green-hover) !important;
}

/* ── Lightbox ── */
.room-lightbox {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.92);
	z-index: 9999;
	align-items: center;
	justify-content: center;
}

.room-lightbox.active {
	display: flex;
}

.room-lightbox img {
	max-width: 90vw;
	max-height: 88vh;
	object-fit: contain;
	border-radius: 4px;
}

.room-lightbox-close {
	position: absolute;
	top: 20px;
	right: 28px;
	color: #fff;
	font-size: 36px;
	cursor: pointer;
	background: none;
	border: none;
	line-height: 1;
}

/* ── Responsive ── */
@media (max-width: 900px) {
	.room-body {
		grid-template-columns: 1fr;
	}

	.room-booking-widget {
		position: static;
		order: -1;
	}

	.amenities-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 600px) {
	.room-title {
		font-size: 28px;
	}

	.amenities-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.room-stats {
		gap: 14px;
	}
}

.similar_rooms h2 {
	text-transform: uppercase;
	font-size: 42px;
	color: #000;
	text-align: center;
	margin: 20px 0;
	font-weight: bold;
	text-transform: uppercase;
}




/* ......... Contact Us ......... */
.contact_us {
	background: url(images/rooms-bg.webp) no-repeat center center/contain;
	background-position-y: 400px;
}

.contact_form .wpforms-container input,
.contact_form div.wpforms-container-full select {
	border-radius: 40px !important;
	height: 70px !important;
	border: 1px solid #707070 !important;
	background: #fff !important;
}

.contact_form div.wpforms-container-full textarea {
	border-radius: 40px !important;
	border: 1px solid #707070 !important;
	background: #fff !important;
}

.contact_us h2 {
	font-size: 45px;
	font-weight: bold;
	text-transform: uppercase;
	font-family: 'Poppins', sans-serif;
	margin-top: 50px;
}

.contact_info {
	/*padding: 40px;*/
	padding: 80px;
	border-radius: 40px;
	border: 1px solid #707070;
	height: 84%;
	background: url(images/contact-info-bg.webp) no-repeat center bottom/contain;
}

.contact_info i {
	font-size: 20px;
}

.contact_details p {
	font-size: 20px;
	font-weight: 500;
}

.contact_us .location img {
	border-radius: 20px;
	margin-top: 40px;
	border: 1px solid #707070;
}

.contact_us .location {
	position: relative;
}

.contact_us .location .cta {
	position: absolute;
	bottom: 40px;
	left: 50%;
	transform: translate(-50%, -50%);
}

.contact_faq {
	margin-top: 60px;
}

.contact_faq .accordion-button {
	background: transparent !important;
	color: #000 !important;
	font-size: 20px;
	font-weight: 500;
	font-family: 'Poppins', sans-serif;
}

.contact_faq .accordion-button:not(.collapsed)::after {
	flex-shrink: 0;
	width: 1.25rem;
	height: 1.25rem;
	margin-left: auto;
	content: "";
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-size: 1.25rem;
	transition: transform 0.2s ease-in-out;
	transform: rotate(-90deg);
}

.accordion-body {
	font-size: 18px;
}

.accordion-item {
	border: 1px solid #000 !important;
	margin-bottom: 20px;
	border-radius: 30px !important;
}

.accordion-button:not(.collapsed) {
	box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0);
}


/* ....... Concord Page .......... */
.concord_page {
	background: url(images/mountain-bg.webp) no-repeat center center/contain;
	background-position-y: -280px;
}

.concord_page .map,
.concord_page .thumbnail {
	border-radius: 20px;
	margin-top: 40px;
	border: 1px solid #707070;
	overflow: hidden;
}

.concord_page .thumbnail {
	margin-top: 0;
}

.concord_page .map {
	margin: 80px 0;
}

.concord_page h3 {
	font-size: 28px;
	font-weight: 300;
	text-transform: uppercase;
	font-family: 'Poppins', sans-serif;
}

.concord_page h2 {
	font-size: 45px;
	font-weight: bold;
	text-transform: uppercase;
	font-family: 'Poppins', sans-serif;
	margin-bottom: 20px;
}

.pro_tip {
	border-radius: 20px;
	margin-top: 40px;
	border: 1px solid #707070;
	overflow: hidden;
	padding: 20px;
}

.outdoor {
	background: url(images/rooms-bg.webp) no-repeat center center/contain;
}

.outdoor h2,
.wildlife h2 {
	margin-top: 80px;
	line-height: 1;
}

.outdoor-item {
	margin: 0 20px;
	border: 1px solid #727272;
	padding: 25px;
	border-radius: 20px;
	margin-top: 60px;
	background: #fff;
}

.outdoor-item img {
	border-radius: 20px;
	width: 100%;
}

.outdoor-item h3 {
	font-weight: bold;
	font-family: 'Poppins', sans-serif;
	font-size: 28px;
	margin: 30px 0 10px 0;
}

.wild_bx {
	height: 282px;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
}

.wild_bx.mountain_lion {
	height: 99%;
}

.wild_bx.mountain_lion img {
	object-position: bottom;
	transform: translateX(-270px);
}

.wild_bx:hover .hover_bx {
	display: block;
}

.wild_content {
	position: absolute;
	bottom: 20px;
	left: 30px;
	width: 86%;
	color: #fff;
	z-index: 9;
}

.wild_content h3 {
	font-weight: bold;
}

.wild_bx .overlay {
	background: transparent linear-gradient(0deg, #0C2317 0%, #5C6C6400 100%) 0% 0% no-repeat padding-box;
	border: 1px solid #00000000;
	border-radius: 20px;
	opacity: 0.91;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.wild_bx:hover .overlay {
	background: #0C2317 0% 0% no-repeat padding-box;
}

.local_dining {
	padding: 120px 0 80px 0;
}

.restro {
	background: #FFFFFF 0% 0% no-repeat padding-box;
	border: 1px solid #727272;
	border-radius: 20px;
	padding: 50px 50px 0 50px;
}

.restro-item img {
	border-radius: 20px;
}

.restro-item .distance {
	font-size: 18px;
	font-weight: 500;
	font-family: 'Poppins', sans-serif;
	margin: 15px 0;
}

.restro-item h3 {
	font-weight: bold;
}



.weather-wrapper {
	background: url(images/weather-bg.webp) no-repeat center center/cover;
	padding: 20px;
	border-radius: 20px;
	overflow: hidden;
	color: #fff;
	display: flex;
	align-items: flex-end !important;
	justify-content: space-evenly !important;
}

.weather-card {
	background: #050E09 0% 0% no-repeat padding-box;
	border-radius: 20px;
	opacity: 0.91;
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	backdrop-filter: blur(15px);
	padding: 30px;
	border-radius: 20px !important;
	display: inline-flex;
	justify-content: space-evenly;
}

.weather-card h5 {
	font-size: 22px;
	color: #fff;
	font-weight: 600;
	font-family: 'Poppins', sans-serif;
	opacity: 60%;
}

.weather-card h4 {
	font-size: 24px;
	color: #fff;
	font-weight: 600;
	font-family: 'Poppins', sans-serif;
}

.weather-card h2 {
	font-size: 100px;
	color: #fff;
	font-weight: 700;
	font-family: 'Poppins', sans-serif;
	margin-bottom: 10px;
}

.forecast-row {
	gap: 15px;
	display: inline-block;
	background: #050E09 0% 0% no-repeat padding-box;
	border-radius: 20px;
	opacity: 0.91;
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	backdrop-filter: blur(10px);
	padding: 0 20px;
	border-radius: 15px;
	text-align: center;
}

.forecast-day {
	padding: 20px;
	border-radius: 15px;
	text-align: center;
	width: 190px;
	display: inline-block;
	height: 100%;
	padding-top: 20px !important;
}

.forecast-day:nth-of-type(1) {
	z-index: 99;
	background: #000 0% 0% no-repeat padding-box;
	border-radius: 20px !important;
	opacity: 0.99;
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
}



/* Checkout */
.checkout {
	background: url(images/whole-bg.webp) no-repeat center center/cover;
}

.checkout_form {
	background: #FFFFFF 0% 0% no-repeat padding-box;
	border: 1px solid #000;
	border-radius: 20px;
	padding: 20px;
	margin-bottom: 20px;
}

#wpforms-285 h1,
#wpforms-285 h2 {
	margin: 0;
}

#wpforms-submit-285 {
	width: 100%;
	background: #079B05 0% 0% no-repeat padding-box;
	border: 1px solid #079B05;
	border-radius: 25px;
}


/* .... Pets & Smoking .... */
.pets_smoking{
	background: url(images/rooms-bg.webp) no-repeat center center/cover;
	padding: 40px 0;
}
.ps_bx {
	border: 1px solid #000;
	border-radius: 10px;
	padding: 20px;
	text-align: center;
	background: #fff;
	height: 100%;
}
.pets_smoking h2
{
	font-size: 40px;
	font-weight: bold;
}
.ps_bx img {
	width: 80px;
	margin: 10px auto;
	text-align: center;
}
.ps_bx h3
{
	font-size: 22px;
	font-weight: bold;
	text-align: center;
}


/* .... Privacy Policy .... */
.policy
{
	background: url(images/rooms-bg.webp) no-repeat center center/cover;
}
.privacy_content {
	background: #FFFFFF 0% 0% no-repeat padding-box;
	border: 1px solid #707070;
	border-radius: 10px;
	opacity: 1;
	padding: 40px;
	margin: 50px 0;
	
}
.privacy_content h3:first-of-type{
	font-weight: 400;
}
.privacy_content h2{
	font-size: 45px;
	text-transform: uppercase;
	font-weight: bold;
}
.privacy_content h3{
	font-size: 28px;
	font-weight: bold;
	text-transform: uppercase;
}
.privacy_content span
{
	text-transform: uppercase;
}


/* ......... Footer ........... */
footer {
	background: url(images/footer-bg.webp) no-repeat center center/cover;
	padding-top: 40px;
	background-position-y: -80px;
	padding-bottom: 20px;
}

.subscription {
	background: url(images/subscription-bg.webp) no-repeat center center/cover;
	padding: 20px 0;
	color: #fff;
}

.subscription h3 {
	font-size: 30px;
	font-weight: 600;
}

#mailpoet_form_1 {
	background: transparent !important;
	position: relative;
}

#mailpoet_form_1 form.mailpoet_form {
	padding: 0px !important;
}

#mailpoet_form_1 .mailpoet_paragraph {
	margin-bottom: 0px !important;
}

#mailpoet_form_1 .mailpoet_paragraph input {
	line-height: 35px;
	margin-bottom: 0px !important;
	border: 1px solid #079b05;
	border-radius: 25px;
}

.mailpoet_paragraph.last {
	position: absolute;
	top: 5px;
	right: 5px;
}

#mailpoet_form_1 .mailpoet_submit {
	line-height: 25px !important;
	background: #0e930c !important;
	color: #fff !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 500;
}

.social {
	padding: 15px 0;
	border-bottom: 2px solid #93dc92;
}

.social p {
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 0;
}

.social a i {
	color: #000;
	margin-right: 12px;
}

.footer_info {
	padding: 20px 0;
}

.footer_info h4 {
	margin-bottom: 15px;
}

.footer_info a {
	font-weight: 500;
	color: #000;
	display: block;
	margin-bottom: 15px;
}

.footer_info p {
	font-weight: 700;
	font-size: 18px;
}

.footer_info img {
	margin-right: 25px;
}

.copyright {
	background: #278926;
	color: #fff;
	padding: 15px 0 12px 0;
}

.copyright p {
	display: inline-block;
	margin-bottom: 12px;
	margin-bottom: 0;
}

.payment-icons p i {
	font-size: 26px !important;
}



/* Media Query */
@media only screen and (min-width: 992px) and (max-width: 1199.5px) {
	.header {
		padding: 20px 1px 10px 25px;
	}

	#menu-main-menu a {
		padding: 0 2px 5px 2px;
	}

	.testimonial .cta a {
		padding: 10px 7px;
	}

	.inner_header .page_title h1 {
		font-size: 32px;
	}

	footer {
		background-position-y: 0px;
	}

	.footer_info img {
		margin-right: 15px;
	}

	/* Home Page */
	.banner .reserve_form {
		right: 100px;
		bottom: 40%;
	}

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

	.amenities h2 {
		font-size: 33px;
	}

	.amenity-item {
		margin-bottom: 8px;
	}

	.amenity-item h4 {
		font-size: 20px;
	}

	.explore h2 {
		font-size: 30px;
	}

	.coronado h3,
	.pets h3,
	.resturant h3,
	.health_club h3 {
		font-size: 28px;
	}

	/* Accomodation Page */
	.mphb-room-type-title.entry-title a,
	.haf-card-title {
		font-size: 24px !important;
	}

	.acco-img img {
		height: 100% !important;
		object-fit: cover;
		border-radius: 12px;
	}

	.haf-panel {
		padding: 0px 0px 0px 0px !important;
	}

	/* Explore */
	.concord_page h2 {
		font-size: 32px;
	}

	.pro_tip {
		padding: 20px 20px 0 20px;
	}

	.humming_bx .img-fluid,
	.coati_bx .img-fluid {
		max-width: inherit;
		width: inherit;
		object-position: center;
		transform: translate(-433px, -130px);
	}

	.concord_page h3 {
		font-size: 22px;
	}

	.forecast-day {
		min-width: 112px;
		width: auto;
	}

}

@media only screen and (min-width: 1024px) and (max-width: 1199.5px) {
	.banner .reserve_form {
		display: none;
	}
}

@media only screen and (min-width: 1200px) and (max-width: 1399.5px) {
	.header {
		padding: 20px 10px 10px 30px;
	}

	.header_contact a {
		padding: 10px 2px;
	}

	.inner_header .page_title h1 {
		font-size: 36px;
	}

	footer {
		background-position-y: 0px;
	}

	/* Home Page */
	.banner .reserve_form {
		right: 98px;
		bottom: 35%;
		padding: 10px 25px;
	}

	#wpforms-95 {
		margin: 8px auto !important;
	}

	.amenities h2 {
		font-size: 40px;
	}

	.explore h2 {
		font-size: 37px;
	}

	.amenity-item h4 {
		font-size: 27px;
	}

	/* Accomodation */
	.acco-img img {
		height: 100% !important;
		object-fit: cover;
		border-radius: 12px;
	}

	/* Explore */
	.wild_bx {
		background: transparent linear-gradient(0deg, #0C2317 0%, #5C6C6400 100%) 0% 0% no-repeat padding-box;
	}

	.forecast-day {
		width: 158px;
	}
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
	.banner .reserve_form {
		right: 126px;
		bottom: 38%;
	}

	footer {
		background-position-y: 0px;
	}

}






/*custom added css*/

.home_page .main-slider {
	--bs-gutter-x: 0;
}


.room-item {
	background: #ffffff;
}

.room-item img {
	height: auto;
}

footer {
	padding-bottom: 0;
}




/*accomodation page css*/

.acco-img img {
	width: 100%;
	height: 100%;
	border-radius: 10px;
}









/* Number stepper styling */
.mphb-number-stepper {
	margin-bottom: 20px;
}

.mphb-number-stepper label {
	display: block;
	margin-bottom: 8px;
	font-weight: 500;
}

.mphb-stepper-wrapper {
	display: flex;
	align-items: center;
	max-width: 120px;
	border: 1px solid #ddd;
	border-radius: 4px;
	overflow: hidden;
}

.mphb-stepper-btn {
	width: 36px;
	height: 36px;
	background: #f5f5f5;
	border: none;
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s;
}

.mphb-stepper-btn:hover {
	background: #e0e0e0;
}

.mphb-stepper-btn:active {
	background: #d0d0d0;
}

.mphb-stepper-input {
	width: 48px;
	height: 36px;
	border: none;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	text-align: center;
	font-size: 16px;
	background: white;
}

.mphb-stepper-input::-webkit-outer-spin-button,
.mphb-stepper-input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}



.mphb_sc_search-form>p,
.mphb_sc_search-form>div {
	flex: 1 1 auto;
	min-width: 150px;
	margin: 0;
}

.mphb_sc_search-submit-button-wrapper {
	flex: 0 0 auto;
}

/* Make date inputs full width */
.mphb_sc_search-check-in-date input,
.mphb_sc_search-check-out-date input {
	width: 100%;
	padding: 8px;
	border: 0px solid #ddd;
	border-radius: 4px;
}

.accomodation .mphb_sc_search-check-in-date input,
.accomodation .mphb_sc_search-check-out-date input {
	border: 0px solid #ddd !important;
}