/* Strona główna — style własne */

.hero {
  position: relative;
  min-height: 640px;
  display: flex;
  align-items: flex-end;
  background-color: var(--color-gleboki-grafit);
  overflow: hidden;
}

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

.hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(35, 38, 43, 0.85) 0%, rgba(35, 38, 43, 0.45) 40%, rgba(35, 38, 43, 0.15) 100%);
}

.hero__content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  padding: var(--space-3xl) var(--container-margin-mobile);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-m);
}

.hero__title {
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-line-height);
  font-weight: var(--text-h1-weight);
  color: var(--color-kremowy-tekst-na-ciemnym);
  margin-block-end: 0;
}

.hero__lead {
  font-size: var(--text-body-l-size);
  line-height: var(--text-body-l-line-height);
  font-weight: var(--text-body-l-weight);
  color: var(--color-kremowy-tekst-na-ciemnym);
  margin-block-end: 0;
}

.hero__cta {
  margin-block-start: var(--space-xs);
}

/* Koncepcja */
.koncepcja {
  background-color: var(--surface-page);
}

.koncepcja__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
}

.koncepcja__title {
  color: var(--color-przygaszona-cegla);
  margin-block-end: 0;
}

.koncepcja__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
}

.koncepcja__subtitle {
  color: var(--color-gleboki-grafit);
  margin-block-end: var(--space-xs);
}

.koncepcja__text {
  margin-block-end: 0;
}

.koncepcja__link {
  align-self: flex-start;
}

/* Kuchnia */
.kuchnia {
  background-color: var(--surface-secondary);
}

.kuchnia__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
}

.kuchnia__title {
  color: var(--color-lesna-zielen);
  margin-block-end: 0;
}

.kuchnia__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
}

.kuchnia__subtitle {
  color: var(--color-gleboki-grafit);
  margin-block-end: var(--space-xs);
}

.kuchnia__text {
  margin-block-end: 0;
}

.kuchnia__link {
  align-self: flex-start;
}

/* Składniki */
.skladniki {
  background-color: var(--surface-page);
}

.skladniki__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
}

.skladniki__title {
  color: var(--color-przygaszona-cegla);
  margin-block-end: 0;
}

.skladniki__grid {
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: var(--space-l);
  align-items: start;
}

.skladniki__text {
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
  min-width: 0;
}

.skladniki__subtitle {
  color: var(--color-gleboki-grafit);
  margin-block-end: var(--space-xs);
}

.skladniki__paragraph {
  margin-block-end: 0;
}

.skladniki__badges {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
  min-width: 0;
}

.skladniki__link {
  align-self: flex-start;
}

/* Dania */
.dania {
  background-color: var(--surface-secondary);
}

.dania__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
}

.dania__title {
  color: var(--color-przygaszona-cegla);
  margin-block-end: 0;
}

.dania__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-m);
}

.dania__card {
  background-color: var(--surface-page);
  border: var(--border-light);
  border-radius: var(--radius-card);
  padding: var(--space-l);
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
  min-width: 0;
}

.dania__card-title {
  color: var(--color-przygaszona-cegla);
  margin-block-end: 0;
}

.dania__card-text {
  margin-block-end: 0;
}

.dania__link {
  align-self: flex-start;
}

/* Przy Stole */
.przy-stole {
  background-color: var(--surface-page);
}

.przy-stole__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-xl);
  align-items: center;
}

.przy-stole__text {
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
  min-width: 0;
}

.przy-stole__title {
  color: var(--color-przygaszona-cegla);
  margin-block-end: 0;
}

.przy-stole__subtitle {
  color: var(--color-gleboki-grafit);
  margin-block-end: var(--space-xs);
}

.przy-stole__paragraph {
  margin-block-end: 0;
}

.przy-stole__link {
  align-self: flex-start;
}

.przy-stole__figure {
  margin-block-end: 0;
  min-width: 0;
}

.przy-stole__image {
  width: 100%;
  height: auto;
  border-radius: var(--radius-card);
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

/* Wnętrze */
.wnetrze {
  background-color: var(--surface-secondary);
}

.wnetrze__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-xl);
  align-items: center;
}

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

.wnetrze__image {
  width: 100%;
  height: auto;
  border-radius: var(--radius-card);
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.wnetrze__text {
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
  min-width: 0;
}

.wnetrze__title {
  color: var(--color-przygaszona-cegla);
  margin-block-end: 0;
}

.wnetrze__subtitle {
  color: var(--color-gleboki-grafit);
  margin-block-end: var(--space-xs);
}

.wnetrze__paragraph {
  margin-block-end: 0;
}

.wnetrze__link {
  align-self: flex-start;
}

/* Wieczór */
.wieczor {
  background-color: var(--surface-dark);
  color: var(--color-kremowy-tekst-na-ciemnym);
}

.wieczor__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
  text-align: center;
}

.wieczor__title {
  color: var(--color-miodowy-bez);
  margin-block-end: 0;
}

.wieczor__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
}

.wieczor__subtitle {
  color: var(--color-kremowy-tekst-na-ciemnym);
  margin-block-end: var(--space-xs);
}

.wieczor__text {
  margin-block-end: 0;
}

.wieczor__link {
  align-self: center;
  color: var(--color-miodowy-bez);
}

.wieczor__link:hover {
  color: var(--color-kremowy-tekst-na-ciemnym);
}

/* Kasyno Offline */
.kasyno-offline {
  background-color: var(--surface-dark);
  color: var(--color-kremowy-tekst-na-ciemnym);
}

.kasyno-offline__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
}

.kasyno-offline__title {
  color: var(--color-miodowy-bez);
  margin-block-end: 0;
}

.kasyno-offline__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-m);
}

.kasyno-offline__card {
  background-color: var(--surface-dark-soft);
  border: var(--border-dark);
  border-radius: var(--radius-card);
  padding: var(--space-l);
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
  min-width: 0;
}

.kasyno-offline__card-title {
  color: var(--color-miodowy-bez);
  margin-block-end: 0;
}

.kasyno-offline__card-text {
  margin-block-end: 0;
}

.kasyno-offline__no-online {
  background-color: var(--surface-dark-soft);
  border: var(--border-dark);
  border-radius: var(--radius-card);
  padding: var(--space-l);
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
  min-width: 0;
}

.kasyno-offline__no-online-title {
  color: var(--color-miodowy-bez);
  margin-block-end: 0;
}

.kasyno-offline__no-online-text {
  margin-block-end: 0;
}

/* Lokalizacja */
.lokalizacja {
  background-color: var(--surface-page);
}

.lokalizacja__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
  text-align: center;
}

.lokalizacja__title {
  color: var(--color-przygaszona-cegla);
  margin-block-end: 0;
}

.lokalizacja__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-l);
  text-align: left;
}

.lokalizacja__address,
.lokalizacja__hours {
  min-width: 0;
}

.lokalizacja__subtitle {
  color: var(--color-gleboki-grafit);
  margin-block-end: var(--space-xs);
}

.lokalizacja__text {
  margin-block-end: 0;
}

.lokalizacja__link {
  align-self: center;
}

/* Zaproszenie */
.zaproszenie {
  background-color: var(--color-miodowy-bez);
  color: var(--color-gleboki-grafit);
}

.zaproszenie__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-m);
  text-align: center;
}

.zaproszenie__title {
  color: var(--color-gleboki-grafit);
  margin-block-end: 0;
}

.zaproszenie__text {
  margin-block-end: 0;
  max-width: 560px;
}

.zaproszenie__cta {
  margin-block-start: var(--space-xs);
}

/* Responsywność */
@media (max-width: 1023px) {
  .hero {
    min-height: 560px;
  }

  .hero__content {
    max-width: 520px;
  }

  .skladniki__grid {
    grid-template-columns: 1fr;
    gap: var(--space-l);
  }

  .dania__grid {
    grid-template-columns: 1fr;
    gap: var(--space-m);
  }

  .kasyno-offline__grid {
    grid-template-columns: 1fr;
    gap: var(--space-m);
  }
}

@media (max-width: 767px) {
  .hero {
    min-height: 520px;
  }

  .hero__content {
    max-width: 100%;
    padding: var(--space-2xl) var(--container-margin-mobile);
    gap: var(--space-s);
  }

  .hero__title {
    font-size: clamp(2rem, 8vw, 2.5rem);
    line-height: 1.15;
  }

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

  .przy-stole__inner,
  .wnetrze__inner {
    grid-template-columns: 1fr;
    gap: var(--space-l);
  }

  .przy-stole__image {
    aspect-ratio: 4 / 5;
  }

  .wnetrze__image {
    aspect-ratio: 4 / 5;
  }

  .lokalizacja__grid {
    grid-template-columns: 1fr;
    gap: var(--space-m);
  }

  .zaproszenie__text {
    max-width: 100%;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .przy-stole__inner,
  .wnetrze__inner {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-l);
  }

  .dania__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .kasyno-offline__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .hero__content {
    padding-inline: var(--container-margin-desktop);
  }
}
