/* /Components/Layout/Footer.razor.rz.scp.css */
 main[b-pks2hho9q9] {
        display: flex;
        flex-direction: column;
        min-height: 100vh;
        background-color: #D73521;
    }
    .content[b-pks2hho9q9] {
        flex: 1;
    }
    .text-purple[b-pks2hho9q9] { color: #4b2d83; }

footer[b-pks2hho9q9] {
    background-color: #D73521;
    color: white;
}

/* Container to align icons horizontally */
.footer-social-row[b-pks2hho9q9] {
    display: flex;
    gap: 15px; /* Consistent spacing between icons */
    align-items: center;
}

/* Base style for the images */
.footer-social-img[b-pks2hho9q9] {
    width: 28px;  /* Professional, non-distracting size */
    height: 28px;
    object-fit: contain;
    transition: all 0.3s ease; /* Smooth transition for hover */
    opacity: 0.8; /* Slightly dimmed to match 'text-white-50' look */
}

/* Hover effect: makes the icon pop and go full white */
.footer-social-img:hover[b-pks2hho9q9] {
    transform: translateY(-3px); /* Subtle 'lift' effect */
    opacity: 1;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

/* Mobile adjustment: center icons on small screens */
@media (max-width: 768px) {
    .footer-social-row[b-pks2hho9q9] {
        justify-content: center;
        margin-top: 10px;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-kp3dhb8es3] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-kp3dhb8es3] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-kp3dhb8es3] {
    min-height: 2.5rem;
    background-color: #D73521;
}

.navbar-brand[b-kp3dhb8es3] {
    font-size: 1.1rem;
}

.bi[b-kp3dhb8es3] {
    display: inline-block;
    width: 1rem; /* Fixed width for the icon area */
    margin-right: 0.75rem;
    flex-shrink: 0;
    text-align: center;
}

.bi-house-door-fill-nav-menu[b-kp3dhb8es3] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-kp3dhb8es3] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-kp3dhb8es3] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-kp3dhb8es3] {
    font-size: 1rem;
    padding: 0.25rem 0.5rem;
    align-items: center;
    font-family: 'Roboto', sans-serif;
    display: flex;
}

/* --- Desktop Styles (Wide screens) --- */
@media (min-width: 768px) {
    .nav-item[b-kp3dhb8es3]  .nav-link {
        color: #fcfafa;
        background: none;
        border: none;
        display: flex;
        align-items: center;
        padding: 0.5rem 0.5rem !important; /* Tightens the gap between items */
        width: auto !important; /* Prevents the 'stretched' look */
        height: auto;
    }
    
    .navbar-nav[b-kp3dhb8es3] {
        gap: 5px; /* Adjust this to bring items closer or further apart */
    }
}

/* --- Mobile Styles (Small screens) --- */
@media (max-width: 767px) {
    .nav-item[b-kp3dhb8es3]  .nav-link {
        color: #fcfafa;
        display: flex !important;
        align-items: center !important;
        padding-left: 1.5rem !important; /* Keeps your mobile alignment */
        width: 100% !important;
        height: 1.5rem;
    }

    /* This fixes the "What's On" being slightly to the left */
    .bi[b-kp3dhb8es3] {
        margin-right: 12px !important; 
        width: 1.5rem;
        text-align: center;
    }
}

.nav-item[b-kp3dhb8es3]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-kp3dhb8es3]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-kp3dhb8es3] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-kp3dhb8es3] {
    display: block;
}

/* 1. Hide the success container by default to prevent "flicker" */
[data-success-container][b-kp3dhb8es3] {
    display: none;
}

/* 2. Style the badge specifically when it's inside the success container */
[data-success-container] .badge[b-kp3dhb8es3] {
    /* Vertical alignment fix for Bootstrap nav links */
    vertical-align: middle;
    margin-bottom: 2px;
    
    /* Animation for a smoother appearance when an item is added */
    animation: fadeIn-b-kp3dhb8es3 0.3s ease-in;
}

/* 3. A little safety net: if the count is '0', hide the badge just in case */
[data-basket-item-count="0"][b-kp3dhb8es3] {
    display: none !important;
}

/* 4. Simple fade-in animation */
@keyframes fadeIn-b-kp3dhb8es3 {
    from { opacity: 0; transform: scale(0.8); }
    to { opacity: 1; transform: scale(1); }
}

@media (min-width: 641px) {
    .navbar-toggler[b-kp3dhb8es3] {
        display: none;
    }

    .nav-scrollable[b-kp3dhb8es3] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}

spektrix-basket-summary[b-kp3dhb8es3] {
    display: inline-flex;
    align-items: center;
    font-family: 'Roboto', sans-serif;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-tcfi3pep32],
.components-reconnect-repeated-attempt-visible[b-tcfi3pep32],
.components-reconnect-failed-visible[b-tcfi3pep32],
.components-pause-visible[b-tcfi3pep32],
.components-resume-failed-visible[b-tcfi3pep32],
.components-rejoining-animation[b-tcfi3pep32] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-tcfi3pep32],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-tcfi3pep32],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-tcfi3pep32],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-tcfi3pep32],
#components-reconnect-modal.components-reconnect-retrying[b-tcfi3pep32],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-tcfi3pep32],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-tcfi3pep32],
#components-reconnect-modal.components-reconnect-failed[b-tcfi3pep32],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-tcfi3pep32] {
    display: block;
}


#components-reconnect-modal[b-tcfi3pep32] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-tcfi3pep32 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-tcfi3pep32 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-tcfi3pep32 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-tcfi3pep32]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-tcfi3pep32 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-tcfi3pep32 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-tcfi3pep32 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-tcfi3pep32 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-tcfi3pep32] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-tcfi3pep32] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-tcfi3pep32] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-tcfi3pep32] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-tcfi3pep32] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-tcfi3pep32] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-tcfi3pep32] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-tcfi3pep32 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-tcfi3pep32] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-tcfi3pep32 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Layout/TicketTerms.razor.rz.scp.css */
    .pdf-wrapper[b-8y6y44vlf2] {
        position: relative;
        width: 100%;
        height: 80vh; /* Uses 80% of the viewport height */
        border: 1px solid #ddd;
        border-radius: 8px;
        overflow: hidden;
        box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    }

    .pdf-wrapper iframe[b-8y6y44vlf2] {
        width: 100%;
        height: 100%;
    }

    .policy-footer[b-8y6y44vlf2] {
        margin-top: 1rem;
        text-align: center;
        font-size: 0.9rem;
        color: #666;
    }

    /* Mobile optimization: Ensure it doesn't get too cramped on small screens */
    @media (max-width: 768px) {
        .pdf-wrapper[b-8y6y44vlf2] {
            height: 60vh;
        }
    }
/* /Components/Pages/IndividualEvent.razor.rz.scp.css */
/* 1. Target the container and all its children */
.event-full-description[b-fyuiqijzc7], 
.event-full-description[b-fyuiqijzc7]  * {
    /* Forces the font you defined in your main layout */
    font-family: inherit !important; 
    
    /* Normalizes line height for readability */
    line-height: 1.6 !important;
    
    /* Removes any weird background colors from copy-pasting */
    background-color: transparent !important;
}

/* 2. Fix the specific colors */
.event-full-description[b-fyuiqijzc7]  p,
.event-full-description[b-fyuiqijzc7]  span,
.event-full-description[b-fyuiqijzc7]  div {
    color: #4a4a4a !important; /* A nice soft charcoal instead of pure black */
    font-size: 1.1rem !important; /* Equivalent to your fs-5 */
}

/* 3. Ensure bold text actually looks bold */
.event-full-description[b-fyuiqijzc7]  strong, 
.event-full-description[b-fyuiqijzc7]  b {
    font-weight: 700 !important;
    color: #1a1a1a !important;
}

.event-full-description[b-fyuiqijzc7]  h1, .event-full-description[b-fyuiqijzc7]  h2, .event-full-description[b-fyuiqijzc7]  h3 {
    font-family: 'Roboto', sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
}
/* /Components/Pages/InstanceDetail.razor.rz.scp.css */
/* 1. Target the container and all its children */
.event-full-description[b-5ycsk6awcu], 
.event-full-description[b-5ycsk6awcu]  * {
    /* Forces the font you defined in your main layout */
    font-family: inherit !important; 
    
    /* Normalizes line height for readability */
    line-height: 1.6 !important;
    
    /* Removes any weird background colors from copy-pasting */
    background-color: transparent !important;
}

/* 2. Fix the specific colors */
.event-full-description[b-5ycsk6awcu]  p,
.event-full-description[b-5ycsk6awcu]  span,
.event-full-description[b-5ycsk6awcu]  div {
    color: #4a4a4a !important; /* A nice soft charcoal instead of pure black */
    font-size: 1.1rem !important; /* Equivalent to your fs-5 */
}

/* 3. Ensure bold text actually looks bold */
.event-full-description[b-5ycsk6awcu]  strong, 
.event-full-description[b-5ycsk6awcu]  b {
    font-weight: 700 !important;
    color: #1a1a1a !important;
}

.event-full-description[b-5ycsk6awcu]  h1, .event-full-description[b-5ycsk6awcu]  h2, .event-full-description[b-5ycsk6awcu]  h3 {
    font-family: 'Roboto', sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
}
/* /Components/Pages/Signup-confirmation.razor.rz.scp.css */
.social-links[b-3u0l3iihel] {
    display: flex;
    gap: 20px;            /* Increased gap slightly for better visual balance */
    align-items: center;
    justify-content: center; /* This centers the group horizontally */
    width: 100%;          /* Ensures the container spans the full width to allow centering */
    margin: 20px 0;       /* Adds some breathing room above/below the icons */
}
 
.signup-social-img[b-3u0l3iihel] {
    width: 36px;          /* Increased from 28px for better visibility */
    height: 36px;
    object-fit: contain;
    transition: transform 0.2s ease, opacity 0.2s ease;
    opacity: 0.9;         /* Slightly less transparent for a punchier look */
}

/* Add a subtle hover effect to make it feel interactive */
.signup-social-img:hover[b-3u0l3iihel] {
    opacity: 1;
    transform: scale(1.1); /* Slight pop on hover */
}
/* /Components/Pages/Signup.razor.rz.scp.css */
.signup-container[b-3wl3ca7a7d] {
    max-width: 400px;
    margin: 2rem auto;
    padding: 1.5rem;
    border: 1px solid #ddd;
    border-radius: 8px;
}
.form-group[b-3wl3ca7a7d] { margin-bottom: 1rem; }
.form-control[b-3wl3ca7a7d] { width: 100%; padding: 0.5rem; }
/* /Components/Pages/Support.razor.rz.scp.css */
/* Ensure images don't "blow out" the container */
.wp-rendered-html[b-5xrolysjk0]  img {
    max-width: 100%;
    height: auto;
    border-radius: 8px; /* Matches the BIT aesthetic */
    margin: 1rem 0;
}

/* Add spacing to paragraphs pulled from WP */
.wp-rendered-html[b-5xrolysjk0]  p {
    line-height: 1.6;
    margin-bottom: 1.5rem;
    font-size: 1.1rem;
}

/* Style WP buttons if any exist in the content */
.wp-rendered-html[b-5xrolysjk0]  .wp-block-button__link {
    background-color: #e31837; /* Example BIT Red */
    color: white;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 4px;
    display: inline-block;
}

/* Ensure videos/iframes are responsive */
.wp-rendered-html[b-5xrolysjk0]  iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    border: none;
}

.wp-content-area[b-5xrolysjk0]  video {
    display: block;
    width: 100%;        /* Allows it to be responsive */
    max-width: 750px;   /* This is the "narrower" constraint */
    height: auto;
    margin: 2rem auto;  /* Centers the video horizontally */
    border-radius: 12px;
}
