.hero {
    position: relative
}

.dining-grid,
.poker-grid,
.events-grid,
.bar-grid,
.about-grid {
    align-items: flex-start;
    display: grid
}

.bar-grid {
    gap: var(--space-8)
}

.dining-image-card,
.poker-image-card,
.events-image-card {
    position: relative
}

.dining-image-wrapper,
.poker-image-wrapper,
.events-image-wrapper {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(201, 164, 92, 0.5);
    background: radial-gradient(circle at 0 0, rgba(22, 101, 52, 0.4), rgba(15, 23, 42, 1));
    box-shadow: var(--shadow-md)
}

.dining-image,
.poker-image,
.events-image,
.about-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.dining-image-wrapper {
    min-height: 260px
}

.poker-image-wrapper {
    min-height: 260px
}

.events-image-wrapper {
    min-height: 260px
}

.dining-overlay-card,
.events-overlay-card {
    position: absolute;
    right: var(--space-4);
    bottom: var(--space-4);
    left: var(--space-4);
    border-radius: var(--radius-lg);
    padding: var(--space-4);
    background: radial-gradient(circle at 0 0, rgba(7, 23, 18, 0.85), rgba(15, 23, 42, 0.96));
    border: 1px solid rgba(201, 164, 92, 0.7);
    box-shadow: var(--shadow-md)
}

.poker-pill-strip {
    position: absolute;
    left: var(--space-4);
    top: var(--space-4);
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.9rem;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.85);
    border: 1px solid rgba(34, 197, 94, 0.7);
    font-size: var(--font-size-xs);
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--gray-100)
}

.menu-preview {
    margin-top: var(--space-4);
    display: flex;
    flex-direction: column;
    gap: var(--space-3)
}

.menu-preview-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-3);
    font-size: var(--font-size-sm)
}

.menu-preview-main h4 {
    font-family: var(--font-serif);
    font-size: var(--font-size-md);
    margin-bottom: 0.15rem
}

.menu-preview-main span {
    font-size: var(--font-size-xs);
    color: var(--color-text-muted)
}

.menu-preview-price {
    white-space: nowrap;
    color: var(--color-accent-gold);
    font-size: var(--font-size-sm)
}

.menu-preview-note {
    font-size: var(--font-size-xs);
    color: var(--color-text-muted)
}

.poker-packages,
.events-packages {
    margin-top: var(--space-4);
    display: flex;
    flex-direction: column;
    gap: var(--space-3)
}

.poker-package-row,
.events-package-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-3);
    font-size: var(--font-size-sm)
}

.poker-package-main h4,
.events-package-main h4 {
    font-family: var(--font-serif);
    font-size: var(--font-size-md);
    margin-bottom: 0.15rem
}

.poker-package-main span,
.events-package-main span {
    font-size: var(--font-size-xs);
    color: var(--color-text-muted)
}

.poker-package-price,
.events-package-price {
    white-space: nowrap;
    color: var(--color-accent-gold);
    font-size: var(--font-size-sm)
}

.bar-grid .card-body p:last-child {
    margin-bottom: 0
}

.gallery-grid {
    margin-top: var(--space-4)
}

.faq-list {
    padding: var(--space-5)
}

.faq-item+.faq-item {
    margin-top: var(--space-3)
}

.faq-item summary {
    cursor: pointer;
    list-style: none;
    font-size: var(--font-size-sm);
    font-weight: 500;
    color: var(--gray-50);
    position: relative;
    padding-right: 1.5rem
}

.faq-item summary::-webkit-details-marker {
    display: none
}

.faq-item[open] summary {
    color: var(--color-accent-gold)
}

.faq-item summary::after {
    content: "+";
    position: absolute;
    right: 0;
    top: 0;
    font-size: var(--font-size-sm);
    color: var(--gray-400)
}

.faq-item[open] summary::after {
    content: "–"
}

.faq-item p {
    margin-top: var(--space-2);
    font-size: var(--font-size-sm);
    color: var(--gray-200)
}

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

.about-body p:last-child {
    margin-bottom: 0
}

.about-image-wrapper {
    border-radius: var(--radius-lg);
    overflow: hidden;
    border: 1px solid rgba(55, 65, 81, 0.9);
    background: radial-gradient(circle at 0 0, rgba(22, 101, 52, 0.3), rgba(15, 23, 42, 1));
    box-shadow: var(--shadow-md)
}

.reservation-panel form .grid-auto-fit {
    gap: var(--space-4)
}

@media (max-width:1024px) {

    .dining-image-wrapper,
    .poker-image-wrapper,
    .events-image-wrapper {
        min-height: 220px
    }
}

@media (max-width:768px) {

    .dining-overlay-card,
    .events-overlay-card {
        position: static;
        margin: var(--space-4);
        margin-top: -3.5rem
    }

    .poker-pill-strip {
        top: var(--space-3);
        left: var(--space-3)
    }

    .faq-list {
        padding: var(--space-4)
    }
}

@media (max-width:480px) {

    .menu-preview-item,
    .poker-package-row,
    .events-package-row {
        flex-direction: column;
        align-items: flex-start
    }

    .menu-preview-price,
    .poker-package-price,
    .events-package-price {
        align-self: flex-start
    }
}

ul {
    list-style: none !important
}

.nav-toggle {
    flex-direction: column
}