body {
    margin: 0;
    min-height: 100vh;
    background: transparent !important;
}

.booking-hero {
    position: fixed;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.booking-hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.booking-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
}

#booking-stage,
.footer,
#refModal,
#emailModal,
#infoSheet,
#infoSheetBackdrop {
    position: relative;
    z-index: 2;
}

.step-content-inner {
    position: relative;
    z-index: 2;
    background: transparent !important;
}

main,
#booking-stage,
.step-wrapper,
.step-content-inner {
    background: transparent !important;
}

.booking-hero {
    position: fixed;
    inset: 0;
}

#refModal,
#emailModal {
    position: fixed !important;
    inset: 0;
    z-index: 9999 !important;
}

.modal-overlay {
    position: fixed;
    inset: 0;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}