/* Home hero */

.hero {
  padding-block: var(--space-7) calc(var(--space-8) / 2);
}

.hero-grid {
  display: grid;
  grid-template-areas:
    "copy"
    "visual";
  gap: var(--space-6);
}

.hero-copy {
  grid-area: copy;
}

.hero-title {
  margin-top: var(--space-5);
  font-size: var(--font-size-hero);
  letter-spacing: -0.055em;
  line-height: var(--line-height-tight);
}

.hero-title span {
  display: block;
}

.hero-summary {
  margin-top: var(--space-5);
  font-size: var(--font-size-lead);
}

.hero-actions {
  margin-top: var(--space-6);
}

.hero-visual {
  position: relative;
  grid-area: visual;
  width: min(100%, 31rem);
  justify-self: end;
}

.hero-photo {
  position: relative;
}

/* Interior feature */

.inside-section {
  padding-block: calc(var(--space-9) / 2);
  background: var(--color-cream);
}

#eventi {
  background: var(--color-paper);
}

.inside-grid {
  display: grid;
  gap: var(--space-7);
}

.inside-figure {
  position: relative;
  width: min(100%, 31rem);
}

.inside-copy {
  display: grid;
  align-content: center;
  gap: var(--space-5);
}

@media (max-width: 47.999rem) {
  #dentro .inside-copy {
    order: -1;
  }
}

#inside-title,
#events-title,
#menu-preview-title {
  max-width: none;
  white-space: nowrap;
}

#inside-title,
#events-title {
  font-size: clamp(2.25rem, 5.5vw, 4.5rem);
}

#menu-preview-title {
  font-size: clamp(2.25rem, 5.8vw, 4.5rem);
}

/* Menu preview */

.menu-preview-header {
  display: grid;
  gap: var(--space-5);
  margin-bottom: var(--space-7);
}

.menu-preview-grid {
  display: grid;
}

.menu-preview-item {
  display: grid;
  align-content: start;
  gap: var(--space-4);
  padding-block: var(--space-6);
}

.menu-preview-item h3 {
  font-family: var(--font-body);
  font-size: var(--font-size-category);
  letter-spacing: -0.025em;
  line-height: 1;
}

.menu-preview-cta {
  margin-top: var(--space-7);
}

@media (max-width: 47.999rem) {
  .menu-preview-item:not(:last-child) {
    border-bottom: 1px solid var(--color-border);
  }

  .menu-preview-cta .button {
    width: 100%;
  }
}

@media (min-width: 64rem) {
  .menu-preview-cta {
    display: flex;
    justify-content: center;
  }

  .menu-preview-cta .button {
    width: 17.62rem;
  }
}
