/* ===== Menu Delektacji Page Styles ===== */

/* Hero */
.menu-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background-color: var(--bg-base);
}

.menu-hero__background {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.menu-hero__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.9);
}

.menu-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(13, 11, 10, 0.8) 0%, rgba(13, 11, 10, 0.4) 50%, rgba(13, 11, 10, 0.8) 100%);
}

.menu-hero__content {
    position: relative;
    z-index: 1;
    width: 100%;
    display: flex;
    justify-content: center;
    padding-block: var(--space-9);
}

.menu-hero__text {
    max-width: 800px;
    width: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-5);
}

.menu-hero__title {
    color: var(--text-primary);
    margin-block-end: 0;
}

.menu-hero__lead {
    color: var(--text-primary);
    font-size: 1.125rem;
    line-height: 1.7;
    max-width: 65ch;
    margin-block-end: 0;
}

.menu-hero__list {
    list-style: none !important;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    color: var(--text-secondary);
    font-size: 0.875rem;
    letter-spacing: 0.02em;
}

.menu-hero__list li {
    margin-block-end: 0;
}

.menu-hero__cta {
    margin-top: var(--space-3);
}

/* Philosophy */
.menu-philosophy {
    background-color: var(--bg-base);
}

.menu-philosophy__grid {
    display: grid;
    grid-template-columns: 7fr 5fr;
    gap: var(--space-8);
    align-items: start;
}

.menu-philosophy__text {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-7);
}

.menu-philosophy__heading {
    margin-block-end: 0;
}

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

.menu-philosophy__subheading {
    margin-block-end: 0;
    color: var(--accent-brass);
}

.menu-philosophy__block p {
    max-width: 45ch;
    margin-block-end: 0;
}

.menu-philosophy__list {
    list-style: none !important;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    color: var(--text-secondary);
}

.menu-philosophy__list li {
    margin-block-end: 0;
    padding-inline-start: var(--space-5);
    position: relative;
}

.menu-philosophy__list li::before {
    content: "—";
    position: absolute;
    left: 0;
    color: var(--accent-brass);
}

.menu-philosophy__quote {
    background-color: var(--bg-subtle);
    border-left: 3px solid var(--accent-brass);
    padding: var(--space-5);
    margin: 0;
}

.menu-philosophy__quote p {
    max-width: none;
    font-style: italic;
    color: var(--text-primary);
}

.menu-philosophy__media {
    min-width: 0;
}

.menu-philosophy__image {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    filter: brightness(0.9);
    border: 1px solid var(--border-subtle);
}

/* Categories */
.menu-categories {
    background-color: var(--bg-base);
}

.menu-categories__heading {
    text-align: center;
    margin-block-end: var(--space-7);
}

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

.menu-category-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    padding: var(--space-5);
}

.menu-category-card__title {
    margin-block-end: 0;
    color: var(--accent-brass);
}

.menu-category-card__intro {
    max-width: 30ch;
    margin-block-end: 0;
    color: var(--text-secondary);
}

.menu-category-card__list {
    list-style: none !important;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.menu-category-card__list li {
    margin-block-end: 0;
    color: var(--text-primary);
    font-size: 0.9375rem;
}

.menu-category-card__list strong {
    color: var(--text-primary);
    font-weight: 600;
}

/* Tastings */
.menu-tastings {
    background-color: var(--bg-elevated);
}

.menu-tastings__content {
    max-width: 700px;
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
}

.menu-tastings__heading {
    margin-block-end: 0;
}

.menu-tastings__lead {
    max-width: 55ch;
    margin-block-end: 0;
}

.menu-tastings__list {
    list-style: none !important;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
}

.menu-tastings__list li {
    margin-block-end: 0;
    padding: var(--space-4);
    background-color: var(--bg-subtle);
    border-left: 3px solid var(--accent-brass);
}

.menu-tastings__item-title {
    margin-block-end: var(--space-2);
    color: var(--accent-brass);
}

.menu-tastings__list li p {
    margin-block-end: 0;
    color: var(--text-secondary);
}

.menu-tastings__note {
    margin-block-end: 0;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Recommendations */
.menu-recommendations {
    background-color: var(--bg-base);
}

.menu-recommendations__heading {
    text-align: center;
    margin-block-end: var(--space-7);
}

.menu-recommendations__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-5);
}

.menu-recommendation-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 0;
}

.menu-recommendation-card__media {
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
}

.menu-recommendation-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.9);
}

.menu-recommendation-card__body {
    padding: var(--space-5);
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.menu-recommendation-card__title {
    margin-block-end: 0;
    color: var(--accent-brass);
}

.menu-recommendation-card__description {
    max-width: 35ch;
    margin-block-end: 0;
}

.menu-recommendation-card__list {
    list-style: none !important;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.menu-recommendation-card__list li {
    margin-block-end: 0;
}

/* Poker */
.menu-poker {
    background-color: var(--bg-subtle);
}

.menu-poker__content {
    max-width: 700px;
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
}

.menu-poker__heading {
    margin-block-end: 0;
}

.menu-poker__lead {
    max-width: 55ch;
    margin-block-end: 0;
}

.menu-poker__list {
    list-style: none !important;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    color: var(--text-secondary);
}

.menu-poker__list li {
    margin-block-end: 0;
    padding-inline-start: var(--space-5);
    position: relative;
}

.menu-poker__list li::before {
    content: "—";
    position: absolute;
    left: 0;
    color: var(--accent-brass);
}

/* CTA */
.menu-cta {
    background-color: var(--bg-base);
}

.menu-cta__content {
    max-width: 600px;
    margin-inline: auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-5);
}

.menu-cta__heading {
    margin-block-end: 0;
}

.menu-cta__lead {
    max-width: 50ch;
    margin-block-end: 0;
}

.menu-cta__phone {
    margin-block-end: 0;
    color: var(--text-secondary);
}

.menu-cta__phone a {
    color: var(--accent-brass);
}

.menu-cta__button {
    margin-top: var(--space-2);
}

/* Responsive */
@media (max-width: 991px) {
    .menu-philosophy__grid {
        grid-template-columns: 1fr;
        gap: var(--space-6);
    }

    .menu-philosophy__media {
        order: -1;
    }

    .menu-categories__grid {
        grid-template-columns: 1fr;
    }

    .menu-recommendations__grid {
        grid-template-columns: 1fr;
    }
}

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

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

    .menu-hero__text {
        gap: var(--space-4);
    }

    .menu-hero__lead {
        font-size: 1rem;
    }

    .menu-philosophy__grid {
        gap: var(--space-5);
    }

    .menu-philosophy__text {
        gap: var(--space-5);
    }

    .menu-categories__grid,
    .menu-recommendations__grid {
        gap: var(--space-4);
    }

    .menu-tastings__content,
    .menu-poker__content,
    .menu-cta__content {
        gap: var(--space-4);
    }

    .menu-tastings__list li {
        padding: var(--space-3);
    }

    .menu-recommendation-card__body {
        padding: var(--space-4);
    }
}

@media (max-width: 390px) {
    .menu-hero__list {
        font-size: 0.8125rem;
    }

    .menu-category-card__intro,
    .menu-recommendation-card__description {
        max-width: none;
    }
}
