.pageLayout {
    display: flex;
    gap: 2rem;
    max-width: 100%;
    padding: 2rem;
}

@media (max-width: 996px) {
    .pageLayout {
        flex-direction: column;
        padding: 1rem;
    }
}

.sidebar {
    flex: 0 0 350px;
    position: sticky;
    top: 2rem;
    align-self: flex-start;
}

@media (max-width: 996px) {
    .sidebar {
        position: relative;
        flex: 1;
        top: 0;
    }
}

.mainContent {
    flex: 1;
    min-width: 0;
}

.banner {
    width: 100%;
    height: auto;
    border-radius: 0.5rem;
    margin-bottom: 1.5rem;
}

.eventLocation {
    text-align: center;
    font-size: 1.1rem;
    color: var(--ifm-font-color-secondary);
    margin-bottom: 1.5rem;
}

.eventMessage {
    font-size: 1.5rem;
    color: var(--ifm-font-color-base);
    margin: 1rem 0;
    text-align: center;
}

@media (max-width: 996px) {
    .eventMessage {
        font-size: 2rem;
    }
}

.section {
    margin: 0;
}

.sectionTitle {
    margin-bottom: 1.5rem;
    font-size: 1.8rem;
}

.daySection {
    margin-bottom: 2rem;
}

.dayTitle {
    font-size: 1.3rem;
    margin-bottom: 1rem;
    color: var(--ifm-font-color-base);
    border-bottom: 2px solid var(--ifm-color-emphasis-300);
    padding-bottom: 0.5rem;
}

.dayItems {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
