/* =========================================================
   PREMIUM DESIGN SYSTEM
   ========================================================= */
:root {
  --premium-dark: #292521;
  --premium-copper: #a86d4f;
  --premium-sand: #d8c3a5;
  --premium-text: #56514b;
  --premium-light: #f7f5f2;
  --premium-border: #e8e1d8;
  --premium-heading: Georgia, "Times New Roman", serif;
  --premium-body: "Avenir Next", "Helvetica Neue", Arial, sans-serif;
}[class^="premium-"], [class*=" premium-"] { font-family: var(--premium-body); }
[class^="premium-"] :is(h1, h2, h3, h4), [class*=" premium-"] :is(h1, h2, h3, h4) { font-family: var(--premium-heading); }

/* ABOUT */
.premium-about-area {
  position: relative;
  padding: 105px 0 35px;
  background: #fff;
  overflow: hidden;
}
.premium-about-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  column-gap: 85px;
}.premium-about-image-column { position: relative; }
.premium-about-image-wrapper, .premium-map-wrapper { position: relative; padding: 0 35px 35px 0; }

.premium-about-image {
  position: relative;
  width: 100%;
  height: 570px;
  overflow: hidden;
  background: var(--premium-light);
}
.premium-about-image::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255, 255, 255, 0.25);
  pointer-events: none;
}
.premium-about-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s ease;
}.premium-about-image-wrapper:hover .premium-about-image img { transform: scale(1.035); }

.premium-about-image-detail {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 125px;
  height: 125px;
  border-right: 1px solid var(--premium-copper);
  border-bottom: 1px solid var(--premium-copper);
  pointer-events: none;
}
.premium-about-image-detail span {
  position: absolute;
  display: block;
  width: 4px;
  height: 4px;
  background: var(--premium-sand);
  border-radius: 50%;
}.premium-about-image-detail span:nth-child(1) { top: 15px; right: 15px; }
.premium-about-image-detail span:nth-child(2) { top: 30px; right: 30px; }
.premium-about-image-detail span:nth-child(3) { top: 45px; right: 45px; }
.premium-about-content-column, .premium-filter-search, .premium-filter-button, .premium-category-list li a span { min-width: 0; }

.premium-about-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.8px;
  line-height: 1.5;
  text-transform: uppercase;
}
.premium-about-eyebrow-line {
  display: block;
  width: 28px;
  height: 1px;
  flex-shrink: 0;
  background: var(--premium-copper);
}
.premium-about-title {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(32px, 4vw, 50px);
  font-weight: 400;
  letter-spacing: 0.4px;
  line-height: 1.18;
  word-break: normal;
  overflow-wrap: break-word;
}
.premium-about-heading-line {
  position: relative;
  width: 65px;
  height: 1px;
  margin: 25px 0 30px;
  background: var(--premium-copper);
}
.premium-about-heading-line::after, .premium-activity-banner-line::after, .premium-activity-heading-line::after, .premium-heading-line::after {
  content: "";
  position: absolute;
  top: -2px;
  right: -8px;
  width: 5px;
  height: 5px;
  background: var(--premium-sand);
  border-radius: 50%;
}
.premium-about-detail {
  color: var(--premium-text);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.95;
}.premium-about-detail p { margin: 0 0 20px; }
.premium-about-detail p:last-child, .premium-activity-description p:last-child, .premium-activity-list-description p:last-child, .premium-detail-description-content p:last-child, .premium-article-card:last-child { margin-bottom: 0; }
.premium-about-detail strong, .premium-search-result-text strong { color: var(--premium-dark); font-weight: 600; }
.premium-about-detail em, .premium-activity-card h3 a:hover, .premium-activity-breadcrumb .breadcrumb a:hover, .premium-activity-breadcrumb .breadcrumb-item.active, .premium-related-content h3 a:hover, .premium-article-content h2 a:hover, .premium-contact-card a:hover, .premium-copyright-separator, .premium-eyebrow.dark { color: var(--premium-copper); }

.premium-about-detail a {
  color: var(--premium-copper);
  text-decoration: none;
  border-bottom: 1px solid rgba(168, 109, 79, 0.35);
  transition: color 0.3s ease, border-color 0.3s ease;
}.premium-about-detail a:hover { color: var(--premium-dark); border-color: var(--premium-dark); }

.premium-about-detail img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 25px auto;
}.premium-about-detail ul, .premium-about-detail ol { margin: 0 0 25px; padding-left: 20px; }
.premium-about-detail li { margin-bottom: 8px; }

.premium-about-detail blockquote {
  margin: 30px 0;
  padding: 5px 0 5px 25px;
  color: var(--premium-dark);
  border-left: 2px solid var(--premium-copper);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 19px;
  font-style: italic;
  line-height: 1.7;
}
@media(max-width: 1199px) {.premium-about-area { padding-top: 90px; }
.premium-about-grid { column-gap: 55px; }
.premium-about-image { height: 520px; }
.premium-about-image-wrapper { padding: 0 28px 28px 0; }
.premium-about-title { font-size: clamp(30px, 4vw, 44px); }

}
@media(max-width: 991px) {.premium-about-area { padding: 75px 0 25px; }
.premium-about-grid { grid-template-columns: minmax(0, 1fr); row-gap: 55px; }
.premium-about-image-wrapper, .premium-about-content { max-width: 720px; margin: 0 auto; }
.premium-about-image-wrapper { padding: 0 25px 25px 0; }
.premium-about-image { height: 500px; }
.premium-about-title { font-size: 44px; }
.premium-about-detail { font-size: 15px; }

}
@media(max-width: 767px) {.premium-about-area { padding: 60px 0 20px; }
.premium-about-grid { row-gap: 40px; }
.premium-about-image-wrapper { padding: 0 18px 18px 0; }
.premium-about-image { height: 420px; }
.premium-about-image-detail { width: 80px; height: 80px; }
.premium-about-image-detail span:nth-child(1) { top: 10px; right: 10px; }
.premium-about-image-detail span:nth-child(2) { top: 22px; right: 22px; }
.premium-about-image-detail span:nth-child(3) { top: 34px; right: 34px; }
.premium-about-content { max-width: none; }
.premium-about-eyebrow { margin-bottom: 14px; font-size: 10px; letter-spacing: 2px; }
.premium-about-eyebrow-line { width: 22px; }
.premium-about-title { font-size: 36px; line-height: 1.2; }
.premium-about-heading-line { margin: 20px 0 25px; }
.premium-about-detail { font-size: 14px; line-height: 1.85; }
.premium-about-detail p { margin-bottom: 17px; }
.premium-about-detail blockquote { margin: 25px 0; padding-left: 18px; font-size: 17px; }

}
@media(max-width: 480px) {.premium-about-area { padding: 45px 0 15px; }
.premium-about-grid { row-gap: 35px; }
.premium-about-image-wrapper { padding: 0 14px 14px 0; }
.premium-about-image { height: 330px; }
.premium-about-image-detail { width: 65px; height: 65px; }
.premium-about-image-detail span:nth-child(1) { top: 8px; right: 8px; }
.premium-about-image-detail span:nth-child(2) { top: 18px; right: 18px; }
.premium-about-image-detail span:nth-child(3) { top: 28px; right: 28px; }
.premium-about-eyebrow { gap: 8px; font-size: 7px; letter-spacing: 1.5px; }
.premium-about-eyebrow-line { width: 18px; }
.premium-about-title { font-size: 30px; line-height: 1.22; }
.premium-about-heading-line { width: 55px; margin: 18px 0 22px; }
.premium-about-detail { font-size: 13.5px; line-height: 1.85; }
.premium-about-detail blockquote { font-size: 16px; }

}
.premium-activity-area {
  position: relative;
  padding: 100px 0 45px;
  background: #fff;
  overflow: hidden;
}
.premium-activity-banner {
  position: relative;
  min-height: 370px;
  display: flex;
  align-items: center;
  background: #292521 no-repeat center center / cover;
  overflow: hidden;
}.premium-activity-banner-overlay { position: absolute; inset: 0; background: linear-gradient( 90deg, rgba(41, 37, 33, 0.82), rgba(41, 37, 33, 0.48), rgba(41, 37, 33, 0.62) ); }
.premium-activity-banner .container, .premium-activity-list-banner .container, .premium-reservation a span, .premium-reservation a i { position: relative; z-index: 2; }
.premium-activity-banner-content { max-width: 850px; padding: 70px 0; }

.premium-activity-banner-eyebrow, .premium-activity-list-banner-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  color: var(--premium-sand);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.8px;
  text-transform: uppercase;
}.premium-activity-banner-eyebrow span, .premium-activity-title-line, .premium-activity-list-banner-eyebrow span, .premium-activity-list-title-line, .premium-detail-section-label span, .premium-detail-gallery-heading span, .premium-related-eyebrow span { width: 28px; height: 1px; background: var(--premium-copper); }
.premium-activity-banner-eyebrow i, .premium-activity-feature i, .premium-activity-list-banner-eyebrow i, .premium-activity-list-feature i, .premium-activity-hero-label i { color: var(--premium-copper); font-size: 13px; }

.premium-activity-banner h1 {
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 5vw, 58px);
  font-weight: 400;
  line-height: 1.15;
  max-width: 800px;
}
.premium-activity-banner-line {
  position: relative;
  width: 70px;
  height: 1px;
  margin-top: 25px;
  background: var(--premium-copper);
}.premium-activity-intro, .premium-activity-list-intro { max-width: 850px; margin: 0 auto 65px; text-align: center; }

.premium-activity-eyebrow, .premium-activity-list-eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 16px;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.8px;
  text-transform: uppercase;
}
.premium-activity-intro h2, .premium-activity-list-intro h2 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 4vw, 45px);
  font-weight: 400;
  line-height: 1.2;
}
.premium-activity-heading-line {
  position: relative;
  width: 65px;
  height: 1px;
  margin: 23px auto 25px;
  background: var(--premium-copper);
}
.premium-activity-description, .premium-activity-list-description {
  max-width: 720px;
  margin: 0 auto;
  color: var(--premium-text);
  font-size: 15px;
  line-height: 1.9;
}.premium-activity-description p { margin: 0 0 15px; }
.premium-activity-grid, .premium-activity-list-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 45px 30px; }

.premium-activity-card, .premium-activity-list-card {
  min-width: 0;
  background: #fff;
  border-bottom: 1px solid var(--premium-border);
  padding-bottom: 35px;
}
.premium-activity-image {
  position: relative;
  width: 100%;
  height: 365px;
  overflow: hidden;
  background: var(--premium-light);
}.premium-activity-image a, .premium-activity-list-image a, .premium-related-image a, .premium-article-image a, .premium-room-page-image a { display: block; width: 100%; height: 100%; }

.premium-activity-image img, .premium-activity-list-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.7s ease;
}.premium-activity-image-empty { width: 100%; height: 100%; background: linear-gradient(135deg, #eee9e2, #d8cfc3); }
.premium-activity-image:hover img, .premium-activity-list-image:hover img, .premium-detail-gallery-item:hover img, .premium-related-card:hover .premium-related-image img, .premium-article-image:hover img, .premium-recent-post:hover .premium-recent-image img, .premium-blog-card:hover .premium-blog-image img { transform: scale(1.06); }

.premium-activity-image-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(41, 37, 33, 0.35);
  opacity: 0;
  transition: opacity 0.35s ease;
}.premium-activity-image:hover .premium-activity-image-overlay, .premium-activity-list-image:hover .premium-activity-list-image-overlay, .premium-detail-gallery-item:hover .premium-gallery-overlay, .premium-related-card:hover .premium-related-image-overlay, .premium-article-image:hover .premium-article-image-overlay, .premium-gallery-image-button:hover .premium-gallery-image-overlay { opacity: 1; }

.premium-activity-image-overlay span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.7);
}.premium-activity-card-content, .premium-activity-list-content { padding: 25px 5px 0; }

.premium-activity-meta, .premium-activity-list-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 13px;
  color: #999;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}.premium-activity-meta i, .premium-activity-list-meta i, .premium-article-meta i { margin-right: 4px; color: var(--premium-copper); }
.premium-activity-meta-divider, .premium-activity-list-banner-divider, .premium-activity-list-meta-divider, .premium-meta-divider, .premium-error-language a:hover, .premium-error-language span, .premium-room-page-book i, .premium-colorlib-credit a:hover, .premium-breadcrumb-nav .breadcrumb-item a:hover, .premium-breadcrumb-nav .breadcrumb-item.active, .premium-room-book i { color: var(--premium-sand); }

.premium-activity-card h3, .premium-activity-list-content h3 {
  margin: 0 0 17px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(23px, 2.5vw, 30px);
  font-weight: 400;
  line-height: 1.3;
}.premium-activity-card h3 a, .premium-activity-list-content h3 a { color: var(--premium-dark); text-decoration: none; transition: color 0.3s ease; }

.premium-activity-count {
  display: flex;
  align-items: baseline;
  gap: 9px;
  margin-bottom: 20px;
}
.premium-activity-count strong, .premium-room-price strong {
  color: var(--premium-copper);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
  font-weight: 400;
}
.premium-activity-count span {
  color: #888;
  font-size: 12px;
  letter-spacing: 0.7px;
  text-transform: uppercase;
}
.premium-activity-features, .premium-activity-list-features {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 25px;
  padding: 15px 0;
  margin-bottom: 20px;
  border-top: 1px solid var(--premium-border);
  border-bottom: 1px solid var(--premium-border);
}
.premium-activity-feature, .premium-activity-list-feature {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #777;
  font-size: 11px;
  letter-spacing: 0.5px;
}
.premium-activity-detail, .premium-activity-list-detail {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.3px;
  text-decoration: none;
  text-transform: uppercase;
  transition: color 0.3s ease;
}.premium-activity-detail i, .premium-activity-list-detail i { transition: transform 0.3s ease; }
.premium-activity-detail:hover, .premium-activity-list-detail:hover, .premium-related-link:hover, .premium-read-more:hover { color: var(--premium-dark); text-decoration: none; }
.premium-activity-detail:hover i, .premium-activity-list-detail:hover i, .premium-related-link:hover i, .premium-read-more:hover i, .premium-error-button:hover i, .premium-sidebar-reservation:hover i, .premium-page-banner-button:hover i { transform: translateX(5px); }

.premium-activity-bottom, .premium-activity-list-bottom {
  position: relative;
  max-width: 850px;
  margin: 70px auto 35px;
  padding: 30px 0 0;
  text-align: center;
  border-top: 1px solid var(--premium-border);
}
.premium-activity-bottom-line, .premium-activity-list-bottom-line {
  position: absolute;
  top: -1px;
  left: 50%;
  width: 60px;
  height: 1px;
  background: var(--premium-copper);
  transform: translateX(-50%);
}
.premium-activity-bottom p, .premium-activity-list-bottom p {
  margin: 0;
  color: var(--premium-text);
  font-size: 14px;
  line-height: 1.9;
}
@media(max-width: 1199px) {.premium-activity-area { padding-top: 85px; }
.premium-activity-image { height: 330px; }
.premium-activity-card-content { padding-top: 22px; }

}
@media(max-width: 991px) {.premium-activity-banner { min-height: 330px; }
.premium-activity-banner-content { padding: 60px 0; }
.premium-activity-area { padding: 75px 0 35px; }
.premium-activity-intro { margin-bottom: 50px; }
.premium-activity-grid { gap: 40px 20px; }
.premium-activity-image { height: 290px; }
.premium-activity-card h3 { font-size: 26px; }
.premium-activity-features { gap: 15px; }

}
@media(max-width: 767px) {.premium-activity-banner { min-height: 290px; }
.premium-activity-banner-content { padding: 55px 0; }
.premium-activity-banner-eyebrow, .premium-activity-eyebrow { font-size: 10px; letter-spacing: 2px; }
.premium-activity-banner h1 { font-size: 36px; line-height: 1.2; }
.premium-activity-area { padding: 60px 0 25px; }
.premium-activity-intro { margin-bottom: 40px; }
.premium-activity-intro h2 { font-size: 33px; }
.premium-activity-description { font-size: 14px; line-height: 1.85; }
.premium-activity-grid { grid-template-columns: 1fr; gap: 40px; }
.premium-activity-image { height: 330px; }
.premium-activity-card { padding-bottom: 30px; }
.premium-activity-card-content { padding: 22px 0 0; }
.premium-activity-card h3, .premium-activity-count strong { font-size: 27px; }
.premium-activity-feature { font-size: 10px; }
.premium-activity-bottom { margin-top: 55px; }

}
@media(max-width: 480px) {.premium-activity-banner { min-height: 255px; }
.premium-activity-banner-content { padding: 45px 0; }
.premium-activity-banner-eyebrow { gap: 7px; font-size: 7px; letter-spacing: 1.5px; }
.premium-activity-banner-eyebrow span, .premium-activity-title-line { width: 20px; }
.premium-activity-banner h1 { font-size: 30px; }
.premium-activity-area { padding: 45px 0 20px; }
.premium-activity-eyebrow { gap: 8px; font-size: 7px; letter-spacing: 1.5px; }
.premium-activity-intro h2 { font-size: 29px; }

}.premium-activity-heading-line { margin: 19px auto 20px; }
.premium-activity-description { font-size: 13.5px; }
.premium-activity-image { height: 245px; }
.premium-activity-card-content { padding-top: 19px; }
.premium-activity-meta { font-size: 7px; letter-spacing: 0.8px; }
.premium-activity-card h3 { font-size: 24px; }
.premium-activity-count { margin-bottom: 16px; }
.premium-activity-count strong { font-size: 25px; }
.premium-activity-count span, .premium-activity-feature, .premium-activity-detail { font-size: 10px; }
.premium-activity-features { align-items: flex-start; flex-direction: column; gap: 10px; }
.premium-activity-bottom { margin-top: 45px; padding-top: 25px; }
.premium-activity-bottom p { font-size: 13px; line-height: 1.8; }

/* ACTIVITY LIST */
.premium-activity-list-area {
  padding: 100px 0 50px;
  background: #fff;
  overflow: hidden;
}
.premium-activity-list-banner {
  position: relative;
  min-height: 360px;
  display: flex;
  align-items: center;
  background-color: #292521;
  overflow: hidden;
}.premium-activity-list-banner-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(41,37,33,.88), rgba(41,37,33,.58), rgba(41,37,33,.78)); }
.premium-activity-list-banner-content { max-width: 900px; padding: 70px 0; }

.premium-activity-list-banner h1 {
  margin: 0;
  max-width: 850px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 5vw, 58px);
  font-weight: 400;
  line-height: 1.15;
}
.premium-activity-list-banner-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
  color: rgba(255,255,255,.75);
  font-size: 11px;
  letter-spacing: 1px;
  text-transform: uppercase;
}.premium-activity-list-banner-meta i { margin-right: 5px; color: var(--premium-copper); }

.premium-activity-list-banner-line {
  width: 70px;
  height: 1px;
  margin-top: 25px;
  background: var(--premium-copper);
}
.premium-activity-list-heading-line {
  width: 65px;
  height: 1px;
  margin: 23px auto 25px;
  background: var(--premium-copper);
}.premium-activity-list-description p, .premium-room-intro-text p { margin-bottom: 15px; }

.premium-activity-list-image {
  position: relative;
  width: 100%;
  height: 350px;
  overflow: hidden;
  background: var(--premium-light);
}
.premium-activity-list-image-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(41,37,33,.35);
  opacity: 0;
  transition: opacity 0.35s ease;
}
.premium-activity-list-image-overlay span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  color: #fff;
  border: 1px solid rgba(255,255,255,.7);
}
.premium-activity-list-image-empty {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #c5b8aa;
  font-size: 37px;
}.premium-activity-list-content h3 a:hover { color: var(--premium-copper); text-decoration: none; }

.premium-activity-list-item-description {
  margin-bottom: 22px;
  color: var(--premium-text);
  font-size: 14px;
  line-height: 1.85;
}.premium-activity-list-item-description p { margin-bottom: 10px; }
.premium-activity-list-empty { padding: 80px 20px; text-align: center; border: 1px solid var(--premium-border); }
.premium-activity-list-empty i { color: var(--premium-copper); font-size: 37px; margin-bottom: 20px; }

.premium-activity-list-empty h3 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  font-weight: 400;
}
@media(max-width: 1199px) {.premium-activity-list-area { padding-top: 85px; }
.premium-activity-list-image { height: 320px; }

}
@media(max-width: 991px) {.premium-activity-list-banner { min-height: 320px; }
.premium-activity-list-banner-content { padding: 60px 0; }
.premium-activity-list-area { padding: 75px 0 35px; }
.premium-activity-list-intro { margin-bottom: 50px; }
.premium-activity-list-grid { gap: 40px 20px; }
.premium-activity-list-image { height: 285px; }
.premium-activity-list-content h3 { font-size: 26px; }

}
@media(max-width: 767px) {.premium-activity-list-banner { min-height: 285px; }
.premium-activity-list-banner-content { padding: 50px 0; }
.premium-activity-list-banner h1 { font-size: 36px; line-height: 1.2; }
.premium-activity-list-area { padding: 60px 0 25px; }
.premium-activity-list-intro { margin-bottom: 40px; }
.premium-activity-list-grid { grid-template-columns: 1fr; gap: 40px; }
.premium-activity-list-image { height: 330px; }
.premium-activity-list-content { padding: 22px 0 0; }
.premium-activity-list-content h3 { font-size: 27px; }
.premium-activity-list-features { gap: 15px; }

}
@media(max-width: 480px) {.premium-activity-list-banner { min-height: 255px; }
.premium-activity-list-banner-content { padding: 45px 0; }
.premium-activity-list-banner-eyebrow { gap: 7px; font-size: 7px; letter-spacing: 1.5px; }
.premium-activity-list-banner h1 { font-size: 30px; }
.premium-activity-list-banner-meta { font-size: 7px; gap: 7px; }
.premium-activity-list-area { padding: 45px 0 20px; }
.premium-activity-list-eyebrow { gap: 8px; font-size: 7px; letter-spacing: 1.5px; }
.premium-activity-list-intro h2 { font-size: 29px; }
.premium-activity-list-description { font-size: 13.5px; }
.premium-activity-list-image { height: 245px; }
.premium-activity-list-meta { font-size: 7px; letter-spacing: 0.8px; }
.premium-activity-list-content h3 { font-size: 24px; }
.premium-activity-list-item-description { font-size: 13px; }
.premium-activity-list-features { flex-direction: column; align-items: flex-start; gap: 10px; }
.premium-activity-list-feature, .premium-activity-list-detail { font-size: 10px; }
.premium-activity-list-bottom { margin-top: 45px; padding-top: 25px; }
.premium-activity-list-bottom p { font-size: 13px; line-height: 1.8; }

}

/* ACTIVITY DETAIL */
.premium-activity-hero {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #292521;
}
.premium-activity-hero-image {
  position: relative;
  min-height: 470px;
  display: flex;
  align-items: center;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}.premium-activity-hero-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20,18,16,.25) 0%, rgba(20,18,16,.40) 45%, rgba(20,18,16,.72) 100%); }

.premium-activity-hero-content {
  position: relative;
  z-index: 2;
  max-width: 900px;
  margin: 0 auto;
  padding: 80px 20px;
  text-align: center;
}
.premium-activity-hero-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 25px;
  color: var(--premium-sand);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}

/* HERO */
.premium-hero-line, .premium-section-eyebrow span {
  width: 32px;
  height: 1px;
  background: var(--premium-copper);
}
.premium-activity-hero-subtitle {
  margin-bottom: 12px;
  color: rgba(255,255,255,.75);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-activity-hero-title {
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 6vw, 72px);
  font-weight: 400;
  line-height: 1.1;
  text-shadow: 0 4px 20px rgba(0,0,0,.25);
}
.premium-activity-hero-category {
  margin-top: 20px;
  color: rgba(255,255,255,.78);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.premium-activity-hero-decoration {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 28px;
}.premium-activity-hero-decoration span { width: 45px; height: 1px; background: rgba(216,195,165,.7); }
.premium-activity-hero-decoration i { color: var(--premium-sand); font-size: 6px; transform: rotate(45deg); }
.premium-activity-breadcrumb-area { background: #fff; }
.premium-activity-breadcrumb { padding: 22px 0 20px; border-bottom: 1px solid var(--premium-border); }

.premium-activity-breadcrumb .breadcrumb {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 0;
  font-size: 10px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}.premium-activity-breadcrumb .breadcrumb a { color: #999; text-decoration: none; transition: color 0.3s ease; }
.premium-activity-detail-area { padding: 55px 0 85px; background: #fff; }

.premium-detail-info {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--premium-border);
  border-bottom: 1px solid var(--premium-border);
  margin-bottom: 60px;
}
.premium-detail-info-item {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 85px;
  padding: 15px 25px;
  border-right: 1px solid var(--premium-border);
}.premium-detail-info-item:last-child { border-right: 0; }
.premium-detail-info-item > i { color: var(--premium-copper); font-size: 19px; }
.premium-detail-info-item div, .premium-about-signature > div:last-child { display: flex; flex-direction: column; gap: 3px; }

.premium-detail-info-item small, .premium-detail-gallery-heading small {
  color: #999;
  font-size: 10px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.premium-detail-info-item strong {
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  font-weight: 400;
}.premium-detail-description { max-width: 900px; margin: 0 auto 45px; }

.premium-detail-section-label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
  color: var(--premium-copper);
}
.premium-detail-section-label small {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.premium-detail-description h2 {
  margin: 0 0 25px;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 32px;
  font-weight: 400;
}.premium-detail-description-content { color: var(--premium-text); font-size: 16px; line-height: 1.95; }
.premium-detail-description-content p, .premium-about-description p { margin-bottom: 18px; }

.premium-detail-description-content h2, .premium-detail-description-content h3, .premium-detail-description-content h4 {
  margin-top: 30px;
  margin-bottom: 15px;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
}.premium-detail-route { margin: 35px 0 60px; text-align: center; }

.premium-detail-route-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  min-width: 220px;
  padding: 15px 24px;
  color: #fff;
  background: var(--premium-dark);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-decoration: none;
  text-transform: uppercase;
  transition: background 0.3s ease, transform 0.3s ease;
}
.premium-detail-route-button:hover {
  color: #fff;
  background: var(--premium-copper);
  text-decoration: none;
  transform: translateY(-2px);
}.premium-detail-route-button span, .premium-footer-social, .premium-top-social { display: flex; align-items: center; gap: 8px; }
.premium-detail-gallery { margin-top: 60px; padding-top: 45px; border-top: 1px solid var(--premium-border); }

.premium-detail-gallery-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 30px;
}.premium-detail-gallery-heading > div { display: flex; align-items: center; gap: 12px; }

.premium-detail-gallery-heading h3 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
  font-weight: 400;
}.premium-detail-gallery-item { position: relative; overflow: hidden; }

.premium-detail-gallery-item figure {
  position: relative;
  margin: 0;
  height: 240px;
  overflow: hidden;
  background: var(--premium-light);
}
.premium-detail-gallery-item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.premium-gallery-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(41,37,33,.35);
  color: #fff;
  opacity: 0;
  transition: opacity 0.35s ease;
}
.premium-gallery-overlay i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  border: 1px solid rgba(255,255,255,.7);
}
.premium-detail-tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 55px;
  padding-top: 25px;
  border-top: 1px solid var(--premium-border);
}
.premium-detail-tags span {
  display: inline-flex;
  padding: 8px 13px;
  color: #777;
  border: 1px solid var(--premium-border);
  font-size: 10px;
  letter-spacing: 1px;
  text-transform: uppercase;
}

/* RELATED ACTIVITIES */
.premium-related-activities {
  padding: 90px 0 85px;
  background: var(--premium-light);
}.premium-related-heading { max-width: 750px; margin: 0 auto 50px; text-align: center; }

.premium-related-heading h2 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 4vw, 44px);
  font-weight: 400;
}
.premium-related-heading p {
  margin: 0;
  color: #888;
  font-size: 12px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.premium-related-eyebrow {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
}
.premium-related-line {
  position: relative;
  width: 65px;
  height: 1px;
  margin: 22px auto;
  background: var(--premium-copper);
}
.premium-related-line::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  top: -2px;
  right: -8px;
  border-radius: 50%;
  background: var(--premium-sand);
}.premium-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.premium-related-card { min-width: 0; background: #fff; transition: transform .35s ease, box-shadow .35s ease; }
.premium-related-card:hover { transform: translateY(-5px); box-shadow: 0 15px 40px rgba(41,37,33,.08); }
.premium-related-image { position: relative; height: 280px; overflow: hidden; }

.premium-related-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .7s ease;
}
.premium-related-image-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: rgba(41,37,33,.35);
  opacity: 0;
  transition: opacity .35s ease;
}
.premium-related-image-overlay span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  color: #fff;
  border: 1px solid rgba(255,255,255,.7);
}.premium-related-content { padding: 24px 25px 27px; }

.premium-related-content h3 {
  margin: 0 0 20px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 26px;
  font-weight: 400;
  line-height: 1.3;
}.premium-related-content h3 a, .premium-article-content h2 a { color: var(--premium-dark); text-decoration: none; transition: color .3s ease; }

.premium-related-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 12px;
  color: #999;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}.premium-related-meta i { color: var(--premium-copper); margin-right: 3px; }

.premium-related-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--premium-copper);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-decoration: none;
  text-transform: uppercase;
  transition: color .3s ease;
}.premium-related-link i, .premium-filter-button i, .premium-read-more i, .premium-error-button i { transition: transform .3s ease; }

/* BLOG INDEX */
.premium-blog-index {
  --blog-dark-soft: #3b3631;
  --blog-copper-light: #b77a5a;
  --blog-text: #625b54;
  --blog-muted: #99918a;
  --blog-light: #f7f5f2;
  padding: 100px 0 20px;
  background: #fff;
}.premium-blog-main, .premium-error-button:hover::before, .premium-reservation a:hover::before, .premium-page-banner-button:hover::before, .premium-hero-button:hover::before, .premium-result-button:hover::before { width: 100%; }
.premium-blog-heading { margin-bottom: 45px; }

.premium-section-label {
  display: block;
  margin-bottom: 12px;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  line-height: 1.4;
}
.premium-blog-heading h1 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 400;
  letter-spacing: .2px;
  line-height: 1.25;
}
.premium-heading-line {
  position: relative;
  width: 65px;
  height: 1px;
  margin-top: 22px;
  background: var(--premium-copper);
}
.premium-search-result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 54px;
  padding: 14px 18px;
  margin-bottom: 25px;
  background: var(--blog-light);
  border-left: 2px solid var(--premium-copper);
}.premium-search-result-text { color: var(--blog-text); font-size: 14px; line-height: 1.5; }
.premium-search-result-text span { margin-right: 8px; color: var(--blog-muted); }

.premium-search-result > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  color: #999;
  text-decoration: none;
  transition: color .3s ease, background .3s ease;
}.premium-search-result > a:hover { color: #fff; background: var(--premium-copper); }

.premium-blog-filter {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 100px 150px 145px;
  gap: 10px;
  margin-bottom: 50px;
  padding: 14px;
  background: var(--blog-light);
  border: 1px solid var(--premium-border);
}.premium-input-wrapper { position: relative; height: 46px; }

.premium-input-wrapper i {
  position: absolute;
  top: 50%;
  left: 15px;
  color: #aaa;
  font-size: 13px;
  transform: translateY(-50%);
  pointer-events: none;
}
.premium-input-wrapper input {
  width: 100%;
  height: 100%;
  padding: 0 15px 0 38px;
  border: 1px solid var(--premium-border);
  border-radius: 0;
  outline: none;
  background: #fff;
  color: var(--premium-dark);
  font-size: 13px;
  transition: border-color .3s ease;
}.premium-input-wrapper input::placeholder { color: #aaa; }
.premium-input-wrapper input:focus, .premium-reservation a:hover { border-color: var(--premium-copper); }

.premium-filter-select {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}
.premium-filter-select label {
  margin: 0 0 4px 3px;
  color: #999;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .8px;
  line-height: 1;
  text-transform: uppercase;
}
.premium-filter-select select {
  width: 100%;
  height: 32px;
  padding: 0 5px;
  border: 0;
  border-radius: 0;
  outline: none;
  background: transparent;
  color: var(--premium-dark);
  font-size: 12px;
  cursor: pointer;
}.premium-filter-select select:focus { outline: none; }

.premium-filter-button button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  height: 46px;
  padding: 0 15px;
  border: 1px solid var(--premium-copper);
  border-radius: 0;
  outline: none;
  background: var(--premium-copper);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  cursor: pointer;
  transition: background .3s ease, border-color .3s ease;
}.premium-filter-button button:hover { background: var(--premium-dark); border-color: var(--premium-dark); }
.premium-filter-button button:hover i { transform: translateX(4px); }

.premium-article-card {
  display: flex;
  align-items: stretch;
  width: 100%;
  margin-bottom: 45px;
  padding-bottom: 45px;
  background: #fff;
  border-bottom: 1px solid var(--premium-border);
}
.premium-article-image {
  position: relative;
  flex: 0 0 40%;
  min-height: 245px;
  overflow: hidden;
  background: var(--premium-dark);
}
.premium-article-image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 245px;
  object-fit: cover;
  transition: transform .6s ease;
}
.premium-article-image-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(41,37,33,.38);
  opacity: 0;
  transition: opacity .35s ease;
  pointer-events: none;
}
.premium-article-image-overlay span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  color: #fff;
  border: 1px solid rgba(255,255,255,.7);
}.premium-article-content { flex: 1; min-width: 0; padding: 12px 0 10px 35px; }

.premium-article-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 15px;
  color: #999;
  font-size: 11px;
  letter-spacing: .7px;
  line-height: 1.5;
  text-transform: uppercase;
}
.premium-article-content h2 {
  margin: 0 0 15px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(20px, 2vw, 25px);
  font-weight: 400;
  line-height: 1.4;
}
.premium-article-content p {
  margin: 0 0 22px;
  color: var(--blog-text);
  font-size: 14px;
  line-height: 1.8;
}
.premium-read-more {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--premium-copper) !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: color .3s ease;
}.premium-read-more:hover { color: var(--premium-dark) !important; }

.premium-blog-empty {
  padding: 70px 30px;
  text-align: center;
  background: var(--blog-light);
  border: 1px solid var(--premium-border);
}.premium-empty-icon { margin-bottom: 20px; color: var(--premium-copper); font-size: 37px; }

.premium-blog-empty h3 {
  margin: 0 0 10px;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 23px;
  font-weight: 400;
}
.premium-blog-empty p {
  margin: 0;
  color: #888;
  font-size: 14px;
  line-height: 1.7;
}.premium-pagination { margin: 55px 0 100px; }

.premium-pagination ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}.premium-pagination li, .premium-footer-nav li { margin: 0; padding: 0; }

.premium-pagination li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  color: var(--blog-text);
  background: #fff;
  border: 1px solid var(--premium-border);
  font-size: 12px;
  line-height: 1;
  text-decoration: none;
  transition: color .3s ease, background .3s ease, border-color .3s ease;
}.premium-pagination li.active a, .premium-pagination li a:hover, .premium-pagination li.active a, .premium-pagination li a:hover, .premium-back-top:hover i { color: #fff; background: var(--premium-copper); border-color: var(--premium-copper); }
.premium-blog-sidebar-wrapper, .premium-blog-sidebar-column { width: 100%; padding-left: 25px; }

@media(max-width: 1199px) {.premium-activity-hero-image { min-height: 430px; }
.premium-related-image { height: 250px; }
.premium-blog-filter { grid-template-columns: minmax(150px, 1fr) 90px 125px 125px; }
.premium-article-content { padding-left: 25px; }
.premium-blog-sidebar-wrapper { padding-left: 15px; }

}
@media(max-width: 991px) {.premium-activity-hero-image { min-height: 390px; }
.premium-activity-hero-content { padding: 65px 20px; }
.premium-detail-info { grid-template-columns: repeat(3, 1fr); }
.premium-detail-info-item { padding: 15px; }
.premium-detail-info-item strong { font-size: 15px; }
.premium-detail-gallery-item figure { height: 220px; }
.premium-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.premium-blog-index { padding-top: 80px; }
.premium-blog-filter { grid-template-columns: 1fr 1fr; gap: 10px; }
.premium-filter-search, .premium-filter-button { grid-column: span 2; }
.premium-article-image { flex-basis: 38%; }
.premium-article-content { padding-left: 25px; }
.premium-blog-sidebar-wrapper { padding-left: 0; margin-top: 55px; }

}
@media(max-width: 767px) {.premium-activity-hero-image { min-height: 330px; }
.premium-activity-hero-content { padding: 50px 15px; }

  .premium-activity-hero-label {
    gap: 8px;
    margin-bottom: 18px;
    font-size: 7px;
    letter-spacing: 2px;
  }.premium-hero-line { width: 20px; }
.premium-activity-hero-subtitle { font-size: 10px; letter-spacing: 2px; }
.premium-activity-hero-title { font-size: 37px; }
.premium-activity-hero-category { font-size: 10px; letter-spacing: 1.5px; }
.premium-activity-hero-decoration { margin-top: 22px; }
.premium-activity-breadcrumb { padding: 17px 0; }
.premium-activity-breadcrumb .breadcrumb { justify-content: flex-start; line-height: 1.8; flex-wrap: wrap; }
.premium-activity-detail-area { padding: 40px 0 60px; }
.premium-detail-info { grid-template-columns: 1fr; margin-bottom: 45px; }

  .premium-detail-info-item {
    min-height: 70px;
    padding: 13px 5px;
    border-right: 0;
    border-bottom: 1px solid var(--premium-border);
  }.premium-detail-info-item:last-child { border-bottom: 0; }
.premium-detail-description, .premium-related-heading { margin-bottom: 35px; }
.premium-detail-description h2 { font-size: 28px; }
.premium-detail-description-content { font-size: 15px; line-height: 1.85; }
.premium-detail-route { margin: 30px 0 45px; }
.premium-detail-route-button, .premium-filter-search, .premium-filter-button { width: 100%; }
.premium-detail-gallery { margin-top: 45px; padding-top: 35px; }
.premium-detail-gallery-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
.premium-detail-gallery-heading h3 { font-size: 26px; }
.premium-detail-gallery-item figure { height: 240px; }
.premium-detail-tags { margin-top: 40px; }
.premium-related-activities { padding: 65px 0 60px; }
.premium-related-grid { grid-template-columns: 1fr; gap: 25px; }
.premium-related-image { height: 280px; }
.premium-blog-index { padding: 60px 0 10px; }
.premium-blog-heading { margin-bottom: 30px; }
.premium-blog-heading h1 { font-size: 30px; }

  .premium-blog-filter {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px;
    margin-bottom: 35px;
  }
  .premium-filter-select {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-height: 42px;
    padding: 0 10px;
    border: 1px solid var(--premium-border);
    background: #fff;
  }.premium-filter-select label { margin: 0; }
.premium-filter-select select { width: auto; min-width: 120px; text-align: right; }
.premium-article-card { display: block; margin-bottom: 35px; padding-bottom: 35px; }
.premium-article-image { width: 100%; min-height: 0; }
.premium-article-image a { height: auto; }
.premium-article-image img { width: 100%; height: 230px; min-height: 0; }
.premium-article-content { padding: 22px 0 0; }
.premium-article-content h2 { font-size: 23px; }
.premium-article-content p { font-size: 14px; }
.premium-search-result { align-items: flex-start; }
.premium-blog-sidebar-wrapper { margin-top: 45px; }
.premium-pagination { margin: 50px 0 60px; }
.premium-pagination li a { min-width: 34px; height: 34px; }

}
@media(max-width: 480px) {.premium-activity-hero-image { min-height: 285px; }
.premium-activity-hero-content { padding: 40px 12px; }
.premium-activity-hero-title, .premium-related-heading h2 { font-size: 31px; }
.premium-activity-hero-category { font-size: 7px; letter-spacing: 1px; }
.premium-activity-detail-area { padding-top: 35px; }
.premium-detail-description h2 { font-size: 26px; }
.premium-detail-gallery-heading h3, .premium-related-content h3 { font-size: 24px; }
.premium-detail-gallery-item figure { height: 210px; }
.premium-related-image { height: 240px; }
.premium-related-content { padding: 20px; }

}

/* BLOG AREA */
.premium-blog-area {
  --blog-dark-soft: #3b3631;
  --blog-copper-light: #b77a5a;
  --blog-text: #625c55;
  --blog-muted: #99928a;
  --blog-light: #f7f4ef;
  --blog-white: #ffffff;
  padding: 95px 0 30px;
  background: #fff;
}.premium-blog-row { align-items: flex-start; }
.premium-blog-heading { margin-bottom: 42px; }

.premium-blog-heading h1 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 3.5vw, 42px);
  font-weight: 400;
  letter-spacing: .2px;
  line-height: 1.2;
}
.premium-search-result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 25px;
  padding: 15px 18px;
  background: var(--blog-light);
  border-left: 2px solid var(--premium-copper);
}.premium-search-result-text { color: var(--blog-text); font-size: 13px; line-height: 1.6; }

.premium-search-result > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 27px;
  height: 27px;
  flex-shrink: 0;
  color: var(--blog-muted);
  border: 1px solid transparent;
  text-decoration: none;
  transition: color .3s ease, border-color .3s ease;
}.premium-search-result > a:hover { color: var(--premium-copper); border-color: var(--premium-border); }

.premium-blog-filter {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 100px 145px 145px;
  gap: 10px;
  margin-bottom: 48px;
  padding: 12px;
  background: var(--blog-light);
  border: 1px solid var(--premium-border);
}
.premium-input-wrapper i {
  position: absolute;
  top: 50%;
  left: 15px;
  color: #aaa;
  font-size: 13px;
  transform: translateY(-50%);
}
.premium-input-wrapper input {
  width: 100%;
  height: 100%;
  padding: 0 15px 0 38px;
  color: var(--premium-dark);
  background: #fff;
  border: 1px solid var(--premium-border);
  outline: none;
  font-family: inherit;
  font-size: 13px;
  transition: border-color .3s ease;
}
.premium-filter-select label {
  margin: 0 0 4px 3px;
  color: var(--blog-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1;
  text-transform: uppercase;
}
.premium-filter-select select {
  width: 100%;
  height: 32px;
  padding: 0 5px;
  color: var(--premium-dark);
  background: transparent;
  border: 0;
  outline: none;
  font-family: inherit;
  font-size: 12px;
  cursor: pointer;
}
.premium-filter-button button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  height: 46px;
  padding: 0 17px;
  color: #fff;
  background: var(--premium-copper);
  border: 1px solid var(--premium-copper);
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .3s ease, border-color .3s ease;
}
.premium-article-card {
  display: flex;
  align-items: stretch;
  width: 100%;
  margin-bottom: 42px;
  padding-bottom: 42px;
  border-bottom: 1px solid var(--premium-border);
}
.premium-article-image {
  position: relative;
  flex: 0 0 39%;
  min-height: 245px;
  overflow: hidden;
  background: var(--premium-dark);
}
.premium-article-image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 245px;
  object-fit: cover;
  transition: transform .7s ease;
}
.premium-article-image-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(41,37,33,.38);
  opacity: 0;
  transition: opacity .35s ease;
}.premium-article-content { flex: 1; min-width: 0; padding: 12px 0 8px 34px; }

.premium-article-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
  color: var(--blog-muted);
  font-size: 10px;
  letter-spacing: .9px;
  line-height: 1.5;
  text-transform: uppercase;
}
.premium-article-content h2 {
  margin: 0 0 14px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(19px, 2vw, 25px);
  font-weight: 400;
  line-height: 1.38;
}
.premium-article-content p {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 21px;
  color: var(--blog-text);
  font-size: 13px;
  line-height: 1.85;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}
.premium-read-more {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: var(--premium-copper);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.3px;
  text-decoration: none;
  text-transform: uppercase;
  transition: color .3s ease;
}.premium-empty-icon { margin-bottom: 18px; color: var(--premium-copper); font-size: 36px; }

.premium-blog-empty h3 {
  margin: 0 0 9px;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 23px;
  font-weight: 400;
}
.premium-blog-empty p {
  margin: 0;
  color: #888;
  font-size: 13px;
  line-height: 1.7;
}.premium-pagination { margin: 55px 0 75px; }

.premium-pagination li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  color: var(--blog-text);
  background: #fff;
  border: 1px solid var(--premium-border);
  font-size: 11px;
  text-decoration: none;
  transition: color .3s ease, background .3s ease, border-color .3s ease;
}

/* CONTACT */
.premium-contact-page {
  --pc-bg: #f5f1ea;
  --pc-surface: #ffffff;
  --pc-dark: #24221f;
  --pc-dark-soft: #34302b;
  --pc-text: #514b44;
  --pc-muted: #8a8278;
  --pc-border: #e4ddd3;
  --pc-copper-dark: #87533a;
  --pc-cream: #fbf8f3;
  --pc-shadow: 0 24px 60px rgba(38, 31, 24, 0.08);
  background: var(--pc-bg);
  color: var(--pc-text);
  padding-bottom: 100px;
}.premium-contact-page *, .premium-contact-page *::before, .premium-contact-page *::after { box-sizing: border-box; }
.premium-contact-intro { padding: 100px 0 55px; }
.premium-contact-intro-inner { max-width: 860px; }

.premium-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  color: var(--premium-copper);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-eyebrow::before {
  content: "";
  width: 36px;
  height: 1px;
  background: var(--premium-copper);
}
.premium-contact-intro h1 {
  margin: 0;
  color: var(--pc-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5vw, 72px);
  font-weight: 400;
  letter-spacing: -1.8px;
  line-height: 1.05;
}
.premium-contact-intro p {
  max-width: 650px;
  margin: 28px 0 0;
  color: var(--pc-muted);
  font-size: 18px;
  line-height: 1.9;
}.premium-contact-info { padding-bottom: 75px; }

.premium-contact-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--pc-border);
  border: 1px solid var(--pc-border);
}
.premium-contact-card {
  position: relative;
  min-height: 245px;
  padding: 36px 30px;
  background: var(--pc-surface);
  overflow: hidden;
  transition: all 0.35s ease;
}
.premium-contact-card::after {
  content: "";
  position: absolute;
  left: 30px;
  bottom: 0;
  width: 0;
  height: 2px;
  background: var(--premium-copper);
  transition: width 0.35s ease;
}.premium-contact-card:hover { transform: translateY(-5px); box-shadow: var(--pc-shadow); z-index: 2; }
.premium-contact-card:hover::after { width: 48px; }

.premium-contact-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 30px;
  background: var(--pc-cream);
  border: 1px solid var(--pc-border);
  border-radius: 50%;
  color: var(--premium-copper);
  font-size: 20px;
}
.premium-contact-card h3 {
  margin: 0 0 14px;
  color: var(--pc-dark);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.premium-contact-card p {
  margin: 0;
  color: var(--pc-muted);
  font-size: 16px;
  line-height: 1.8;
}.premium-contact-card a { color: var(--pc-text); text-decoration: none; transition: color 0.25s ease; }
.premium-phone-list, .premium-amenity-content { display: flex; flex-direction: column; gap: 5px; }

.premium-social-list {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 4px;
}
.premium-social-list a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background: transparent;
  border: 1px solid var(--pc-border);
  border-radius: 50%;
  color: var(--pc-dark);
  font-size: 15px;
}.premium-social-list a:hover { color: #fff; background: var(--pc-dark); border-color: var(--pc-dark); }

@media(max-width: 1199px) {.premium-blog-area { padding-top: 80px; }
.premium-blog-filter { grid-template-columns: minmax(160px, 1fr) 90px 125px 125px; }
.premium-article-content { padding-left: 25px; }

}
@media(max-width: 991px) {.premium-blog-area { padding-top: 70px; }
.premium-blog-sidebar-column { padding-left: 0; margin-top: 25px; }
.premium-blog-filter { grid-template-columns: 1fr 1fr; }
.premium-filter-search, .premium-filter-button { grid-column: span 2; }
.premium-article-image { flex-basis: 38%; }

}
@media(max-width: 767px) {.premium-blog-area { padding: 55px 0 10px; }
.premium-blog-heading { margin-bottom: 30px; }
.premium-blog-heading h1 { font-size: 30px; }

  .premium-blog-filter {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px;
    margin-bottom: 35px;
  }.premium-filter-search, .premium-filter-button { width: 100%; }

  .premium-filter-select {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-height: 42px;
    padding: 0 10px;
    background: #fff;
    border: 1px solid var(--premium-border);
  }.premium-filter-select label { margin: 0; }
.premium-filter-select select { width: auto; min-width: 120px; text-align: right; }
.premium-article-card { display: block; margin-bottom: 35px; padding-bottom: 35px; }
.premium-article-image { width: 100%; min-height: 0; }
.premium-article-image img { width: 100%; height: 235px; min-height: 0; }
.premium-article-content { padding: 21px 0 0; }
.premium-article-content h2 { font-size: 23px; }
.premium-article-content p { font-size: 13px; }
.premium-search-result { align-items: flex-start; }
.premium-pagination { margin-bottom: 55px; }

}
@media(max-width: 480px) {.premium-blog-area { padding-top: 45px; }
.premium-section-label { font-size: 10px; letter-spacing: 2px; }
.premium-blog-heading h1 { font-size: 26px; }
.premium-search-result { padding: 12px; }
.premium-search-result-text { font-size: 12px; }
.premium-article-image img { height: 205px; }
.premium-article-meta { font-size: 7px; }
.premium-article-content h2 { font-size: 21px; }
.premium-pagination ul { gap: 3px; }

  .premium-pagination li a {
    min-width: 32px;
    height: 32px;
    padding: 0 8px;
    font-size: 10px;
  }.premium-blog-empty { padding: 55px 20px; }

}

/* LOCATION */
.premium-location-section {
  padding-bottom: 100px;
}
.premium-location-layout {
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  min-height: 540px;
  background: var(--pc-dark);
  overflow: hidden;
  box-shadow: var(--pc-shadow);
}
.premium-location-copy {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 70px 55px;
  color: #fff;
  overflow: hidden;
}
.premium-location-copy::before {
  content: "";
  position: absolute;
  top: -120px;
  right: -120px;
  width: 300px;
  height: 300px;
  border: 1px solid rgba(216,195,165,.18);
  border-radius: 50%;
}
.premium-location-copy::after {
  content: "";
  position: absolute;
  bottom: -160px;
  left: -100px;
  width: 280px;
  height: 280px;
  border: 1px solid rgba(216,195,165,.12);
  border-radius: 50%;
}.premium-location-copy .premium-eyebrow { position: relative; z-index: 1; color: var(--premium-sand); }
.premium-location-copy .premium-eyebrow::before, .premium-hero-eyebrow span { background: var(--premium-sand); }

.premium-location-copy h2 {
  position: relative;
  z-index: 1;
  margin: 0 0 25px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 400;
  line-height: 1.1;
}
.premium-location-copy p {
  position: relative;
  z-index: 1;
  max-width: 390px;
  margin: 0;
  color: rgba(255,255,255,.62);
  font-size: 16px;
  line-height: 1.9;
}
.premium-address-box {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 14px;
  margin-top: 40px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.13);
}.premium-address-box i { margin-top: 4px; color: var(--premium-sand); }
.premium-address-box span { color: rgba(255,255,255,.78); font-size: 15px; line-height: 1.7; }
.premium-map-wrapper { position: relative; min-height: 540px; background: #ddd; }
.premium-map-wrapper > * { width: 100%; height: 100%; }

.premium-map-wrapper iframe {
  display: block;
  width: 100%;
  min-height: 540px;
  border: 0;
}

/* CONTACT FORM */
.premium-form-section {
  position: relative;
  padding: 110px 0 20px;
}.premium-form-heading, .premium-gallery-heading { max-width: 720px; margin: 0 auto 55px; text-align: center; }
.premium-form-heading .premium-eyebrow { justify-content: center; }

.premium-form-heading h2 {
  margin: 0;
  color: var(--pc-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(36px, 4vw, 54px);
  font-weight: 400;
  line-height: 1.1;
}
.premium-form-heading p {
  max-width: 600px;
  margin: 22px auto 0;
  color: var(--pc-muted);
  font-size: 17px;
  line-height: 1.9;
}
.premium-form-card {
  max-width: 1000px;
  margin: 0 auto;
  padding: 55px;
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  box-shadow: var(--pc-shadow);
}.premium-field { position: relative; margin-bottom: 25px; }

.premium-field label {
  display: block;
  margin-bottom: 9px;
  color: var(--pc-dark);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}
.premium-field .form-control {
  width: 100%;
  height: 58px;
  padding: 0 18px;
  color: var(--pc-dark);
  background: #fcfaf7;
  border: 1px solid var(--pc-border);
  border-radius: 0;
  outline: none;
  font-size: 16px;
  box-shadow: none;
  transition: all 0.25s ease;
}.premium-field textarea.form-control { height: 190px; padding: 18px; resize: vertical; }
.premium-field .form-control::placeholder { color: #aaa39a; }
.premium-field .form-control:focus { background: #fff; border-color: var(--premium-copper); box-shadow: 0 0 0 3px rgba(168,109,79,.08); }

.premium-character-count {
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
  color: var(--pc-muted);
  font-size: 13px;
  letter-spacing: 0.4px;
}
.premium-submit-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin-top: 15px;
  padding-top: 25px;
  border-top: 1px solid var(--pc-border);
}
.premium-form-note {
  max-width: 420px;
  color: var(--pc-muted);
  font-size: 14px;
  line-height: 1.7;
}
.premium-submit-button {
  min-width: 205px;
  height: 58px;
  padding: 0 30px;
  color: #fff;
  background: var(--pc-dark);
  border: 0;
  border-radius: 0;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.7px;
  text-transform: uppercase;
  transition: all 0.3s ease;
}.premium-submit-button i { margin-right: 10px; color: var(--premium-sand); }
.premium-submit-button:hover { background: var(--premium-copper); transform: translateY(-2px); }
.premium-submit-button:disabled { opacity: 0.6; cursor: not-allowed; transform: none; }

.premium-alert {
  margin: 10px 0 25px;
  padding: 15px 18px;
  border: 1px solid transparent;
  font-size: 15px;
  line-height: 1.6;
}.premium-alert.alert-success { color: #45634c; background: #f3f8f3; border-color: #cbdccd; }
.premium-alert.alert-danger { color: #864f48; background: #fbf3f1; border-color: #e4c9c4; }

/* ERROR PAGE */
.premium-error-page {
  --error-dark: #24221f;
  --error-dark-2: #2c2925;
  --error-text: rgba(255,255,255,.72);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: calc(100vh - 120px);
  padding: 100px 20px;
  background: radial-gradient(circle at center, rgba(168,109,79,.08) 0%, rgba(36,34,31,0) 40%), var(--error-dark);
  overflow: hidden;
  text-align: center;
}
.premium-error-page::before {
  content: "404";
  position: absolute;
  top: 50%;
  left: 50%;
  color: rgba(255,255,255,.018);
  font-size: clamp(180px, 30vw, 520px);
  font-weight: 700;
  letter-spacing: -15px;
  line-height: 1;
  pointer-events: none;
  user-select: none;
  white-space: nowrap;
  transform: translate(-50%, -50%);
}
.premium-error-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 0%, rgba(216,195,165,.025) 50%, transparent 100%);
  pointer-events: none;
}
.premium-error-content {
  position: relative;
  z-index: 2;
  max-width: 760px;
  margin: 0 auto;
  padding: 20px;
}
.premium-error-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-bottom: 25px;
}
.premium-error-label span {
  display: block;
  width: 35px;
  height: 1px;
  background: var(--premium-copper);
}
.premium-error-label strong {
  color: var(--premium-sand);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-error-number {
  margin-bottom: 5px;
  color: rgba(255,255,255,.95);
  font-size: clamp(120px, 20vw, 260px);
  font-weight: 700;
  letter-spacing: -8px;
  line-height: .85;
}
.premium-error-title {
  margin: 35px 0 15px;
  color: #fff;
  font-size: clamp(24px, 4vw, 38px);
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 1.3;
}
.premium-error-description {
  max-width: 560px;
  margin: 0 auto;
  color: var(--error-text);
  font-size: 16px;
  font-weight: 400;
  letter-spacing: .3px;
  line-height: 1.8;
}
.premium-error-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 30px auto;
}
.premium-error-divider span {
  position: relative;
  display: block;
  width: 60px;
  height: 1px;
  background: var(--premium-copper);
}
.premium-error-divider span::before, .premium-error-divider span::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 4px;
  height: 4px;
  background: var(--premium-sand);
  border-radius: 50%;
  transform: translateY(-50%);
}.premium-error-divider span::before { left: -10px; }
.premium-error-divider span::after { right: -10px; }

.premium-error-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-width: 185px;
  height: 50px;
  padding: 0 24px;
  color: #fff !important;
  background: transparent;
  border: 1px solid rgba(216,195,165,.55);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-decoration: none !important;
  overflow: hidden;
  isolation: isolate;
  transition: border-color .3s ease;
}
.premium-error-button::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 0;
  background: var(--premium-copper);
  z-index: -1;
  transition: width .35s ease;
}.premium-error-button:hover { color: #fff !important; border-color: var(--premium-copper); }

.premium-error-language {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 35px;
  color: rgba(255,255,255,.35);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
}.premium-error-language a { color: rgba(255,255,255,.45); text-decoration: none; transition: color .3s ease; }

@media(max-width: 991px) {.premium-contact-intro { padding: 75px 0 45px; }
.premium-contact-grid { grid-template-columns: repeat(2, 1fr); }
.premium-location-layout { grid-template-columns: 1fr; }
.premium-location-copy { min-height: 390px; }
.premium-map-wrapper, .premium-map-wrapper iframe { min-height: 450px; }
.premium-form-card { padding: 40px; }
.premium-error-page { min-height: calc(100vh - 90px); padding: 80px 20px; }
.premium-error-number { letter-spacing: -5px; }
.premium-error-title { margin-top: 30px; }

}
@media(max-width: 767px) {.premium-contact-page { padding-bottom: 65px; }
.premium-contact-intro { padding: 60px 0 40px; }
.premium-contact-intro h1 { font-size: 46px; letter-spacing: -1px; }
.premium-contact-intro p { font-size: 16px; line-height: 1.8; }
.premium-contact-grid { grid-template-columns: 1fr; }
.premium-contact-card { min-height: auto; padding: 30px 25px; }
.premium-location-section { padding-bottom: 70px; }
.premium-location-copy { padding: 55px 30px; }
.premium-location-copy h2 { font-size: 40px; }
.premium-map-wrapper, .premium-map-wrapper iframe { min-height: 380px; }
.premium-form-section { padding-top: 75px; }
.premium-form-heading { margin-bottom: 40px; }
.premium-form-card { padding: 30px 20px; }
.premium-submit-row { align-items: stretch; flex-direction: column; }
.premium-submit-button { width: 100%; }
.premium-error-page { min-height: calc(100vh - 70px); padding: 70px 18px; }
.premium-error-content { padding: 10px; }
.premium-error-label { gap: 10px; margin-bottom: 20px; }
.premium-error-label span { width: 22px; }
.premium-error-label strong { font-size: 11px; letter-spacing: 2px; }
.premium-error-number { font-size: clamp(100px, 32vw, 170px); letter-spacing: -4px; }
.premium-error-title { margin: 25px 0 12px; font-size: 26px; }
.premium-error-description { max-width: 340px; font-size: 15px; line-height: 1.7; }
.premium-error-divider { margin: 25px auto; }
.premium-error-button { width: 100%; max-width: 260px; }
.premium-error-language { margin-top: 28px; }

}
@media(max-width: 480px) {.premium-contact-intro h1 { font-size: 40px; }
.premium-location-copy h2 { font-size: 36px; }
.premium-form-heading h2 { font-size: 38px; }
.premium-field .form-control { height: 54px; }
.premium-field textarea.form-control { height: 170px; }
.premium-error-page { padding: 60px 15px; }
.premium-error-number { font-size: 112px; }
.premium-error-title { font-size: 23px; }
.premium-error-description { font-size: 14px; }
.premium-error-button { max-width: 240px; height: 48px; font-size: 11px; }

}
@media(max-height: 600px) and (max-width: 767px) {.premium-error-page { min-height: 100vh; padding: 40px 15px; }
.premium-error-label { margin-bottom: 12px; }
.premium-error-number { font-size: 92px; }
.premium-error-title { margin: 18px 0 10px; }
.premium-error-divider { margin: 18px auto; }
.premium-error-language { margin-top: 20px; }

}

/* GALLERY */
.premium-gallery-section, .premium-facilities-section {
  position: relative;
  padding: 115px 0 120px;
  background: #f5f1eb;
  overflow: hidden;
}
.premium-gallery-eyebrow, .premium-facilities-heading .premium-section-eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 20px;
  color: #a86d4f;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}.premium-gallery-eyebrow span, .premium-facilities-heading .premium-section-eyebrow span, .premium-blog-eyebrow span { width: 35px; height: 1px; background: #a86d4f; }

.premium-gallery-heading h2 {
  margin: 0;
  color: #292521;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 5vw, 62px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -1.5px;
}
.premium-gallery-heading p {
  max-width: 570px;
  margin: 25px auto 0;
  color: #77716a;
  font-size: 16px;
  line-height: 1.9;
}.premium-gallery-filter-wrapper { display: flex; justify-content: center; margin-bottom: 45px; }

.premium-gallery-filter {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 7px;
  background: #fff;
  border: 1px solid #e8e1d8;
  box-shadow: 0 15px 40px rgba(40,32,25,.05);
}
.premium-gallery-filter-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid transparent;
  background: transparent;
  color: #77716a;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  cursor: pointer;
  transition: color .3s ease, background .3s ease, border-color .3s ease;
}.premium-gallery-filter-btn:hover { color: #292521; }
.premium-gallery-filter-btn.active { color: #fff; background: #292521; border-color: #292521; }
.premium-gallery-filter-btn.active:hover { color: #fff; background: #a86d4f; border-color: #a86d4f; }
.premium-gallery-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.premium-gallery-item { position: relative; min-width: 0; }

.premium-gallery-image-button {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  padding: 0;
  border: 0;
  background: #292521;
  overflow: hidden;
  cursor: pointer;
}
.premium-gallery-image-button img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.2,.6,.2,1);
}
.premium-gallery-image-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(41,37,33,.35);
  opacity: 0;
  transition: opacity .4s ease;
}.premium-gallery-image-button:hover img { transform: scale(1.07); }

.premium-gallery-view-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(255,255,255,.65);
  color: #fff;
  background: rgba(41,37,33,.25);
  backdrop-filter: blur(8px);
  font-size: 15px;
  transform: translateY(10px);
  transition: transform .4s ease;
}.premium-gallery-image-button:hover .premium-gallery-view-icon { transform: translateY(0); }

.premium-gallery-empty {
  padding: 90px 25px;
  text-align: center;
  background: #fff;
  border: 1px solid #e8e1d8;
}.premium-gallery-empty-icon { margin-bottom: 20px; color: #a86d4f; font-size: 34px; }

.premium-gallery-empty h3, .premium-room-empty h3 {
  margin: 0;
  color: #4a443e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 26px;
  font-weight: 400;
}

/* LIGHTBOX */
.premium-lightbox-overlay {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 50px;
  background: rgba(29,26,23,.96);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 99999;
  transition: opacity .35s ease, visibility .35s ease;
}.premium-lightbox-overlay.active { opacity: 1; visibility: visible; pointer-events: auto; }

.premium-lightbox-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 1200px;
}
.premium-lightbox-main {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: min(70vh, 720px);
}
.premium-lightbox-img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  box-shadow: 0 30px 80px rgba(0,0,0,.35);
}
.premium-lightbox-counter {
  margin-top: 18px;
  color: rgba(255,255,255,.65);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
}
.premium-lightbox-thumbnails {
  display: flex;
  align-items: center;
  gap: 8px;
  width: min(900px, 90vw);
  margin-top: 18px;
  padding-bottom: 5px;
  overflow-x: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(216,195,165,.55) transparent;
}.premium-lightbox-thumbnails::-webkit-scrollbar { height: 4px; }
.premium-lightbox-thumbnails::-webkit-scrollbar-track, .premium-main-navbar .classy-nav-container, .premium-main-navbar .container, .premium-main-navbar .classy-navbar { background: transparent; }
.premium-lightbox-thumbnails::-webkit-scrollbar-thumb { background: rgba(216,195,165,.55); }

.premium-lightbox-thumbnail {
  flex: 0 0 72px;
  width: 72px;
  height: 48px;
  padding: 0;
  border: 1px solid transparent;
  background: transparent;
  opacity: .45;
  cursor: pointer;
  overflow: hidden;
  transition: opacity .3s ease, border-color .3s ease;
}
.premium-lightbox-thumbnail img, .premium-room-gallery-image img, .premium-room-thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}.premium-lightbox-thumbnail:hover { opacity: .8; }
.premium-lightbox-thumbnail.active { opacity: 1; border-color: #d8c3a5; }

.premium-lightbox-close {
  position: absolute;
  top: 30px;
  right: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid rgba(216,195,165,.35);
  background: transparent;
  cursor: pointer;
  transition: background .3s ease, border-color .3s ease;
}
.premium-lightbox-close span {
  position: absolute;
  width: 17px;
  height: 1px;
  background: #fff;
}.premium-lightbox-close span:first-child { transform: rotate(45deg); }
.premium-lightbox-close span:last-child { transform: rotate(-45deg); }
.premium-lightbox-close:hover, .premium-lightbox-prev:hover, .premium-lightbox-next:hover { background: #a86d4f; border-color: #a86d4f; }

.premium-lightbox-prev, .premium-lightbox-next {
  position: absolute;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  padding: 0;
  border: 1px solid rgba(216,195,165,.35);
  background: rgba(41,37,33,.25);
  color: #fff;
  cursor: pointer;
  transform: translateY(-50%);
  transition: background .3s ease, border-color .3s ease;
}.premium-lightbox-prev { left: 35px; }
.premium-lightbox-next { right: 35px; }

@media(max-width: 1199px) {.premium-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }

}
@media(max-width: 991px) {.premium-gallery-section { padding: 90px 0 95px; }
.premium-gallery-heading { margin-bottom: 45px; }
.premium-gallery-filter-wrapper { margin-bottom: 35px; }
.premium-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.premium-lightbox-overlay { padding: 40px 70px; }
.premium-lightbox-prev { left: 15px; }
.premium-lightbox-next { right: 15px; }

}
@media(max-width: 767px) {.premium-gallery-section { padding: 75px 0 80px; }
.premium-gallery-heading { padding: 0 15px; margin-bottom: 35px; }
.premium-gallery-heading h2 { font-size: 40px; }
.premium-gallery-heading p { font-size: 15px; line-height: 1.8; }
.premium-gallery-eyebrow { font-size: 11px; letter-spacing: 2.2px; }
.premium-gallery-eyebrow span { width: 25px; }
.premium-gallery-filter-wrapper { width: 100%; padding: 0 10px; margin-bottom: 30px; }
.premium-gallery-filter { width: 100%; padding: 6px; gap: 5px; }

  .premium-gallery-filter-btn {
    flex: 1 1 auto;
    min-height: 38px;
    padding: 0 12px;
    font-size: 10px;
    letter-spacing: 1px;
  }.premium-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.premium-gallery-image-overlay { display: none; }
.premium-lightbox-overlay { padding: 70px 15px 25px; }
.premium-lightbox-main { height: 58vh; }

  .premium-lightbox-prev, .premium-lightbox-next {
    top: auto;
    bottom: 125px;
    width: 42px;
    height: 42px;
    transform: none;
  }.premium-lightbox-prev { left: 15px; }
.premium-lightbox-next { right: 15px; }

  .premium-lightbox-close {
    top: 18px;
    right: 18px;
    width: 38px;
    height: 38px;
  }.premium-lightbox-counter { margin-top: 12px; }
.premium-lightbox-thumbnails { width: 100%; margin-top: 14px; }
.premium-lightbox-thumbnail { flex-basis: 62px; width: 62px; height: 42px; }

}
@media(max-width: 480px) {.premium-gallery-section { padding: 65px 0 70px; }
.premium-gallery-heading h2 { font-size: 36px; }
.premium-gallery-filter { border: 0; background: transparent; box-shadow: none; }
.premium-gallery-filter-btn { flex: 0 0 auto; background: #fff; border-color: #e8e1d8; }
.premium-gallery-filter-btn.active { background: #292521; border-color: #292521; }
.premium-gallery-grid { gap: 8px; }
.premium-lightbox-main { height: 52vh; }
.premium-lightbox-prev, .premium-lightbox-next { bottom: 112px; }
.premium-lightbox-thumbnails { width: calc(100% - 70px); }

}
@media(prefers-reduced-motion: reduce) {.premium-gallery-image-button img, .premium-gallery-image-overlay, .premium-gallery-view-icon, .premium-lightbox-overlay, .premium-gallery-filter-btn { transition: none !important; }

}

/* ROOM DETAIL */
.premium-room-detail-section {
  --room-dark: #292521;
  --room-dark-soft: #3b3631;
  --room-bg: #f5f1eb;
  --room-text: #77716a;
  padding: 100px 0 110px;
  background: var(--room-bg);
}

/* ROOM COMPONENTS */
.premium-room-detail-hero {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.premium-room-detail-hero-image {
  position: relative;
  min-height: 510px;
  display: flex;
  align-items: flex-end;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}.premium-room-detail-hero-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(25,22,19,.10) 20%, rgba(25,22,19,.78) 100%); }

.premium-room-detail-hero-content {
  position: relative;
  z-index: 2;
  padding: 80px 0 65px;
  color: #fff;
}.premium-hero-eyebrow { justify-content: flex-start; margin-bottom: 18px; color: var(--premium-sand); }

.premium-room-detail-hero h1 {
  max-width: 800px;
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 6vw, 76px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -1.5px;
}
.premium-hero-price {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: 25px;
}
.premium-hero-price strong {
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
  font-weight: 400;
}.premium-hero-price span { color: rgba(255,255,255,.70); font-size: 13px; }
.premium-room-detail-container { max-width: 1080px; margin: 0 auto; }
.premium-room-gallery { margin-bottom: 75px; }
.premium-room-gallery .carousel { position: relative; background: var(--room-dark); overflow: hidden; }
.premium-room-gallery-image { width: 100%; height: 610px; background: var(--room-dark); }

.premium-gallery-control {
  position: absolute;
  top: 50%;
  z-index: 5;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  color: #fff !important;
  background: rgba(41,37,33,.65);
  border: 1px solid rgba(255,255,255,.25);
  text-decoration: none !important;
  transition: background .3s ease, border-color .3s ease;
}.premium-gallery-control:hover, .premium-reservation-button:hover, .premium-room-page-book:hover, .premium-footer-reservation:hover, .premium-footer-social a:hover, .premium-top-social a:hover, .premium-room-book:hover { color: #fff !important; background: var(--premium-copper); border-color: var(--premium-copper); }
.premium-gallery-prev { left: 25px; }
.premium-gallery-next { right: 25px; }

.premium-room-thumbnails {
  display: flex;
  gap: 10px;
  padding-top: 12px;
  overflow-x: auto;
  scrollbar-width: thin;
}
.premium-room-thumbnail {
  position: relative;
  flex: 0 0 100px;
  width: 100px;
  height: 70px;
  padding: 0;
  border: 2px solid transparent;
  background: transparent;
  overflow: hidden;
  cursor: pointer;
  opacity: .65;
  transition: opacity .3s ease, border-color .3s ease;
}.premium-room-thumbnail:hover, .premium-room-thumbnail.active { opacity: 1; border-color: var(--premium-copper); }
.premium-room-intro { max-width: 800px; margin: 0 auto 60px; text-align: center; }

.premium-room-intro-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 18px;
  color: var(--premium-copper);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}.premium-room-intro-label span, .premium-rooms-page-eyebrow span, .premium-signature-line { width: 35px; height: 1px; background: var(--premium-copper); }

.premium-room-intro h2 {
  margin: 0;
  color: var(--room-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 4vw, 50px);
  font-weight: 400;
  line-height: 1.1;
}
.premium-room-intro-text {
  margin-top: 25px;
  color: var(--room-text);
  font-size: 16px;
  line-height: 1.95;
}
.premium-detail-features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 70px;
  border-top: 1px solid var(--premium-border);
  border-left: 1px solid var(--premium-border);
  background: #fff;
}
.premium-detail-feature {
  display: flex;
  align-items: center;
  gap: 15px;
  min-height: 105px;
  padding: 18px;
  border-right: 1px solid var(--premium-border);
  border-bottom: 1px solid var(--premium-border);
}
.premium-detail-feature-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  color: var(--premium-copper);
  font-size: 14px;
  border: 1px solid var(--premium-border);
}
.premium-detail-feature span {
  display: block;
  margin-bottom: 5px;
  color: #99928a;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1.3px;
  text-transform: uppercase;
}
.premium-detail-feature strong {
  display: block;
  color: var(--room-dark-soft);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
}

/* ROOM LIST */
.premium-rooms-page {
  --room-dark: #292521;
  --room-dark-soft: #3b3631;
  --room-bg: #f5f1eb;
  --room-text: #77716a;
  --room-white: #ffffff;
  position: relative;
  padding: 115px 0 120px;
  background: var(--room-bg);
  overflow: hidden;
}.premium-rooms-page-heading, .premium-blog-heading, .premium-rooms-heading { max-width: 760px; margin: 0 auto 65px; text-align: center; }

.premium-rooms-page-eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  margin-bottom: 20px;
  color: var(--premium-copper);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-rooms-page-heading h1 {
  margin: 0;
  color: var(--room-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 5vw, 60px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -1.5px;
}
.premium-rooms-page-heading p {
  max-width: 610px;
  margin: 25px auto 0;
  color: var(--room-text);
  font-size: 16px;
  line-height: 1.9;
}.premium-rooms-grid { display: flex; flex-direction: column; gap: 35px; }

.premium-room-info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  margin-bottom: 70px;
}.premium-room-info-card { padding: 40px; background: #fff; border: 1px solid var(--premium-border); }

.premium-room-page-card {
  display: flex;
  width: 100%;
  min-height: 510px;
  background: var(--room-white);
  box-shadow: 0 25px 70px rgba(40, 32, 25, .08);
  overflow: hidden;
  transition: transform .4s ease, box-shadow .4s ease;
}.premium-room-page-card:hover { transform: translateY(-5px); box-shadow: 0 35px 90px rgba(40, 32, 25, .13); }

.premium-room-page-image {
  position: relative;
  width: 50%;
  min-height: 510px;
  overflow: hidden;
  background: var(--room-dark);
}
.premium-room-page-image img, .premium-blog-image img, .premium-room-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.2, .6, .2, 1);
}.premium-room-page-card:hover .premium-room-page-image img, .premium-room-card:hover .premium-room-image img { transform: scale(1.05); }

.premium-room-page-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(25, 22, 19, .02) 25%, rgba(25, 22, 19, .68) 100%);
  pointer-events: none;
}
.premium-room-page-image-label, .premium-room-label {
  position: absolute;
  left: 30px;
  bottom: 30px;
  z-index: 2;
}
.premium-room-page-image-label span {
  display: inline-block;
  padding: 9px 14px;
  color: #fff;
  background: rgba(25, 22, 19, .25);
  border: 1px solid rgba(255, 255, 255, .4);
  backdrop-filter: blur(8px);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.premium-info-card-heading {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--premium-border);
}
.premium-info-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  color: var(--premium-copper);
  border: 1px solid var(--premium-border);
  font-size: 14px;
}
.premium-info-card-heading span {
  display: block;
  margin-bottom: 4px;
  color: var(--premium-copper);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.premium-info-card-heading h3 {
  margin: 0;
  color: var(--room-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
  font-weight: 400;
  line-height: 1.2;
}.premium-policy-list, .premium-footer-nav { margin: 0; padding: 0; list-style: none; }

.premium-policy-list li {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  padding: 16px 0;
  color: var(--room-text);
  font-size: 15px;
  line-height: 1.7;
  border-bottom: 1px solid var(--premium-border);
}.premium-policy-list li:last-child { border-bottom: 0; padding-bottom: 0; }

.premium-list-number {
  flex-shrink: 0;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
}.premium-service-list { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; }

.premium-service-item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  color: var(--room-text);
  font-size: 14px;
  border-bottom: 1px solid var(--premium-border);
}
.premium-service-check {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  flex-shrink: 0;
  color: var(--premium-copper);
  font-size: 11px;
}.premium-room-reservation { padding: 35px 40px; background: var(--room-dark); }

.premium-reservation-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}
.premium-reservation-label {
  display: block;
  margin-bottom: 7px;
  color: var(--premium-sand);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.premium-reservation-content h3 {
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.3;
}
.premium-reservation-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  min-width: 180px;
  height: 50px;
  padding: 0 20px;
  flex-shrink: 0;
  color: #fff !important;
  border: 1px solid rgba(216, 195, 165, .55);
  text-decoration: none !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  transition: background .3s ease, border-color .3s ease;
}.premium-reservation-button i, .premium-footer-reservation i, .premium-reservation a i { color: var(--premium-sand); transition: transform .3s ease; }
.premium-reservation-button:hover i, .premium-reservation a:hover i, .premium-error-button:hover i, .premium-hero-button:hover i { color: #fff; transform: translateX(5px); }

@media(max-width: 991px) {.premium-room-detail-hero-image { min-height: 450px; }
.premium-room-detail-hero-content { padding: 70px 0 55px; }
.premium-room-detail-section { padding: 80px 0 90px; }
.premium-room-detail-container { max-width: 100%; }
.premium-room-gallery-image { height: 500px; }
.premium-detail-features { grid-template-columns: repeat(2, 1fr); }
.premium-room-info-grid { grid-template-columns: 1fr; }

}
@media(max-width: 767px) {.premium-room-detail-hero-image { min-height: 390px; }
.premium-room-detail-hero-content { padding: 55px 20px 45px; }
.premium-room-detail-hero h1 { font-size: 42px; letter-spacing: -0.8px; }
.premium-room-detail-section { padding: 65px 0 75px; }
.premium-room-gallery { margin-bottom: 55px; }
.premium-room-gallery-image { height: 350px; }
.premium-gallery-control { width: 42px; height: 42px; }
.premium-gallery-prev { left: 15px; }
.premium-gallery-next { right: 15px; }
.premium-room-thumbnail { flex-basis: 80px; width: 80px; height: 58px; }
.premium-room-intro { margin-bottom: 45px; padding: 0 10px; }
.premium-room-intro h2 { font-size: 36px; }
.premium-room-intro-text { font-size: 15px; line-height: 1.85; }
.premium-detail-features { grid-template-columns: 1fr; margin-bottom: 50px; }
.premium-detail-feature { min-height: 85px; }
.premium-room-info-grid { gap: 20px; margin-bottom: 50px; }
.premium-room-info-card { padding: 28px 22px; }
.premium-info-card-heading h3 { font-size: 26px; }
.premium-service-list { grid-template-columns: 1fr; }
.premium-room-reservation { padding: 30px 22px; }
.premium-reservation-content { flex-direction: column; align-items: flex-start; }
.premium-reservation-content h3 { font-size: 25px; }
.premium-reservation-button { width: 100%; }

}
@media(max-width: 480px) {.premium-room-detail-hero-image { min-height: 350px; }
.premium-room-detail-hero-content { padding: 45px 15px 35px; }
.premium-hero-eyebrow { font-size: 10px; letter-spacing: 2px; }
.premium-room-detail-hero h1 { font-size: 36px; }
.premium-room-gallery-image { height: 280px; }
.premium-room-thumbnails { gap: 7px; }
.premium-room-thumbnail { flex-basis: 70px; width: 70px; height: 52px; }
.premium-room-intro h2 { font-size: 32px; }
.premium-room-info-card { padding: 25px 18px; }
.premium-policy-list li { font-size: 14px; }
.premium-reservation-content h3 { font-size: 23px; }

}
.premium-room-page-number {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 2;
  color: rgba(255, 255, 255, .75);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 400;
}
.premium-room-page-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
  padding: 55px;
}.premium-room-page-title, .premium-room-title { display: flex; align-items: flex-start; gap: 18px; }

.premium-room-page-small-number {
  padding-top: 8px;
  color: var(--premium-copper);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  flex-shrink: 0;
}
.premium-room-page-title h2 {
  margin: 0;
  color: var(--room-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 3vw, 43px);
  font-weight: 400;
  line-height: 1.08;
}
.premium-room-page-price {
  display: flex;
  align-items: baseline;
  gap: 7px;
  margin-top: 25px;
}
.premium-room-page-price strong {
  color: var(--premium-copper);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 400;
}.premium-room-page-price span { color: #8b847d; font-size: 13px; }

.premium-room-page-divider {
  width: 100%;
  height: 1px;
  margin: 25px 0 0;
  background: var(--premium-border);
}
.premium-room-page-features, .premium-room-features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 28px;
  border-top: 1px solid var(--premium-border);
  border-left: 1px solid var(--premium-border);
}
.premium-room-page-feature {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 72px;
  padding: 12px;
  border-right: 1px solid var(--premium-border);
  border-bottom: 1px solid var(--premium-border);
}
.premium-room-page-feature-icon, .premium-feature-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  color: var(--premium-copper);
  font-size: 13px;
}
.premium-room-page-feature small {
  display: block;
  margin-bottom: 3px;
  color: #99928a;
  font-size: 10px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}
.premium-room-page-feature strong {
  display: block;
  color: var(--room-dark-soft);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
}
.premium-room-page-actions, .premium-room-actions {
  display: flex;
  align-items: center;
  gap: 25px;
  margin-top: 35px;
}
.premium-room-page-detail {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  color: var(--room-dark) !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.7px;
  text-transform: uppercase;
  text-decoration: none !important;
  white-space: nowrap;
}.premium-room-page-detail i, .premium-room-detail i { color: var(--premium-copper); transition: transform .3s ease; }
.premium-room-page-detail:hover i, .premium-blog-readmore:hover i, .premium-room-detail:hover i { transform: translateX(6px); }

.premium-room-page-book {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 20px;
  color: #fff !important;
  background: var(--room-dark);
  border: 1px solid var(--room-dark);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: background .3s ease, border-color .3s ease;
}
.premium-rooms-page-empty {
  padding: 80px 20px;
  text-align: center;
  background: #fff;
  box-shadow: 0 20px 60px rgba(40, 32, 25, .06);
}.premium-rooms-page-empty-icon { margin-bottom: 20px; color: var(--premium-copper); font-size: 34px; }

.premium-rooms-page-empty h2 {
  margin: 0;
  color: var(--room-dark-soft);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 26px;
  font-weight: 400;
}.premium-blog-sidebar { position: relative; width: 100%; padding-left: 25px; }
.premium-sidebar-widget { position: relative; width: 100%; margin-bottom: 52px; }

.premium-reservation-widget {
  position: relative;
  padding: 38px 34px;
  background: #292521;
  border: 1px solid rgba(216, 195, 165, .18);
  box-shadow: 0 20px 55px rgba(40, 32, 25, .09);
  overflow: hidden;
}
.premium-reservation-widget::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 75px;
  height: 75px;
  border-top: 1px solid rgba(216, 195, 165, .25);
  border-right: 1px solid rgba(216, 195, 165, .25);
}
.premium-reservation-widget::after {
  content: "";
  position: absolute;
  right: 17px;
  bottom: 17px;
  width: 4px;
  height: 4px;
  background: #a86d4f;
  border-radius: 50%;
}
.premium-widget-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 17px;
  color: #d8c3a5;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2.4px;
  line-height: 1.4;
  text-transform: uppercase;
}
.premium-widget-eyebrow span {
  width: 24px;
  height: 1px;
  flex-shrink: 0;
  background: #a86d4f;
}
.premium-reservation-widget h3 {
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  font-weight: 400;
  line-height: 1.18;
}
.premium-reservation-widget p {
  margin: 13px 0 26px;
  color: rgba(255, 255, 255, .60);
  font-size: 13px;
  line-height: 1.8;
}
.premium-sidebar-reservation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  width: 100%;
  min-height: 47px;
  padding: 0 17px;
  color: #fff !important;
  background: #a86d4f;
  border: 1px solid #a86d4f;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.4px;
  line-height: 1.2;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background .3s ease, border-color .3s ease;
}.premium-sidebar-reservation:hover { color: #fff !important; background: #b77a5a; border-color: #b77a5a; }
.premium-sidebar-reservation i { color: #d8c3a5; transition: transform .3s ease; }

.premium-sidebar-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 25px;
}
.premium-title-line {
  width: 28px;
  height: 1px;
  flex-shrink: 0;
  background: #a86d4f;
}
.premium-sidebar-title h4 {
  margin: 0;
  color: #292521;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
}.premium-recent-posts, .premium-facilities-list .row:first-child .premium-facility-item { border-top: 1px solid #e8e1d8; }

.premium-recent-post {
  display: flex;
  gap: 15px;
  padding: 17px 0;
  border-bottom: 1px solid #e8e1d8;
}
.premium-recent-image {
  display: block;
  width: 80px;
  height: 76px;
  flex: 0 0 80px;
  overflow: hidden;
  background: #292521;
}
.premium-recent-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}
.premium-recent-content {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding-right: 13px;
}
.premium-recent-date {
  margin-bottom: 6px;
  color: #a86d4f;
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 1.1px;
  line-height: 1.4;
  text-transform: uppercase;
}
.premium-recent-title {
  display: block;
  color: #3b3631 !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.38;
  text-decoration: none !important;
  transition: color .3s ease;
}.premium-recent-title:hover, .premium-blog-title:hover, .premium-blog-readmore:hover { color: #a86d4f !important; }

.premium-recent-arrow {
  position: absolute;
  right: 0;
  bottom: 0;
  color: #a86d4f !important;
  font-size: 11px;
  text-decoration: none !important;
  opacity: 0;
  transform: translateX(-5px);
  transition: opacity .3s ease, transform .3s ease;
}.premium-recent-post:hover .premium-recent-arrow, .premium-scroll-top:hover .premium-scroll-label { opacity: 1; transform: translateX(0); }

.premium-category-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #e8e1d8;
}.premium-category-list li { margin: 0; padding: 0; border-bottom: 1px solid #e8e1d8; }

.premium-category-list li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  min-height: 47px;
  padding: 0 4px;
  color: #4a443e !important;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none !important;
  transition: color .3s ease, padding .3s ease;
}
.premium-category-list li a small {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 23px;
  height: 21px;
  padding: 0 5px;
  flex-shrink: 0;
  color: #a86d4f;
  background: #f5f1eb;
  font-size: 7px;
  font-weight: 700;
  transition: color .3s ease, background .3s ease;
}.premium-category-list li a:hover { padding-left: 10px; color: #a86d4f !important; }
.premium-category-list li a:hover small { color: #fff; background: #a86d4f; }

.premium-social-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.premium-social-links a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  color: #6f6860 !important;
  background: #f5f1eb;
  border: 1px solid #e8e1d8;
  font-size: 14px;
  text-decoration: none !important;
  transition: color .3s ease, background .3s ease, border-color .3s ease, transform .3s ease;
}
.premium-social-links a:hover {
  color: #fff !important;
  background: #a86d4f;
  border-color: #a86d4f;
  transform: translateY(-3px);
}
@media(max-width: 991px) {.premium-rooms-page { padding: 90px 0 100px; }
.premium-rooms-page-heading { margin-bottom: 50px; }
.premium-room-page-card, .premium-room-page-image { min-height: 450px; }
.premium-room-page-content { padding: 38px; }
.premium-room-page-title h2 { font-size: 36px; }
.premium-room-page-features { grid-template-columns: 1fr 1fr; }
.premium-room-page-actions { gap: 15px; }
.premium-room-page-book { padding: 0 15px; }

}
@media(max-width: 767px) {.premium-rooms-page { padding: 75px 0 80px; }
.premium-rooms-page-heading { margin-bottom: 40px; padding: 0 15px; }
.premium-rooms-page-heading h1 { font-size: 40px; }
.premium-rooms-page-heading p { font-size: 15px; line-height: 1.8; }
.premium-room-page-card { display: block; min-height: 0; }
.premium-room-page-image { width: 100%; height: 330px; min-height: 330px; }
.premium-room-page-content { width: 100%; padding: 35px 25px; }
.premium-room-page-title h2 { font-size: 34px; }
.premium-room-page-features { grid-template-columns: 1fr; }
.premium-room-page-actions { flex-direction: column; align-items: stretch; gap: 18px; }
.premium-room-page-detail { justify-content: space-between; width: 100%; }
.premium-room-page-book { width: 100%; }

}
@media(max-width: 480px) {.premium-rooms-page { padding: 65px 0 70px; }
.premium-room-page-image { height: 280px; min-height: 280px; }
.premium-room-page-image-label { left: 20px; bottom: 20px; }
.premium-room-page-number { top: 20px; right: 20px; }
.premium-room-page-content { padding: 30px 20px; }
.premium-room-page-title { gap: 12px; }
.premium-room-page-title h2 { font-size: 30px; }
.premium-room-page-price strong { font-size: 27px; }
.premium-room-page-feature { min-height: 65px; }

}
@media(max-width: 991px) {.premium-blog-sidebar { padding-left: 0; }
.premium-reservation-widget { padding: 35px 30px; }
.premium-reservation-widget h3 { font-size: 29px; }
.premium-recent-image { width: 82px; height: 76px; flex-basis: 82px; }
.premium-recent-title { font-size: 16px; }

}
@media(max-width: 767px) {.premium-blog-sidebar { padding-left: 0; margin-top: 15px; }
.premium-sidebar-widget { margin-bottom: 43px; }
.premium-reservation-widget { padding: 34px 28px; }
.premium-reservation-widget h3 { font-size: 30px; }
.premium-sidebar-title { margin-bottom: 21px; }
.premium-sidebar-title h4 { font-size: 23px; }
.premium-recent-post { gap: 15px; }
.premium-recent-image { width: 90px; height: 82px; flex-basis: 90px; }
.premium-recent-title { font-size: 17px; }
.premium-recent-arrow { display: none; }

}
@media(max-width: 480px) {.premium-blog-sidebar { margin-top: 10px; }
.premium-reservation-widget { padding: 30px 22px; }
.premium-reservation-widget h3 { font-size: 27px; }
.premium-reservation-widget p { font-size: 12px; }
.premium-recent-image { width: 78px; height: 72px; flex-basis: 78px; }
.premium-recent-content { padding-right: 0; }
.premium-recent-title { font-size: 16px; }
.premium-recent-date { font-size: 6px; }
.premium-social-links a { width: 39px; height: 39px; }

}
.premium-footer {
  --footer-dark-soft: #332e29;
  --footer-text: rgba(255, 255, 255, .62);
  --footer-border: rgba(216, 195, 165, .12);
  position: relative;
  background: var(--premium-dark);
  color: var(--footer-text);
}

/* FOOTER */
.premium-footer-main {
  padding: 95px 0 75px;
  background: var(--premium-dark);
}.premium-footer-column, .premium-top-bar .container, .premium-top-inner, .premium-hero-content .container, .premium-hero-content .row, .premium-scroll-top:hover .premium-scroll-line { height: 100%; }
.premium-footer-brand { padding-right: 35px; }
.premium-footer-logo { display: inline-flex; align-items: center; margin-bottom: 25px; }

.premium-footer-logo img {
  display: block;
  width: auto;
  max-width: 180px;
  max-height: 100px;
  object-fit: contain;
}
.premium-footer-about {
  max-width: 330px;
  margin: 0;
  color: rgba(255, 255, 255, .58);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.9;
}
.premium-footer-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 17px;
  color: var(--premium-copper);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2.5px;
  line-height: 1.2;
  text-transform: uppercase;
}
.premium-footer-eyebrow span {
  display: inline-block;
  width: 25px;
  height: 1px;
  flex-shrink: 0;
  background: var(--premium-copper);
}
.premium-footer-title {
  margin: 0 0 25px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
  font-weight: 400;
  line-height: 1.15;
}.premium-footer-contact { display: flex; flex-direction: column; gap: 15px; }

.premium-footer-contact a, .premium-footer-address {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: rgba(255, 255, 255, .62) !important;
  font-size: 13px;
  line-height: 1.6;
  text-decoration: none !important;
  transition: color .3s ease;
}.premium-footer-contact a:hover, .premium-top-link:hover, .premium-language > a { color: var(--premium-sand) !important; }

.premium-contact-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  min-width: 22px;
  height: 22px;
  margin-top: 1px;
  color: var(--premium-sand);
  border: 1px solid rgba(216, 195, 165, .20);
  font-size: 11px;
}.premium-footer-nav li + li { margin-top: 10px; }

.premium-footer-nav a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: rgba(255, 255, 255, .58) !important;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: none !important;
  transition: color .3s ease, transform .3s ease;
}.premium-footer-nav a i { color: var(--premium-copper); font-size: 10px; transition: transform .3s ease; }
.premium-footer-nav a:hover { color: #fff !important; transform: translateX(4px); }
.premium-footer-nav a:hover i { transform: translateX(3px); }

.premium-footer-reservation {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  min-width: 145px;
  height: 44px;
  margin-top: 28px;
  padding: 0 17px;
  color: #fff !important;
  border: 1px solid rgba(216, 195, 165, .50);
  background: transparent;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  line-height: 1;
  text-decoration: none !important;
  transition: background .3s ease, border-color .3s ease;
}.premium-footer-reservation:hover i { color: #fff; transform: translateX(4px); }

.premium-footer-social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  color: rgba(255, 255, 255, .60) !important;
  border: 1px solid rgba(216, 195, 165, .18);
  font-size: 13px;
  text-decoration: none !important;
  transition: color .3s ease, background .3s ease, border-color .3s ease;
}.premium-footer-bottom { border-top: 1px solid var(--footer-border); background: #24211e; }

.premium-footer-bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 72px;
  gap: 25px;
}
.premium-copyright {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  color: rgba(255, 255, 255, .42);
  font-family: inherit;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: .3px;
  line-height: 1.6;
}.premium-copyright > span:first-child { color: rgba(255, 255, 255, .65); font-weight: 600; }
.premium-copyright-text { margin-left: 4px; }

.premium-colorlib-credit {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
  margin-left: 3px;
  color: rgba(255, 255, 255, .42);
  font-family: inherit;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: .2px;
}
.premium-colorlib-credit a {
  color: rgba(255, 255, 255, .58);
  font-weight: 500;
  text-decoration: none;
  transition: color .3s ease;
}.premium-colorlib-credit i { color: var(--premium-copper); margin: 0 2px; font-size: 11px; }

.premium-back-top {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: rgba(255, 255, 255, .50) !important;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-decoration: none !important;
  transition: color .3s ease;
}
.premium-back-top i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  color: var(--premium-sand);
  border: 1px solid rgba(216, 195, 165, .20);
  transition: background .3s ease, color .3s ease;
}.premium-back-top:hover, .premium-classynav > ul > li > a:hover { color: #fff !important; }

@media(max-width: 991px) {.premium-footer-main { padding: 75px 0 50px; }
.premium-footer-brand { padding-right: 0; }
.premium-footer-column { margin-bottom: 45px; }
.premium-footer-bottom-inner { min-height: 65px; }

}
@media(max-width: 767px) {.premium-footer-main { padding: 65px 0 25px; }
.premium-footer-column { height: auto; margin-bottom: 45px; }
.premium-footer-brand { margin-bottom: 55px; }
.premium-footer-title { font-size: 27px; }

  .premium-footer-bottom-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    padding: 22px 0;
  }.premium-copyright { line-height: 1.7; }
.premium-colorlib-credit { margin-left: 0; }
.premium-footer-social { margin-top: 0; }
.premium-back-top { align-self: flex-end; }

}
@media(max-width: 480px) {.premium-footer-about { font-size: 13px; }
.premium-footer-logo img { max-width: 160px; }
.premium-footer-bottom-inner { align-items: flex-start; }
.premium-back-top { align-self: flex-start; }

}.premium-facilities-heading { max-width: 720px; margin: 0 auto 70px; text-align: center; }

.premium-facilities-heading h2 {
  margin: 0;
  color: #292521;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 5vw, 58px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -1.5px;
}
.premium-facilities-heading p {
  max-width: 570px;
  margin: 25px auto 0;
  color: #77716a;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.9;
}.premium-facilities-list { max-width: 1100px; margin: 0 auto; }
.premium-facilities-list .row { margin-left: 0; margin-right: 0; }
.premium-facilities-list .row:last-child .premium-facility-item { border-bottom: 1px solid #e8e1d8; }
.premium-facilities-list .col-6:nth-child(4n) .premium-facility-item { border-right: none; }

.premium-facility-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 220px;
  padding: 35px 20px;
  background: #fff;
  border-right: 1px solid #e8e1d8;
  border-bottom: 1px solid #e8e1d8;
  text-align: center;
  transition: background .35s ease, transform .35s ease;
}.premium-facility-item:hover { background: #292521; transform: translateY(-4px); z-index: 2; }

.premium-facility-item h5 {
  margin: 0;
  color: #292521;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.3;
  transition: color .35s ease;
}.premium-facility-item:hover h5, .premium-page-banner-button:hover strong, .premium-page-banner-button:hover i { color: #fff; }

.premium-facility-number {
  margin-bottom: 8px;
  color: #a86d4f;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1;
  transition: color .35s ease;
}.premium-facility-item:hover .premium-facility-number, .premium-facility-item:hover .premium-facility-icon i { color: #d8c3a5; }

.premium-facility-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  margin-bottom: 18px;
}
.premium-facility-icon-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 62px;
  height: 62px;
  border: 1px solid #d8c3a5;
  border-radius: 50%;
  background: #f8f5f0;
  transition: background .35s ease, border-color .35s ease, transform .35s ease;
}
.premium-facility-icon img {
  display: block;
  width: 34px;
  height: 34px;
  object-fit: contain;
  transition: filter .35s ease, transform .35s ease;
}.premium-facility-icon i { color: #a86d4f; font-size: 24px; }
.premium-facility-item:hover .premium-facility-icon-inner { background: transparent; border-color: #a86d4f; transform: scale(1.05); }
.premium-facility-item:hover .premium-facility-icon img { transform: scale(1.08); filter: brightness(0) invert(1); }

@media(max-width: 991px) {.premium-facilities-section { padding: 90px 0 95px; }
.premium-facilities-heading { margin-bottom: 55px; }
.premium-facility-item { min-height: 200px; }

}
@media(max-width: 767px) {.premium-facilities-section { padding: 75px 0 80px; }
.premium-facilities-heading { padding: 0 15px; margin-bottom: 45px; }
.premium-facilities-heading h2 { font-size: 40px; }
.premium-facilities-heading p { font-size: 15px; line-height: 1.8; }
.premium-facility-item { min-height: 190px; padding: 30px 12px; }
.premium-facility-icon { width: 60px; height: 60px; margin-bottom: 14px; }
.premium-facility-icon-inner { width: 54px; height: 54px; }
.premium-facility-icon img { width: 29px; height: 29px; }
.premium-facility-item h5 { font-size: 18px; }
.premium-facilities-list .col-6:nth-child(4n) .premium-facility-item { border-right: 1px solid #e8e1d8; }
.premium-facilities-list .col-6:nth-child(2n) .premium-facility-item { border-right: none; }

}
@media(max-width: 480px) {.premium-facility-item { min-height: 175px; padding: 25px 8px; }
.premium-facility-item h5 { font-size: 17px; }
.premium-facility-number { font-size: 10px; }

}
@media(max-width: 991px) {.premium-facilities-section { padding: 90px 0 95px; }
.premium-facilities-heading { margin-bottom: 55px; }
.premium-facility-item { min-height: 200px; }

}
@media(max-width: 767px) {.premium-facilities-section { padding: 75px 0 80px; }
.premium-facilities-heading { padding: 0 15px; margin-bottom: 45px; }
.premium-facilities-heading h2 { font-size: 40px; }
.premium-facilities-heading p { font-size: 15px; line-height: 1.8; }
.premium-facility-item { min-height: 190px; padding: 30px 12px; }
.premium-facility-icon { width: 60px; height: 60px; margin-bottom: 14px; }
.premium-facility-icon-inner { width: 54px; height: 54px; }
.premium-facility-icon img { width: 29px; height: 29px; }
.premium-facility-item h5 { font-size: 18px; }
.premium-facilities-list .col-6:nth-child(4n) .premium-facility-item { border-right: 1px solid #e8e1d8; }
.premium-facilities-list .col-6:nth-child(2n) .premium-facility-item { border-right: none; }

}
@media(max-width: 480px) {.premium-facility-item { min-height: 175px; padding: 25px 8px; }
.premium-facility-item h5 { font-size: 17px; }
.premium-facility-number { font-size: 10px; }

}
.premium-navbar-wrapper {
  --premium-dark: #292521;
  --premium-dark-soft: #332e29;
  --premium-copper: #a86d4f;
  --premium-sand: #d8c3a5;
  --premium-white: #ffffff;
  position: relative;
  z-index: 9999;
  font-family: Arial, Helvetica, sans-serif;
}.premium-top-bar { height: 40px; background: var(--premium-dark); border-bottom: 1px solid rgba(216, 195, 165, .10); }
.premium-top-inner { display: flex; align-items: center; justify-content: space-between; }

.premium-top-contact {
  display: flex;
  align-items: center;
  gap: 28px;
  height: 100%;
}
.premium-top-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255, 255, 255, .62) !important;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: .5px;
  line-height: 1;
  text-decoration: none !important;
  transition: color .3s ease;
}.premium-top-link i { color: var(--premium-sand); font-size: 12px; }

.premium-top-social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  color: rgba(255, 255, 255, .60) !important;
  border: 1px solid rgba(255, 255, 255, .14);
  font-size: 12px;
  text-decoration: none !important;
  transition: color .3s ease, background .3s ease, border-color .3s ease;
}.premium-main-navbar { position: relative; background: var(--premium-dark); box-shadow: 0 12px 35px rgba(41, 37, 33, .12); }
.premium-main-navbar .classy-navbar { min-height: 88px; padding: 0; }

.premium-logo {
  display: flex !important;
  align-items: center;
  height: 88px;
  margin-right: 35px;
  flex-shrink: 0;
}
.premium-logo img {
  display: block;
  width: auto;
  max-width: 165px;
  max-height: 48px;
  object-fit: contain;
}.premium-menu, .premium-classynav, .premium-classynav > ul { display: flex; align-items: center; }
.premium-classynav { height: 88px; }

.premium-classynav > ul {
  height: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}
.premium-classynav > ul > li {
  position: relative;
  height: 100%;
  margin: 0;
  padding: 0;
}
.premium-classynav > ul > li > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 88px;
  padding: 0 15px;
  color: rgba(255, 255, 255, .74) !important;
  background: transparent !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.35px;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none !important;
  white-space: nowrap;
  transition: color .3s ease;
}
.premium-classynav > ul > li > a::after {
  content: "";
  position: absolute;
  left: 15px;
  right: 15px;
  bottom: 20px;
  width: 0;
  height: 1px;
  margin: 0;
  background: var(--premium-copper);
  transition: width .35s ease;
}.premium-classynav > ul > li > a:hover::after { width: calc(100% - 30px); }
.premium-language { margin-left: 5px !important; }
.premium-language > a::after { background: var(--premium-sand) !important; }
.premium-reservation { margin-left: 20px; }

.premium-reservation a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-width: 150px;
  height: 48px;
  padding: 0 20px;
  overflow: hidden;
  color: #fff !important;
  background: transparent;
  border: 1px solid rgba(216, 195, 165, .55);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.7px;
  line-height: 1;
  text-decoration: none !important;
  isolation: isolate;
  transition: border-color .3s ease;
}
.premium-reservation a::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 0;
  background: var(--premium-copper);
  z-index: -1;
  transition: width .35s ease;
}.premium-toggler { display: none; cursor: pointer; background: transparent !important; }

.premium-toggler .navbarToggler {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: 34px;
  height: 34px;
  cursor: pointer;
}
.premium-toggler .navbarToggler span {
  display: block;
  width: 24px;
  height: 1px;
  background: var(--premium-sand) !important;
  transition: transform .3s ease, opacity .3s ease;
}
@media(max-width: 991px) {.premium-top-bar, .premium-top-inner { height: auto; min-height: 40px; }
.premium-top-contact { padding: 8px 0; }
.premium-top-social { display: none; }

  .premium-main-navbar .classy-navbar {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 75px;
    padding: 0;
  }.premium-logo { height: 75px; margin-right: 0; }
.premium-logo img { max-width: 145px; max-height: 42px; }

  .premium-toggler {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    margin-left: auto;
    cursor: pointer;
    z-index: 10002;
  }
  .premium-menu {
    position: fixed !important;
    top: 0;
    right: -100%;
    width: min(360px, 88vw);
    height: 100vh;
    min-height: 100vh;
    display: block !important;
    padding: 0;
    overflow-y: auto;
    overflow-x: hidden;
    background: var(--premium-dark) !important;
    box-shadow: -15px 0 45px rgba(0, 0, 0, .25);
    z-index: 10001;
    visibility: hidden;
    opacity: 0;
    transition: right .35s ease, opacity .35s ease, visibility .35s ease;
  }.premium-menu.menu-on, .premium-menu.active, .classy-menu.menu-on { right: 0 !important; visibility: visible !important; opacity: 1 !important; }

  .premium-menu .classycloseIcon {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 10005;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    cursor: pointer;
    background: rgba(255, 255, 255, .04);
  }.premium-menu .classycloseIcon .cross-wrap { position: relative; width: 22px; height: 22px; }

  .premium-menu .classycloseIcon .cross-wrap span {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 22px;
    height: 1px;
    background: var(--premium-sand);
    transform-origin: center;
  }.premium-menu .classycloseIcon .cross-wrap .top { transform: translate(-50%, -50%) rotate(45deg); }
.premium-menu .classycloseIcon .cross-wrap .bottom { transform: translate(-50%, -50%) rotate(-45deg); }

  .premium-classynav, .premium-classynav > ul, .premium-classynav > ul > li {
    display: block !important;
    width: 100%;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }.premium-classynav { min-height: 100%; padding: 85px 0 30px !important; }
.premium-classynav > ul { list-style: none !important; }

  .premium-classynav > ul > li > a {
    display: flex !important;
    align-items: center;
    justify-content: flex-start !important;
    width: 100%;
    height: 58px !important;
    min-height: 58px !important;
    padding: 0 28px !important;
    color: rgba(255, 255, 255, .78) !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(216, 195, 165, .08);
    font-size: 12px;
    letter-spacing: 1.5px;
    text-align: left;
    white-space: normal;
    transition: color .25s ease, background .25s ease;
  }.premium-classynav > ul > li > a::after { display: none !important; }
.premium-classynav > ul > li > a:hover { color: #fff !important; background: rgba(168, 109, 79, .10) !important; }
.premium-language { margin-left: 0 !important; margin-top: 8px !important; border-top: 1px solid rgba(216, 195, 165, .10); }
.premium-language > a { color: var(--premium-sand) !important; }
.premium-reservation { display: block; width: auto; margin: 22px 28px 30px; }

  .premium-reservation a {
    display: flex;
    width: 100%;
    min-width: 0;
    height: 52px;
    padding: 0 18px;
  }body.menu-open { overflow: hidden; }

}
@media(max-width: 767px) {.premium-top-inner { justify-content: center; }
.premium-top-contact { justify-content: center; gap: 14px; flex-wrap: wrap; }
.premium-top-link { font-size: 11px; }
.premium-top-link:last-child { display: none; }
.premium-logo img { max-width: 135px; }
.premium-menu { width: min(340px, 90vw); }

}
@media(max-width: 480px) {.premium-top-bar { display: none; }
.premium-main-navbar .classy-navbar, .premium-logo { height: 70px; min-height: 70px; }
.premium-menu { width: 100vw; right: -100vw; }
.premium-menu.menu-on, .premium-menu.active, .classy-menu.menu-on { right: 0 !important; }

}
.premium-breadcrumb {
  --breadcrumb-dark: #24221f;
  position: relative;
  width: 100%;
  min-height: 360px;
  overflow: hidden;
  background: var(--breadcrumb-dark);
}
.premium-breadcrumb-image, .premium-page-banner-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: center / cover no-repeat;
  transform: scale(1.01);
}
.premium-breadcrumb-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(25, 22, 19, .78) 0%, rgba(25, 22, 19, .46) 50%, rgba(25, 22, 19, .72) 100%);
}
.premium-breadcrumb-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(25, 22, 19, .65) 0%, transparent 50%, rgba(25, 22, 19, .20) 100%);
}
.premium-breadcrumb-content {
  position: relative;
  z-index: 3;
  min-height: 360px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 70px 0 55px;
}
.premium-breadcrumb-location {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  margin-bottom: 22px;
  color: var(--premium-sand);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-breadcrumb-line {
  width: 38px;
  height: 1px;
  background: var(--premium-sand);
  opacity: .8;
}
.premium-breadcrumb-title {
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5vw, 70px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -2px;
  text-shadow: 0 3px 20px rgba(0, 0, 0, .25);
}.premium-breadcrumb-nav { margin-top: 25px; }
.premium-breadcrumb-nav .breadcrumb { margin: 0; padding: 0; background: transparent; }

.premium-breadcrumb-nav .breadcrumb-item {
  color: rgba(255, 255, 255, .55);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}.premium-breadcrumb-nav .breadcrumb-item + .breadcrumb-item::before { padding: 0 10px; color: var(--premium-sand); content: "•"; }
.premium-breadcrumb-nav .breadcrumb-item a { color: rgba(255, 255, 255, .68); text-decoration: none; transition: color .3s ease; }

.premium-breadcrumb-corner {
  position: absolute;
  right: 55px;
  top: 50%;
  z-index: 3;
  width: 65px;
  height: 65px;
  border-top: 1px solid rgba(216, 195, 165, .35);
  border-right: 1px solid rgba(216, 195, 165, .35);
  opacity: .7;
  transform: translateY(-50%);
}
.premium-breadcrumb-bottom-line {
  position: absolute;
  left: 50%;
  bottom: 28px;
  z-index: 4;
  width: 55px;
  height: 1px;
  background: rgba(216, 195, 165, .55);
  transform: translateX(-50%);
}
@media(max-width: 991px) {.premium-breadcrumb, .premium-breadcrumb-content { min-height: 330px; }
.premium-breadcrumb-content { padding: 60px 20px 50px; }
.premium-breadcrumb-corner { display: none; }

}
@media(max-width: 767px) {.premium-breadcrumb, .premium-breadcrumb-content { min-height: 300px; }
.premium-breadcrumb-content { padding: 55px 15px 45px; }

  .premium-breadcrumb-location {
    gap: 9px;
    margin-bottom: 18px;
    font-size: 10px;
    letter-spacing: 2px;
  }.premium-breadcrumb-line { width: 25px; }
.premium-breadcrumb-title { font-size: 42px; line-height: 1.05; letter-spacing: -1px; }
.premium-breadcrumb-nav { margin-top: 20px; }
.premium-breadcrumb-nav .breadcrumb-item { font-size: 10px; letter-spacing: 1px; }
.premium-breadcrumb-nav .breadcrumb-item + .breadcrumb-item::before { padding: 0 7px; }
.premium-breadcrumb-bottom-line { bottom: 20px; width: 40px; }

}
@media(max-width: 480px) {.premium-breadcrumb, .premium-breadcrumb-content { min-height: 280px; }
.premium-breadcrumb-title { font-size: 37px; }

}
.premium-page-banner {
  --banner-dark: #24221f;
  position: relative;
  width: 100%;
  min-height: 430px;
  overflow: hidden;
  background: var(--banner-dark);
}
.premium-page-banner-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient( 90deg, rgba(25, 22, 19, 0.88) 0%, rgba(25, 22, 19, 0.67) 35%, rgba(25, 22, 19, 0.35) 68%, rgba(25, 22, 19, 0.52) 100% );
}
.premium-page-banner-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient( 0deg, rgba(25, 22, 19, 0.55) 0%, transparent 45%, rgba(25, 22, 19, 0.2) 100% );
}
.premium-page-banner-content {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  min-height: 430px;
  padding: 70px 0;
}.premium-page-banner-inner { max-width: 780px; padding-right: 40px; }

.premium-page-banner-location {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
  color: var(--premium-sand);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-page-banner-line {
  width: 42px;
  height: 1px;
  flex-shrink: 0;
  background: var(--premium-sand);
}
.premium-page-banner-title {
  max-width: 780px;
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5vw, 72px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -2px;
}
.premium-page-banner-description {
  max-width: 650px;
  margin: 24px 0 0;
  color: rgba(255, 255, 255, 0.76);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.9;
}
.premium-page-banner-action {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding-left: 30px;
}
.premium-page-banner-action-label {
  margin-bottom: 12px;
  color: rgba(255, 255, 255, 0.55);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.premium-page-banner-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  width: 100%;
  max-width: 330px;
  min-height: 72px;
  padding: 0 22px 0 25px;
  color: #fff !important;
  background: rgba(36, 34, 31, 0.24);
  border: 1px solid rgba(216, 195, 165, 0.48);
  backdrop-filter: blur(6px);
  text-decoration: none !important;
  overflow: hidden;
  transition: background 0.35s ease, border-color 0.35s ease, transform 0.35s ease;
}
.premium-page-banner-button::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 0;
  z-index: 0;
  background: var(--premium-copper);
  transition: width 0.4s ease;
}.premium-page-banner-button span, .premium-page-banner-button strong, .premium-page-banner-button i, .premium-error-button span, .premium-error-button i, .premium-hero-button span, .premium-hero-button i { position: relative; z-index: 1; }

.premium-page-banner-button span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.premium-page-banner-button strong {
  margin-left: auto;
  color: var(--premium-sand);
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.5px;
  white-space: nowrap;
}.premium-page-banner-button i { color: var(--premium-sand); font-size: 16px; transition: transform 0.3s ease, color 0.3s ease; }
.premium-page-banner-button:hover { border-color: var(--premium-copper); transform: translateY(-3px); }

.premium-page-banner-corner {
  position: absolute;
  top: 50%;
  right: 55px;
  z-index: 2;
  width: 70px;
  height: 70px;
  border-top: 1px solid rgba(216, 195, 165, 0.3);
  border-right: 1px solid rgba(216, 195, 165, 0.3);
  opacity: 0.7;
  transform: translateY(-50%);
}
@media(max-width: 991px) {.premium-page-banner, .premium-page-banner-content { min-height: 500px; }
.premium-page-banner-content { padding: 70px 0; }
.premium-page-banner-inner { padding-right: 0; }
.premium-page-banner-action { align-items: flex-start; margin-top: 35px; padding-left: 0; }
.premium-page-banner-button { max-width: 350px; }
.premium-page-banner-corner { display: none; }

}
@media(max-width: 767px) {.premium-page-banner, .premium-page-banner-content { min-height: 560px; }
.premium-page-banner-content { padding: 65px 15px; }
.premium-page-banner-overlay { background: linear-gradient( 90deg, rgba(25, 22, 19, 0.84) 0%, rgba(25, 22, 19, 0.58) 100% ); }

  .premium-page-banner-location {
    gap: 10px;
    margin-bottom: 18px;
    font-size: 10px;
    letter-spacing: 2px;
  }.premium-page-banner-line { width: 28px; }
.premium-page-banner-title { font-size: 44px; line-height: 1.05; letter-spacing: -1px; }
.premium-page-banner-description { margin-top: 20px; font-size: 15px; line-height: 1.75; }
.premium-page-banner-action { margin-top: 30px; }
.premium-page-banner-action-label { font-size: 10px; letter-spacing: 1.8px; }

  .premium-page-banner-button {
    width: 100%;
    max-width: none;
    min-height: 64px;
    gap: 15px;
    padding: 0 18px;
  }.premium-page-banner-button span { font-size: 10px; }
.premium-page-banner-button strong { font-size: 14px; }

}
@media(max-width: 480px) {.premium-page-banner, .premium-page-banner-content { min-height: 580px; }
.premium-page-banner-title { font-size: 40px; }
.premium-page-banner-description { font-size: 14px; }
.premium-page-banner-button { flex-wrap: nowrap; gap: 10px; }

}
.premium-error-page {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 70vh;
  overflow: hidden;
  background: #24221f;
}
.premium-error-page::before, .premium-error-page::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(216, 195, 165, 0.12);
  transform: rotate(45deg);
}
.premium-error-page::before {
  top: 50%;
  right: -180px;
  width: 520px;
  height: 520px;
  transform: translateY(-50%) rotate(45deg);
}
.premium-error-page::after {
  bottom: -180px;
  left: -160px;
  width: 360px;
  height: 360px;
  border-color: rgba(216, 195, 165, 0.08);
}
.premium-error-content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 100px 20px;
  text-align: center;
}
.premium-error-preheading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-bottom: 25px;
  color: #d8c3a5;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-error-preheading::before, .premium-error-preheading::after {
  content: "";
  width: 35px;
  height: 1px;
  background: rgba(216, 195, 165, 0.55);
}
.premium-error-code {
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(110px, 18vw, 220px);
  font-weight: 400;
  line-height: 0.85;
  letter-spacing: -8px;
}
.premium-error-heading {
  margin: 30px 0 0;
  color: #d8c3a5;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(25px, 4vw, 42px);
  font-weight: 400;
  line-height: 1.2;
}
.premium-error-description {
  max-width: 570px;
  margin: 20px auto 0;
  color: rgba(255, 255, 255, 0.65);
  font-size: 16px;
  line-height: 1.9;
}.premium-error-action, .premium-hero-action { margin-top: 35px; }

.premium-error-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 35px;
  min-width: 190px;
  height: 56px;
  padding: 0 22px 0 27px;
  color: #fff !important;
  background: rgba(36, 34, 31, 0.35);
  border: 1px solid rgba(216, 195, 165, 0.5);
  text-decoration: none !important;
  overflow: hidden;
  transition: background 0.35s ease, border-color 0.35s ease, transform 0.35s ease;
}
.premium-error-button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 0;
  background: #a86d4f;
  transition: width 0.4s ease;
}
.premium-error-button span, .premium-hero-button span {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
}.premium-error-button i { color: #d8c3a5; font-size: 16px; transition: transform 0.3s ease, color 0.3s ease; }
.premium-error-button:hover { border-color: #a86d4f; transform: translateY(-2px); }

.premium-error-corner, .premium-error-corner-bottom {
  position: absolute;
  width: 65px;
  height: 65px;
  opacity: 0.7;
}
.premium-error-corner {
  top: 20%;
  right: 8%;
  border-top: 1px solid rgba(216, 195, 165, 0.25);
  border-right: 1px solid rgba(216, 195, 165, 0.25);
}
.premium-error-corner-bottom {
  bottom: 20%;
  left: 8%;
  border-bottom: 1px solid rgba(216, 195, 165, 0.18);
  border-left: 1px solid rgba(216, 195, 165, 0.18);
}
@media(max-width: 767px) {.premium-error-page { min-height: 75vh; }
.premium-error-content { padding: 80px 20px; }
.premium-error-code { font-size: 122px; letter-spacing: -5px; }
.premium-error-heading { font-size: 30px; }
.premium-error-description { font-size: 15px; line-height: 1.8; }
.premium-error-corner, .premium-error-corner-bottom { display: none; }
.premium-error-preheading { font-size: 10px; letter-spacing: 2px; }
.premium-error-preheading::before, .premium-error-preheading::after { width: 25px; }
.premium-error-button { width: 100%; max-width: 240px; }

}.premium-location-section { position: relative; padding: 115px 0 120px; background: #f5f1eb; }

.premium-location-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 60px;
  margin-bottom: 55px;
}.premium-location-title { max-width: 650px; }

.premium-location-eyebrow {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 22px;
  color: #a87555;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
}
.premium-location-eyebrow span {
  display: block;
  width: 40px;
  height: 1px;
  background: #a87555;
}
.premium-location-title h2 {
  margin: 0;
  color: #27231f;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5vw, 65px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -2px;
}.premium-location-description { max-width: 390px; }

.premium-location-description p {
  margin: 0;
  color: #756a60;
  font-size: 15px;
  line-height: 1.9;
}
.premium-map {
  position: relative;
  width: 100%;
  height: 560px;
  overflow: hidden;
  background: #ddd;
}
.premium-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  filter: grayscale(18%) contrast(92%) saturate(75%);
  transition: filter 0.5s ease, transform 0.8s ease;
}.premium-map:hover iframe { filter: grayscale(0%) contrast(100%) saturate(90%); }

.premium-map-label {
  position: absolute;
  left: 30px;
  bottom: 30px;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 245px;
  padding: 15px 20px;
  background: rgba(39, 35, 31, 0.94);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.18);
}
.premium-map-label-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(205, 185, 157, 0.35);
  color: #cdb99d;
}.premium-map-label-icon i { font-size: 16px; }
.premium-map-label div:last-child { display: flex; flex-direction: column; gap: 4px; }

.premium-map-label span {
  color: #cdb99d;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
}
.premium-map-label strong {
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  font-weight: 400;
}
.premium-map-number {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 95px;
  height: 95px;
  background: #a87555;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
}
@media(max-width: 991px) {.premium-location-section { padding: 90px 0 100px; }
.premium-location-header { display: block; margin-bottom: 45px; }
.premium-location-description { max-width: 550px; margin-top: 20px; }
.premium-map { height: 500px; }

}
@media(max-width: 767px) {.premium-location-section { padding: 70px 0 75px; }
.premium-location-title h2 { font-size: 44px; letter-spacing: -1px; }
.premium-map-wrapper { padding: 0 18px 18px 0; }
.premium-map { height: 430px; }

  .premium-map-label {
    left: 18px;
    bottom: 18px;
    min-width: auto;
    max-width: calc(100% - 50px);
    padding: 12px 15px;
  }.premium-map-label-icon { width: 34px; height: 34px; }
.premium-map-number { width: 65px; height: 65px; font-size: 23px; }

}
@media(max-width: 480px) {.premium-map { height: 390px; }
.premium-location-title h2 { font-size: 40px; }
.premium-map-label span { font-size: 7px; }
.premium-map-label strong { font-size: 15px; }

}
.premium-about-section {
  --premium-dark: #27231f;
  --premium-brown: #59483b;
  --premium-copper: #a87555;
  --premium-sand: #cdb99d;
  --premium-cream: #f5f1eb;
  --premium-line: rgba(89, 72, 59, 0.18);
}
.premium-reservation-wrapper {
  position: relative;
  margin-top: -1px;
  padding: 55px 0;
  background: var(--premium-dark);
}
.premium-reservation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
}.premium-reservation-intro { max-width: 380px; }

.premium-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: var(--premium-sand);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-reservation-intro h2 {
  margin: 0 0 12px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 36px;
  font-weight: 400;
}
.premium-reservation-intro p {
  margin: 0;
  color: rgba(255, 255, 255, 0.58);
  font-size: 15px;
  line-height: 1.8;
}.premium-reservation-widget { flex: 1; min-width: 0; }
.premium-reservation-widget .powered_by, .premium-hero-slider .owl-prev-preview, .premium-hero-slider .owl-next-preview, .premium-hero-slider .slider-preview, .premium-hero-slider .slide-preview, .premium-hero-slider .next-slide, .premium-hero-slider .prev-slide, .premium-hero-slide.bg-overlay::after { display: none !important; }
.premium-about-content { padding: 120px 0 100px; background: var(--premium-cream); }
.premium-about-text { max-width: 570px; padding-right: 50px; }

.premium-about-eyebrow {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 25px;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
}.premium-about-eyebrow span:first-child { width: 42px; height: 1px; background: var(--premium-copper); }

.premium-about-heading h6 {
  margin: 0 0 12px;
  color: var(--premium-brown);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1px;
}
.premium-about-heading h2 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -2px;
}
.premium-about-description {
  margin-top: 30px;
  color: #665b52;
  font-size: 17px;
  line-height: 1.95;
}.premium-about-description h1, .premium-about-description h2, .premium-about-description h3, .premium-about-description h4, .premium-about-description h5, .premium-about-description h6 { color: var(--premium-dark); }

.premium-about-signature {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 38px;
}
.premium-signature-label {
  color: #9a8c7e;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.premium-about-signature strong {
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 19px;
  font-weight: 400;
}
.premium-about-image {
  position: relative;
  height: 650px;
  overflow: hidden;
  background: #ddd;
}
.premium-about-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 65%, rgba(30, 25, 21, 0.32));
  pointer-events: none;
}
.premium-about-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1s ease;
}
.premium-image-label {
  position: absolute;
  left: 25px;
  bottom: 55px;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
}.label-divider { width: 25px; height: 1px; background: rgba(255, 255, 255, 0.6); }

.premium-image-number {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 95px;
  height: 95px;
  background: var(--premium-copper);
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
}
.premium-amenities-section { padding: 105px 0 120px; background: #fff; }
.premium-amenities-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 50px;
  margin-bottom: 65px;
}
.premium-amenities-header h2 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 4vw, 55px);
  font-weight: 400;
  line-height: 1.05;
}
.premium-amenities-header p {
  max-width: 380px;
  margin: 0;
  color: #80756b;
  font-size: 15px;
  line-height: 1.8;
}.premium-amenities-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--premium-line); }
.premium-amenities-grid.second-row { grid-template-columns: repeat(3, 1fr); }

.premium-amenity {
  position: relative;
  display: flex;
  align-items: center;
  gap: 20px;
  min-height: 145px;
  padding: 25px;
  border-right: 1px solid var(--premium-line);
  border-bottom: 1px solid var(--premium-line);
  transition: background .35s ease, transform .35s ease;
}.premium-amenity:first-child { border-left: 1px solid var(--premium-line); }
.premium-amenity:hover { background: var(--premium-cream); }

.premium-amenity-icon {
  flex-shrink: 0;
  width: 55px;
  height: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(168, 117, 85, .25);
  border-radius: 50%;
}.premium-amenity-icon img { width: 28px; height: 28px; object-fit: contain; }

.premium-amenity-number {
  color: var(--premium-copper);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
}
.premium-amenity-content h5 {
  margin: 0;
  color: var(--premium-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 19px;
  font-weight: 400;
}
.premium-blog-section {
  position: relative;
  padding: 120px 0 125px;
  background: #f5f1eb;
  overflow: hidden;
}
.premium-blog-eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  margin-bottom: 22px;
  color: #a86d4f;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-blog-heading h2 {
  margin: 0;
  color: #292521;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 5vw, 60px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -1.5px;
}
.premium-blog-heading p {
  max-width: 600px;
  margin: 24px auto 0;
  color: #77716a;
  font-size: 16px;
  line-height: 1.9;
}.premium-blog-list { row-gap: 45px; }

.premium-blog-card {
  height: 100%;
  background: #fff;
  box-shadow: 0 20px 60px rgba(40, 32, 25, .06);
  transition: transform .4s ease, box-shadow .4s ease;
}.premium-blog-card:hover { transform: translateY(-7px); box-shadow: 0 30px 80px rgba(40, 32, 25, .11); }

.premium-blog-image {
  position: relative;
  display: block;
  width: 100%;
  height: 310px;
  overflow: hidden;
  background: #292521;
  text-decoration: none !important;
}
.premium-blog-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(25, 22, 19, .05) 35%, rgba(25, 22, 19, .60) 100%);
  pointer-events: none;
}
.premium-blog-category {
  position: absolute;
  left: 22px;
  top: 22px;
  z-index: 2;
  padding: 8px 12px;
  border: 1px solid rgba(255, 255, 255, .4);
  background: rgba(30, 26, 22, .30);
  backdrop-filter: blur(7px);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.7px;
  text-transform: uppercase;
}
.premium-blog-date {
  position: absolute;
  right: 22px;
  bottom: 20px;
  z-index: 2;
  color: rgba(255, 255, 255, .85);
  font-size: 11px;
  letter-spacing: 1px;
}
.premium-blog-content {
  display: flex;
  flex-direction: column;
  min-height: 285px;
  padding: 30px 30px 28px;
}
.premium-blog-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #a86d4f;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.premium-blog-meta i {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #a86d4f;
}
.premium-blog-title {
  display: block;
  color: #292521 !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
  font-weight: 400;
  line-height: 1.2;
  text-decoration: none !important;
  transition: color .3s ease;
}
.premium-blog-content p {
  margin: 18px 0 0;
  color: #77716a;
  font-size: 14px;
  line-height: 1.8;
}
.premium-blog-readmore {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  width: fit-content;
  margin-top: auto;
  padding-top: 25px;
  color: #292521 !important;
  border-top: 1px solid #e8e1d8;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.7px;
  text-decoration: none !important;
}.premium-blog-readmore i { color: #a86d4f; font-size: 14px; transition: transform .3s ease; }
.premium-blog-empty { padding: 70px 20px; text-align: center; background: #fff; }
.premium-blog-empty-icon { margin-bottom: 15px; color: #a86d4f; font-size: 32px; }

.premium-blog-empty p {
  margin: 0;
  color: #77716a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
}
@media(max-width: 991px) {.premium-reservation { flex-direction: column; align-items: stretch; }
.premium-reservation-intro { max-width: 600px; }
.premium-about-content { padding: 90px 0 80px; }
.premium-about-text { max-width: none; padding-right: 0; margin-bottom: 60px; }
.premium-about-image { height: 600px; }
.premium-amenities-grid, .premium-amenities-grid.second-row { grid-template-columns: repeat(2, 1fr); }

}
@media(max-width: 767px) {.premium-reservation-wrapper { padding: 45px 0; }
.premium-reservation-intro h2 { font-size: 31px; }
.premium-about-content { padding: 70px 0 60px; }
.premium-about-heading h2 { font-size: 45px; }
.premium-about-image-wrapper { padding: 0 18px 18px 0; }
.premium-about-image { height: 500px; }
.premium-image-number { width: 70px; height: 70px; font-size: 23px; }
.premium-amenities-section { padding: 75px 0 80px; }
.premium-amenities-header { display: block; margin-bottom: 45px; }
.premium-amenities-header h2 { font-size: 42px; }
.premium-amenities-header p { margin-top: 20px; }
.premium-amenities-grid, .premium-amenities-grid.second-row { grid-template-columns: repeat(2, 1fr); }
.premium-amenity { min-height: 130px; padding: 18px; gap: 13px; }
.premium-amenity-icon { width: 45px; height: 45px; }
.premium-amenity-icon img { width: 23px; height: 23px; }
.premium-amenity-content h5 { font-size: 17px; }

}
@media(max-width: 480px) {.premium-amenities-grid, .premium-amenities-grid.second-row { grid-template-columns: 1fr; }
.premium-amenity { border-left: 1px solid var(--premium-line); }
.premium-about-image { height: 430px; }
.premium-image-label { left: 18px; bottom: 35px; }

}
.premium-rooms-section {
  --room-dark: #24221f;
  --room-dark-soft: #292521;
  --room-cream: #f5f1eb;
  --room-text: #3b3631;
  --room-muted: #77716a;
  position: relative;
  padding: 120px 0;
  background: var(--room-cream);
  overflow: hidden;
}
.premium-section-eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  margin-bottom: 20px;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  line-height: 1;
  text-transform: uppercase;
}
.premium-rooms-heading h2 {
  margin: 0;
  color: var(--room-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(36px, 5vw, 58px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -1.2px;
}
.premium-rooms-heading p {
  max-width: 590px;
  margin: 25px auto 0;
  color: var(--room-muted);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.9;
  letter-spacing: .15px;
}.premium-room-list { row-gap: 30px; }

.premium-room-card {
  display: flex;
  width: 100%;
  min-height: 500px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 25px 70px rgba(36, 34, 31, .08);
  transition: transform .4s ease, box-shadow .4s ease;
}.premium-room-card:hover { transform: translateY(-5px); box-shadow: 0 35px 90px rgba(36, 34, 31, .13); }
.premium-room-list > .col-12:only-child .premium-room-card { min-height: 540px; }
.premium-room-list > .col-12:only-child .premium-room-image { width: 52%; }
.premium-room-list > .col-12:only-child .premium-room-content { width: 48%; }

.premium-room-image {
  position: relative;
  width: 50%;
  min-height: 500px;
  overflow: hidden;
  background: var(--room-dark);
}
.premium-room-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(36, 34, 31, .02) 30%, rgba(36, 34, 31, .68) 100%);
  pointer-events: none;
}
.premium-room-label span {
  display: inline-block;
  padding: 9px 14px;
  color: #fff;
  background: rgba(36, 34, 31, .30);
  border: 1px solid rgba(216, 195, 165, .45);
  backdrop-filter: blur(8px);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.premium-room-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
  padding: 55px;
  background: #fff;
}
.premium-room-index {
  flex-shrink: 0;
  padding-top: 8px;
  color: var(--premium-copper);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
}
.premium-room-title h3 {
  margin: 0;
  color: var(--room-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 3vw, 42px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.5px;
}
.premium-room-price {
  display: flex;
  align-items: baseline;
  gap: 7px;
  margin-top: 25px;
  padding-bottom: 25px;
  border-bottom: 1px solid var(--premium-border);
}.premium-room-price span { color: #8b847d; font-size: 12px; }

.premium-room-feature {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 70px;
  padding: 12px;
  border-right: 1px solid var(--premium-border);
  border-bottom: 1px solid var(--premium-border);
}
.premium-room-feature small {
  display: block;
  margin-bottom: 4px;
  color: #99928a;
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 1.3px;
  line-height: 1.2;
  text-transform: uppercase;
}
.premium-room-feature strong {
  display: block;
  color: var(--room-text);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}
.premium-room-detail {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  color: var(--room-dark) !important;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.7px;
  text-transform: uppercase;
  text-decoration: none !important;
}
.premium-room-book {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 18px;
  color: #fff !important;
  background: var(--room-dark);
  border: 1px solid var(--room-dark);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: background .3s ease, border-color .3s ease;
}.premium-room-empty { padding: 80px 20px; text-align: center; background: #fff; }
.premium-room-empty-icon { margin-bottom: 20px; color: var(--premium-copper); font-size: 32px; }

.premium-hero {
  --hero-dark: #24221f;
  position: relative;
  width: 100%;
  height: min(880px, 100vh);
  min-height: 680px;
  overflow: hidden !important;
  background: #24221f;
}
.premium-hero-slider, .premium-hero-slider .owl-stage-outer {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden !important;
}.premium-hero-slider .owl-stage { height: 100%; margin: 0 !important; padding: 0 !important; }
.premium-hero-slider .owl-item, .premium-hero-slider .owl-item.cloned, .premium-hero-slider .owl-item:not(.active) { height: 100%; margin: 0 !important; overflow: hidden !important; }

.premium-hero-slide {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 680px;
  overflow: hidden !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-color: #24221f;
}
.premium-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(25,22,19,.80) 0%, rgba(25,22,19,.55) 32%, rgba(25,22,19,.20) 70%, rgba(25,22,19,.18) 100%);
}
.premium-hero-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(25,22,19,.55) 0%, transparent 35%, transparent 75%, rgba(25,22,19,.15) 100%);
}
.premium-hero-content {
  position: relative;
  z-index: 3;
  width: 100%;
  height: 100%;
}.premium-hero-inner { max-width: 760px; padding-top: 20px; }

.premium-hero-location {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 25px;
  color: var(--premium-sand);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-hero-location-line {
  width: 40px;
  height: 1px;
  flex-shrink: 0;
  background: var(--premium-sand);
}
.premium-hero-title-small {
  margin-bottom: 12px;
  color: rgba(255,255,255,.82);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(19px, 2vw, 28px);
  font-style: italic;
  line-height: 1.4;
}
.premium-hero-inner h1 {
  max-width: 850px;
  margin: 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(48px, 7vw, 94px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -3px;
}
.premium-hero-description {
  max-width: 560px;
  margin: 28px 0 0;
  color: rgba(255,255,255,.76);
  font-size: 17px;
  line-height: 1.9;
}
.premium-hero-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 35px;
  min-width: 210px;
  height: 58px;
  padding: 0 22px 0 27px;
  color: #fff !important;
  border: 1px solid rgba(216,195,165,.55);
  background: rgba(36,34,31,.18);
  backdrop-filter: blur(5px);
  text-decoration: none !important;
  overflow: hidden;
  transition: background .35s ease, border-color .35s ease, transform .35s ease;
}
.premium-hero-button::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 0;
  background: var(--premium-copper);
  transition: width .4s ease;
  z-index: 0;
}.premium-hero-button i { color: var(--premium-sand); font-size: 16px; transition: transform .3s ease, color .3s ease; }
.premium-hero-button:hover { color: #fff !important; border-color: var(--premium-copper); transform: translateY(-2px); }

.premium-hero-scroll {
  position: absolute;
  left: 45px;
  bottom: 42px;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 13px;
  color: rgba(255,255,255,.55);
  transform: rotate(-90deg);
  transform-origin: left center;
}.premium-hero-scroll-text { font-size: 10px; font-weight: 700; letter-spacing: 2.5px; }
.premium-hero-scroll-line { width: 45px; height: 1px; background: rgba(216,195,165,.55); }

.premium-hero-corner {
  position: absolute;
  right: 50px;
  top: 50%;
  width: 65px;
  height: 65px;
  z-index: 4;
  border-top: 1px solid rgba(216,195,165,.35);
  border-right: 1px solid rgba(216,195,165,.35);
  opacity: .65;
}
.premium-hero-slider .owl-nav {
  position: absolute;
  inset: 50% 0 auto 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: 0 !important;
  padding: 0 45px;
  pointer-events: none;
  transform: translateY(-50%);
}
.premium-hero-slider .owl-nav button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, .30) !important;
  border-radius: 0 !important;
  background: rgba(36, 34, 31, .20) !important;
  backdrop-filter: blur(5px);
  color: #fff !important;
  pointer-events: auto;
  transition: background .3s ease, border-color .3s ease, transform .3s ease;
}.premium-hero-slider .owl-nav button:hover { background: var(--premium-copper) !important; border-color: var(--premium-copper) !important; transform: translateY(-2px); }

.premium-hero-slider .owl-nav button span {
  display: block;
  color: #fff;
  font-size: 26px;
  font-weight: 300;
  line-height: 1;
}.premium-hero-slider .owl-nav .owl-prev { order: 1; }
.premium-hero-slider .owl-nav .owl-next { order: 2; }

.premium-hero-slider .owl-dots {
  position: absolute;
  bottom: 35px;
  left: 50%;
  z-index: 10;
  display: flex;
  gap: 8px;
  margin: 0 !important;
  transform: translateX(-50%);
}
.premium-hero-slider .owl-dots button {
  width: 6px;
  height: 6px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50%;
  background: rgba(255, 255, 255, .4);
  transition: width .3s ease, background .3s ease;
}.premium-hero-slider .owl-dots button.active { width: 25px; border-radius: 10px; background: var(--premium-sand); }
.premium-hero-slider .owl-dots button span { display: none; }

#preloader.premium-preloader {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #24221f;
  transition: opacity .6s ease, visibility .6s ease;
}#preloader.premium-preloader.is-loaded { opacity: 0; visibility: hidden; pointer-events: none; }

.premium-loader {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 150px;
  height: 150px;
}
.premium-loader-ring {
  position: absolute;
  inset: 10px;
  border: 1px solid rgba(216, 195, 165, .18);
  border-top-color: #d8c3a5;
  border-right-color: #a86d4f;
  border-radius: 50%;
  animation: premiumLoaderRotate 1.8s cubic-bezier(.4, 0, .2, 1) infinite;
}
.premium-loader::before {
  content: "";
  position: absolute;
  width: 72px;
  height: 72px;
  border: 1px solid rgba(216, 195, 165, .18);
  border-radius: 50%;
  animation: premiumLoaderPulse 2s ease-in-out infinite;
}
.premium-loader-center {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: 1px solid #d8c3a5;
  border-radius: 50%;
}
.premium-loader-center span {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #a86d4f;
  animation: premiumLoaderDot 1.4s ease-in-out infinite;
}
.premium-loader-brand {
  position: absolute;
  top: calc(100% + 18px);
  left: 50%;
  color: rgba(216, 195, 165, .65);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 4px;
  white-space: nowrap;
  transform: translateX(-50%);
}
.premium-scroll-top {
  position: fixed;
  right: 30px;
  bottom: 30px;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  background: #292521;
  border: 1px solid rgba(203, 184, 157, 0.45);
  color: #cbb89d;
  text-decoration: none;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translateY(15px);
  transition: opacity .35s ease, visibility .35s ease, transform .35s ease, width .35s ease, background .35s ease, border-color .35s ease, color .35s ease;
}.premium-scroll-top.show { opacity: 1; visibility: visible; transform: translateY(0); }

.premium-scroll-top:hover {
  width: 88px;
  background: #9b765f;
  border-color: #9b765f;
  color: #fff;
}
.premium-scroll-icon {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  overflow: hidden;
  transition: transform .3s ease;
}
.premium-scroll-icon i {
  position: absolute;
  font-size: 15px;
  line-height: 1;
  transition: transform .3s ease, opacity .3s ease;
}.premium-scroll-icon i:first-child { opacity: .45; transform: translateY(4px); }
.premium-scroll-icon i:last-child { opacity: 1; transform: translateY(-3px); }
.premium-scroll-top:hover .premium-scroll-icon i:first-child { transform: translateY(-3px); opacity: 1; }
.premium-scroll-top:hover .premium-scroll-icon i:last-child { transform: translateY(-10px); opacity: 0; }

.premium-scroll-label {
  position: absolute;
  right: 12px;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  opacity: 0;
  transform: translateX(8px);
  transition: opacity .25s ease, transform .25s ease;
}
.premium-scroll-line {
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 0;
  background: #cbb89d;
  transition: height .35s ease;
}
.premium-result-page {
  --result-dark: #24221f;
  --result-dark-soft: #34302b;
  --result-bg: #f5f1ea;
  --result-surface: #ffffff;
  --result-text: #514b44;
  --result-muted: #8a8278;
  --result-border: #e4ddd3;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: 60px 20px;
  background: radial-gradient(circle at 15% 20%, rgba(216, 195, 165, .25), transparent 32%), radial-gradient(circle at 85% 80%, rgba(168, 109, 79, .08), transparent 30%), var(--result-bg);
  overflow: hidden;
}.premium-result-page::before, .premium-result-page::after { content: ""; position: absolute; border-radius: 50%; }

.premium-result-page::before {
  top: -180px;
  left: -250px;
  width: 520px;
  height: 520px;
  border: 1px solid rgba(168, 109, 79, .13);
}
.premium-result-page::after {
  right: -220px;
  bottom: -180px;
  width: 420px;
  height: 420px;
  border: 1px solid rgba(168, 109, 79, .12);
}
.premium-result-card {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 720px;
  padding: 70px 65px 65px;
  text-align: center;
  background: var(--result-surface);
  border: 1px solid var(--result-border);
  box-shadow: 0 35px 80px rgba(36, 34, 31, .09);
}
.premium-result-icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 86px;
  height: 86px;
  margin: 0 auto 35px;
  background: #fbf8f3;
  border: 1px solid var(--result-border);
  border-radius: 50%;
  color: var(--premium-copper);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 36px;
}
.premium-result-icon::before {
  content: "";
  position: absolute;
  inset: 7px;
  border: 1px solid rgba(168, 109, 79, .25);
  border-radius: 50%;
}
.premium-result-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  color: var(--premium-copper);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}
.premium-result-eyebrow::before, .premium-result-eyebrow::after {
  content: "";
  width: 28px;
  height: 1px;
  background: var(--premium-copper);
}
.premium-result-card h1 {
  margin: 0;
  color: var(--result-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 5vw, 58px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -1.2px;
}
.premium-result-message {
  max-width: 500px;
  margin: 25px auto 0;
  color: var(--result-muted);
  font-size: 17px;
  line-height: 1.9;
}
.premium-result-divider {
  width: 50px;
  height: 1px;
  margin: 35px auto;
  background: var(--premium-sand);
}
.premium-result-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 190px;
  height: 56px;
  padding: 0 28px;
  background: var(--result-dark);
  border: 1px solid var(--result-dark);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  text-decoration: none;
  overflow: hidden;
  transition: color .35s ease, background .35s ease, border-color .35s ease, transform .35s ease;
}
.premium-result-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 0;
  height: 100%;
  background: var(--premium-copper);
  transition: width .35s ease;
}
.premium-result-button span {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 12px;
}.premium-result-button i { font-size: 14px; transition: transform .3s ease; }
.premium-result-button:hover { color: #fff; border-color: var(--premium-copper); transform: translateY(-2px); }
.premium-result-button:hover i { transform: translateX(-3px); }

.premium-result-footer {
  margin-top: 45px;
  padding-top: 22px;
  border-top: 1px solid var(--result-border);
  color: #aaa39a;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
}
@media(max-width: 767px) {
  .premium-scroll-top {
    right: 18px;
    bottom: 18px;
    width: 48px;
    height: 48px;
  }
  .premium-scroll-top:hover {
    width: 48px;
    background: #292521;
    border-color: rgba(203, 184, 157, 0.45);
    color: #cbb89d;
  }.premium-scroll-label, .premium-scroll-top:hover .premium-scroll-label { display: none; }
.premium-scroll-top:hover .premium-scroll-line { height: 0; }
.premium-result-page { padding: 35px 18px; }
.premium-result-card { padding: 55px 25px 45px; }

  .premium-result-icon {
    width: 75px;
    height: 75px;
    margin-bottom: 28px;
    font-size: 31px;
  }.premium-result-card h1 { font-size: 42px; }
.premium-result-message { font-size: 16px; }
.premium-result-button { width: 100%; }

}

/* =========================================================
   PREMIUM ROOMS RESPONSIVE FIXES
   ========================================================== */

/* Tablet & Mobil Düzenlemeleri (991px ve altı) */
@media (max-width: 991px) {
  .premium-rooms-section {
    padding: 70px 0;
  }

  .premium-room-card,
  .premium-room-list > .col-12:only-child .premium-room-card {
    flex-direction: column; /* Yan yana olan yapıyı alt alta getirir */
    min-height: auto;
  }

  .premium-room-image,
  .premium-room-content,
  .premium-room-list > .col-12:only-child .premium-room-image,
  .premium-room-list > .col-12:only-child .premium-room-content {
    width: 100%; /* Resim ve içeriğin tam genişlik almasını sağlar */
  }

  .premium-room-image {
    min-height: 280px;
    height: 300px;
  }

  .premium-room-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .premium-room-content {
    padding: 30px 20px;
  }

  .premium-room-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 25px;
  }

  .premium-room-detail,
  .premium-room-book {
    width: 100%;
    text-align: center;
    justify-content: center;
  }
}

/* Küçük Mobil Cihazlar (480px ve altı) */
@media (max-width: 480px) {
  .premium-rooms-section {
    padding: 50px 0;
  }

  .premium-room-image {
    height: 230px;
    min-height: 230px;
  }

  .premium-room-content {
    padding: 24px 15px;
  }

  .premium-room-page-features, 
  .premium-room-features {
    grid-template-columns: 1fr; /* Özellikleri mobilde tek sütun yapar */
  }

  .premium-room-title h3 {
    font-size: 20px;
  }
}