.home-page {
  background: var(--color-ash-void);
}

.home-page .section {
  position: relative;
}

.home-page .button {
  min-height: 2.75rem;
}

.home-hero {
  position: relative;
  display: grid;
  min-width: 0;
      max-height: 765px;
  overflow: hidden;
  background: var(--color-ember-night);
}

.home-hero__image,
.home-hero__shade,
.home-hero__container {
  grid-area: 1 / 1;
  width: 100%;
  min-width: 0;
}

.home-hero__image {
  height: 100%;
  object-position: center center;
}

.home-hero__shade {
  z-index: 1;
  background: linear-gradient(90deg, rgba(11, 12, 16, 0.7) 0%, rgba(11, 12, 16, 0.2) 54%, rgba(11, 12, 16, 0.78) 100%), linear-gradient(0deg, rgba(11, 12, 16, 0.96) 0%, rgba(230, 57, 70, 0.16) 42%, rgba(11, 12, 16, 0.3) 100%);
}

.home-hero__container {
  z-index: 2;
  display: flex;
  min-width: 0;
}

.home-hero__panel {
  display: flex;
  width: min(46%, 33.75rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  padding: var(--space-7);
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--color-basalt-raised) 90%, transparent);
  box-shadow: var(--shadow-panel);
}

@supports (backdrop-filter: blur(6px)) {
  .home-hero__panel { backdrop-filter: blur(6px); }
}

.home-hero__panel h1,
.home-hero__panel p { margin: 0; }

.home-hero__meta {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--leading-meta);
  text-transform: uppercase;
}

.home-hero__meta span { width: 0.45rem; height: 0.45rem; flex: 0 0 auto; background: var(--color-arcane-cyan); }
.home-hero__panel h1 { max-width: 31rem; font-size: clamp(3.25rem, 5vw, 4.75rem); }
.home-hero__lead { max-width: 34rem; color: var(--color-text-muted); font-size: var(--text-lead); line-height: var(--leading-lead); }
.home-hero__actions { width: 100%; }
.home-hero__actions > * { flex: 0 1 auto; }

.home-kitchen__layout {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 1fr) minmax(0, 4fr);
  min-width: 0;
}
.home-kitchen__copy { grid-column: 1 / span 1; width: 100%; min-width: 0; }
.home-kitchen__copy > .lead { max-width: 42.5rem; }
.home-kitchen__detail { display: flex; max-width: 35rem; min-width: 0; flex-direction: column; gap: var(--space-3); margin-top: var(--space-6); padding-top: var(--space-5); border-top: var(--border-default); }
.home-kitchen__detail h3,
.home-kitchen__detail p,
.home-kitchen__route p { margin: 0; }
.home-kitchen__route { display: flex; max-width: 35rem; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); margin-top: var(--space-6); }
.home-kitchen__ornament { grid-column: 3; align-self: stretch; justify-self: center; width: 1px; min-width: 1px; background: linear-gradient(to bottom, transparent 0%, var(--color-scarlet-flame) 25%, var(--color-relic-gold) 60%, transparent 100%); }

.home-menu__heading { width: 58.333%; min-width: 0; }
.home-menu__heading p:last-child { max-width: 37.5rem; }
.home-menu__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; margin-top: var(--space-6); }
.home-dish-card { display: flex; min-width: 0; flex-direction: column; border: var(--border-default); border-radius: var(--radius-lg); background: var(--color-basalt-deep); overflow: hidden; transition: border-color var(--transition-fast); }
.home-dish-card:hover { border-color: var(--color-relic-gold); }
.home-dish-card .media-frame { width: 100%; min-width: 0; }
.home-dish-card__body { display: flex; min-width: 0; flex: 1 1 auto; flex-direction: column; gap: var(--space-4); padding: var(--space-5); }
.home-dish-card__body h3, .home-dish-card__body p { margin: 0; }
.home-dish-card__body a { margin-top: auto; font-size: var(--text-nav); font-weight: 700; }
.home-dish-card__info { color: var(--color-arcane-cyan); font-size: var(--text-meta); font-weight: 700; letter-spacing: 0.12em; line-height: var(--leading-meta); text-transform: uppercase; }
.home-menu__route { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: var(--space-5); margin-top: var(--space-6); }
.home-menu__route p { margin: 0; }

.home-signature__layout { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr); gap: 0; min-width: 0; align-items: start; }
.home-signature__media { grid-column: 1; width: 100%; min-width: 0; }
.home-signature__copy { grid-column: 3; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.home-signature__copy h2, .home-signature__copy > p { margin: 0; }
.home-signature__copy > .lead { max-width: 27.5rem; }
.home-signature__principles { display: grid; width: 100%; max-width: 29.375rem; min-width: 0; gap: var(--space-5); margin: 0; padding: 0; list-style: none; }
.home-signature__principles li { display: grid; grid-template-columns: minmax(2.25rem, auto) minmax(0, 1fr); gap: var(--space-3); min-width: 0; padding-top: var(--space-4); border-top: var(--border-default); }
.home-signature__principles li > span { color: var(--color-relic-gold); font-size: var(--text-meta); font-weight: 700; letter-spacing: 0.12em; }
.home-signature__principles li > div { min-width: 0; }
.home-signature__principles h3, .home-signature__principles p { margin: 0; }
.home-signature__principles p { margin-top: var(--space-2); }

.home-interior__heading { width: 50%; min-width: 0; }
.home-interior__top, .home-interior__bottom { display: grid; min-width: 0; gap: var(--space-5); }
.home-interior__top { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); margin-top: var(--space-6); }
.home-interior__top > *, .home-interior__bottom > * { width: 100%; min-width: 0; }
.home-interior__bottom { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: var(--space-5); }
.home-interior__card { display: flex; min-width: 0; flex-direction: column; gap: var(--space-5); padding: var(--space-6); border: var(--border-default); border-radius: var(--radius-lg); background: var(--color-basalt-deep); }
.home-interior__card h3, .home-interior__card p { margin: 0; }
.home-interior__card--primary { justify-content: center; }
.home-interior__card--detail { display: grid; grid-template-columns: minmax(0, 10rem) minmax(0, 1fr); align-items: center; }
.home-interior__card--detail > * { min-width: 0; }
.home-interior__card--evening { border-bottom-color: var(--color-scarlet-flame); }
.home-interior__card--evening .button { align-self: flex-start; }

.home-offline__layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; align-items: stretch; }
.home-offline__panel { display: flex; min-width: 0; flex-direction: column; gap: var(--space-5); padding: var(--space-7); border: var(--border-default); background: var(--color-basalt-raised); box-shadow: var(--shadow-panel); }
.home-offline__panel h2, .home-offline__panel > p { margin: 0; }
.home-offline__label { color: var(--color-arcane-cyan); font-size: var(--text-meta); font-weight: 700; letter-spacing: 0.12em; line-height: var(--leading-meta); text-transform: uppercase; }
.home-offline__panel > .lead { max-width: 37.5rem; }
.home-offline__facts { display: grid; min-width: 0; gap: var(--space-4); }
.home-offline__facts article { min-width: 0; padding-top: var(--space-4); border-top: var(--border-default); }
.home-offline__facts h3, .home-offline__facts p { margin: 0; }
.home-offline__facts p { max-width: 37.5rem; margin-top: var(--space-2); }
.home-offline__actions { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: var(--space-4); }
.home-offline__media { width: 100%; min-width: 0; height: 100%; }

.home-evening__heading { width: min(100%, 40.625rem); min-width: 0; margin-inline: auto; text-align: center; }
.home-evening__heading p:last-child { margin-inline: auto; }
.home-evening__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; margin-top: var(--space-6); }
.home-evening__steps article { position: relative; display: flex; min-width: 0; flex-direction: column; gap: var(--space-4); padding: var(--space-6); border: var(--border-default); background: var(--color-basalt-deep); }
.home-evening__steps article:not(:last-child)::after { position: absolute; top: 2rem; right: calc(var(--space-5) / -2); width: var(--space-5); height: 1px; background: var(--color-relic-gold); content: ""; }
.home-evening__steps article:last-child { border-bottom-color: var(--color-scarlet-flame); }
.home-evening__steps span { color: var(--color-relic-gold); font-size: 2rem; font-family: var(--font-heading); font-weight: 700; line-height: 1; }
.home-evening__steps h3, .home-evening__steps p { margin: 0; }
.home-evening__route { display: flex; min-width: 0; flex-direction: column; align-items: center; gap: var(--space-4); margin-top: var(--space-6); text-align: center; }
.home-evening__route p { margin: 0; }

.home-notes__heading { width: 50%; min-width: 0; }
.home-notes__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; margin-top: var(--space-6); align-items: end; }
.home-notes__grid article { display: flex; min-width: 0; flex-direction: column; gap: var(--space-4); padding: var(--space-6); border: var(--border-default); background: var(--color-basalt-deep); }
.home-notes__grid article:nth-child(2) { margin-top: var(--space-5); }
.home-notes__grid article:nth-child(3) { margin-top: var(--space-7); }
.home-notes__grid p, .home-notes__grid blockquote { margin: 0; }
.home-notes__grid blockquote { padding: 0; border: 0; color: var(--color-text); }
.home-notes__notice { padding-top: var(--space-3); border-top: 1px solid var(--color-arcane-cyan); color: var(--color-text-muted); font-size: var(--text-meta); line-height: var(--leading-meta); }

.home-contact__panel { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); min-width: 0; gap: var(--space-7); padding: var(--space-7); border: var(--border-default); border-radius: var(--radius-lg); background: var(--color-basalt-raised); box-shadow: var(--shadow-panel); }
.home-contact__cta { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.home-contact__cta h2, .home-contact__cta p { margin: 0; }
.home-contact__cta > p:not(.eyebrow) { max-width: 32.5rem; }
.home-contact__actions { width: 100%; }
.home-contact__details { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); margin: 0; padding-left: var(--space-6); border-left: var(--border-default); font-style: normal; }
.home-contact__details h3, .home-contact__details p, .home-contact__details h4 { margin: 0; }
.home-contact__details > a { display: inline-flex; min-height: 2.75rem; align-items: center; color: var(--color-arcane-cyan); font-weight: 700; }
.home-contact__details > div { width: 100%; min-width: 0; margin-top: var(--space-3); padding-top: var(--space-4); border-top: var(--border-default); }
.home-contact__details > div p { max-width: 23.75rem; margin-top: var(--space-2); }

.home-closing { padding-bottom: var(--space-10); background: linear-gradient(0deg, rgba(230, 57, 70, 0.13), transparent 60%); }
.home-closing__content { display: flex; width: min(100%, 38.75rem); min-width: 0; flex-direction: column; align-items: center; gap: var(--space-6); text-align: center; }
.home-closing__content h2 { margin: 0; font-size: clamp(2.1rem, 4vw, 3.25rem); }
.home-closing__actions { justify-content: center; }

@media (max-width: 75rem) {
  .home-hero__panel { width: min(55%, 33.75rem); }
  .home-kitchen__layout { grid-template-columns: minmax(0, 5fr) minmax(0, 1fr); }
  .home-kitchen__ornament { grid-column: 2; }
}

@media (max-width: 65rem) {
  .home-menu__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-menu__cards > :last-child { grid-column: 1 / span 1; }
}

@media (max-width: 61.25rem) {
  .home-interior__top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-evening__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-evening__steps > :last-child { grid-column: 1 / span 2; }
  .home-evening__steps article:not(:last-child)::after { display: none; }
  .home-notes__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-notes__grid article:nth-child(3) { grid-column: 1 / span 2; margin-top: 0; }
}

@media (max-width: 58.75rem) {
  .home-signature__layout { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); }
  .home-signature__media { grid-column: 1; }
  .home-signature__copy { grid-column: 2; }
  .home-offline__layout { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
  .home-offline__panel { padding: var(--space-6); }
}

@media (max-width: 56.25rem) {
  .home-hero { min-height: 44rem; }
  .home-hero__container { align-items: end; justify-content: center; padding-block: var(--space-6); }
  .home-hero__panel { width: min(100%, 43rem); }
  .home-contact__panel { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .home-contact__details { padding-top: var(--space-6); padding-left: 0; border-top: var(--border-default); border-left: 0; }
}

@media (max-width: 53.75rem) {
  .home-kitchen__layout { grid-template-columns: minmax(0, 1fr); }
  .home-kitchen__ornament { display: none; }
  .home-kitchen__copy > .lead { max-width: 100%; }
}

@media (max-width: 48rem) {
  .home-hero { min-height: 47.5rem; grid-template-rows: 57% 43%; }
  .home-hero__image, .home-hero__shade { grid-row: 1 / span 2; }
  .home-hero__image { object-position: 42% center; }
  .home-hero__shade { background: linear-gradient(0deg, var(--color-ember-night) 0%, rgba(17, 14, 21, 0.86) 36%, rgba(11, 12, 16, 0.26) 76%, rgba(11, 12, 16, 0.6) 100%); }
  .home-hero__container { grid-row: 2; align-items: end; padding-block: var(--space-5); }
  .home-hero__panel { width: 100%; padding: var(--space-5); background: color-mix(in srgb, var(--color-basalt-raised) 95%, transparent); }
  .home-hero__panel h1 { font-size: 2.35rem; }
  .home-hero__actions { display: grid; grid-template-columns: minmax(0, 1fr); }
  .home-hero__actions > * { width: 100%; min-width: 0; }
  .home-menu__heading, .home-interior__heading, .home-notes__heading { width: 100%; }
  .home-menu__cards, .home-signature__layout, .home-interior__top, .home-interior__bottom, .home-offline__layout, .home-evening__steps, .home-notes__grid { grid-template-columns: minmax(0, 1fr); }
  .home-menu__cards > :last-child, .home-evening__steps > :last-child, .home-notes__grid article:nth-child(3) { grid-column: 1; }
  .home-menu__route { display: flex; flex-direction: column; align-items: stretch; }
  .home-menu__route .button { width: 100%; }
  .home-signature__media, .home-signature__copy { grid-column: 1; }
  .home-signature__copy { margin-top: var(--space-5); }
  .home-signature__copy > .lead, .home-signature__principles { max-width: 100%; }
  .home-interior__card--detail { grid-template-columns: minmax(0, 1fr); }
  .home-offline__panel { padding: var(--space-5); }
  .home-offline__media { min-height: 0; }
  .home-offline__actions { display: grid; grid-template-columns: minmax(0, 1fr); }
  .home-offline__actions > * { width: 100%; min-width: 0; }
  .home-evening__steps article { padding: var(--space-5); }
  .home-evening__steps article:not(:last-child) { border-left: 2px solid var(--color-relic-gold); }
  .home-notes__grid article:nth-child(2), .home-notes__grid article:nth-child(3) { margin-top: 0; }
  .home-contact__panel { padding: var(--space-5); }
  .home-contact__actions { display: grid; grid-template-columns: minmax(0, 1fr); }
  .home-contact__actions > * { width: 100%; min-width: 0; }
  .home-closing__content { width: 100%; }
  .home-closing__actions { display: grid; width: 100%; grid-template-columns: minmax(0, 1fr); }
  .home-closing__actions > * { width: 100%; min-width: 0; }
}

@media (max-width: 30rem) {
  .home-hero { min-height: 50rem; }
  .home-hero__meta { letter-spacing: 0.08em; }
  .home-signature__principles li { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
}
