body.compact-site {
  font-size: 1rem;
  line-height: 1.68;
}

body.compact-site .nav,
body.compact-site .nav.scrolled {
  padding: 12px 5vw !important;
  gap: 14px !important;
}

body.compact-site .nav-links,
body.compact-site .links {
  gap: 18px !important;
}

body.compact-site .nav-book,
body.compact-site .nav-cta,
body.compact-site .cta,
body.compact-site .btn,
body.compact-site .btn-book,
body.compact-site .btn-primary,
body.compact-site .btn-gold,
body.compact-site .btn-ghost,
body.compact-site .btn-outline-dark,
body.compact-site .rp-btn-main,
body.compact-site .rp-btn-sec {
  min-height: 42px;
  padding: 10px 20px !important;
}

body.compact-site .section,
body.compact-site .sec,
body.compact-site .main,
body.compact-site .rooms-section {
  padding: clamp(48px, 7vw, 76px) 5vw !important;
}

body.compact-site .footer {
  padding: 48px 5vw 22px !important;
}

body.compact-site .footer-grid {
  gap: 28px !important;
  margin-bottom: 28px !important;
}

body.compact-site .footer-bottom,
body.compact-site .footer-bot {
  padding-top: 18px !important;
  gap: 8px !important;
}

body.compact-home .hero {
  height: min(88vh, 760px) !important;
  min-height: 620px !important;
}

body.compact-home .hero-content {
  max-width: 760px !important;
  padding: 0 5vw 8vh !important;
}

body.compact-home .hero-eyebrow {
  margin-bottom: 16px !important;
}

body.compact-home .hero-sub {
  margin-top: 16px !important;
  max-width: 38rem;
}

body.compact-home .hero-ctas {
  gap: 10px !important;
  margin-top: 28px !important;
}

body.compact-home .hero-scroll {
  bottom: 28px !important;
  gap: 10px !important;
  right: 5vw !important;
}

body.compact-home .strip-item {
  padding: 10px 28px !important;
}

body.compact-home .sec {
  padding: clamp(52px, 7vw, 80px) 5vw !important;
}

body.compact-home .about-grid,
body.compact-home .loc-grid {
  gap: clamp(28px, 4vw, 52px) !important;
}

body.compact-home .about-stack {
  height: 500px !important;
}

body.compact-home .a-main {
  box-shadow: 18px 18px 0 var(--iv2) !important;
}

body.compact-home .a-accent {
  border-width: 6px !important;
}

body.compact-home .a-badge {
  padding: 16px 20px !important;
}

body.compact-home .pillars {
  gap: 12px !important;
  margin-top: 24px !important;
}

body.compact-home .rooms-hdr {
  margin-bottom: 32px !important;
}

body.compact-home .rfb-btn {
  gap: 4px !important;
  min-width: 96px !important;
  padding: 14px 16px !important;
}

body.compact-home .rp-photos,
body.compact-home .rp-main {
  min-height: 340px !important;
}

body.compact-home .rp-info {
  padding: 30px 28px !important;
}

body.compact-home .rp-desc {
  line-height: 1.65 !important;
  margin-bottom: 20px !important;
}

body.compact-home .rp-price-row {
  gap: 10px !important;
  padding-top: 18px !important;
}

body.compact-home .gallery {
  height: 520px !important;
}

body.compact-home .hi-grid {
  gap: 24px !important;
  margin-top: 44px !important;
}

body.compact-home .hi {
  padding: 24px 12px !important;
}

body.compact-home .hi-icon {
  font-size: 2.2rem !important;
  margin-bottom: 14px !important;
}

body.compact-home .di-img {
  min-height: 480px !important;
}

body.compact-home .di-copy {
  padding: 56px 40px !important;
}

body.compact-home .df {
  padding: 12px 0 !important;
}

body.compact-home .loc-grid {
  margin-top: 40px !important;
}

body.compact-home .attr {
  gap: 14px !important;
  padding: 12px 0 !important;
}

body.compact-home .map-f iframe {
  height: 320px !important;
}

body.compact-home .addr {
  margin-top: 16px !important;
  padding: 16px 18px !important;
}

body.compact-home .rev-score {
  gap: 12px !important;
  margin-bottom: 36px !important;
}

body.compact-home .rev-grid {
  gap: 14px !important;
}

body.compact-home .rev-card {
  padding: 22px !important;
}

body.compact-home .pol-grid {
  gap: 16px !important;
  margin-top: 40px !important;
}

body.compact-home .pol {
  padding: 22px !important;
}

body.compact-home .cta-copy {
  padding: 56px 5vw !important;
}

body.compact-home .cta-side {
  gap: 12px !important;
  padding: 0 34px !important;
}

body.compact-interior .hero {
  gap: 20px !important;
  padding: 42px 5vw !important;
}

body.compact-interior .hero h1 {
  font-size: clamp(2.1rem, 4.8vw, 3.9rem) !important;
}

body.compact-interior .facts {
  gap: 8px !important;
  margin-top: 16px !important;
}

body.compact-interior .fact {
  padding: 7px 10px !important;
}

body.compact-interior .hero-card {
  padding: 18px !important;
}

body.compact-interior .page-hero {
  height: min(42vh, 420px) !important;
  min-height: 340px !important;
}

body.compact-interior .page-hero-content,
body.compact-interior .ph-content {
  padding: 0 5vw 40px !important;
}

body.compact-interior .wrap,
body.compact-interior .container,
body.compact-interior .wrapper,
body.compact-interior .portrait-grid,
body.compact-interior .rooms-container,
body.compact-interior .breakfast-details,
body.compact-interior .service-list,
body.compact-interior .sections,
body.compact-interior .reviews-grid,
body.compact-interior .stats,
body.compact-interior .gallery-strip {
  gap: clamp(14px, 2.5vw, 28px) !important;
}

body.compact-interior .panel,
body.compact-interior .side,
body.compact-interior .content,
body.compact-interior .form-section,
body.compact-interior .sidebar,
body.compact-interior .sidebar-box,
body.compact-interior .submit-review,
body.compact-interior .featured,
body.compact-interior .services-info,
body.compact-interior .amenit,
body.compact-interior .review-card,
body.compact-interior .stat-box,
body.compact-interior .room-section,
body.compact-interior .box {
  padding: 24px !important;
}

body.compact-interior .side,
body.compact-interior .sidebar {
  top: 76px !important;
}

body.compact-interior .g2,
body.compact-interior .g3,
body.compact-interior .rooms,
body.compact-interior .methods,
body.compact-interior .room-selector,
body.compact-interior .gallery,
body.compact-interior .amenity-list,
body.compact-interior .btn-group {
  gap: 12px !important;
}

body.compact-interior .field,
body.compact-interior .form-group {
  margin-bottom: 16px !important;
}

body.compact-interior .field input,
body.compact-interior .field select,
body.compact-interior .field textarea,
body.compact-interior .form-group input,
body.compact-interior .form-group select,
body.compact-interior .form-group textarea {
  padding: 10px 12px !important;
}

body.compact-interior .steps {
  gap: 8px !important;
  margin: 18px 0 22px !important;
}

body.compact-interior .rooms .room > div {
  padding: 12px !important;
}

body.compact-interior .gallery-img {
  height: 170px !important;
}

body.compact-interior .room-img {
  height: 340px !important;
}

body.compact-interior .values-grid {
  margin-top: 36px !important;
}

body.compact-interior .value-card {
  padding: 34px 24px !important;
}

body.compact-interior .quote-text {
  margin: 14px 0 !important;
}

body.compact-interior .number-card {
  padding: 28px 20px !important;
}

body.compact-interior .nudge {
  gap: 24px !important;
  padding: 56px 5vw !important;
}

body.compact-interior .nudge-btns {
  gap: 10px !important;
}

body.compact-interior .rooms-section {
  padding-block: 60px !important;
}

body.compact-interior .rc-photos,
body.compact-interior .rc-main-photo {
  min-height: 340px !important;
}

body.compact-interior .rc-info {
  padding: 30px 28px !important;
}

body.compact-interior .rc-features {
  margin-bottom: 20px !important;
}

body.compact-interior .rc-price-row {
  padding-top: 18px !important;
}

body.compact-interior .calendar-wrap,
body.compact-interior .legend {
  margin-top: 24px !important;
}

body.compact-interior .calendar-grid {
  gap: 6px !important;
  padding: 14px !important;
}

body.compact-interior .room-selector {
  margin-bottom: 24px !important;
}

body.compact-interior .legend {
  gap: 16px !important;
  padding: 14px !important;
}

body.compact-interior .sidebar-box {
  margin-bottom: 14px !important;
}

body.compact-interior .breakfast-details {
  margin-top: 16px !important;
}

body.compact-interior .featured {
  margin-bottom: 28px !important;
}

body.compact-interior .service-list {
  margin: 20px 0 !important;
}

body.compact-interior .stats {
  margin-bottom: 36px !important;
}

body.compact-interior .submit-review {
  margin-bottom: 28px !important;
}

body.compact-interior .review-header {
  margin-bottom: 10px !important;
}

body.compact-interior .review-meta {
  gap: 10px !important;
  padding-top: 12px !important;
}

@media (max-width: 900px) {
  body.compact-site .nav,
  body.compact-site .nav.scrolled {
    padding-inline: 4vw !important;
  }

  body.compact-home .hero {
    height: auto !important;
    min-height: 560px !important;
  }

  body.compact-home .gallery {
    height: auto !important;
  }

  body.compact-interior .page-hero {
    min-height: 300px !important;
  }
}

@media (max-width: 640px) {
  body.compact-site .section,
  body.compact-site .sec,
  body.compact-site .main,
  body.compact-site .rooms-section {
    padding: 42px 4vw !important;
  }

  body.compact-site .footer {
    padding: 38px 4vw 18px !important;
  }

  body.compact-home .hero-content {
    padding: 0 4vw 7vh !important;
  }

  body.compact-home .hero-scroll {
    display: none !important;
  }

  body.compact-home .about-stack {
    height: 360px !important;
  }

  body.compact-home .gallery {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: repeat(3, minmax(120px, 1fr)) !important;
    height: auto !important;
  }

  body.compact-home .gallery .gi:first-child {
    grid-column: span 2 !important;
    grid-row: span 1 !important;
    min-height: 190px;
  }

  body.compact-home .di-copy,
  body.compact-home .rp-info,
  body.compact-home .cta-side {
    padding: 24px !important;
  }

  body.compact-home .map-f iframe {
    height: 280px !important;
  }

  body.compact-interior .hero {
    padding: 32px 4vw !important;
  }

  body.compact-interior .page-hero-content,
  body.compact-interior .ph-content {
    padding: 0 4vw 28px !important;
  }

  body.compact-interior .panel,
  body.compact-interior .side,
  body.compact-interior .content,
  body.compact-interior .form-section,
  body.compact-interior .sidebar,
  body.compact-interior .sidebar-box,
  body.compact-interior .submit-review,
  body.compact-interior .featured,
  body.compact-interior .services-info,
  body.compact-interior .amenit,
  body.compact-interior .review-card,
  body.compact-interior .stat-box,
  body.compact-interior .room-section,
  body.compact-interior .box {
    padding: 18px !important;
  }

  body.compact-interior .room-img {
    height: 280px !important;
  }

  body.compact-interior .gallery-img {
    height: 150px !important;
  }

  body.compact-interior .calendar-grid {
    gap: 4px !important;
    padding: 8px !important;
  }
}
