body {
    margin: 0;
    font-family: "Manrope", sans-serif;
    background:
        radial-gradient(circle at 8% 10%, rgba(166, 112, 57, 0.28), transparent 26rem),
        radial-gradient(circle at 94% 0%, rgba(100, 69, 42, 0.2), transparent 24rem),
        linear-gradient(180deg, #16110d 0%, #0d0a08 42%, #060504 100%);
    color: #f6ecde;
}

.hall-page {
    width: min(1380px, calc(100vw - 2rem));
    margin: 0 auto;
    padding: 1rem 0 4rem;
}

.glass {
    border: 1px solid rgba(214, 182, 128, 0.15);
    border-radius: 32px;
    background: rgba(24, 19, 15, 0.8);
    backdrop-filter: blur(20px);
    box-shadow: 0 26px 80px rgba(0, 0, 0, 0.38);
}

.hero {
    padding: 1.25rem;
}

.topbar,
.hero__actions,
.hero__chips {
    display: flex;
    gap: 0.8rem;
    flex-wrap: wrap;
}

.topbar {
    align-items: center;
    justify-content: space-between;
    padding-bottom: 1.4rem;
}

.topbar__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

.topbar__links a,
.button {
    padding: 0.75rem 1rem;
    border: 1px solid rgba(214, 182, 128, 0.15);
    border-radius: 999px;
    background: rgba(255,255,255,0.03);
    color: inherit;
    text-decoration: none;
}

.eyebrow {
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: #bfaf98;
    font-size: 0.72rem;
}

.hero h1,
.hall-accordion h2 {
    margin: 0;
    font-family: "Cormorant Garamond", serif;
    line-height: 0.96;
    letter-spacing: -0.03em;
}

.hero h1 {
    font-size: clamp(3.1rem, 6vw, 5.6rem);
    margin-top: 0.4rem;
}

.hero__subtitle,
.hero__lead,
.hall-accordion__body p {
    margin: 0;
    color: #bfaf98;
    line-height: 1.7;
}

.hero__subtitle {
    margin-top: 0.9rem;
    color: #ead7bf;
}

.hero__lead {
    margin-top: 1rem;
    max-width: 60ch;
}

.hero__chips {
    margin-top: 1rem;
}

.hero__chips span {
    padding: 0.42rem 0.72rem;
    border-radius: 999px;
    border: 1px solid rgba(214, 182, 128, 0.15);
    background: rgba(255,255,255,0.04);
    color: #bfaf98;
    font-size: 0.84rem;
}

.hall-sections {
    display: grid;
    gap: 1rem;
    margin-top: 1.25rem;
}

.hall-accordion {
    padding: 1rem 1.2rem;
}

.hall-accordion summary {
    list-style: none;
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 1rem;
    cursor: pointer;
}

.hall-accordion summary::-webkit-details-marker {
    display: none;
}

.hall-accordion h2 {
    font-size: clamp(1.4rem, 3vw, 2.4rem);
    margin-top: 0.3rem;
}

.hall-accordion__hint {
    color: #d9ad67;
    white-space: nowrap;
}

.hall-accordion__body {
    display: grid;
    gap: 0.7rem;
    margin-top: 1rem;
}

@media (max-width: 720px) {
    .hall-page {
        width: min(100% - 1rem, 100%);
    }

    .topbar {
        align-items: start;
    }

    .hall-accordion summary {
        flex-direction: column;
    }
}
