.elementor-2223 .elementor-element.elementor-element-af68ccd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-2223 .elementor-element.elementor-element-c9b46e6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:30px;--padding-bottom:0px;--padding-left:32px;--padding-right:30px;}.elementor-2223 .elementor-element.elementor-element-ade10ff{--iteration-count:infinite;--dynamic-text-color:#FFFFFF;}.elementor-2223 .elementor-element.elementor-element-ade10ff .elementor-headline{text-align:left;font-family:"Bargain", Sans-serif;font-size:50px;font-weight:600;}.elementor-2223 .elementor-element.elementor-element-ade10ff .elementor-headline-plain-text{color:#FFFFFF;}.elementor-2223 .elementor-element.elementor-element-ade10ff .elementor-headline-dynamic-text{font-family:"Bargain", Sans-serif;font-weight:900;letter-spacing:0.7px;}.elementor-2223 .elementor-element.elementor-element-5ccff61{margin:-50px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2223 .elementor-element.elementor-element-5ccff61.elementor-element{--align-self:flex-start;}.elementor-2223 .elementor-element.elementor-element-17183ca{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:1px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}.elementor-2223 .elementor-element.elementor-element-2437f5a{--grid-columns:3;--grid-row-gap:1px;--load-more-message-color:#FFFFFF;--load-more-spinner-color:#FFFFFF;--grid-column-gap:1px;}.elementor-2223 .elementor-element.elementor-element-2437f5a .elementor-loop-container{grid-auto-rows:1fr;}.elementor-2223 .elementor-element.elementor-element-2437f5a .e-loop-item > .elementor-section, .elementor-2223 .elementor-element.elementor-element-2437f5a .e-loop-item > .elementor-section > .elementor-container, .elementor-2223 .elementor-element.elementor-element-2437f5a .e-loop-item > .e-con, .elementor-2223 .elementor-element.elementor-element-2437f5a .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-2223 .elementor-element.elementor-element-2437f5a .e-load-more-message{font-family:"Bargain", Sans-serif;}.elementor-2223 .elementor-element.elementor-element-e3b4545{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2223 .elementor-element.elementor-element-338a66b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-2223 .elementor-element.elementor-element-2437f5a{--grid-columns:2;}}@media(max-width:767px){.elementor-2223 .elementor-element.elementor-element-c9b46e6{--padding-top:20px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-2223 .elementor-element.elementor-element-17183ca{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2223 .elementor-element.elementor-element-2437f5a{--grid-columns:1;}}/* Start custom CSS for html, class: .elementor-element-4bdab62 */.video-popup {
    display: none; /* Initially hidden */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8); /* Dark semi-transparent background */
    z-index: 9999; /* Bring it above other elements */
    justify-content: center;
    align-items: center;
}

.video-popup-content {
    position: relative;
    width: 80%;
    max-width: 80%;
}

.video-popup-content video {
    width: 100%;
    height: auto;
}

.video-popup-close {
    position: absolute;
    top: -10px;
    right: -10px;
    color: black;
    background: #00F0E0;
    font-size: 20px;
    border-radius: 10%;
    padding: 10px 20px 10px 20px;
    cursor: pointer;
    z-index: 10000;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-af68ccd */.e-con.e-con > .e-con-inner > .elementor-widget,
.elementor.elementor .e-con > .elementor-widget {
    max-width: 100% !important;
    height: auto !important;
    min-height: unset !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5ccff61 */@font-face {
    font-family: 'MyCustomFont';
    src: url('https://spotlights.webready24.com/wp-content/uploads/2026/02/Grafton.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.filmstext {
    font-family: 'MyCustomFont', sans-serif;
    font-size: 17px;
    line-height: 1.6;
    font-weight: 600;
    color: #ffffff;
    overflow: hidden;
}

.filmstext span {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    border-right: 2px solid #ffffff;
    width: 0;
}

/* First line typing */
.filmstext span:first-child {
    animation: typing1 2.5s steps(40, end) forwards,
               blink 0.7s step-end 4;
}

/* Second line typing (starts after first) */
.filmstext span:last-child {
    animation: typing2 2.5s steps(40, end) forwards,
               blink 0.7s step-end 4;
    animation-delay: 2.6s;
}

/* Typing animations */
@keyframes typing1 {
    from { width: 0 }
    to { width: 100% }
}

@keyframes typing2 {
    from { width: 0 }
    to { width: 100% }
}

/* Cursor blink */
@keyframes blink {
    50% { border-color: transparent }
}

/* Remove cursor after animation completes */
.filmstext span:last-child {
    animation-fill-mode: forwards;
}

.filmstext span:last-child::after {
    content: '';
}

/* Hide cursor after total duration (~5.2s) */
.filmstext span:last-child {
    animation:
        typing2 2.5s steps(40, end) forwards 2.6s,
        blink 0.7s step-end 4 2.6s,
        hideCursor 0.1s forwards 5.2s;
}

@keyframes hideCursor {
    to { border-right: none; }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-2437f5a *//* =====================================================
   DIGITAL PAGE GRID
   Desktop = 4 cards
   Tablet  = 3 cards
   Mobile  = 2 cards
===================================================== */

/* GRID */
.elementor-loop-container,
.elementor-loop-container.elementor-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
    grid-auto-flow: dense !important;
    align-items: start !important;
}

/* EACH LOOP ITEM */
.elementor-loop-container > .e-loop-item {
    grid-column: span 1 !important;
    grid-row: auto !important;
    width: 100% !important;
    min-width: 0 !important;
}

/* CARD WRAPPER */
.acf-overlay-container {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 8px;
    background: #000;
    cursor: pointer;
}

/* LANDSCAPE 16:9 */
.acf-overlay-container.media-ratio-landscape {
    aspect-ratio: 16 / 9;
}

/* PORTRAIT 9:16 */
.acf-overlay-container.media-ratio-portrait {
    aspect-ratio: 12 / 10;
}

/* MEDIA */
.acf-overlay-container img,
.acf-overlay-container video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s ease, filter .5s ease;
}

.acf-overlay-container:hover img,
.acf-overlay-container:hover video {
    transform: scale(1.04);
    filter: grayscale(100%);
}

/* TEXT */
.acf-overlay-text {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-transform: uppercase;
    color: #fff;
}

.acf-overlay-text .acf-brand {
    font-family: 'Chaney', sans-serif;
    font-weight: 700;
    font-size: 11px;
    letter-spacing: .8px;
    line-height: 1.2;
    color: #fff;
}

.acf-overlay-text .acf-title {
    font-family: 'Babes-neue', sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
    color: #fff;
}

.acf-overlay-container:hover .acf-overlay-text {
    opacity: 0;
    transition: opacity .35s ease;
}

/* HIDE UNCATEGORIZED */
.e-filter-item[data-filter="uncategorized"] {
    display: none !important;
}

/* TABLET */
@media (max-width: 1024px) {
    .elementor-loop-container,
    .elementor-loop-container.elementor-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .acf-overlay-text .acf-title {
        font-size: 16px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .elementor-loop-container,
    .elementor-loop-container.elementor-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .elementor-loop-container > .e-loop-item {
        grid-column: span 1 !important;
        grid-row: auto !important;
    }

    .acf-overlay-text {
        left: 10px;
        bottom: 10px;
    }

    .acf-overlay-text .acf-brand {
        font-size: 10px;
    }

    .acf-overlay-text .acf-title {
        font-size: 14px;
    }
}/* End custom CSS */