html {
  scroll-padding-top: calc(var(--nav-height-desktop) + var(--space-4));
}
.hero-private-events {
  position: relative;
}
.hero-private-events-inner {
  align-items: stretch;
}
.hero-private-events .hero-content {
  max-width: 34rem;
}
.hero-media-frame {
  box-shadow: var(--shadow-md);
}
.hero-media-image {
  transform: scale(1.02);
  transition: transform var(--transition-slow), filter var(--transition-slow);
}
.hero-media-frame:hover .hero-media-image {
  transform: scale(1.05);
  filter: saturate(1.05);
}
.hero-card-private {
  max-width: 280px;
}
.private-events-layout,
.comfort-layout {
  align-items: center;
}
.private-events-card,
.comfort-card,
.private-events-subcard {
  transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base), background var(--transition-base);
}
.private-events-card:hover,
.comfort-card:hover,
.private-events-subcard:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-md);
}
.private-events-list {
  margin: 0;
}
.private-events-list li {
  font-size: var(--text-sm);
  color: var(--color-text-soft);
}
.comfort-grid {
  align-items: flex-start;
}
.comfort-footer {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
}
.reservation-highlight-private {
  position: relative;
}
.reservation-steps {
  margin: var(--space-3) 0 var(--space-3);
  padding-left: 1.25rem;
  font-size: var(--text-sm);
  color: var(--color-text-soft);
}
.reservation-steps li {
  margin: 0.35rem 0;
}
#private-event-form {
  position: relative;
}
#private-event-form .form-success {
  color: var(--color-success);
}
#private-event-submit[disabled] {
  opacity: 0.7;
  cursor: wait;
}
#contact-email-error[hidden],
#private-event-success[hidden] {
  display: none;
}
@media (max-width: 1023.98px) {
  .hero-card-private {
    max-width: 260px;
  }
}
@media (max-width: 767.98px) {
  .hero-private-events-inner {
    gap: var(--space-6);
  }
  .hero-card-private {
    max-width: 100%;
    margin-top: var(--space-3);
  }
  .reservation-steps {
    margin-top: var(--space-2);
  }
}
@media (max-width: 479.98px) {
  .hero-private-events .hero-content {
    max-width: 100%;
  }
  .hero-card-private {
    border-radius: var(--radius-lg);
  }
}
