Gossip & News

Meet Kelsi Kitchener and Celeste Durve: The Dynamic Duo Behind


master mentalism tricks

[]

Boss babes! What do Drake vs. Kanye West and SoFi Stadium all have in common? Event expertise at the hands of VIPER founders Kelsi Kitchener and Celeste Durve.

When it comes to large-scale events, every aspect of operation and production must be executed perfectly to ensure maximum success for A-list celebrities and brands. Needless to say, no other company runs VIP Event Relations quite like the dynamic duo that coined that very term, Kitchener and Durve.

“Don’t let anyone try to tell you who you are or try to box you in,” the duo exclusively told Us Weekly, reflecting on their humble beginnings when they launched VIPER with only $500 each. “Most people never understood what VIPER was or how it would make money.”

Meet VIPER Founders Kelsi Kitchener and Celeste Durve, the Duo Breaking All the Rules of the Hospitality IndustryDanielle Hans

The women founded VIPER in 2014 and have been taking over the hospitality industry ever since. After working in the VIP guest relations industry and running doors, Kitchener and Durve came to realize which areas needed improvement.

The duo completely flipped the industry on its head after noticing that nightlife, specifically, lacked female representation and modern structure. They also learned that the nightlife space was existing in ways that didn’t align with digital developments.

Kitchener and Durve made it their mission to spark a change and ignited a fire that still burns bright today in the industry. While their entrepreneurial journey wasn’t ever easy, it was always worth it.

“Most people said we would fail within six months,” the women told Us. “But we stayed in our lane and stayed true to ourselves.”

Since its inception, the company has won huge accounts and spearheaded innovative and forward-thinking guest experiences for the likes of Nylon, Nars, Google, Amazon, Hulu, Fendi and celebrities, including Kim Kardashian and Tyga.

{ let bidders = [‘a9’, ‘ix’, ‘iris’]; // create a requestManager to keep track of bidder state to determine when to send ad server // request and what amazonSlots to request from the ad server var requestManager = { adserverRequestSent: false, }; //loop through bidder array and add the bidders to the request manager: bidders.forEach( function( bidder ) { requestManager[bidder] = false; } ); // return true if all bidders have returned function allBiddersBack() { var allBiddersBack = bidders // get the booleans from the object .map( function( bidder ) { return requestManager[bidder]; } ) // get rid of false values – indicates that the bidder has responded .filter( Boolean ) // if length is equal to bidders, all bidders are back .length === bidders.length; return allBiddersBack; } // handler for header bidder responses function headerBidderBack( bidder ) { // return early if request to adserver is already sent if ( requestManager.adserverRequestSent === true ) { return; } // flip bidder back flag if ( bidder === ‘a9’ ) { requestManager.a9 = true; console.log(‘second promise a9 ready’); } else if ( bidder === ‘ix’ ) { requestManager.ix = true; console.log(‘second promise ix ready’); } else if ( bidder === ‘iris’ ) { requestManager.iris = true; console.log(‘second promise iris ready’); } // if all bidders are back, send the request to the ad server if ( allBiddersBack() ) { resolve( url ); } } if ( typeof apstag == ‘object’ && apstag ) { apstag.fetchBids({ slots: [{ slotID: window.prerollTag[vHash], mediaType: ‘video’ }] }, function( bids ) { console.log( “AMI jwp amazon bid callback”, new Date().getTime(), bids ); window.jwpBids[vHash].amazon = true; if ( bids.length > 0 ) { //If we have received any bids back try { console.log(“AMI jwp amazon bid request ad”, bids[0].encodedQsParams); url = url + ‘&scp=’ + bids[0].encodedQsParams; } catch ( e ) { console.log(e); } } else { console.log(“AMI jwp amazon no bids”); } headerBidderBack(‘a9’); }); } else { headerBidderBack(‘a9’); } headertag.cmd.push( function() { headertag.retrieveVideoDemand( [{‘htSlotName’: ‘preroll’}], function( demand ) { console.log( “AMI jwp IX callback”, demand ); if ( ‘undefined’ !== typeof demand.preroll && demand.preroll.length ){ window.jwpBids[vHash].ixBids = demand.preroll[0].targeting.price; console.log( ‘AMI jwp IX Bids’, new Date().getTime(), demand.preroll[0].targeting ); var vastURL = new URL( url ); var vastParams = new URLSearchParams( vastURL.search ); if ( vastParams.has( ‘cust_params’ ) ) { var custParams = new URLSearchParams( vastParams.get( ‘cust_params’ ) ); } else { var custParams = new URLSearchParams(); } var keys = Object.keys( demand.preroll[0].targeting.price ); for ( var key of keys ) { custParams.set( key, demand.preroll[0].targeting.price[key][0]); } vastParams.set( ‘cust_params’, custParams.toString() ); vastURL.search = vastParams.toString(); url = vastURL.toString(); } headerBidderBack(‘ix’); } ); } ); // Get main item context data window.irisContext.getContext(jwplayer(el).getPlaylistItem().mediaid).then(function(data) { // Encode the context data console.log( ‘AMI jwp IrisTV Bids’, new Date().getTime(), data.context ); // Replace the server url with the context data (this is for simple ad requests), // If you have the serverUrl dynamically configured, then you will need to append the context data // under cust_params, so this is just for testing purpose if ( data.context && Object.keys( data.context ).length ) { var vastURL = new URL( url ); var vastParams = new URLSearchParams( vastURL.search ); if ( vastParams.has( ‘cust_params’ ) ) { var custParams = new URLSearchParams( vastParams.get( ‘cust_params’ ) ); } else { var custParams = new URLSearchParams(); } custParams.set( ‘iris_context’, data.context.join(‘,’)); vastParams.set( ‘cust_params’, decodeURIComponent( custParams.toString() ) ); vastURL.search = vastParams.toString(); url = vastURL.toString(); } headerBidderBack(‘iris’); }); setTimeout(function(){ resolve( url ); }, 10000); }); } var player_jwplayer_DIvLVkC6_zhNYySv2_div = jwplayer(el).setup(videoParams).on(“ready”, function(){ var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var playerInstance = jwplayer(el); ns_.StreamingAnalytics.JWPlayer( playerInstance, { publisherId: “6036076”, labelmapping: “ns_st_pu=”AMI”, c3=”Us Weekly”, ns_st_ge=”” + decodeURIComponent( “%2Anull” ) + “”, ns_st_ia=”” + decodeURIComponent( “%2Anull” ) + “”, ns_st_ce=”” + decodeURIComponent( “1” ) + “”, ns_st_ddt=”” + decodeURIComponent( “%2Anull” ) + “”, ns_st_tdt=”” + decodeURIComponent( “%2Anull” ) + “””, }); }).on(‘adsManager’, (e) => { var vHash = ‘ami’ + decodeURIComponent( ‘DIvLVkC6’ ); const { adsManager, videoElement } = e; const iasConfig = { anId: ‘928572’, campId: `${jwplayer().getWidth()}x${jwplayer().getHeight()}`, // This is dynamic based on player dimensions, but can be hard coded chanId: window.prerollTag[vHash], placementId: ‘Open Auction’, pubOrder: ‘Video’, pubId: ‘Direct’ }; if (googleImaVansAdapter) { googleImaVansAdapter.init(window.google, adsManager, videoElement, iasConfig); } }).on( ‘time’, function( e ) { var id = this.id; var pct = Math.round( e.position ); if ( ! window.amiPlayersData ) { window.amiPlayersData = {}; } if ( ! window.amiPlayersData[id] ) { window.amiPlayersData[id] = { m3: false, m10: false }; } if ( window.amiPlayersData[id][‘m3’] === false && pct >= 3 ) { window.amiPlayersData[id][‘m3’] = true; console.log( ‘3sec played: ‘, id ); window.dataLayer = window.dataLayer || []; dataLayer.push( {event: ‘JWPlayEvent’, jwTime: ‘3s played’} ); } if ( window.amiPlayersData[id][‘m10’] === false && pct >= 10 ) { window.amiPlayersData[id][‘m10’] = true; console.log( ’10sec played: ‘, id ); window.dataLayer = window.dataLayer || []; dataLayer.push( {event: ‘JWPlayEvent’, jwTime: ’10s played’} ); } }).on( ‘complete’, function( e ) { if ( window.amiPlayersData && window.amiPlayersData[ this.id ] ) { window.amiPlayersData[ this.id ][‘m3’] = false; window.amiPlayersData[ this.id ][‘m10’] = false; console.log( ‘clear played: ‘, this.id ); } }).once(“play”, function(){ var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var playerInstance = jwplayer(el); loadIrisPlugin(playerInstance, playerInstance.getConfig().plugins[“https://ovp.iris.tv/plugins/jwplayer/v2/iris-jwplayer8.adaptive.min.js”]) }).on(‘play’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); // skip if the video was paused and trying to resume if (jwplayer(el).getState() !== ‘idle’ && jwplayer(el).getState() !== ‘complete’) { return; } window.permutive.track(“VideoPlay”, { play_id: el, //this will stay constant for all of the events emitted during the same video play video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language:”English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video play”); }).on(‘complete’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); // skip if the video was paused and trying to resume if (jwplayer(el).getState() !== ‘idle’ && jwplayer(el).getState() !== ‘complete’) { return; } window.permutive.track(“VideoComplete”, { play_id: el, //this will stay constant for all of the events emitted during the same video play video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video event:”, e); window.lock_25 = false; window.lock_50 = false; window.lock_75 = false; window.lock_100 = false; }).on(‘time’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); var progress = (e.currentTime/e.duration).toFixed(2); if ( (0.25 === progress && false === window.lock_25) || (0.5 === progress && false === window.lock_50) || (0.75 === progress && false === window.lock_75) || (100 === progress && false === window.lock_100) ) { window.permutive.track(“VideoProgress”, { play_id: el, //this will stay constant for all of the events emitted during the same video play progress: Number(progress), video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); if ( 0.25 === progress ) { window.lock_25 = true; } if ( 0.5 === progress ) { window.lock_50 = true; } if ( 0.75 === progress ) { window.lock_75 = true; } if ( 1 === progress ) { window.lock_100 = true; } console.log(“Permutive video play progress ” + progress); } }).on(‘mute’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); window.permutive.track(“VideoEvent”, { play_id: el, //this will stay constant for all of the events emitted during the same video play event: (e.mute) ? “sound off” : “sound on”, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() } }); console.log(“Permutive video event:”, e); }).on(‘fullscreen’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); window.permutive.track(“VideoEvent”, { play_id: el, //this will stay constant for all of the events emitted during the same video play event: (e.fullscreen) ? “fullscreen on” : “fullscreen off”, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() } }); console.log(“Permutive video event:”, e); }).on(‘ready’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); console.log(jwInfo); window.lock_25 = false; window.lock_50 = false; window.lock_75 = false; window.lock_100 = false; window.permutive.track(“VideoLoad”, { play_id: el, //this will stay constant for all of the events emitted during the same video play video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video load event”); }).on(‘adPlay’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); window.adInfo = e; var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); window.adlock_25 = false; window.adlock_50 = false; window.adlock_75 = false; window.adlock_100 = false; window.permutive.track(“VideoAdPlay”, { play_id: el, //this will stay constant for all of the events emitted during the same video play ad: { duration: Math.round(window.adInfo.duration), creative_name: window.adInfo.adtitle, ad_id: window.adInfo.adId, title: window.adInfo.adtitle, video_type: “instream” //outstream }, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video ad play”); }).on(‘adClick’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); window.permutive.track(“VideoAdClick”, { play_id: el, //this will stay constant for all of the events emitted during the same video play ad: { duration: Math.round(window.adInfo.duration), creative_name: window.adInfo.adtitle, ad_id: window.adInfo.adId, title: window.adInfo.adtitle, video_type: “instream” //outstream }, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video ad click”); }).on(‘adTime’, (e) => { var el = decodeURIComponent( “jwplayer_DIvLVkC6_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “DIvLVkC6” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); var progress = (e.position/e.duration).toFixed(2); if ( (0.25 >= progress && false === window.adlock_25) || (0.5 >= progress && false === window.adlock_50) || (0.75 >= progress && false === window.adlock_75) || (0.95 >= progress && false === window.adlock_100) ) { window.permutive.track(“VideoAdProgress”, { play_id: el, //this will stay constant for all of the events emitted during the same video play progress: Number(progress), ad: { duration: Math.round(window.adInfo.duration), creative_name: window.adInfo.adtitle, ad_id: window.adInfo.adId, title: window.adInfo.adtitle, video_type: “instream” //outstream }, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “DIvLVkC6” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); if ( 0.25 >= progress ) { window.adlock_25 = true; } if ( 0.5 >= progress ) { window.adlock_50 = true; } if ( 0.75 >= progress ) { window.adlock_75 = true; } if ( 0.95 >= progress ) { window.adlock_100 = true; } console.log(“Permutive video ad progress ” + progress); } }).setPlaylistItemCallback(function(item, index) { return waitForAmazon // Wait until Amazon is loaded. .then(() => performAsyncBidding( player_jwplayer_DIvLVkC6_zhNYySv2_div, item, index ), () => { console.log(“AMI JWP bidding FAILER”); }) // External bidding. .then(tag => { // Update the playlist item. console.log(“AMI jwp new headerbid”, tag); return Object.assign({}, item, { adschedule: [{ tag, offset: “pre” }] }); }).catch(function(e){ console.log(“AMI jwp bidding failed”, e); return item; }); // If bidding fails, use unmodified playlist item. });; clearInterval(checkJWReady); } }, 500); })(); ]]>

The VIPER founders quickly became the go-to girls for teams looking to plan events that would go off without a hitch for their most treasured guests. “If you have an idea you believe in, pursue [it],” the ladies explained. “Nightlife is a tough industry. If you can make it there, you can make it anywhere.”

Today, VIPER stands tall as a Forbes 30 Under 30 honored company, employing more than 65 women — a.k.a. The VIPER Girls — who steadfastly believe in the vision of the women who started it all.

Kitchener and Durve continue to forge a path for ambitious women, changing the game in the luxury events and nightlife scene. The VIPER brand has continued to expand in 2022, with new activations, the start of season 2 of the “Smart Is Sexy” podcast, and a series of service expansions and offerings, including VIPER Girls.

“We’re so excited to launch our media and casting division, VIPER Girls, which allows our clients to hire our talent for digital and content needs,” the pair told Us, noting they previously cast people for events and video productions, including Kardashian’s remake of Elle Woods’ law school application. “We’re also expanding the Smart Is Sexy brand onto YouTube, debuting guests and launching merch.”

The entrepreneurs revealed they are motivated by Mindy Kaling and Amina Muaddi, who have shaped and revolutionized both the entertainment and fashion landscapes. As the women continue to grow, it’s become clear that their brand is well on its way to achieving similar success.

Listen to Hollywood’s top stars dish their best tips and tricks on Glam Squad Confidential Listen on Google Play Music

Read The Full Article Here


trick photography
Lauren Sanchez Walked the Met Gala Alone. The Real Story Isnt the Snub.
Lauren Sanchez Walked the Met Gala Alone. The Real Story Isnt the Snub.
John Stamos Marks Star Wars Day With a Flashback and a Hashtag Confession
John Stamos Marks Star Wars Day With a Flashback and a Hashtag Confession
Summer Houses KJ Dillard Reads West Wilsons Post-Reunion Apology Text to Him Live on Air
Summer Houses KJ Dillard Reads West Wilsons Post-Reunion Apology Text to Him Live on Air
Tony Nominations 2026: See the Full List of Nominees
Tony Nominations 2026: See the Full List of Nominees
Our Land review – superb doc on the right to roam
Our Land review – superb doc on the right to roam
Legendary Horor Movie Getting 4K Restoration with New Footage
Legendary Horor Movie Getting 4K Restoration with New Footage
The joy and struggle of the movie makeover
The joy and struggle of the movie makeover
The Bear Drops Surprise Prequel Episode
The Bear Drops Surprise Prequel Episode
Guy Fieri Diners, Drive-Ins and Dives Couple Found Dead in Texas
Guy Fieri Diners, Drive-Ins and Dives Couple Found Dead in Texas
Forget Hot Girl Summer: The Other Bennet Sister Spring Is Here (And It Rules) – TVLine
Forget Hot Girl Summer: The Other Bennet Sister Spring Is Here (And It Rules) – TVLine
American Idols Braden Rumfelt Teases Future Plans After Elimination
American Idols Braden Rumfelt Teases Future Plans After Elimination
NCIS: Origins Bosses Break Down That Gibbs/Lala Moment Weve All Been Waiting For — Plus, [Spoiler] Gets Kidnapped?! – TVLine
NCIS: Origins Bosses Break Down That Gibbs/Lala Moment Weve All Been Waiting For — Plus, [Spoiler] Gets Kidnapped?! – TVLine
Chart Rewind: In 2016, Confession Was Good for Florida Georgia Lines Country Soul
Chart Rewind: In 2016, Confession Was Good for Florida Georgia Lines Country Soul
The Best Cover Song by 11 Big Hair Metal Bands – Motley Crue, Ratt + More
The Best Cover Song by 11 Big Hair Metal Bands – Motley Crue, Ratt + More
Underoath Announce Summer 2026 US Van Tour of Independent Venues
Underoath Announce Summer 2026 US Van Tour of Independent Venues
Meet the Man Turning Your Favorite Musicians Old
Meet the Man Turning Your Favorite Musicians Old
New Business and Finance Books to Read | May 5 – NewInBooks
New Business and Finance Books to Read | May 5 – NewInBooks
New Young Adult Books to Read | May 5 – NewInBooks
New Young Adult Books to Read | May 5 – NewInBooks
New Biography and Memoir Books to Read | May 5 – NewInBooks
New Biography and Memoir Books to Read | May 5 – NewInBooks
The Winners of the 2026 Pulitzer Prizes
The Winners of the 2026 Pulitzer Prizes
Stars Used the Met Gala 2026 Red Carpet to Celebrate Black Art
Stars Used the Met Gala 2026 Red Carpet to Celebrate Black Art
Kendall Jenner's  Dog Accessory Was the Highlight of Her Coachella Outfit
Kendall Jenner's $58 Dog Accessory Was the Highlight of Her Coachella Outfit
We Channeled the '90s in Guess For Coachella Weekend – Starting at
We Channeled the '90s in Guess For Coachella Weekend – Starting at $29
I Spent an Afternoon With an Aritzia Stylist—My Spring Wardrobe Has Never Looked Better
I Spent an Afternoon With an Aritzia Stylist—My Spring Wardrobe Has Never Looked Better
Why Simpler Rules Create Better User Experiences | HNN
Why Simpler Rules Create Better User Experiences | HNN
Movie Review: Souls Chapel | HNN
Movie Review: Souls Chapel | HNN
DANCES WITH BLOOD 2026 KICKOFF ANNOUNCEMENT SPONSORED BY JOYHORROR ENTERTAINMENT | HNN
DANCES WITH BLOOD 2026 KICKOFF ANNOUNCEMENT SPONSORED BY JOYHORROR ENTERTAINMENT | HNN
CINEMA EPOCH UNLEASHES SASQUATCH WITHIN, A PSYCHOLOGICAL HORROR THRILLER — NOW STREAMING ON YOUTUBE, COMING SOON TO TUBI AND FAWESOME | HNN
CINEMA EPOCH UNLEASHES SASQUATCH WITHIN, A PSYCHOLOGICAL HORROR THRILLER — NOW STREAMING ON YOUTUBE, COMING SOON TO TUBI AND FAWESOME | HNN