.hero__grid {
  display: grid;
  gap: var(--space-8);
}

@media (min-width: 1024px) {
  .hero__grid {
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
    align-items: center;
  }
}

.hero__content {
  padding-block: var(--space-10);
}

.hero__actions {
  margin-bottom: var(--space-4);
}

.hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.hero__sidecard {
  max-width: 420px;
  margin-inline: auto;
}

.hero-card__items {
  display: grid;
  gap: var(--space-4);
  margin-block: var(--space-4);
}

.hero-card__item {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.hero-card__label {
  font-size: var(--font-size-xs);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-text-subtle);
}

.hero-card__link,
.hero-card__value {
  font-size: var(--font-size-sm);
}

.hero-card__cta {
  width: 100%;
  margin-top: var(--space-2);
}

.hero__ghost-cta {
  font-size: var(--font-size-sm);
}

.hero__meta .chip-muted {
  border-radius: var(--radius-pill);
  padding-inline: 0.9rem;
}

.section-first-impression .split-layout {
  align-items: center;
}

.first-impression__figure {
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-elevated);
}

.first-impression__list {
  display: grid;
  gap: var(--space-4);
  margin-top: var(--space-4);
}

.first-impression__list h3 {
  font-size: var(--font-size-xl);
}

.first-impression__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-6);
}

.text-link {
  font-size: var(--font-size-sm);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent-gold);
}

.section-services {
  position: relative;
}

.services__header {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  margin-bottom: var(--space-8);
}




.services__grid {
  display: grid;
  gap: var(--space-6);
}

@media (min-width: 1024px) {
  .services__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.services__card {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.services__list {
  margin-top: var(--space-3);
  margin-bottom: var(--space-4);
}

.services__list li {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.services__links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: auto;
}

.services__card-cta {
  margin-top: auto;
}

.section-experiences .split-layout {
  align-items: center;
}

.split-layout--reverse {
  direction: rtl;
}

.split-layout--reverse > * {
  direction: ltr;
}

.experiences__figure {
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-elevated);
}

.experiences__highlights {
  display: grid;
  gap: var(--space-4);
  margin-top: var(--space-4);
}

.experiences__cta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-6);
}

.experiences__item h3 {
  font-size: var(--font-size-xl);
}

.interiors__figure {
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-elevated);
}

.interiors__list {
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.interiors__cta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-6);
}

.section-gastronomy {
  position: relative;
}

.gastronomy__header {
  margin-bottom: var(--space-8);
}

.gastronomy__grid {
  display: grid;
  gap: var(--space-8);
}

@media (min-width: 900px) {
  .gastronomy__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.gastronomy__list {
  display: grid;
  gap: var(--space-2);
  margin-top: var(--space-3);
}

.section-trust {
  position: relative;
}

.trust__header {
  margin-bottom: var(--space-8);
}

.trust__grid {
  display: grid;
  gap: var(--space-6);
}

@media (min-width: 900px) {
  .trust__grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  }
}

.trust__quote {
  font-family: var(--font-serif);
  font-size: var(--font-size-md);
  line-height: var(--line-height-relaxed);
  color: var(--color-text);
  margin-bottom: var(--space-4);
}

.trust__author {
  font-size: var(--font-size-sm);
  color: var(--color-text-subtle);
}

.trust__card--meta {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.trust__meta-item {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.trust__meta-label {
  font-size: var(--font-size-xs);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-text-subtle);
}

.trust__meta-value {
  font-size: var(--font-size-3xl);
}

.trust__meta-caption {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.trust__links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-2);
}

.section-reservation .split-layout {
  align-items: stretch;
}

.reservation__list {
  display: grid;
  gap: var(--space-2);
  margin-top: var(--space-4);
}

.reservation__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-6);
}

.reservation__form-card {
  max-width: 420px;
  margin-inline: auto;
}

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

.form-row__half {
  flex: 1;
}

@media (max-width: 599px) {
  .form-row--inline {
    flex-direction: column;
  }
}

.reservation-card__btn {
  width: 100%;
  margin-top: var(--space-2);
}

.reservation-card__note {
  margin-top: var(--space-3);
  font-size: var(--font-size-xs);
  color: var(--color-text-subtle);
}

.section-newsletter {
  padding-bottom: var(--space-16);
}

.newsletter-card {
  display: grid;
  gap: var(--space-6);
}

@media (min-width: 900px) {
  .newsletter-card {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
    align-items: center;
  }
}

.newsletter-card__form {
  display: flex;
  flex-direction: column;
}

.newsletter-card__btn {
  margin-top: var(--space-2);
}

.newsletter-card__fineprint {
  margin-top: var(--space-3);
  font-size: var(--font-size-xs);
  color: var(--color-text-subtle);
}

.section-quicklinks {
  padding-top: 0;
  padding-bottom: var(--space-14);
}

.quicklinks__grid {
  display: grid;
  gap: var(--space-4);
}

@media (min-width: 768px) {
  .quicklinks__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.quicklink-card {
  position: relative;
  padding: var(--space-4);
  border-radius: var(--radius-lg);
  background: linear-gradient(145deg, rgba(15, 18, 24, 0.96), rgba(10, 12, 16, 0.98));
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: var(--shadow-subtle);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.quicklink-card__title {
  font-family: var(--font-display);
  font-size: var(--font-size-md);
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.quicklink-card__subtitle {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.quicklink-card:hover,
.quicklink-card:focus-visible {
  transform: translateY(-2px);
  box-shadow: var(--shadow-elevated);
  border-color: rgba(210, 166, 89, 0.8);
}

.section-label {
  text-shadow: 0 0 18px rgba(0, 0, 0, 0.7);
}

.hero__title,
.hero__subtitle {
  text-shadow: 0 12px 40px rgba(0, 0, 0, 0.8);
}

.hero__overlay {
  mix-blend-mode: multiply;
}

.hero__media img {
  transform: scale(1.03);
}

@media (prefers-reduced-motion: no-preference) {
  .hero__media img {
    transition: transform 22s ease-out;
  }

  .hero:hover .hero__media img {
    transform: scale(1.07);
  }

  .hero-card,
  .first-impression__figure,
  .experiences__figure,
  .interiors__figure {
    transition: transform var(--transition-slow), box-shadow var(--transition-slow);
  }

  .hero-card:hover,
  .first-impression__figure:hover,
  .experiences__figure:hover,
  .interiors__figure:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-elevated);
  }
}
