/* ===== Wnętrze restauracji – page-owned styles ===== */

.wnetrze-hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: flex-end;
  background-color: var(--color-ink);
}

.wnetrze-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.wnetrze-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.wnetrze-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(28, 26, 23, 0.78) 0%, rgba(28, 26, 23, 0.35) 40%, rgba(28, 26, 23, 0.05) 70%, transparent 100%);
}

.wnetrze-hero__content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-padding);
  padding-block-end: clamp(3rem, 8vh, 6rem);
  color: var(--color-paper);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-md);
}

.wnetrze-hero__eyebrow {
  color: var(--color-wine-wash);
  margin-block-end: 0;
}

.wnetrze-hero__title {
  color: var(--color-paper);
  max-width: 50%;
  margin-block-end: 0;
  font-size: clamp(2rem, 4.4vw, 3.4rem);
  line-height: 1.08;
  letter-spacing: -0.015em;
}

.wnetrze-hero__lead {
  color: var(--color-paper);
  max-width: 50%;
  font-size: var(--text-body-lg-size);
  line-height: 1.7;
  margin-block-end: 0;
}

.wnetrze-hero__address {
  color: var(--color-paper);
  font-size: var(--text-small-size);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding-block-start: var(--space-sm);
  border-block-start: 1px solid var(--color-wine);
  margin-block-end: 0;
}

/* Filozofia projektowa */
.wnetrze-philosophy {
  padding-block: var(--space-3xl);
}

.wnetrze-philosophy__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-2xl);
  align-items: start;
}

.wnetrze-philosophy__text {
  min-width: 0;
}

.wnetrze-philosophy__text p {
  max-width: 68ch;
}

.wnetrze-philosophy__quote {
  border-inline-start: 2px solid var(--color-wine);
  padding-inline-start: var(--space-lg);
  margin-block-end: 0;
  font-size: clamp(1.25rem, 2vw, 1.6rem);
  line-height: 1.3;
  max-width: 50ch;
}

/* Strefa jadalni */
.wnetrze-dining {
  padding-block: var(--space-3xl);
  background-color: var(--color-paper-deep);
}

.wnetrze-dining__grid {
  display: grid;
  grid-template-columns: minmax(0, 11fr) minmax(0, 9fr);
  gap: var(--space-2xl);
  align-items: center;
}

.wnetrze-dining__figure {
  margin-block-end: 0;
  min-width: 0;
}

.wnetrze-dining__image {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border: 1px solid var(--color-rule);
}

.wnetrze-dining__content {
  min-width: 0;
}

.wnetrze-dining__content p {
  max-width: 60ch;
}

.wnetrze-dining__list {
  list-style: none;
  padding-inline-start: 0;
  margin-block-start: var(--space-md);
  margin-block-end: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.wnetrze-dining__list li {
  padding-inline-start: var(--space-lg);
  position: relative;
}

.wnetrze-dining__list li::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.65em;
  width: 6px;
  height: 1px;
  background-color: var(--color-wine);
}

/* Bar i strefa koktajlowa */
.wnetrze-bar {
  padding-block: var(--space-3xl);
}

.wnetrze-bar__grid {
  display: grid;
  grid-template-columns: minmax(0, 9fr) minmax(0, 11fr);
  gap: var(--space-2xl);
  align-items: center;
}

.wnetrze-bar__content {
  min-width: 0;
}

.wnetrze-bar__content p {
  max-width: 60ch;
}

.wnetrze-bar__figure {
  margin-block-end: 0;
  min-width: 0;
}

.wnetrze-bar__image {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border: 1px solid var(--color-rule);
}

.wnetrze-bar__list {
  list-style: none;
  padding-inline-start: 0;
  margin-block-start: var(--space-md);
  margin-block-end: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.wnetrze-bar__list li {
  padding-inline-start: var(--space-lg);
  position: relative;
}

.wnetrze-bar__list li::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.65em;
  width: 6px;
  height: 1px;
  background-color: var(--color-wine);
}

/* Kameralna jadalnia */
.wnetrze-lounge {
  background-color: var(--color-wine-wash);
  padding-block: var(--space-3xl);
}

.wnetrze-lounge__inner {
  width: 100%;
}

.wnetrze-lounge__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--space-2xl);
  align-items: center;
}

.wnetrze-lounge__figure {
  margin-block-end: 0;
  min-width: 0;
}

.wnetrze-lounge__image {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border: 1px solid var(--color-rule);
}

.wnetrze-lounge__content {
  min-width: 0;
}

.wnetrze-lounge__content p {
  max-width: 60ch;
}

.wnetrze-lounge__list {
  list-style: none;
  padding-inline-start: 0;
  margin-block-start: var(--space-md);
  margin-block-end: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.wnetrze-lounge__list li {
  padding-inline-start: var(--space-lg);
  position: relative;
}

.wnetrze-lounge__list li::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.65em;
  width: 6px;
  height: 1px;
  background-color: var(--color-wine-deep);
}

/* Detale i materiały */
.wnetrze-details {
  padding-block: var(--space-3xl);
}

.wnetrze-details__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-2xl);
  margin-block-start: var(--space-xl);
}

.wnetrze-details__item {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}

.wnetrze-details__image {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border: 1px solid var(--color-rule);
}

.wnetrze-details__item h3 {
  margin-block-end: 0;
}

.wnetrze-details__item p {
  max-width: 50ch;
  margin-block-end: 0;
}

/* Historia budynku */
.wnetrze-history {
  padding-block: var(--space-3xl);
  background-color: var(--color-paper-deep);
}

.wnetrze-history__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.wnetrze-history__content {
  min-width: 0;
}

.wnetrze-history__content p {
  max-width: 68ch;
}

/* Praktyczne informacje */
.wnetrze-info {
  padding-block: var(--space-3xl);
}

.wnetrze-info__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.wnetrze-info__content {
  min-width: 0;
}

.wnetrze-info__content p {
  max-width: 68ch;
}

.wnetrze-info__list {
  list-style: none;
  padding-inline-start: 0;
  margin-block-start: var(--space-md);
  margin-block-end: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.wnetrze-info__list li {
  padding-inline-start: var(--space-lg);
  position: relative;
}

.wnetrze-info__list li::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.65em;
  width: 6px;
  height: 1px;
  background-color: var(--color-ink-muted);
}

/* Zaproszenie do kontaktu */
.wnetrze-cta {
  padding-block: var(--space-3xl);
  background-color: var(--color-paper);
}

.wnetrze-cta__inner {
  max-width: 400px;
  margin-inline: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
}

.wnetrze-cta__inner h2 {
  margin-block-end: 0;
}

.wnetrze-cta__inner p {
  max-width: 50ch;
  margin-block-end: 0;
}

.wnetrze-cta__button {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: var(--space-sm) var(--space-lg);
}

/* ===== Tablet (max-width: 1024px) ===== */
@media (max-width: 1024px) {
  .wnetrze-hero__title,
  .wnetrze-hero__lead {
    max-width: 65%;
  }

  .wnetrze-philosophy__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-xl);
  }

  .wnetrze-philosophy__quote {
    max-width: 60ch;
  }

  .wnetrze-dining__grid,
  .wnetrze-bar__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-xl);
  }

  .wnetrze-dining__figure,
  .wnetrze-bar__figure {
    order: -1;
  }

  .wnetrze-lounge__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-xl);
  }

  .wnetrze-lounge__figure {
    order: -1;
  }

  .wnetrze-details__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-xl);
  }
}

/* ===== Mobile (max-width: 640px) ===== */
@media (max-width: 640px) {
  .wnetrze-hero {
    min-height: 80vh;
  }

  .wnetrze-hero__content {
    padding-inline: 24px;
    padding-block-end: 24px;
    gap: var(--space-sm);
  }

  .wnetrze-hero__title,
  .wnetrze-hero__lead {
    max-width: 100%;
  }

  .wnetrze-hero__title {
    font-size: clamp(1.8rem, 8vw, 2.4rem);
  }

  .wnetrze-hero__lead {
    font-size: var(--text-body-size);
  }

  .wnetrze-hero__address {
    font-size: var(--text-caption-size);
    letter-spacing: 0.04em;
  }

  .wnetrze-philosophy,
  .wnetrze-dining,
  .wnetrze-bar,
  .wnetrze-lounge,
  .wnetrze-details,
  .wnetrze-history,
  .wnetrze-info,
  .wnetrze-cta {
    padding-block: var(--space-2xl);
  }

  .wnetrze-philosophy__grid,
  .wnetrze-dining__grid,
  .wnetrze-bar__grid,
  .wnetrze-lounge__grid,
  .wnetrze-details__grid,
  .wnetrze-history__grid,
  .wnetrze-info__grid {
    gap: var(--space-lg);
  }

  .wnetrze-dining__image,
  .wnetrze-bar__image,
  .wnetrze-lounge__image {
    aspect-ratio: 4 / 5;
  }

  .wnetrze-details__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-xl);
  }

  .wnetrze-cta__inner {
    max-width: 100%;
    padding-inline: 24px;
  }

  .wnetrze-cta__button {
    width: 100%;
  }
}

/* ===== Reduced motion ===== */
@media (prefers-reduced-motion: reduce) {
  .wnetrze-hero__media::after,
  .wnetrze-hero__image,
  .wnetrze-cta__button,
  a,
  button {
    transition: none;
    animation: none;
  }
}
