/* Home-only sections (body.home). Shared tokens, header, footer live in site.css. */

/* ---------- Hero ---------- */
body.home .main-slider .slider-item {
  height: calc(100vh - 44px);
  min-height: 620px;
  max-height: 980px;
  background-position: center;
  isolation: isolate;
}
body.home .main-slider .slider-item::before {
  opacity: 1;
  background:
    linear-gradient(to top, rgba(18, 11, 7, .9) 0%, rgba(18, 11, 7, .45) 38%, rgba(18, 11, 7, .15) 70%),
    linear-gradient(to right, rgba(18, 11, 7, .72), rgba(18, 11, 7, 0) 68%);
}
body.home .main-slider .d-table { display: flex; height: 100%; align-items: flex-end; }
body.home .main-slider .d-table-cell { display: block; width: 100%; padding-bottom: 150px; }
body.home .main-slider .slider-content { max-width: 760px; text-align: left; }
body.home .main-slider .slider-content span {
  display: block;
  font: 600 19px/1.3 var(--text);
  color: #f6d3a2;
  text-shadow: 0 1px 12px rgba(0, 0, 0, .6);
  margin-bottom: 14px;
}
body.home .main-slider .slider-content h2 {
  font: 400 clamp(2.5rem, 5.6vw, 5.2rem)/1.04 var(--display);
  color: #fff;
  margin: 0 0 20px;
  text-wrap: balance;
}
body.home .main-slider .slider-content p {
  font-size: 19px;
  line-height: 1.6;
  color: rgba(255, 255, 255, .88);
  max-width: 520px;
  margin: 0 0 30px;
}
body.home .main-slider .col-md-6 { flex: 0 0 100%; max-width: 100%; }

body.home .main-slider .owl-nav { position: static; margin: 0; }
body.home .main-slider .owl-prev,
body.home .main-slider .owl-next {
  position: absolute;
  top: auto;
  left: auto;
  bottom: 150px;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(20, 12, 8, .25) !important;
  backdrop-filter: blur(4px);
}
body.home .main-slider .owl-next { right: 104px; }
body.home .main-slider .owl-prev { right: 168px; }
body.home .main-slider .owl-prev:hover,
body.home .main-slider .owl-next:hover { background: var(--ochre) !important; border-color: var(--ochre); }
body.home .main-slider .owl-prev i::before,
body.home .main-slider .owl-next i::before { font-size: 20px !important; }

body.home .item-bg-three { background-image: url(../img/hero/hero-aerial-resort.jpg); }
body.home .item-bg-two { background-image: url(../img/hero/hero-folk-night.jpg); }
body.home .item-bg-one { background-image: url(../img/hero/hero-tents-dance.jpg); }

/* ---------- Booking bar (sits on the hero's lower edge) ---------- */
body.home .check-section { margin: -56px 0 0; z-index: 6; }
body.home .check-section .booking-sect { position: relative; top: 0; }
body.home .check-section .row {
  margin: 0;
  background: var(--parch);
  border-radius: 14px;
  box-shadow: 0 24px 60px rgba(18, 11, 7, .3);
}
body.home .check-section .row > div:first-child .check-content { border-radius: 14px 0 0 14px; }
body.home .check-section .nice-select .list {
  z-index: 20;
  width: 100%;
  margin-top: 10px;
  background: var(--parch);
  border: 1px solid var(--line);
  border-radius: 10px;
  box-shadow: 0 18px 40px rgba(31, 22, 17, .22);
  overflow: hidden;
}
body.home .check-section .nice-select .option { font: 500 16px/40px var(--text); color: var(--ink); }
body.home .check-section .nice-select .option:hover,
body.home .check-section .nice-select .option.focus,
body.home .check-section .nice-select .option.selected.focus { background: var(--sand); color: var(--madder); }
body.home .check-section .no-padding { padding: 0; }
body.home .check-content {
  background: transparent;
  border: 0;
  border-right: 1px solid var(--line);
  padding: 20px 26px 16px;
  height: 100%;
}
body.home .check-content p {
  font: 600 14px/1 var(--text);
  color: var(--ink-soft);
  margin: 0 0 8px;
}
body.home .check-content .form-group { position: relative; margin: 0; }
body.home .check-content .form-control,
body.home .check-content .nice-select {
  background: transparent;
  border: 0;
  padding: 0;
  height: auto;
  font: 600 18px/1.4 var(--text);
  color: var(--ink);
  box-shadow: none;
}
body.home .check-content .nice-select { float: none; width: 100%; padding-right: 24px; }
body.home .check-content .form-group i { position: absolute; right: 0; top: 4px; color: var(--ochre); }
body.home .btn-content { height: 100%; display: flex; align-items: center; padding: 14px 18px; }
body.home .btn-content .check-btn { width: 100%; }
body.home .btn-content .default-btn-one { width: 100%; padding: 18px 20px; }

/* ---------- Intro ---------- */
body.home .intro { padding: 120px 0 90px; }
body.home .intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  gap: 72px;
  align-items: start;
}
body.home .intro-lead { position: sticky; top: 110px; }
body.home .intro-lead h1 {
  font-size: clamp(2.2rem, 4vw, 3.6rem);
  line-height: 1.1;
  color: var(--night);
  margin: 0;
  text-wrap: balance;
}
body.home .intro-text p { margin: 0 0 1.1em; color: var(--ink-soft); font-size: 18px; }
body.home .intro-text .lede { font-size: 21px; line-height: 1.65; color: var(--ink); }

body.home .intro-topics {
  margin-top: 84px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 72px;
}
body.home .topic { border-top: 2px solid var(--night); padding: 22px 0 44px; }
body.home .topic h3 { font-size: 1.7rem; line-height: 1.2; margin: 0 0 14px; color: var(--madder); }
body.home .topic p { margin: 0; color: var(--ink-soft); max-width: 60ch; }

/* ---------- Rooms ---------- */
body.home .rooms { background: var(--night); color: var(--parch); padding: 110px 0 120px; }
body.home .rooms-head h2 {
  font-size: clamp(2.1rem, 3.6vw, 3.2rem);
  line-height: 1.1;
  max-width: 20ch;
  margin: 0 0 64px;
  color: var(--parch);
}
body.home .rooms-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
  align-items: start;
}
body.home .room-card:nth-child(even) { margin-top: 56px; }
body.home .room-arch {
  display: block;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 999px 999px 8px 8px;
  background: var(--night-2);
}
body.home .room-arch img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
body.home .room-arch:hover img { transform: scale(1.05); }
body.home .room-body { padding: 24px 6px 0; }
body.home .room-body h3 { font-size: 1.45rem; line-height: 1.2; margin: 0 0 12px; }
body.home .room-body h3 a { color: var(--parch); }
body.home .room-body h3 a:hover { color: #f1b36b; }
body.home .room-body p { font-size: 16px; line-height: 1.6; color: rgba(247, 239, 223, .74); margin: 0 0 18px; }
body.home .room-link {
  color: #f1b36b;
  font-weight: 600;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
}
body.home .room-link:hover { color: #fff; }

/* ---------- Facilities ---------- */
body.home .services-section { background: var(--sand); padding: 100px 0; }
body.home .services-section .section-title { text-align: left; margin-bottom: 44px; }
body.home .services-section .section-title h2 {
  font-size: clamp(2rem, 3.4vw, 3rem);
  color: var(--night);
  margin: 0;
}
body.home .services-section .section-title h2::before,
body.home .services-section .section-title h2::after { display: none; }
body.home .services-item {
  background: var(--parch);
  border-radius: 12px;
  box-shadow: none;
  border: 1px solid rgba(42, 32, 25, .08);
  padding: 26px 10px 22px;
  margin-bottom: 24px;
  text-align: center;
  height: calc(100% - 24px);
}
body.home .services-item .services-image img { width: 54px; height: 54px; object-fit: contain; }
body.home .services-item h2 {
  font: 600 16px/1.35 var(--text);
  color: var(--ink);
  margin: 14px 0 0;
}

/* ---------- Testimonials ---------- */
body.home .client-section { background: var(--night); }
body.home .client-section .client-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.home .client-content { text-align: left; padding: 56px 8% 0; }
body.home .client-content h2::before,
body.home .client-content h2::after { display: none; }
body.home .client-content .flaticon-quote { display: none; }
body.home .feedback-slides { padding: 0 8%; text-align: left; }
body.home .feedback-slides .client-feedback,
body.home .feedback-slides .client-feedback .item,
body.home .feedback-slides .client-feedback .single-feedback,
body.home .feedback-slides .client-feedback .single-feedback p { text-align: left; }
body.home .client-content h2 { font: 400 clamp(2rem, 3.4vw, 3rem)/1.1 var(--display); color: var(--parch); text-align: left; }
body.home .single-feedback p { font: 400 20px/1.7 var(--text); color: rgba(247, 239, 223, .92); }
body.home .single-feedback h3 { font: 400 1.4rem/1.2 var(--display); color: #f1b36b; }
body.home .single-feedback span { color: rgba(247, 239, 223, .6); }

/* ---------- Nearby attractions ---------- */
body.home .blog-section.services-section { background: var(--parch); }
body.home .blog-item {
  background: transparent;
  border: 0;
  box-shadow: none;
}
body.home .blog-item .blog-image { overflow: hidden; border-radius: 999px 999px 8px 8px; aspect-ratio: 4 / 5; }
body.home .blog-item .blog-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
body.home .blog-item:hover .blog-image img { transform: scale(1.05); }
body.home .blog-item .blog-content { background: transparent; padding: 22px 4px 0; box-shadow: none; }
body.home .blog-item .blog-content h3 { font-size: 1.5rem; color: var(--night); margin: 0 0 8px; }
body.home .blog-item .blog-content p { font-size: 16px; color: var(--ink-soft); }
body.home .blog-btn-one { color: var(--ochre); font-weight: 600; }
body.home .blog-btn-one:hover { color: var(--madder); }
body.home .blog-slider .owl-nav button.owl-prev,
body.home .blog-slider .owl-nav button.owl-next {
  background: var(--parch);
  color: var(--night);
  border: 1px solid var(--line);
  border-radius: 50%;
}
body.home .blog-slider .owl-nav button.owl-prev:hover,
body.home .blog-slider .owl-nav button.owl-next:hover { background: var(--ochre); color: #fff; }

/* ---------- Tablet ---------- */
@media (max-width: 1199px) {
  body.home .rooms-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px 28px; }
  body.home .room-card:nth-child(even) { margin-top: 0; }
  body.home .room-card:nth-child(2n) { margin-top: 56px; }
}

@media (max-width: 991px) {
  body.home .main-slider .slider-item { min-height: 560px; }
  body.home .main-slider .d-table-cell { padding-bottom: 110px; }
  body.home .main-slider .owl-prev,
  body.home .main-slider .owl-next { display: none; }
  body.home .check-section { margin-top: 0; }
  body.home .check-section .booking-sect { padding: 0; }
  body.home .check-section .row { border-radius: 0; box-shadow: none; }
  body.home .check-content { border-right: 0; border-bottom: 1px solid var(--line); }
  body.home .intro { padding: 72px 0 56px; }
  body.home .intro-grid { grid-template-columns: 1fr; gap: 28px; }
  body.home .intro-lead { position: static; }
  body.home .intro-topics { grid-template-columns: 1fr; margin-top: 48px; }
  body.home .rooms { padding: 72px 0 80px; }
  body.home .services-section { padding: 72px 0; }
}

@media (max-width: 575px) {
  body.home .rooms-grid { grid-template-columns: 1fr; }
  body.home .room-card:nth-child(2n) { margin-top: 0; }
  body.home .room-arch { aspect-ratio: 4 / 5; }
  body.home .intro-text .lede { font-size: 19px; }
}

body.home .feedback-slides .client-feedback .single-feedback p { margin: 0 0 22px; padding: 0; max-width: 56ch; }
body.home .feedback-slides .client-feedback .single-feedback h3 { margin: 0 0 4px; }
body.home .feedback-slides .client-feedback .single-feedback span { margin-bottom: 0; }
body.home .feedback-slides .client-thumbnails { margin: 40px 0 0; }
body.home .services-section { padding-bottom: 72px; }


body.home .btn-content { background: transparent; }
body.home .check-section .row > div:last-child { border-radius: 0 14px 14px 0; }
body.home .check-content .nice-select,
body.home .check-content .nice-select:after { background-color: transparent; }
body.home .check-content .nice-select:after { border-color: var(--ochre); }
body.home .check-section .nice-select,
body.home .check-section select.form-content { background: transparent !important; border: 0 !important; }
