body .ldp_tickets_container {
    .spinner {
        justify-content: space-evenly;
    }

    p#ldp_noscript {
        text-align: center;
        font-size: 2em;
    }

    > h2 {
        text-align: center;
        margin-bottom: 0;
    }

    > h3, 
    > div > h3 {
        text-align: center;
        color: black;
        font-size: 1.4em;
        margin-bottom: 5px;
        margin-top: 40px;

        > span {
            font-size: .8em;
            font-weight: normal;

            &.subheader {
                display: block;
                font-size: .6em;
                margin-top: -5px;
                color: #555;
            }
        }
    }
    
    .ldp_tickets_options {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch;
        justify-content: center;
        column-gap: 10px;
        row-gap: 10px;
        /* border: 1px solid #e4e4e4; */
        border-radius: 4px;
        max-width: 1600px;
        padding: 10px;
        margin: 0 auto;

        @media (max-width: 450px) { 
            flex-direction: column;
            gap: 20px; 
        }

        > h3 {
            flex: 0 0 100%;
            text-align: center;
            color: black;
            font-size: 1.4em;
            margin-bottom: 0;
            display: block;

            > span {
                font-size: .8em;
                font-weight: normal;
            }
        }

        .ldp_map_container {
            display: block;
            width: 100%;
            max-width: 1024px;
            margin: 0 auto 40px;
            background-color: #f2f2f2;

            @media (max-width: 930px) { 
                width: 100vw !important;
                position: relative!important;
                left: 50%!important;
                right: 50%!important;
                margin-left: -50vw !important;
            }
    
            #ldp-map {
                height: 600px;
            }
        }

        > div {
            display: flex;
            flex-direction: column;
            border: 1px solid #e4e4e4;
            border-radius: 4px;
            /* padding: 16px; */

            &.ldp_tickets_option_group {
                padding: 11px;
            }

            > h4 {
                color: black;
                font-size: 1em;
                text-align: center;
            }

            > button {
                margin-bottom: 5px;
                padding: 13px 20px 14px;
                line-height: 1em;
                min-height: 2em !important;
                display: inline-block;
                border: 1px solid #f8fbfd;

                &:has(span) {
                    padding-bottom: 10px;
                }

                &:not(.selected) {
                    background-color: #f4f6f9;
                    color: #2e4278;
                }
    
                &:not(.selected):hover {
                    background-color: #e4edfb;
                    /* color: #fff; */
                    border: 1px solid #d2d4d7;
                }
    
                &.selected:hover {
                    background-color: #2e4278;
                }

                &.utility {
                    background-color: #f4f4f4;
                    border: 1px solid #e2e2e2;
                    color: #555;
                    font-size: .7em;
                    padding: 10px 20px 11px;

                    &:hover {
                        background-color: #eee;
                        color: #555;
                    }
                }

                &:not(.utility) + .utility {
                    margin-top: 26px;
                }

                > span {
                    display: block;
                    font-size: 0.8em;
                    text-transform: none;
                    font-weight: normal;
                }

                > small {
                    font-weight: normal;
                }
            }
        }
    }
}

.tribe-tickets__tickets-wrapper {
    /* padding: 40px 0 40px 0; */
    
    form.tribe-tickets__tickets-form {
        max-width: 640px;
        margin: 0 auto;

        /*.tribe-tickets__tickets-footer {
            .tribe-tickets__tickets-buy {
                
            }
        }*/

        #tribe-block-tickets-item-1649 {
            display: none !important;
        }
    }
}

.tribe-common-c-btn {
    font-weight: 700 !important;
    text-transform: uppercase !important;
    line-height: 1.65em !important;
    border-radius: 150px 150px 150px 150px !important;
    padding: 19px 30px 19px 30px !important;
    color: #fff !important;
    background-color: #24417c !important;

    &:hover {
        background-color: #3a5da5 !important;
    }
}

#wc-square-digital-wallet {
    padding-top: 1em !important;
    padding-bottom: 1em !important;

    > div:not(:first-child) {
        padding-top: 1em !important;
        padding-bottom: 1em !important;
    }
}

.ldp-map-label-container {
    .ldp-map-label {
        background: #333333f2;
        color: #fafafa;
        padding: 2px 6px 3px;
        border: 1px solid #333;
        border-radius: 4px;
        box-shadow: 0 2px 6px rgba(0,0,0,0.3);
        font-weight: 500;
        font-size: 1.3em;
        transform: translate(-50%, 7px);
        white-space: nowrap;

        span.label-content {
            display: block !important;
            font-size: 11px;
        }
    }

    ::after {
        content: '';
        display: block;
        position: absolute;
        bottom: 100%;
        left: 50%;
        margin-left: -7px;
        border: 7px solid transparent;
        border-color: transparent transparent #333 transparent;
    }
}

@media (max-width: 527px) {
    .ldp-map-label-container.offset-left {
        .ldp-map-label {
            transform: translate(-90%, 7px);
        }

        ::after {
            margin-left: 30%;
        }
    }
}









.ldp_tickets_container.no_js {
    display: none !important;
}

.ldp_tickets_container.no_js + #ldp_noscript {
    display: block !important;
    text-align: center;
    font-size: 18px;
}

.ldp_tickets_container:not(.no_js) + #ldp_noscript {
    display: none !important;
}







@media (max-width: 400px) { 
    body.theme-blocksy.woocommerce-cart.woocommerce-page .cart_totals,
    body.theme-blocksy.woocommerce-checkout.woocommerce-page .elementor-shortcode > .woocommerce {
        width: 100vw !important;
        position: relative!important;
        left: 50%!important;
        right: 50%!important;
        margin-left: -50vw !important;

        .woocommerce-checkout .ct-customer-details {
            padding: 10px;
        }
    }
}

