91³Ô¹ÏÍø

Watch CBS News

Elmo Restaurant, staple in NYC's LGBTQ+ community, closes after 25 years

Elmo Restaurant, which New York City patrons revered as an LGBTQ+ community space that just happened to sell food and drinks, closes Friday after 25 years.

Customers went to the iconic restaurant nestled in the heart of Chelsea for one last meal before it officially shut its doors after a quarter century. 

Hugs, laughs, selfies

There were bittersweet cheers to Elmo's unforgettable 25-year run, complete with hugs, laughs and, of course, selfies, among the last ever to be taken inside its walls 

Kevin Gammariello and his friends knew they had to grab lunch on its last day in business. 

"This place is the center of our lives," Gammariello said.

Elmo is short for El Morocco, an iconic club that closed in the '50s. It's been considered the linchpin of the city's LGBTQ+ community. 

"When so many of us were young adults and figuring out who we were in the city, and this was one of those cool, relaxed places," Steven Gottlieb said.

Why Elmo Restaurant decided to close

Owner Rob Pontarelli announced Elmo's closure less than two weeks ago when he said the building was sold to build residential spaces.

keleshian-5p-pkg-chelse-wcbsh51z-hi-res-still-00-01-3020.jpg
Elmo Restaurant served customers in the heart of Chelsea for 25 years.  CBS News New York

Since then, Pontarelli said he's received thousands of messages from across the world. 

"The second this was announced, you couldn't get a reservation for dinner. It was like instantly sold out," Robert Accordino said. 

Many also remembered LGBTQ-friendly Claire's Restaurant, which operated in the same space decades ago, saying Elmo carried on the legacy. 

"I'll never forget either one of them. They had different flavors," David Larkin said.

Angelo Benevento said his late partner Joseph, who died of AIDS 30 years ago, "would've loved this [place]." He said what the community built over the past few decades made spaces like Elmo soar in popularity. 

"When I see this, it's nice. Without the fight that we did, this would not happen," Benevento said. 

Patrons said Elmo's legacy will forever be woven into the tight-knit fabric of Chelsea's rich LGBTQ+ history.

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=296763317a51cab90faa73f1bb146d5c'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });