div.section.header {
    div.wrapper {
        display: flex;
        align-items: center;

        div.left {
            text-align: center;
            flex: 1;

            h1 {
                font-size: 4rem;
            }
    
            p.subtitle {
                font-size: 2rem;
            }
        }
    
        img {
            max-width: 200px;
            width: 100%;
            filter: drop-shadow(var(--big-shadow));
        }

        @media (max-width: 830px) {
            img {
                display: none;
            }
        }
    }
}

div.section.sen {
    padding-top: 36px;
    margin-bottom: -50px;

    div.card {
        max-width: 500px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
}

div.section.selling-point {
    padding-top: 36px;
    div.card.hallie {
        max-width: 750px;
        width: 100%;
        position: relative;

        margin-top: 18px;
        margin-left: auto;
        margin-right: auto;

        img.monster.wide {
            position: absolute;
            transform: scaleX(-1);
            left: -92px;
            width: 100px;

            @media (max-width: 1000px) {
                display: none;
            }
        }

        img.monster.thin {
            position: absolute;
            width: 150px;
            right: 20px;
            top: -158px;

            @media (min-width: 1000px) {
                display: none;
            }
        }

        p:not(:first-of-type) {
            margin-top: 18px;
        }
    }
}

div.section.ticket-options {
    h2 {
        font-size: 3.8rem;
        text-align: center;
    }

    div.all-tickets {
        display: flex;
        gap: 36px;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: 18px;

        div.left {
            flex: 1;
        }

        div.right {
            max-width: 400px;
            width: 100%;

            img {
                height: 160px;
                margin-top: 40px;
            }

            div.sibling-info {
                margin-bottom: 36px;

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

        @media (max-width: 768px) {
            div.left {
                flex: unset;
                width: 100%;
            }

            div.right {
                max-width: unset;
                width: 100%;
            }

            div.tickets {
                justify-content: center !important;
            }
        }

        img {
            height: 200px;
            margin-left: auto;
            margin-right: auto;
            filter: drop-shadow(var(--big-shadow));
        }

        > div > h3 {
            font-size: 2.8rem;
            text-align: center;

            &:not(:first-of-type) {
                margin-top: 18px;
            }
        }

        > div > .tickets {
            justify-content: flex-start;

            div.hire-option {
                display: flex;
                flex-direction: column;
                position: relative;

                padding-right: 90px;

                p {
                    flex: 1;
                }

                img.monster {
                    transform: scaleX(-1);
                    position: absolute;
                    top: -10px;
                    right: -23px;
                    width: 100px;
                    height: auto;
                }
    
                &.mobile {
                    display: none;
                }

                @media (max-width: 768px) {
                    &.desktop {
                        display: none;
                    }

                    &.mobile {
                        display: flex;

                        img.monster {
                            top: -50px;
                        }
                    }
                }
            }
        }
    }

    div.childminder-pass {
        width: 90%;
        margin-left: auto;
        margin-right: auto;

        p.subtitle {
            font-size: 1.6rem;
            margin-top: 18px;
            text-align: center;
        }

        div.options {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            margin-top: 18px;
            gap: 36px;

            a {
                width: 100%;
                max-width: 300px;
                text-align: center;
                font-family: 'Bubblegum Sans';
                font-size: 1.2rem;
                border: solid 2px var(--colour-eve);
                cursor: pointer;
                padding: 18px;
                color: white;
                text-decoration: none;

                &:hover {
                    background-color: var(--colour-eve);
                }
            }
        }

        div.enter-email {
            margin-top: 18px;

            form {
                max-width: 400px;
                margin-left: auto;
                margin-right: auto;
                margin-top: 18px;
                display: flex;
                flex-wrap: wrap;
                gap: 18px;

                input {
                    flex: 1;
                }
            }
        }

        div.childminder-tickets {
            margin-top: 18px;

            div.tickets {
                margin-top: 18px;
            }

            form {
                max-width: 600px;
                margin: 0 auto;
                margin-top: 18px;

                div.row {
                    display: flex;
                    gap: 18px;
                    align-items: center;

                    label {
                        font-weight: bold;
                    }

                    &:not(:first-child) {
                        margin-top: 18px;
                    }
                }
                   
                p {
                    margin-top: 9px;
                    font-size: 0.9rem;
                }

                > button {
                    margin-top: 18px;
                    margin-left: auto;
                    margin-right: 0;
                }
            }
        }
    }
}

div.section.invite-only {
    div.wrapper {
        text-align: center;

        form {
            max-width: 500px;
            margin-left: auto;
            margin-right: auto;
            margin-top: 36px;

            input {
                margin-top: 18px;
            }

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

div.section.list-header {
    div.wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        
        h1 {
            font-size: 3rem;
        }

        img {
            width: 300px;
        }
    }
}

div.section.list {
    div.wrapper {
        display: flex;
        gap: 22px;
        flex-wrap: wrap;

        div.card.event {
            width: 600px;

            display: flex;
            flex-direction: column;

            h2 {
                font-size: 1.6rem;
            }

            p.date {
                font-size: 1.2rem;
                font-weight: bold;
            }

            a {
                margin-left: auto;
                margin-right: 0;
            }
        }
    }
}