.interior-hero {
  padding-top: var(--space-16);
}

.interior-hero-grid {
  align-items: center;
  gap: var(--space-10);
}

.interior-hero-title {
  font-size: clamp(2.1rem, 2.7vw, 2.6rem);
}

.interior-hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.interior-hero-media .interior-hero-figure {
  border-radius: 28px;
  overflow: hidden;
  box-shadow: var(--shadow-elevated);
}

.interior-palette-grid,
.interior-bar-grid,
.interior-private-grid,
.interior-sensory-grid,
.interior-evening-grid {
  gap: var(--space-8);
  align-items: flex-start;
}

.interior-palette-key {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.interior-palette-chip {
  padding: 0.4rem 0.9rem;
  border-radius: var(--radius-pill);
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.palette-ivory {
  background: linear-gradient(135deg, #f7f1e6, #f0e4d3);
  color: var(--gray-800);
}

.palette-ocean {
  background: linear-gradient(135deg, #314f66, #3a6a86);
  color: #f7f5f1;
}

.palette-olive {
  background: linear-gradient(135deg, #7b8a55, #9ca86f);
  color: #fbf8f2;
}

.palette-burgundy {
  background: linear-gradient(135deg, #5f2332, #7b3347);
  color: #fbeff3;
}

.interior-palette-texture {
  align-self: stretch;
}

.interior-bar-media .zigzag-media,
.interior-evening-media .zigzag-media {
  border-radius: 26px;
}

.interior-bar-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-bottom: var(--space-3);
}

.interior-private-card {
  align-self: center;
}

.interior-sensory-card {
  align-self: stretch;
}

.interior-gallery-header {
  max-width: 640px;
}

.interior-gallery-strip {
  margin-top: var(--space-4);
}

.interior-evening {
  color: #f7f0e5;
}

.interior-evening h2,
.interior-evening h3 {
  color: #fdf7ee;
}

.interior-evening-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin: var(--space-4) 0 var(--space-3);
}

.interior-reservation-card {
  margin-top: var(--space-4);
}

@media (max-width: 960px) {
  .interior-hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .interior-hero-media {
    order: -1;
  }
}

@media (max-width: 720px) {
  .interior-hero {
    padding-top: var(--space-12);
  }
  .interior-palette-grid,
  .interior-bar-grid,
  .interior-private-grid,
  .interior-sensory-grid,
  .interior-evening-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .interior-private-card,
  .interior-sensory-card {
    margin-top: var(--space-4);
  }
}
