div.page-header {
    text-align: center;
    margin-top: 100px;
    margin-bottom: 150px;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.5);
    color: white;
    padding: 18px;

    h1 {
        font-size: 6rem;
    }

    p.subtitle {
        font-size: 3rem;
    }

    @media (max-width: 1024px) {
        h1 {
            font-size: 4rem;
        }

        p.subtitle {
            font-size: 2rem;
        }
    }
}


div.section.journey {
    p.title {
        font-size: 3rem;
        text-align: center;
        font-family: 'Lazy Dog';
    }

    p.description {
        text-align: center;
    }

    &:has(.away-message) {
        p.title, p.description, #bookingJourney, #partyBuilder {
            display: none;
        }
    }
}



#bookingJourney {
    margin-top: 18px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    border: solid 1px var(--colourPrimary);
    border-radius: 18px;
    padding: 18px;
    box-shadow: var(--defaultShadow);

    @media (max-width: 500px) {
        max-width: 90%;
    }

    svg.spinner {
        margin-left: auto;
        margin-right: auto;
        margin-top: 18px;
        margin-bottom: 18px;

        &.hidden {
            display: none;
        }
    }

    form {
        display: none;
        position: relative;

        &.active {
            display: block;
        }

        p.headline {
            font-weight: bold;
            font-size: 1.8rem;
            text-align: center;
        }

        p.description {
            text-align: center;
        }

        p.help {
            text-align: center;
            margin-top: 18px;
            font-size: 1rem;
            max-width: 80%;
            margin-left: auto;
            margin-right: auto;
        }

        div.input {
            max-width: 90%;
            margin-top: 18px;
            margin-left: auto;
            margin-right: auto;
        }

        button {
            margin-top: 18px;
            display: block;
            margin-left: auto;
            margin-right: auto;
        }

        button[data-back-button],button.next {
            display: flex !important;
            gap: 12px;
            
            img {
                height: 40px;
                margin-bottom: -6px;
            }

            &[data-back-button] {
                position: absolute;
                margin-top: 0;
                top: 0;
                left: 0;
                
                img {
                    height: 30px;
                }
            }

            &.next {
                margin-right: 0;
            }
        }
    }

    button[data-reset-button] {
        margin-left: auto;
        margin-right: auto;
    }

    div.success, div.error {
        text-align: center;
        display: none;

        &.active {
            display: block;
        }

        p.title {
            font-weight: bold;
        }

        p.description {
            margin-top: 18px;
            margin-bottom: 18px;
        }
    }
}