/* ==========================================================================
   Hari's Haven Hospitality — Premium Design Enhancement Layer
   Loaded after style.css. Adds refined palette, typography, spacing,
   hover/animation polish. Structure, content & JS hooks are untouched.
   ========================================================================== */

/* ---------- 1. Refined luxury palette & base tokens ---------- */
:root {
  --hh-gold: #A9804A;
  --hh-gold-dark: #8C6836;
  --hh-gold-light: #C9A876;
  --hh-ink: #221F1B;
  --hh-body: #6E6659;
  --hh-ivory: #FAF6EF;
  --hh-ivory-2: #F3EDE1;
  --hh-line: #E7DFCF;
  --hh-shadow: 0 20px 45px -18px rgba(34, 31, 27, 0.28);
  --hh-shadow-soft: 0 10px 30px -12px rgba(34, 31, 27, 0.18);
  --hh-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* Base text refinement (kept close to originals, just warmed & tightened) */
body {
  color: var(--hh-body);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--hh-ink);
  letter-spacing: 0.2px;
}

h2 { line-height: 1.25; }

p { color: var(--hh-body); }

a { transition: color 0.35s var(--hh-ease), background-color 0.35s var(--hh-ease), border-color 0.35s var(--hh-ease); }

/* Selection & scrollbar */
::selection {
  background: var(--hh-gold);
  color: #fff;
}

html { scroll-behavior: smooth; }

body::-webkit-scrollbar { width: 10px; }
body::-webkit-scrollbar-track { background: var(--hh-ivory-2); }
body::-webkit-scrollbar-thumb {
  background: var(--hh-gold);
  border-radius: 10px;
  border: 2px solid var(--hh-ivory-2);
}

/* ---------- 2. Section title / eyebrow polish ---------- */
.section-title span {
  letter-spacing: 3px;
  font-weight: 600;
  color: var(--hh-gold-dark);
}

.section-title span svg path {
  fill: var(--hh-gold);
}

.section-title h2 {
  position: relative;
  font-weight: 400;
}

.section-title p {
  color: var(--hh-body);
}

/* (heading max-width/font-size override omitted here — not needed for this
   site's shorter "Refined Rooms & Suites" heading) */

/* ---------- 3. Topbar & Header ---------- */
.topbar-area.two {
  background: linear-gradient(90deg, var(--hh-gold-dark), var(--hh-gold) 55%, var(--hh-gold-dark));
}

.topbar-contact-list .topbar-single-list a {
  transition: opacity 0.3s var(--hh-ease), letter-spacing 0.3s var(--hh-ease);
}
.topbar-contact-list .topbar-single-list a:hover {
  opacity: 0.85;
  letter-spacing: 0.3px;
}

header.style-2 {
  transition: background-color 0.5s var(--hh-ease), box-shadow 0.5s var(--hh-ease), padding 0.4s var(--hh-ease);
}

header.style-2.sticky {
  background-color: rgba(255, 255, 255, 0.92);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  box-shadow: 0 8px 30px -10px rgba(34, 31, 27, 0.18);
  border-bottom: 1px solid rgba(233, 224, 205, 0.6);
}

header.style-2 .menu-list > li > a.drop-down {
  position: relative;
  font-weight: 500;
  letter-spacing: 0.3px;
}
header.style-2 .menu-list > li > a.drop-down::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0;
  height: 2px;
  background: var(--hh-gold);
  transition: width 0.35s var(--hh-ease);
}
header.style-2 .menu-list > li:hover > a.drop-down::after,
header.style-2 .menu-list > li.active > a.drop-down::after {
  width: 100%;
}

header.style-2 .sub-menu {
  border-radius: 10px;
  overflow: hidden;
  box-shadow: var(--hh-shadow);
}

/* Book Now buttons get a touch more presence */
.primary-btn2.btn-hover {
  letter-spacing: 0.5px;
}

/* ---------- 4. Buttons — shine sweep + lift ---------- */
.primary-btn1, .primary-btn2, .primary-btn3, .primary-btn4 {
  position: relative;
  overflow: hidden;
  transition: transform 0.4s var(--hh-ease), box-shadow 0.4s var(--hh-ease), background-color 0.4s var(--hh-ease), color 0.4s var(--hh-ease) !important;
}
.primary-btn1:hover, .primary-btn2:hover, .primary-btn3:hover, .primary-btn4:hover {
  transform: translateY(-3px);
  box-shadow: var(--hh-shadow-soft);
}
.primary-btn1::before, .primary-btn2::before, .primary-btn3::before, .primary-btn4::before {
  content: "";
  position: absolute;
  top: 0;
  left: -60%;
  width: 40%;
  height: 100%;
  background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);
  transform: skewX(-20deg);
  transition: left 0.7s var(--hh-ease);
  pointer-events: none;
}
.primary-btn1:hover::before, .primary-btn2:hover::before, .primary-btn3:hover::before, .primary-btn4:hover::before {
  left: 130%;
}

/* Back to top */
.progress-wrap {
  transition: transform 0.4s var(--hh-ease), box-shadow 0.4s var(--hh-ease);
}
.progress-wrap:hover {
  transform: translateY(-4px);
}

/* ---------- 5. Hero / banner ---------- */
.home1-banner-section .banner-content-wrap .banner-content h1 {
  letter-spacing: 1px;
  text-shadow: 0 8px 30px rgba(0, 0, 0, 0.35);
}

.home1-banner-section .banner-content-wrap .banner-content .span-tag span {
  letter-spacing: 4px;
  font-weight: 600;
}

.slider-btn-grp-area .slider-btn {
  transition: transform 0.4s var(--hh-ease), box-shadow 0.4s var(--hh-ease);
}
.slider-btn-grp-area .slider-btn:hover {
  transform: scale(1.08);
  box-shadow: var(--hh-shadow-soft);
}

/* Floating booking / filter search bar — elevated glass card */
.filter-wrapper {
  position: relative;
  z-index: 5;
  margin-top: -55px;
}
.filter-wrapper .filter-input-wrap {
  background: linear-gradient(135deg, rgba(34, 31, 27, 0.94), rgba(51, 46, 40, 0.94));
  border-radius: 18px;
  box-shadow: var(--hh-shadow);
  border: 1px solid rgba(201, 168, 118, 0.35);
}
.single-search-box {
  transition: background-color 0.3s var(--hh-ease);
}
.single-search-box:hover {
  background-color: rgba(255, 255, 255, 0.06);
  border-radius: 10px;
}

/* ---------- 6. About section ---------- */
.home2-about-section {
  background-color: var(--hh-ivory) !important;
}
.home2-about-section .row.align-items-center.mb-90 {
  align-items: stretch !important;
  margin-bottom: 60px !important;
}
.home2-about-section .about-img-wrapper {
  position: relative;
  height: 100%;
  min-height: 420px;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--hh-shadow);
}
.home2-about-section .about-img-wrapper img {
  transition: transform 0.8s var(--hh-ease);
  border-radius: 16px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home2-about-section .about-img-wrapper:hover img {
  transform: scale(1.05);
}
.home2-about-section .about-img-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 16px;
  pointer-events: none;
}
.home2-about-section .about-content-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.home2-about-section .about-content-wrapper .section-title.mb-60 {
  margin-bottom: 28px !important;
}
.home2-about-section .about-content-wrapper .primary-btn2 {
  align-self: flex-start;
}

.single-counter {
  transition: transform 0.4s var(--hh-ease);
}
.single-counter:hover {
  transform: translateY(-4px);
}
.single-counter .content .number h2.counter {
  color: var(--hh-gold);
  font-weight: 400;
}

/* ---------- 7. Our Properties (room-and-suites) — hero cards ---------- */
.room-and-suites-section {
  background-color: var(--hh-ivory) !important;
}
.room-and-suites-card {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--hh-shadow-soft);
  transition: box-shadow 0.5s var(--hh-ease), transform 0.5s var(--hh-ease);
}
.room-and-suites-card:hover {
  box-shadow: var(--hh-shadow);
  transform: translateY(-6px);
}
.room-and-suites-card img {
  transition: transform 0.9s var(--hh-ease);
  border-radius: 18px;
}
.room-and-suites-card:hover img {
  transform: scale(1.08);
}
.room-and-suites-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(34, 31, 27, 0) 35%, rgba(34, 31, 27, 0.82) 100%);
  z-index: 1;
  pointer-events: none;
}
.room-and-suites-content-wrap {
  position: relative;
  z-index: 2;
}
.room-and-suites-content h3 a {
  letter-spacing: 0.3px;
}
.room-and-suites-content p {
  color: rgba(255, 255, 255, 0.85) !important;
}
.room-and-suites-card .hover-content a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #fff;
  border-bottom: 1px solid var(--hh-gold-light);
  padding-bottom: 2px;
  transition: letter-spacing 0.35s var(--hh-ease), color 0.35s var(--hh-ease);
}
.room-and-suites-card .hover-content a:hover {
  letter-spacing: 0.6px;
  color: var(--hh-gold-light);
}

/* ---------- 8. Amenities / service cards ---------- */
.home2-comfort-and-signature-moment {
  background-color: #fff;
}
.service-card {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--hh-shadow-soft);
  transition: transform 0.5s var(--hh-ease), box-shadow 0.5s var(--hh-ease);
}
.service-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--hh-shadow);
}
.service-card img {
  transition: transform 0.8s var(--hh-ease), filter 0.5s var(--hh-ease);
}
.service-card:hover img {
  transform: scale(1.06);
}
.service-card .icon {
  transition: transform 0.5s var(--hh-ease), background-color 0.4s var(--hh-ease);
}
.service-card:hover .icon {
  transform: rotate(-6deg) scale(1.05);
  background-color: var(--hh-gold) !important;
}
.service-card h3 {
  letter-spacing: 0.3px;
}

/* ---------- 9. Offers ---------- */
.offer-card {
  border-radius: 16px;
  overflow: hidden;
}
.offer-card-img {
  border-radius: 16px;
  overflow: hidden;
}
.offer-card-img img {
  transition: transform 0.9s var(--hh-ease);
}
.offer-card:hover .offer-card-img img {
  transform: scale(1.08);
}
.offer-card .view-details {
  transition: letter-spacing 0.35s var(--hh-ease), color 0.35s var(--hh-ease);
}
.offer-card:hover .view-details {
  letter-spacing: 0.6px;
  color: var(--hh-gold-light) !important;
}

/* ---------- 10. Gallery ---------- */
.home1-gallary-img-wrap {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: var(--hh-shadow-soft);
}
.home1-gallary-img-wrap img {
  border-radius: 14px;
  transition: transform 0.8s var(--hh-ease), filter 0.5s var(--hh-ease);
}
.home1-gallary-img-wrap:hover img {
  transform: scale(1.1);
}
.home1-gallary-img-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(169, 128, 74, 0) 55%, rgba(34, 31, 27, 0.55) 100%);
  opacity: 0;
  transition: opacity 0.4s var(--hh-ease);
  border-radius: 14px;
}
.home1-gallary-img-wrap:hover::after {
  opacity: 1;
}
.home1-gallary-img-wrap::before {
  content: "\002B";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(0.4) rotate(45deg);
  color: #fff;
  font-size: 34px;
  font-weight: 300;
  opacity: 0;
  z-index: 2;
  transition: opacity 0.4s var(--hh-ease), transform 0.4s var(--hh-ease);
  pointer-events: none;
}
.home1-gallary-img-wrap:hover::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1) rotate(45deg);
}

/* ---------- 11. Feature banner (Why Stay With Us) ---------- */
.feature-single-item {
  transition: flex-grow 0.6s var(--hh-ease), filter 0.5s var(--hh-ease);
}
.feature-single-item .icon {
  transition: transform 0.4s var(--hh-ease);
}
.feature-single-item:hover .icon,
.feature-single-item.active .icon {
  transform: translateY(-4px);
}

/* ---------- 12. Testimonials ---------- */
.testimonial-card {
  border-radius: 16px;
  box-shadow: var(--hh-shadow-soft);
  transition: transform 0.5s var(--hh-ease), box-shadow 0.5s var(--hh-ease);
}
.testimonial-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--hh-shadow);
}
.testimonial-card .rating-area li i {
  color: var(--hh-gold);
}
.testimonial-card .author-content h6 {
  letter-spacing: 0.3px;
}

/* ---------- 13. Footer polish ---------- */
.footer-section.two {
  background-color: var(--hh-ink);
}
.footer-section.two .widget-title h5,
.footer-section.two .footer-logo-and-title .section-title p {
  letter-spacing: 0.2px;
}
.footer-section.two .contact-wrapper .contact-area .icon-and-contact .icon,
.footer-section.two .social-area .social-list .single-social a {
  transition: transform 0.4s var(--hh-ease), background-color 0.4s var(--hh-ease);
}
.footer-section.two .contact-wrapper .contact-area .icon-and-contact:hover .icon,
.footer-section.two .social-area .social-list .single-social a:hover {
  transform: translateY(-4px) scale(1.05);
}
.footer-section.two .contact-wrapper .contact-area .icon-and-contact .contact a,
.footer-section.two .footer-bottom a {
  transition: color 0.3s var(--hh-ease), padding-left 0.3s var(--hh-ease);
}
.footer-section.two .contact-wrapper .contact-area .icon-and-contact .contact a:hover {
  color: var(--hh-gold-light);
  padding-left: 3px;
}

/* ---------- 14. Cursor / misc micro-interactions ---------- */
#ball {
  background-color: var(--hh-gold) !important;
  mix-blend-mode: normal;
}

::-moz-selection {
  background: var(--hh-gold);
  color: #fff;
}

/* ---------- 14b. Gallery click-through fix ----------
   The hover overlay/plus-icon must never block Fancybox's click target. */
.home1-gallary-img-wrap::after,
.home1-gallary-img-wrap::before {
  pointer-events: none;
}
.home1-gallary-img-wrap a,
.home1-gallary-img-wrap img {
  position: relative;
  z-index: 3;
  display: block;
}

/* ---------- 16. Hero slider — shorter, more premium proportions ---------- */
.home1-banner-section .banner-wrapper .banner-img-area,
.home1-banner-section .banner-wrapper .banner-img-area img {
  min-height: 620px;
}
@media (min-width: 1600px) {
  .home1-banner-section .banner-wrapper .banner-img-area,
  .home1-banner-section .banner-wrapper .banner-img-area img {
    min-height: 680px;
  }
}
@media (max-width: 991px) {
  .home1-banner-section .banner-wrapper .banner-img-area,
  .home1-banner-section .banner-wrapper .banner-img-area img {
    min-height: 540px;
  }
}
@media (max-width: 767px) {
  .home1-banner-section .banner-wrapper .banner-img-area,
  .home1-banner-section .banner-wrapper .banner-img-area img {
    min-height: 460px;
  }
}
@media (max-width: 480px) {
  .home1-banner-section .banner-wrapper .banner-img-area,
  .home1-banner-section .banner-wrapper .banner-img-area img {
    min-height: 400px;
  }
}
.home1-banner-section .banner-content-wrap .banner-content h1 {
  font-size: 46px !important;
}
@media (max-width: 1599px) {
  .home1-banner-section .banner-content-wrap .banner-content h1 {
    font-size: 42px !important;
  }
}
@media (max-width: 991px) {
  .home1-banner-section .banner-content-wrap .banner-content h1 {
    font-size: 32px !important;
  }
}
@media (max-width: 576px) {
  .home1-banner-section .banner-content-wrap .banner-content h1 {
    font-size: 24px !important;
  }
}

/* ---------- 17. Inner-page breadcrumb hero ---------- */
.breadcrumb-section {
  position: relative;
  padding: 90px 0 70px;
  background: linear-gradient(180deg, var(--hh-ivory) 0%, #fff 100%);
  overflow: hidden;
  text-align: center;
}
.breadcrumb-section::before {
  content: "";
  position: absolute;
  top: -120px;
  left: 50%;
  transform: translateX(-50%);
  width: 480px;
  height: 320px;
  background: radial-gradient(circle, rgba(169, 128, 74, 0.18) 0%, rgba(169, 128, 74, 0) 70%);
  pointer-events: none;
}
.breadcrumb-section .breadcrumb-content h1 {
  position: relative;
  font-weight: 400;
}
.breadcrumb-section .breadcrumb-content .breadcrumb-list {
  border-radius: 999px;
  border-color: var(--hh-line);
  background: #fff;
  box-shadow: var(--hh-shadow-soft);
}
.breadcrumb-section .breadcrumb-content .breadcrumb-list li a {
  transition: color 0.3s var(--hh-ease);
}
.breadcrumb-section .breadcrumb-content .breadcrumb-list li a:hover {
  color: var(--hh-gold);
}

/* ---------- 18. About Us — welcome & vision ---------- */
.welcome-section .section-title-and-list ul li {
  position: relative;
  transition: transform 0.3s var(--hh-ease);
}
.welcome-section .section-title-and-list ul li:hover {
  transform: translateX(4px);
  color: var(--hh-gold-dark);
}
.welcome-section img,
.our-vision .vision-img-wrapper img {
  border-radius: 16px;
  box-shadow: var(--hh-shadow-soft);
}
.our-vision .vision-img-wrapper {
  position: relative;
}
.our-vision .vision-img-wrapper img {
  transition: transform 0.7s var(--hh-ease);
}
.our-vision .vision-img-wrapper:hover img {
  transform: scale(1.03);
}

/* ---------- 19. Contact Us ---------- */
.contact-area .contact-area-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.contact-area .contact-area-wrapper .single-contact-wrap {
  box-sizing: border-box;
  width: 100%;
  max-width: unset !important;
  border-radius: 14px;
  padding: 26px 22px;
  background: var(--hh-ivory);
  transition: transform 0.4s var(--hh-ease), box-shadow 0.4s var(--hh-ease), background-color 0.4s var(--hh-ease);
}
.contact-area .contact-area-wrapper .single-contact-wrap:hover {
  transform: translateY(-4px);
  box-shadow: var(--hh-shadow-soft);
  background-color: #fff;
}
.contact-area .contact-area-wrapper .single-contact-wrap .title-and-icon svg {
  fill: var(--hh-gold);
}
.contact-map-section {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--hh-shadow);
}
.contact-map-section iframe {
  border-radius: 18px;
  filter: grayscale(15%) contrast(1.02);
}

/* ---------- 20. Events page ---------- */
.event-page .event-page-card {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--hh-shadow-soft);
  transition: transform 0.5s var(--hh-ease), box-shadow 0.5s var(--hh-ease);
}
.event-page .event-page-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--hh-shadow);
}
.event-page .event-page-card .event-img-wrap img {
  transition: transform 0.8s var(--hh-ease);
}
.event-page .event-page-card:hover .event-img-wrap img {
  transform: scale(1.06);
}
.event-page .event-page-card .event-img-wrap .price {
  background: var(--hh-gold) !important;
  border-radius: 10px 0 10px 0;
}
.event-contact-section .contact-wrapper {
  border-radius: 20px;
  box-shadow: var(--hh-shadow-soft);
}
.why-host-with-us .host-list li {
  border-radius: 12px;
  transition: transform 0.35s var(--hh-ease), box-shadow 0.35s var(--hh-ease);
}
.why-host-with-us .host-list li:hover {
  transform: translateY(-3px);
  box-shadow: var(--hh-shadow-soft);
}
.faq-wrap .accordion .accordion-item {
  border-radius: 12px !important;
  overflow: hidden;
  box-shadow: var(--hh-shadow-soft);
  transition: box-shadow 0.35s var(--hh-ease);
}
.faq-wrap .accordion .accordion-item:hover {
  box-shadow: var(--hh-shadow);
}

/* ---------- 21. Explore Kodai ---------- */
.activities-and-attractions .activities-and-attractions-list .single-list-item {
  transition: transform 0.4s var(--hh-ease);
}
.activities-and-attractions .activities-and-attractions-list .single-list-item:hover {
  transform: translateX(4px);
}
.activities-and-attractions .activities-and-attractions-list .single-list-item .hover-img img {
  border-radius: 14px;
  box-shadow: var(--hh-shadow);
}
.activities-and-attractions .activities-and-attractions-list .single-list-item .title-and-icon h3 {
  transition: color 0.3s var(--hh-ease);
}
.activities-and-attractions .activities-and-attractions-list .single-list-item:hover .title-and-icon h3 {
  color: var(--hh-gold-dark);
}

/* ---------- 15. Responsive touch-ups ---------- */
@media (max-width: 767px) {
  .filter-wrapper {
    margin-top: -30px;
  }
  .room-and-suites-card:hover,
  .service-card:hover,
  .testimonial-card:hover {
    transform: none;
  }
}

/* ==========================================================================
   Stone Crest — property-site-specific components
   (this template variant differs structurally from the main site's homepage,
   so these rules target its own section/class names)
   ========================================================================== */

/* ---------- 22. Home1 About section ---------- */
.home1-about-section .about-img,
.home1-about-section .about-img-wrap {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--hh-shadow-soft);
}
.home1-about-section .about-img img,
.home1-about-section .about-img-wrap img {
  border-radius: 16px;
  transition: transform 0.8s var(--hh-ease);
}
.home1-about-section .about-img:hover img,
.home1-about-section .about-img-wrap:hover img {
  transform: scale(1.05);
}
.home1-about-section .countdown-wrap {
  margin-top: 40px;
}
.home1-about-section .single-countdown {
  padding: 22px 18px;
  border-radius: 14px;
  background: var(--hh-ivory);
  transition: transform 0.4s var(--hh-ease), box-shadow 0.4s var(--hh-ease), background-color 0.4s var(--hh-ease);
}
.home1-about-section .single-countdown:hover {
  transform: translateY(-4px);
  box-shadow: var(--hh-shadow-soft);
  background-color: #fff;
}
.home1-about-section .single-countdown .number svg path {
  fill: var(--hh-gold);
}
.home1-about-section .single-countdown .number h3.counter {
  color: var(--hh-ink);
}

/* ---------- 23. Home1 Signature Experience (amenity showcase cards) ---------- */
.home1-signature-experience .research-card {
  border-radius: 18px;
  overflow: hidden;
  transition: box-shadow 0.5s var(--hh-ease), transform 0.5s var(--hh-ease);
}
.home1-signature-experience .research-card:hover {
  box-shadow: var(--hh-shadow-soft);
  transform: translateY(-4px);
}
.home1-signature-experience .research-image {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--hh-shadow-soft);
}
.home1-signature-experience .research-image img {
  border-radius: 16px;
  transition: transform 0.8s var(--hh-ease);
}
.home1-signature-experience .research-card:hover .research-image img {
  transform: scale(1.06);
}
.home1-signature-experience .experience-content h4 {
  font-weight: 400;
  letter-spacing: 0.3px;
}
.home1-signature-experience .experience-content svg path,
.home1-signature-experience .experience-content svg circle {
  fill: var(--hh-gold);
}

/* ---------- 24. Home1 Event section (scroll panels) ---------- */
.home1-event-section .event-img,
.home1-event-section .event-img img,
.home1-event-section .col-lg-6.d-flex.justify-content-lg-end > img {
  border-radius: 18px;
  box-shadow: var(--hh-shadow);
}
.home1-event-section .event-img img {
  transition: transform 0.9s var(--hh-ease);
}
.home1-event-section .event-info h2:first-child {
  color: var(--hh-gold-light);
  opacity: 0.5;
  font-weight: 400;
}
.home1-event-section .event-content h2 a {
  transition: color 0.3s var(--hh-ease);
}
.home1-event-section .event-content h2 a:hover {
  color: var(--hh-gold-dark);
}

/* ---------- 25. Gallery grid (Stone Crest uses .gallary-img-wrap) ---------- */
.gallary-img-wrap {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: var(--hh-shadow-soft);
}
.gallary-img-wrap img {
  border-radius: 14px;
  transition: transform 0.8s var(--hh-ease);
  width: 100%;
  display: block;
}
.gallary-img-wrap:hover img {
  transform: scale(1.08);
}
.gallary-img-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(169, 128, 74, 0) 45%, rgba(34, 31, 27, 0.55) 100%);
  opacity: 0;
  transition: opacity 0.4s var(--hh-ease);
  border-radius: 14px;
  pointer-events: none;
}
.gallary-img-wrap:hover::after {
  opacity: 1;
}
/* Eye-icon overlay uses the base template's own centered reveal animation
   (position/flex-centering/scale already handled in style.css) — only add
   z-index here so it stays above our gradient overlay, without touching
   its transform/opacity transition. */
.gallary-img-wrap a {
  z-index: 2;
}

/* ---------- 26. Location Advantage (nav-pills + map) ---------- */
.location-section .nav-pills .nav-link {
  border-radius: 999px;
  color: var(--hh-body);
  background: var(--hh-ivory);
  transition: background-color 0.35s var(--hh-ease), color 0.35s var(--hh-ease);
}
.location-section .nav-pills .nav-link.active {
  background: var(--hh-gold) !important;
  color: #fff !important;
}
.location-map-wrapper {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--hh-shadow);
}
.location-map-wrapper img {
  border-radius: 18px;
}
.location-details-list li {
  transition: transform 0.35s var(--hh-ease);
}
.location-details-list li:hover {
  transform: translateX(4px);
}
.location-details-list .icon-and-title svg path {
  fill: var(--hh-gold);
}

/* ---------- 27. Room detail pages ---------- */
.room-details-banner .banner-slider-wrapper,
.room-details-banner .single-slide {
  border-radius: 18px;
  overflow: hidden;
}
.room-details-banner .single-slide img {
  border-radius: 18px;
}
/* Price shown as plain premium text (no pill/button) per client request */
.price-and-title-area .price {
  color: var(--hh-gold-dark);
  letter-spacing: 0.3px;
}
.room-amenities-list .single-room-amenities {
  transition: transform 0.3s var(--hh-ease), color 0.3s var(--hh-ease);
}
.room-amenities-list .single-room-amenities:hover {
  transform: translateX(3px);
  color: var(--hh-gold-dark);
}
.room-amenities-list .single-room-amenities svg path {
  transition: fill 0.3s var(--hh-ease);
}
.room-amenities-list .single-room-amenities:hover svg path {
  fill: var(--hh-gold);
}
.room-details-sidebar {
  border-radius: 16px;
  box-shadow: var(--hh-shadow-soft);
}
.room-details-sidebar .img-area {
  border-radius: 14px;
  overflow: hidden;
  display: block;
  box-shadow: var(--hh-shadow-soft);
  transition: box-shadow 0.4s var(--hh-ease);
}
.room-details-sidebar .img-area:hover {
  box-shadow: var(--hh-shadow);
}
.room-details-sidebar .img-area img {
  transition: transform 0.7s var(--hh-ease);
}
.room-details-sidebar .img-area:hover img {
  transform: scale(1.06);
}

/* ---------- 28. Policy pages (Privacy / Terms / Cancellation) ---------- */
.we-offer-area.new-section {
  color: var(--hh-body);
}
.we-offer-area.new-section h1,
.we-offer-area.new-section h2,
.we-offer-area.new-section h3,
.we-offer-area.new-section h4 {
  color: var(--hh-ink);
  margin-bottom: 14px;
}
.we-offer-area.new-section p,
.we-offer-area.new-section li {
  line-height: 1.8;
}
.we-offer-area.new-section ul {
  padding-left: 20px;
}
.we-offer-area.new-section li {
  margin-bottom: 8px;
}

