@media (min-width: 901px) {
  .main-menu {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100%;
    position: static !important;
  }
  .main-menu .menu-wrapper {
    display: flex !important;
    justify-content: center !important;
    width: 100%;
  }
  .main-menu ul {
    display: flex !important;
    justify-content: center !important;
    width: 100%;
    gap: 32px;
  }
}
@media (min-width: 901px) {
  .mobile-menu-btn {
    display: none !important;
  }
}
@media (max-width: 900px) {
  .mobile-menu-btn {
    display: block !important;
  }
  .main-menu {
    display: none !important;
  }
  .main-menu[style*='display: block'] {
    display: block !important;
  }
}
/* Hill Partridge Cottage - Custom Color Palette */

:root {
  --sage-green: #8FC7A1;
  --warm-beige: #FFF6E8;
  --deep-cedar: #D87C5A;
  --white: #ffffff;
  --text-dark: #2d2d2d;
}

/* ========== HERO SECTION ========== */

.hero-area {
  position: relative;
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(0,0,0,0.25), rgba(0,0,0,0.05));
  z-index: 1;
}

.hero-text {
  position: relative;
  z-index: 2;
}

.hero-text p {
  color: #FFF6E8 !important;
}

.hero-buttons a.primary-btn {
  padding: 15px 35px;
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 600;
}

/* Apartment Preview Cards */
.apartment-preview-card {
  background: white;
  border: 1px solid #e0dcd4;
  margin-bottom: 30px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.apartment-preview-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.apartment-preview-text ul li {
  padding: 8px 0;
  color: var(--text-dark);
}

/* ========== CALENDAR BLOCKED DATES ========== */

/* Style for blocked dates in jQuery datepicker */
.ui-datepicker td.blocked-date .ui-state-default {
  background-color: #ffdddd !important;
  color: #cc0000 !important;
  text-decoration: line-through;
  cursor: not-allowed !important;
  opacity: 0.6;
}

.ui-datepicker td.blocked-date:hover .ui-state-default {
  background-color: #ffcccc !important;
}

/* ========== PRIMARY BRAND COLOR (Sage Green) ========== */

/* Header / Navigation */
.header-section {
  background-color: var(--sage-green) !important;
}

/* Make logo smaller and circular */
.logo img {
  max-height: 100px !important;
  width: 100px !important;
  height: 100px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.main-menu ul li a {
  color: var(--white) !important;
}

.main-menu ul li a:hover,
.main-menu ul li.active a {
  color: var(--warm-beige) !important;
}

/* Section Titles */
.section-title h2,
.breadcrumb-text h2 {
  color: var(--sage-green) !important;
}

/* Check Availability Title */
.check-form h4 {
  color: var(--warm-beige) !important;
  background-color: var(--sage-green);
  padding: 15px;
  margin: 0 0 20px 0;
  border-radius: 5px 5px 0 0;
}

/* Primary Buttons - Sage Green */
.check-form button[type="submit"] {
  background-color: var(--sage-green) !important;
  border-color: var(--sage-green) !important;
  height: 68px !important;
  padding: 0 27px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.check-form button[type="submit"]:hover {
  background-color: var(--deep-cedar) !important;
  border-color: var(--deep-cedar) !important;
}

/* ========== BASE / BACKGROUND (Warm Beige) ========== */

/* Page Backgrounds */
body {
  background-color: var(--warm-beige) !important;
}

.homepage-about,
.testimonial-section,
.about-page-section,
.accommodations-section,
.blog-section,
.contact-section {
  background-color: var(--warm-beige) !important;
}

/* Contact Form Styling */
.contact-section .col-lg-4 {
  flex: 0 0 40% !important;
  max-width: 40% !important;
}

.contact-section .col-lg-8 {
  flex: 0 0 60% !important;
  max-width: 60% !important;
}

.contact-text {
  padding: 30px !important;
}

.contact-item {
  display: flex !important;
  align-items: flex-start !important;
  margin-bottom: 20px !important;
}

.contact-item i {
  margin-right: 15px !important;
  margin-top: 3px !important;
  flex-shrink: 0 !important;
}

.contact-item p {
  margin: 0 !important;
  flex: 1 !important;
}

.contact-form {
  padding: 50px !important;
  background-color: var(--white) !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
}

.contact-form .row {
  margin-left: -25px !important;
  margin-right: -25px !important;
}

.contact-form .row > [class*='col-'] {
  padding-left: 25px !important;
  padding-right: 25px !important;
}

.contact-form input,
.contact-form textarea {
  width: 100% !important;
  padding: 12px 0 12px 10px !important;
  margin-bottom: 25px !important;
  border-bottom: 1px solid var(--sage-green) !important;
}

.contact-form textarea {
  height: 120px !important;
  resize: vertical !important;
  min-height: 80px !important;
  max-height: 200px !important;
}

.contact-form input:focus,
.contact-form textarea:focus {
  border-bottom-color: var(--deep-cedar) !important;
  outline: none !important;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  opacity: 0.5 !important;
  padding-left: 10px !important;
}

.contact-form button {
  background-color: var(--sage-green) !important;
  margin-top: 10px !important;
}

.contact-form button:hover {
  background-color: var(--deep-cedar) !important;
}

.contact-form button:disabled {
  background-color: #ccc !important;
  cursor: not-allowed !important;
}

/* Cards and Content Sections */
.accommodation-item,
.testimonial-item,
.blog-item,
.about-img,
.contact-text {
  background-color: var(--white) !important;
  border: 1px solid #e0dcd4;
}

/* Search Filter Section */
.search-filter {
  background-color: rgba(241, 236, 228, 0.95) !important;
}

.check-form {
  background-color: var(--white) !important;
  padding-bottom: 30px !important;
}

/* ========== ACCENT / CONTRAST (Deep Cedar Brown) ========== */

/* CTA Buttons - "Book Now", "More Details" */
.primary-btn,
button.primary-btn,
a.primary-btn {
  background-color: var(--deep-cedar) !important;
  border-color: var(--deep-cedar) !important;
  color: var(--white) !important;
}

.primary-btn:hover,
button.primary-btn:hover,
a.primary-btn:hover {
  background-color: var(--sage-green) !important;
  border-color: var(--sage-green) !important;
  opacity: 0.9;
}

/* Footer */
.footer-section {
  background-color: var(--deep-cedar) !important;
}

.footer-item h5,
.footer-item ul li,
.footer-logo {
  color: var(--warm-beige) !important;
}

.footer-logo {
  text-align: center !important;
  margin-bottom: 30px !important;
}

.footer-logo img {
  max-height: 150px !important;
  width: 150px !important;
  height: 150px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.weather-container {
  background-color: rgba(126, 155, 139, 0.15) !important;
  padding: 20px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(126, 155, 139, 0.3) !important;
}

.copyright {
  background-color: rgba(91, 70, 54, 0.8) !important;
  color: var(--warm-beige) !important;
}

.copyright ul li a {
  color: var(--warm-beige) !important;
}

.copyright ul li a:hover {
  color: var(--sage-green) !important;
}

/* Icons and Highlights */
.flaticon-019-television,
.flaticon-029-wifi,
.flaticon-003-air-conditioner,
.flaticon-007-swimming-pool,
.fa {
  color: var(--deep-cedar) !important;
}

.fi-info i {
  color: var(--warm-beige) !important;
}

/* Room Pricing */
.accommodation-text h2 {
  color: var(--deep-cedar) !important;
}

/* Accommodation Text Padding */
.accommodation-text {
  padding: 30px !important;
}

.accommodation-text h3 {
  margin-bottom: 15px !important;
}

.accommodation-text ul {
  margin: 20px 0 !important;
  padding-left: 0 !important;
}

.accommodation-text li {
  margin-bottom: 10px !important;
}

/* ========== TEXT COLORS ========== */

/* Body Text */
body,
p,
.about-text p,
.testimonial-item p {
  color: var(--text-dark) !important;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  color: var(--deep-cedar) !important;
}

/* Links */
a {
  color: var(--sage-green) !important;
}

a:hover {
  color: var(--deep-cedar) !important;
}

/* ========== FACILITY SECTIONS ========== */
.facilities-item {
  border: 2px solid var(--sage-green);
}

.fi-title h2 {
  color: var(--white) !important;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

.fi-title p {
  color: var(--warm-beige) !important;
}

/* ========== TESTIMONIALS ========== */
.rating i {
  color: #F4A460 !important; /* Keep gold stars */
}

.ti-time {
  color: var(--sage-green) !important;
}

.author-text h6 {
  color: var(--deep-cedar) !important;
}

/* ========== BREADCRUMB ========== */
.breadcrumb-section {
  background-color: var(--sage-green) !important;
}

.breadcrumb-text h2,
.breadcrumb-option a,
.breadcrumb-option span {
  color: var(--white) !important;
}

/* ========== FORMS ========== */
input[type="text"],
input[type="email"],
textarea,
select {
  border: 1px solid var(--sage-green) !important;
  background-color: var(--white) !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus,
select:focus {
  border-color: var(--deep-cedar) !important;
  outline: none !important;
}

/* Check form overrides */
.check-form input,
.check-form select {
  border: 1px solid #ddd !important;
}

.check-form .nice-select.open {
  border-color: #8FC7A1 !important;
  outline: none !important;
}

/* ========== MOBILE MENU ========== */
.slicknav_menu {
  background-color: var(--sage-green) !important;
}

.slicknav_nav a {
  color: var(--white) !important;
}

.slicknav_nav a:hover {
  background-color: var(--deep-cedar) !important;
}

/* ========== HOVER EFFECTS ========== */
.accommodation-item:hover {
  transform: translateY(-5px);
  transition: all 0.3s ease;
  box-shadow: 0 5px 20px rgba(126, 155, 139, 0.3);
}

.testimonial-item:hover {
  box-shadow: 0 5px 15px rgba(91, 70, 54, 0.2);
}

/* ========== APARTMENT CAROUSEL ========== */
.apartment-carousel {
  position: relative;
  overflow: hidden;
}

.apartment-carousel a.image-popup {
  display: block;
  position: relative;
  cursor: zoom-in;
}

.apartment-carousel img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  display: block;
}

.apartment-carousel .image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.apartment-carousel a.image-popup:hover .image-overlay {
  opacity: 1;
}

.apartment-carousel .image-overlay i {
  color: var(--white);
  font-size: 48px;
  transform: scale(0.8);
  transition: transform 0.3s ease;
}

.apartment-carousel a.image-popup:hover .image-overlay i {
  transform: scale(1);
}

.apartment-carousel .slick-prev,
.apartment-carousel .slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  background-color: rgba(143, 199, 161, 0.9) !important;
  color: var(--white) !important;
  border: none;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 24px;
  line-height: 45px;
  text-align: center;
}

.apartment-carousel .slick-prev:hover,
.apartment-carousel .slick-next:hover {
  background-color: var(--deep-cedar) !important;
}

.apartment-carousel .slick-prev {
  left: 20px;
}

.apartment-carousel .slick-next {
  right: 20px;
}

.apartment-carousel .slick-prev:before,
.apartment-carousel .slick-next:before {
  display: none;
}

.apartment-carousel .slick-dots {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex !important;
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
  z-index: 10;
}

.apartment-carousel .slick-dots li {
  margin: 0 5px;
}

.apartment-carousel .slick-dots li button {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.6);
  border: 2px solid rgba(255, 255, 255, 0.8);
  cursor: pointer;
  font-size: 0;
  padding: 0;
  transition: all 0.3s ease;
}

.apartment-carousel .slick-dots li button:before {
  display: none;
}

.apartment-carousel .slick-dots li.slick-active button {
  background-color: var(--sage-green);
  border-color: var(--sage-green);
  width: 30px;
  border-radius: 6px;
}

.apartment-carousel .slick-dots li button:hover {
  background-color: rgba(255, 255, 255, 0.9);
}

/* ========== REVIEWS VERTICAL SLIDER ========== */
.reviews-slider {
  height: 600px;
  position: relative;
}

.reviews-slider .testimonial-item {
  margin: 15px 0;
}

.reviews-slider .slick-prev,
.reviews-slider .slick-next {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  background-color: var(--sage-green) !important;
  color: var(--white) !important;
  border: none;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 20px;
}

.reviews-slider .slick-prev:hover,
.reviews-slider .slick-next:hover {
  background-color: var(--deep-cedar) !important;
}

.reviews-slider .slick-prev {
  top: -50px;
}

.reviews-slider .slick-next {
  bottom: -50px;
}

.reviews-slider .slick-prev:before,
.reviews-slider .slick-next:before {
  display: none;
}

.reviews-slider .slick-list {
  height: 100%;
  overflow: hidden;
}

.reviews-slider .slick-track {
  display: flex;
  flex-direction: column;
}

@media (max-width: 768px) {
  .reviews-slider {
    height: 400px;
  }
}

