.room-detail__back {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-10);
  margin-bottom: var(--spacing-32);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--font-size-16);
  letter-spacing: var(--letter-spacing-heading);
  color: var(--nb-border-25);
  text-decoration: none;
}

.room-detail__back:hover {
  color: var(--nb-salmon);
}

.room-detail__back-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: var(--icon-size-medium);
  height: var(--icon-size-medium);
  border-radius: 50%;
  box-shadow: inset 0 0 0 var(--border-width) var(--nb-border);
}

.room-detail__layout {
  display: flex;
  flex-wrap: wrap-reverse;
  align-items: center;
  gap: var(--spacing-56);
}

.room-detail__info {
  flex: 1 1 420px;
  min-width: 320px;
}

.room-detail__title {
  font-size: var(--font-size-36);
  line-height: var(--line-height-snug);
  margin: 0 0 var(--spacing-6);
}

.room-detail__meta {
  margin: 0 0 var(--spacing-24);
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--font-size-18);
  color: var(--nb-border-25);
}

.room-detail__lead {
  margin: 0 0 var(--spacing-24);
  font-family: var(--font-body);
  font-weight: 300;
  font-size: var(--font-size-18);
  line-height: var(--line-height-normal);
}

.room-detail__facilities {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-10);
  margin-bottom: var(--spacing-28);
}

.room-detail__facility {
  border-radius: var(--radius-extra-small);
  background: var(--nb-beige);
  padding: var(--spacing-8) var(--spacing-14);
  font-family: var(--font-body);
  font-size: var(--font-size-14);
  color: var(--nb-ink);
}

.room-detail__price {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--font-size-22);
  letter-spacing: var(--letter-spacing-heading);
  color: var(--nb-salmon);
  white-space: pre-line;
  line-height: var(--line-height-price);
}

.room-detail__price-note {
  margin: var(--spacing-6) 0 0;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--font-size-15);
  letter-spacing: var(--letter-spacing-body);
  color: var(--nb-border-25);
}

.room-detail__cta {
  margin-top: var(--spacing-32);
  padding: var(--spacing-16) var(--spacing-40);
  font-size: var(--font-size-18);
}

.room-detail__photo {
  flex: 1 1 560px;
  min-width: 380px;
  width: 100%;
}

.room-detail__photo .photo-slider {
  margin-bottom: 0;
}

.room-detail__pricing {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16);
  border-radius: var(--radius-large);
  background: var(--nb-beige);
  padding: var(--spacing-28);
}

.room-detail__pricing-title {
  margin: 0;
  font-size: var(--font-size-22);
}

.room-detail__pricing-rows {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8);
}

.room-detail__pricing-row {
  display: flex;
  justify-content: space-between;
  font-family: var(--font-body);
  font-size: var(--font-size-15);
}

.room-detail__pricing-row span:last-child {
  font-weight: 800;
}

/* Catering-opties-blokje op de detailpagina zelf, los van het formulier —
   Bewust géén kaart zoals .room-detail__pricing — die zware beige vlakdekking
   botste met de losstaande room-detail__price erboven. Vlak, met een
   hairline-scheiding, en een gedempt eyebrow-kopje i.p.v. een grote salmon
   heading, zodat dit duidelijk ondergeschikt aan de hoofdprijs blijft. */

.room-detail__catering {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16);
  padding-top: var(--spacing-24);
  margin-top: var(--spacing-8);
  border-top: 1px solid var(--nb-border);
}

.room-detail__catering-title {
  margin: 0;
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--font-size-14);
  color: var(--nb-border-25);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-eyebrow);
}

.room-detail__catering-rows {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16);
}

.room-detail__catering-row-header {
  display: flex;
  justify-content: space-between;
  gap: var(--spacing-16);
  font-family: var(--font-body);
  font-weight: 800;
  font-size: var(--font-size-15);
}

.room-detail__catering-row-description {
  margin: var(--spacing-6) 0 0;
  font-family: var(--font-body);
  font-weight: 300;
  font-size: var(--font-size-14);
  color: var(--nb-border-25);
}
