:root {
    --tw-bg-opacity: 1;
    --tw-text-opacity: 1;
}

html {
    scroll-behavior: smooth; /* Enables smooth scrolling */
}
.header-video-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
}
#header-video-player, .header-hero-image-backgound {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.edetails_share {
    display: inline;
}

.laurel-slider-container {
    position: relative;
    width: 100%;
    overflow: hidden;
    height: 250px; /* Adjust height as needed */
}

.laurel-slider-container.zero, .laurel-slider-container.md-zero, .laurel-slider-container.lg-zero{
    position: relative;
    width: 100%;
    overflow: hidden;
    height: 250px; /* Adjust height as needed */
    display: flex;
    justify-content: center;
}
.laurel-slider {
    display: flex;
    position: absolute;
    width: 200%; /* Double the width to create the infinite loop effect */
}
.laurel-slider.normal {
    animation: scroll 60s linear infinite; /* Adjust duration for speed */
}
.laurel-slider.slow {
    animation: scroll 100s linear infinite; /* Adjust duration for speed */
}
.laurel-slider.d-zero {
    
}
.laurel-slide {
    width: 450px; /* Half of the container width */
    height: 100%;
    display: flex;
    justify-content: center;
}

.tod-table-container {
    border-radius: 5px;
    background: #414141;
}
.tod-table-head {
    background: #605F5F;
    border-radius: 5px 5px 0px 0px;
}
.tod-filter-select {
    background: #393939;
}
#tod_film_table_wrapper thead tr th {
    border: none !important;
}
#tod_film_table_wrapper tbody tr td {
    border: none !important;
    border-bottom: solid 1px rgba(255, 255, 255, 0.19) !important;
    background: #414141;
}

.text-zinc-300 {
    color: rgb(212 212 216 / var(--tw-text-opacity, 1)) !important;
}
.text-zinc-400 {
    color: rgb(161 161 170 / var(--tw-text-opacity, 1)) !important;
}
.text-zinc-500 {
    color: rgb(113 113 122 / var(--tw-text-opacity, 1)) !important;
}
.text-zinc-700 {
    color: rgb(63 63 70 / var(--tw-text-opacity, 1)) !important;
}
.bg-zinc-700 {
    background-color: rgb(63 63 70 / var(--tw-bg-opacity, 1)) !important;
}
.bg-zinc-800 {
    background-color: rgb(39 39 42 / var(--tw-bg-opacity, 1)) !important;
}
.bg-zinc-700\/50 {
    background-color: rgb(63 63 70 / 0.5) !important;
}
.btn-zinc {
    color: rgb(212 212 216 / var(--tw-text-opacity, 1)) !important;
    background-color: rgb(39 39 42 / var(--tw-bg-opacity, 1)) !important;
}
.btn-zinc:hover {
    color: #FFF !important;
    background-color: rgb(63 63 70 / var(--tw-bg-opacity, 1)) !important;
}

.btn-zinc.active {
    color: #FFF !important;
    background-color: rgb(110 110 239 / var(--tw-bg-opacity, 1)) !important;
}
.btn-zinc.active:hover {
    color: #FFF !important;
    background-color: rgb(110 110 239 / var(--tw-bg-opacity, 1)) !important;
    transform: scale(1.05);
    transition: transform 0.2s ease;
}
.text-primary-hover:hover {
    color: rgb(110 110 239 / var(--tw-text-opacity, 1));
}
.showtime-item {
    border: solid 1px rgb(63 63 70 / 0.5);
    flex-direction: row;
}
.showtime-item:hover {
    /* Hover state animation removed per design */
}
.btn-search-location {
    
}
.max-h-\[calc\(90vh-220px\)\] {
    max-height: calc(90vh - 220px) !important;
}
.max-h-\[calc\(90vh-170px\)\] {
    max-height: calc(90vh - 170px) !important;
}
.showtime-time-bullet {
    
}
.time-bullet-hour {
    font-variant-numeric: tabular-nums;
    line-height: 1;
    font-weight: 700;
}
.time-bullet-period {
    line-height: 1; 
}

.tod-search-dropdown-class {
    border: solid 1px rgb(63 63 70 / 0.5) !important;
    background-color: #393939 !important;
    color: rgb(212 212 216 / var(--tw-text-opacity, 1)) !important;
}

.tod-search-dropdown-class .select2-search__field {
    background-color: #393939 !important;
    color: rgb(212 212 216 / var(--tw-text-opacity, 1)) !important;
}

.tod-search-dropdown-class .select2-search__field::placeholder {
    color: rgb(212 212 216 / var(--tw-text-opacity, 1)) !important;
    font-style: italic;
}

.tod-search-dropdown-class .select2-search__field::placeholder::before {
    content: "🔍";  /* Map/Search icon */
    margin-right: 8px;
    font-style: normal;
}

.tod-search-dropdown-class .select2-search__field::placeholder::after {
    content: "Search location...";
}

.tod-search-dropdown-class .dropdown-option {
    background-color: #393939 !important;
    color: rgb(212 212 216 / var(--tw-text-opacity, 1)) !important;
}

.tod-search-dropdown-class .dropdown-option:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #FFFFFF !important;
}

.tod-search-dropdown-class .select2-results__option--highlighted,
.tod-search-dropdown-class .select2-results__option--selected {
    background-color: #393939 !important;
    color: rgb(212 212 216 / var(--tw-text-opacity, 1)) !important;
}

.tod-search-dropdown-class .select2-results__option--highlighted:hover,
.tod-search-dropdown-class .select2-results__option--selected:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #FFFFFF !important;
}

@keyframes filmGrain {
    0%, 100% { background-position: 0 0; }
    10% { background-position: -5% -10%; }
    20% { background-position: -15% 5%; }
    30% { background-position: 7% -25%; }
    40% { background-position: 20% 25%; }
    50% { background-position: -25% 10%; }
    60% { background-position: 15% 5%; }
    70% { background-position: 0% 15%; }
    80% { background-position: 25% 35%; }
    90% { background-position: -10% 10%; }
}

.film-grain-overlay::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    opacity: 0.08;
    animation: filmGrain 0.5s steps(1) infinite;
    pointer-events: none;
}

@keyframes filmStrip {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
  
.film-strip {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    background-image: repeating-linear-gradient(90deg, transparent, transparent 20px, rgba(110, 110, 239, 0.15) 20px, rgba(110, 110, 239, 0.15) 40px);
    animation: filmStrip 20s linear infinite;
}
.film-strip::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: repeating-linear-gradient(0deg, transparent, transparent 6px, rgba(0, 0, 0, 0.8) 6px, rgba(0, 0, 0, 0.8) 12px);
}

.ticket_reserve_btn {
    display: inline-block;
    background: #6E6EEF;
    color: #fff;
    font-weight: 600;
    padding: 10px 16px;
    border-radius: 4px;
    clip-path: polygon(0% 15%, 5% 15%, 5% 0%, 95% 0%, 95% 15%, 100% 15%, 100% 85%, 95% 85%, 95% 100%, 5% 100%, 5% 85%, 0% 85%);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}
.ticket_reserve_btn::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(to bottom right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0) 100%);
    transform: rotate(45deg);
    transition: all 0.3s ease;
}
.ticket_reserve_btn:hover {
    background: #5D5DD8;
    transform: translateY(-2px) scale(1.05);
    box-shadow: 0 0 15px rgba(110, 110, 239, 0.4);
    color: #fff;
}

.film-cast-crew-section {
    padding-top: 20px;
    border-top: solid 1px rgb(39 39 42 / var(--tw-border-opacity, 1));
}

#filmShowtimesTabs {
    overflow-x: hidden;
    border: solid 1px rgb(39 39 42 / var(--tw-border-opacity, 1));
    border-left: none;
    border-right: none;
    border-bottom: none;
}

.modalShowtimeTabs {
    height: 300px;
    overflow-y: auto;
}

.no_nearby_tabs .showtime-nav-item, .no_nearby_tabs .showtime-tab-pane {
    display: none;
}
@keyframes scroll {
    from {
        transform: translateX(0%);
    }
    to {
        transform: translateX(-50%);
    }
}

#film_testimonials {
    background: radial-gradient(22.47% 49.62% at 46.6% 45.25%, #5B5959 0%, #282828 50.11%, #080808 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */;

}

.film-review-text {
    font-family: Montserrat;
    font-weight: 700;
    font-style: italic;
    line-height: 100%;
    text-align: center;
    letter-spacing: 1%;
    color: #E3DEDE;
}
.film-review-text::before {
    content: '"';
    font-size: 4rem;
    
    position: absolute;
    left: -30px;
    top: -20px;
    color: #E3DEDE;
    font-family: 'PT Serif Caption', serif;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 1%;

}

.film-review-text::after {
    content: '"';
    font-size: 4rem;
    position: absolute;
    right: -30px;
    bottom: -30px;
    color: #E3DEDE;
    font-family: 'PT Serif Caption', serif;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 1%;
}
/* Container for slider navigation */
.film-review-slider-nav {
    z-index: 10;
    padding: 0 20px;
}


/* Container for arrow buttons */
.film-review-slider-arrows {
    display: flex;
    align-items: center;
}
.film-review-slider-arrows-button {
    transform: none !important;
    background: #1D1D1D;
    border-radius: 50%;
    border: solid 1px #494949;
}
.film-review-slider-arrows-button:hover {
    background: #414141;
}

/* Container for tiny-slider navigation dots */
.film-review-tns-nav-container {
    display: flex;
    gap: 8px;
    background: #1D1D1D;
    padding: 10px 15px;
}


.film-review-tns-nav-item {
    width: 10px;
    height: 10px;
    padding: 0;
    margin: 0;
    border-radius: 50%;
    background: #494949;
    border: none;
    transition: all 0.3s ease;
}
.film-review-tns-nav-item.tns-nav-active {
    background: #6E6EEF;
}

@media screen and (min-width: 1440px) {
    #header-video-player, .header-hero-image-backgound {
        width: 1440px;
        height: 810px;
    }
}


@media screen and (min-width: 1440px) {
    #header-video-player, .header-hero-image-backgound {
        width: 1920px;
        height: 1080px;
    }
}
@media screen and (min-width: 1920px) {
    #header-video-player, .header-hero-image-backgound{
        width: 2560px;
        height: 1440px;
    }
}

@media screen and (min-width: 2560px) {
    #header-video-player ,.header-hero-image-backgound{
        width: 2560px;
        height: 1440px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

/* Media Queries */
@media (max-width: 1200px) {
    #header-video-player, .header-hero-image-backgound {
        width: 1280px;
        height: 720px;
    }
}

@media (max-width: 992px) {
    #header-video-player, .header-hero-image-backgound {
        width: 1200px;
    }
}

@media (max-width: 768px) {
    #header-video-player, .header-hero-image-backgound {
        width: 1280px;
        height: 720px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    /* Remove sticky positioning and anchor to bottom of page for mobile */
    .sticky-bottom.powered_by_gathr {
        position: static !important;
        bottom: auto !important;
        margin-top: 20px;
        margin-bottom: 20px;
        padding: 10px 15px;
        text-align: right;
    }
    .sticky-bottom.powered_by_gathr .btn {
        float: none !important;
        display: inline-block;
    }
    /* .section_film_event_right {
        background: rgb(39,39,39);
    } */
    .td-theater-address {
        color: white;
    }
    .td-event-item span {
        color: white;
    }
    .td-event-item a {
        color: white;
    }
    #tod_film_mobile_table tr td {
        padding: 27px 10px;
        border-bottom: unset;
    }
    .tod_page_text {
        color: white;
    }
    .pagination_a {
        padding: 10px;
        border-radius: 50%;
        background: #4D4B4B;
        color: white;
        height: 30px;
        width: 30px;
        margin: 10px;
    }
    .tod-filter-select {
        width: 100%;
    }
}

@media (max-width: 480px) {
    #header-video-player, .header-hero-image-backgound {
        width: 1280px;
        height: 720px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .showtime-item {
        flex-direction: column;
    }
    .max-h-\[calc\(90vh-220px\)\] {
        max-height: calc(90vh - 250px) !important;
    }

    .modalShowtimeTabs {
        height: 250px;
    }
    
}

@media (max-width: 768px) {
    .laurel-slider.normal {
        animation: scroll 60s linear infinite; /* Faster for smaller screens */
    }
    .laurel-slider.slow {
        animation: scroll 100s linear infinite; /* Adjust duration for speed */
    }
    .laurel-slider.fast {
        animation: scroll 30s linear infinite; /* Faster for smaller screens */
    }
    .laurel-slider.md-zero,.laurel-slider.lg-zero{
        animation: scroll 60s linear infinite; /* Adjust duration for speed */
    }
}
@media (min-width: 769px) and (max-width: 1024px) {
    .laurel-slider.normal {
        animation: scroll 60s linear infinite; /* Medium speed for tablets */
    }
    .laurel-slider.slow {
        animation: scroll 100s linear infinite; /* Adjust duration for speed */
    }
    .laurel-slider.fast {
        animation: scroll 30s linear infinite; /* Faster for smaller screens */
    }
    .laurel-slider.lg-zero{
        animation: scroll 60s linear infinite; /* Adjust duration for speed */
    }
}
@media (min-width: 1025px) {
    .laurel-slider.normal {
        animation: scroll 60s linear infinite; /* Slower for larger screens */
    }
    .laurel-slider.slow {
        animation: scroll 100s linear infinite; /* Adjust duration for speed */
    }
    .laurel-slider.fast {
        animation: scroll 30s linear infinite; /* Faster for smaller screens */
    }
}

