<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="en" />

<meta property="og:image" content="https://w2.chabad.org/media/images/1096/fkhr10965016.jpg" itemprop="image" width="1900" height="750" />
<meta property="og:image:width" content="1900" />
<meta property="og:image:height" content="750" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<meta name="keywords" content="Special,Events" />
<meta name="title" content="Special Events - Smile on Seniors" />
<meta property="og:type" content="website" />
<meta name="scope-aids" content="4896261-4896269-4896272-4896277" />
<meta name="article-keywords" content="6760-7592-2170-2898" />
<meta name="scope-aid" content="4896261" />
<meta name="scope-aid" content="4896269" />
<meta name="scope-aid" content="4896272" />
<meta name="scope-aid" content="4896277" />
<meta name="article-keyword" content="6760" />
<meta name="article-keyword" content="7592" />
<meta name="article-keyword" content="2170" />
<meta name="article-keyword" content="2898" />
<meta property="og:url" content="https://www.sosaz.org/templates/articlecco_cdo/aid/4896277/jewish/Special-Events.htm" />
<meta property="twitter:card" content="summary_large_image" />
<meta property="twitter:site" content="@chabad" />
<meta property="og:title" content="Special Events - Smile on Seniors" /><link rel="canonical" href="https://www.sosaz.org/templates/articlecco_cdo/aid/4896277/jewish/Special-Events.htm" />
<link rel="image_src" href="https://w2.chabad.org/media/images/940/iPws9401715.jpg" />
<link rel="icon" type="image/png" href="https://www.sosaz.org/media/images/1180/KaRK11805265.png" />
<link rel="Stylesheet" href="/css/fonts/font-awesome/font-awesome-5.css?v=2D6ABDDB" id="kfont-awesome" type="text/css"/>
<link rel="Stylesheet" href="/css/DefaultGrid.css?v=A13D74E8" id="kgrid" type="text/css"/>
<link rel="Stylesheet" href="/css/Elements.css?v=3A4C63F4" id="k6" type="text/css"/>
<link rel="Stylesheet" href="/css/vendor/ds/tokens/sites.css?v=72A49647" id="ksites-ds-css" type="text/css"/>
<link rel="Stylesheet" href="/css/new/main.css?v=BB63DD50" id="k7" type="text/css"/>
<link rel="Stylesheet" href="/css/global.css?v=27BD2E9E" id="k3" type="text/css"/>
<link rel="Stylesheet" href="/css/global-print.css?v=6DE80B07" id="k5" type="text/css" media="print"/>
<link rel="Stylesheet" href="/css/cco/home/widget-styles.css?v=A8AC7A58" id="k6" type="text/css"/>
<link rel="Stylesheet" href="/css/sites6/default-theme.css?v=546A0139" id="k" type="text/css"/>
<link rel="Stylesheet" href="/css/old/global.css?v=43DDBA77" id="k2898" type="text/css"/>
<link rel="Stylesheet" href="/css/bootstrap/grid.css?v=F4390F2B" id="kbootstrap4-grid" type="text/css"/>
<link rel="Stylesheet" href="/css/Library/reader-comments.css?v=8AB57D79" id="kCommentsStylesheet" type="text/css"/>
<link rel="Stylesheet" href="/css/inline/BookInfo.css?v=3D052243" id="kBookInfoCss" type="text/css"/>
<!--[if lte IE 8]> <link rel="Stylesheet" href="/css/global-ie.css?v=807ACD6C" id="k4" type="text/css"/> <![endif]-->
<script>$q=[];$j=function(f){$q.push(f);}</script>
	
<title>
	Special Events - Smile on Seniors
</title>
	



<script>
	window.dataLayer = window.dataLayer || [];
	dataLayer.push({"event":"datalayer-initialized","page":{"numberOfComments":0,"publicationDate":"2020-09-29","primaryArticleId":4896277,"title":"","author":"","authorId":0,"contentLevel1":"My Site","contentLevel2":"Programs and Events","contentLevel3":"Special Events","siteName":"Smile on Seniors"},"time":{"upcomingHoliday":"Chanukah","daysToUpcomingHoliday":61,"hebrewDate":"5787-07-24"}});
		dataLayer.push({ 'articleHierarchy': '-4896261-4896269-4896272-4896277-', 'keywords': '-k2898-k2170-k7592-k6760-', 'k': '-4896261-4896269-4896272-4896277--k2898-k2170-k7592-k6760-' });
	
</script>
<script>

(function(c,h,a,b,a,d){c[a]=c[a]||[];c[a].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=h.getElementsByTagName(b)[0],
j=h.createElement(b);j.async=true;
j.src='https://w6.chabad.org/mitzvah-tank.js';f.parentNode.insertBefore(j,f);
})(window,document,0,'script','dataLayer');</script>

	<!-- Start of StatCounter Code -->
	<script type="text/javascript">
	var sc_project = 12418401;var sc_partition = 94;var sc_invisible = 1;var sc_remove_link=1;var sc_security = "4287ec07";var sc_https = 1;
	</script>
	<script type="text/javascript" src="https://secure.statcounter.com/counter/counter_xhtml.js" defer async></script>
	<noscript><img src="//c95.statcounter.com/counter.php?sc_project=12418401&amp;java=0&amp;security=4287ec07&amp;invisible=1" border="0" /> </noscript>
	<!-- End of StatCounter Code -->









<link rel="icon" type="image/png" href="https://smileonseniorsaz.com/media/images/1161/WGkF11610181.png" />

<style>
a.donation-link {
    background: #317cb8;
    color: #fff;
    padding: 13px;
    width: 320px;
    margin: auto;
    border-radius: 12px;
    font-size: 14px;
    margin-top: 20px;
    text-decoration: none !important;
}
a.donation-link:hover {
    background: #27608d;
}
</style>


<!-- ==========================================
     SMILE ON SENIORS EMAIL SIGNUP POPUP
     Desktop + Mobile
=========================================== -->


<style>

/* DARK BACKGROUND */

#sosSignupPopup {
  display: none;
  position: fixed;
  z-index: 2147483647;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.65);

  align-items: center;
  justify-content: center;

  padding: 10px;
  box-sizing: border-box;
}


/* POPUP WINDOW */

#sosSignupPopup .sos-popup-inner {
  position: relative;

  width: 94%;
  max-width: 650px;

  height: 88vh;
  height: 88dvh;

  max-height: 800px;

  background: white;

  border-radius: 10px;

  overflow: hidden;

  box-sizing: border-box;
}


/* MAILCHIMP FORM */

#sosSignupPopup iframe {
  display: block;

  width: 100%;
  height: 100%;

  border: 0;

  background: white;
}


/* CLOSE BUTTON */

#sosSignupClose {
  position: absolute;

  z-index: 1000;

  right: 8px;
  top: 8px;

  width: 44px;
  height: 44px;

  padding: 0;

  border: 0;

  border-radius: 50%;

  background: white;

  color: #333;

  font-size: 32px;
  line-height: 40px;

  text-align: center;

  cursor: pointer;

  -webkit-appearance: none;
}


/* MOBILE */

@media (max-width: 600px) {

  #sosSignupPopup {
    padding: 6px;
  }

  #sosSignupPopup .sos-popup-inner {

    width: 100%;

    height: 94vh;
    height: 94dvh;

    border-radius: 8px;
  }

}

</style>



<!-- ==========================================
     POPUP
=========================================== -->


<div id="sosSignupPopup">

  <div class="sos-popup-inner">


    <!-- CLOSE X -->

    <button
      id="sosSignupClose"
      type="button"
      aria-label="Close signup form">

      ×

    </button>



    <!-- MAILCHIMP SIGNUP FORM -->

    <iframe

      src="https://sosaz.us4.list-manage.com/subscribe?u=1f1e5d070a950d3f7120fb1cb&id=62e8e0c5b2"

      title="Smile On Seniors Email List">

    </iframe>


  </div>

</div>



<!-- ==========================================
     POPUP SCRIPT
=========================================== -->





<!-- ==========================================
     END SMILE ON SENIORS EMAIL POPUP
=========================================== -->
<script>
//<![CDATA[
document.addEventListener('DOMContentLoaded', function () {
    // This script is designed to work with the specific HTML structure you provided.

    // !!! IMPORTANT: Replace with your deployed Google Apps Script Web App URL !!!
    const GOOGLE_APPS_SCRIPT_URL = "https://script.google.com/macros/s/AKfycby-3S2ySYn2pl06Uy8-RszMgge5MnZn1LYZi2vJhAem4TMDlk1Lke6vcECYudImPYom/exec";

    // --- Elements based on your HTML ---
    const navStickyContainer = document.getElementById('navStickyContainer');
    const directoryContainer = document.getElementById('directory-container');
    const mainContainer = document.querySelector('main.container'); // The main content area
    const categoryNav = document.getElementById('categoryNav');
    const searchInput = document.getElementById('searchInput');
    const notFoundMessage = document.getElementById('notFoundMessage');
    const loadingMessage = document.getElementById('loadingMessage');
    const errorMessage = document.getElementById('errorMessage');

    let allBusinesses = []; // Stores the raw data from the sheet

    // --- SVG Icons (as used in the original script) ---
    // These are used for the section headers and category buttons.
    const categoryIcons = {
        'Community': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></svg>`,
        'Financial': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>`,
        'Food': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 2v7c0 1.1.9 2 2 2h4a2 2 0 0 0 2-2V2"></path><path d="M7 2v20"></path><path d="M21 15V2v0a5 5 0 0 0-5 5v6c0 1.1.9 2 2 2h3z"></path></svg>`,
        'Home Care and Placement Services': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline></svg>`,
        'Jewelry': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.5 16.5 12 22l-2.5-5.5L5 14l5.5-2.5L12 6l2.5 5.5L20 14l-5.5 2.5zM2 12h2.5M19.5 12H22M12 2v2.5M12 19.5V22"/></svg>`,
        'Home Management & Improvement': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"></path></svg>`,
        'Legal': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m22 12-2.25 2.25-2.25-2.25L22 12ZM17.5 12l2.25-2.25L17.5 7.5 17.5 12ZM12 22l2.25-2.25L12 17.5 12 22ZM12 17.5 9.75 19.75 12 22v-4.5ZM2 12l2.25-2.25L2 7.5 2 12Zm4.5 0L4.25 9.75 2 12h4.5ZM12 2 9.75 4.25 12 6.5 12 2Zm0 4.5L14.25 4.25 12 2v4.5Z"/><path d="M7.5 12a4.5 4.5 0 1 1 9 0 4.5 4.5 0 1 1-9 0"/><path d="M12 7.5V12h4.5"/></svg>`,
        'Medical': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21.3 15.3 19 12.9a2.4 2.4 0 0 0-3.4 0l-1.6 1.6a2.4 2.4 0 0 1-3.4 0L2.7 6.7a2.4 2.4 0 0 1 0-3.4l1.6-1.6a2.4 2.4 0 0 1 3.4 0l8.6 8.6a2.4 2.4 0 0 0 3.4 0l2.6-2.6"/><path d="m14.5 7.5 5 5"/><path d="m2.7 14.3 1.6 1.6a2.4 2.4 0 0 0 3.4 0l1.6-1.6a2.4 2.4 0 0 1 3.4 0l1.6 1.6a2.4 2.4 0 0 0 3.4 0l1.6-1.6"/></svg>`,
        'Real Estate and Business Needs': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline></svg>`,
        'Senior Living': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 10v10"/><path d="M10 10l5.5-5.5"/><path d="M10 10l-5.5-5.5"/><path d="M4 20h12"/><circle cx="10" cy="5" r="2"/></svg>`,
        'Transportation and Travel': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 17h2c.6 0 1-.4 1-1v-3c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v3c0 .6.4 1 1 1h2"/><path d="M19 17H5v-5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v5z"/><circle cx="7" cy="17" r="2"/><circle cx="17" cy="17" r="2"/></svg>`,
        'Senior Owned Businesses': `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 22V8a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v14"/><path d="M18 14h-4.5a2.5 2.5 0 0 0 0 5H18"/><path d="M3 22h18"/><path d="M15 2v2"/><path d="M9 2v2"/><path d="M12 11v-1a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v1"/></svg>`
    };

    // --- UPDATED: STICKY NAVIGATION LOGIC ---
    // This logic targets your specific #navStickyContainer and adds the .scrolled class.
    if (navStickyContainer && mainContainer) {
        const stickyOffset = navStickyContainer.offsetTop;

        function handleStickyNav() {
            // Get the height of the nav container *before* it becomes sticky
            const navHeight = navStickyContainer.offsetHeight;

            if (window.pageYOffset > stickyOffset) {
                // Add the 'scrolled' class to activate your CSS styles
                navStickyContainer.classList.add('scrolled');
                // Add padding to the main content area to prevent the content from jumping up
                mainContainer.style.paddingTop = navHeight + 'px';
            } else {
                // Remove the 'scrolled' class to return it to its normal position
                navStickyContainer.classList.remove('scrolled');
                // Remove the padding from the main content area
                mainContainer.style.paddingTop = '0';
            }
        }

        // Listen for the scroll event on the window
        window.addEventListener('scroll', handleStickyNav);
    }
    // --- END OF STICKY NAVIGATION LOGIC ---


    // --- Function to sanitize string for use in HTML IDs ---
    function sanitizeId(str) {
        if (typeof str !== 'string' || !str) {
            return '';
        }
        return str.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-*|-*$/g, '');
    }

    // --- Function to create a single business card using your CSS classes ---
    function createBusinessCard(business) {
        const card = document.createElement('article');
        card.className = 'business-card'; // Matches your CSS

        const cardContent = document.createElement('div');
        cardContent.className = 'card-content'; // Matches your CSS

        // Header
        const cardHeader = document.createElement('div');
        cardHeader.className = 'card-header'; // Matches your CSS

        const logo = document.createElement('img');
        logo.src = business.image;
        logo.alt = `${business.name} Logo`;
        logo.className = 'card-image'; // Matches your CSS
        logo.onerror = function() {
            this.onerror = null;
            this.src = 'https://placehold.co/100x100/a8a8a8/ffffff?text=Logo';
        };

        const title = document.createElement('h3');
        title.className = 'card-title'; // Matches your CSS
        title.textContent = business.name;

        cardHeader.appendChild(logo);
        cardHeader.appendChild(title);

        // Details
        const cardDetails = document.createElement('div');
        cardDetails.className = 'card-details'; // Matches your CSS
        
        let detailsHTML = '';
        if (business.phone) {
            const phoneIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>`;
            detailsHTML += `<div class="card-detail">${phoneIcon}<a href="tel:${business.phone.replace(/\D/g, '')}">${business.phone}</a></div>`;
        }
        if (business.address) {
            const addressIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"></path><circle cx="12" cy="10" r="3"></circle></svg>`;
            const encodedAddress = encodeURIComponent(business.address);
            detailsHTML += `<div class="card-detail">${addressIcon}<a href="https://www.google.com/maps/search/?api=1&query=${encodedAddress}" target="_blank" rel="noopener">${business.address}</a></div>`;
        }
        if (business.email) {
            const emailIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path><polyline points="22,6 12,13 2,6"></polyline></svg>`;
            detailsHTML += `<div class="card-detail">${emailIcon}<a href="mailto:${business.email}">${business.email}</a></div>`;
        }
        cardDetails.innerHTML = detailsHTML;

        // Actions
        const cardActions = document.createElement('div');
        cardActions.className = 'card-actions'; // Matches your CSS

        if (business.link && business.link.trim() !== '') {
            let fullUrl = business.link.trim();
            if (!fullUrl.startsWith('http://') && !fullUrl.startsWith('https://')) {
                fullUrl = 'https://' + fullUrl;
            }

            const visitSiteButton = document.createElement('a');
            visitSiteButton.className = 'visit-site-button'; // Matches your CSS
            visitSiteButton.href = fullUrl;
            visitSiteButton.target = '_blank';
            visitSiteButton.rel = 'noopener';
            visitSiteButton.textContent = 'Visit Site';
            cardActions.appendChild(visitSiteButton);
        }

        // Assemble card
        cardContent.appendChild(cardHeader);
        cardContent.appendChild(cardDetails);
        if (cardActions.hasChildNodes()) {
            cardContent.appendChild(cardActions);
        }
        card.appendChild(cardContent);

        return card;
    }

    // --- Function to render the entire directory ---
    function renderDirectory(data) {
        directoryContainer.innerHTML = '';
        let itemsFound = 0;

        data.forEach(sectionData => {
            if (sectionData.businesses.length > 0) {
                const section = document.createElement('section');
                section.className = 'directory-section'; // Matches your CSS
                section.id = sanitizeId(sectionData.category);

                const sectionHeader = document.createElement('div');
                sectionHeader.className = 'section-header'; // Matches your CSS
                sectionHeader.innerHTML = `${sectionData.icon}<h2>${sectionData.category}</h2>`;

                const cardsGrid = document.createElement('div');
                cardsGrid.className = 'cards-grid'; // Matches your CSS

                sectionData.businesses.forEach(business => {
                    cardsGrid.appendChild(createBusinessCard(business));
                    itemsFound++;
                });

                section.appendChild(sectionHeader);
                section.appendChild(cardsGrid);
                directoryContainer.appendChild(section);
            }
        });

        notFoundMessage.classList.toggle('hidden', itemsFound > 0);
    }

    // --- Function to render category buttons ---
    function renderCategoryButtons() {
        categoryNav.innerHTML = '';
        const allButton = document.createElement('button');
        allButton.className = 'category-button active'; // Matches your CSS
        allButton.dataset.category = 'all';
        allButton.textContent = 'All';
        categoryNav.appendChild(allButton);

        const uniqueCategories = [...new Set(allBusinesses.map(b => b.category))].sort();

        uniqueCategories.forEach(categoryName => {
            if (categoryName) {
                const button = document.createElement('button');
                button.className = 'category-button'; // Matches your CSS
                button.dataset.category = sanitizeId(categoryName);
                
                const iconString = categoryIcons[categoryName] || '';
                button.innerHTML = `${iconString} <span>${categoryName}</span>`;
                
                button.onclick = () => {
                    document.querySelectorAll('.category-button').forEach(btn => btn.classList.remove('active'));
                    button.classList.add('active');
                    filterAndSearch();
                };
                categoryNav.appendChild(button);
            }
        });
    }

    // --- Filtering and Search Logic ---
    function filterAndSearch() {
        const searchTerm = searchInput.value.toLowerCase();

        // If user is searching, always reset to the "All" category view
        if (searchTerm.length > 0) {
            document.querySelectorAll('.category-button').forEach(btn => btn.classList.remove('active'));
            const allButton = document.querySelector('.category-button[data-category="all"]');
            if (allButton) allButton.classList.add('active');
        }

        const activeCategoryButton = document.querySelector('.category-button.active');
        const activeCategory = activeCategoryButton ? activeCategoryButton.dataset.category : 'all';

        // Filter businesses based on search term
        const searchedBusinesses = allBusinesses.filter(business => {
            const nameMatches = business.name && business.name.toLowerCase().includes(searchTerm);
            const phoneMatches = business.phone ? business.phone.toLowerCase().includes(searchTerm) : false;
            const addressMatches = business.address ? business.address.toLowerCase().includes(searchTerm) : false;
            const emailMatches = business.email ? business.email.toLowerCase().includes(searchTerm) : false;
            return nameMatches || phoneMatches || addressMatches || emailMatches;
        });

        // Group the searched businesses by category
        const groupedData = searchedBusinesses.reduce((acc, business) => {
            const categoryName = business.category;
            if (!categoryName) return acc;
            
            let categoryObject = acc.find(c => c.category === categoryName);
            if (!categoryObject) {
                categoryObject = {
                    category: categoryName,
                    icon: categoryIcons[categoryName] || '',
                    businesses: []
                };
                acc.push(categoryObject);
            }
            categoryObject.businesses.push(business);
            return acc;
        }, []);

        // Filter the grouped data by the active category button
        const finalFilteredData = activeCategory === 'all'
            ? groupedData
            : groupedData.filter(section => sanitizeId(section.category) === activeCategory);

        renderDirectory(finalFilteredData);
    }

    // --- Function to fetch data from Google Apps Script ---
    async function fetchData() {
        loadingMessage.classList.remove('hidden');
        directoryContainer.classList.add('hidden');
        notFoundMessage.classList.add('hidden');
        errorMessage.classList.add('hidden');

        try {
            const response = await fetch(GOOGLE_APPS_SCRIPT_URL);
            if (!response.ok) {
                throw new Error(`HTTP error! status: ${response.status}`);
            }
            const data = await response.json();

            allBusinesses = data.filter(b => b.name);

            renderCategoryButtons();
            filterAndSearch(); // Initial render
            directoryContainer.classList.remove('hidden');

        } catch (error) {
            console.error("Error fetching data:", error);
            errorMessage.classList.remove('hidden');
        } finally {
            loadingMessage.classList.add('hidden');
        }
    }

    // --- Initial Data Load ---
    fetchData();

    // --- Event Listeners ---
    searchInput.addEventListener('input', filterAndSearch);

    categoryNav.addEventListener('click', function(e) {
        const button = e.target.closest('.category-button');
        if (button) {
            searchInput.value = ''; // Clear search when a category is clicked
            document.querySelectorAll('.category-button').forEach(btn => btn.classList.remove('active'));
            button.classList.add('active');
            filterAndSearch();
        }
    });
});
//]]>
</script><script src="https://chabadone.reshapecreative.com/fundraising/prefill-amount-from-url-params.js"></script><script src="https://webmk.co/sites/smile-on-seniors-az/sos-az-external-assets.js"></script><script>
  function ready(fn) {
  if (document.readyState !== 'loading'){
    fn();
  } else {
    document.addEventListener('DOMContentLoaded', fn);
  }
}
function addClass() {
  var path = window.location.pathname;
  var matches = path && path.match(/eventid\/(\d+)/);

  var aid = Co && Co.ArticleId;
  if (matches && matches.length > 1) {
    var eventClass = 'eventid-' + matches[1];
    document.body.classList.add(eventClass);
  } else {
    document.body.classList.add('aid-' + aid);
  }
};
ready(addClass);
</script><script>window.onload = function prefillLinks() {
  var pathArray = window.location.pathname.split("/");

  var path2 = pathArray[2];
  var type = pathArray[3];
  var number = pathArray[4];

  /* Ensure logic runs only when type === "chai" */
  if (path2 === "donate_cdo" && type === "chai") {
    // Inject Chai Club-specific CSS styles
    var style = document.createElement("style");
    style.textContent = `
      #donate-wrapper main .custom-amount-wrapper {
        box-shadow: none;
        border: solid #5c5c86 1px;
        border-radius: 5px;
      }
      main.donate-content {
        background: #f1f2f4;
      }
      .field-wrapper input:not([type=checkbox]) {
        box-shadow: none;
        border: solid 1px #5c5c86;
        border-radius: 5px;
      }
      #donate-wrapper main form .content-box .row .col .field-wrapper select, 
      #donate-wrapper main form .content-box .row .col .field-wrapper textarea {
        border-radius: 5px;
        box-shadow: none;
        border: solid 1px #5c5c86;
      }
      button.donate-button.js-donate-button.js-disable-after-submit {
        background-color: #57b9b3 !important;
        padding: 15px !important;
        margin: auto !important;
        display: flex;
        justify-content: center;
        margin-top: 20px !important;
        width: 200px !important;
      }
      section#donate {
        width: 100% !important;
        max-width: none !important;
        height: 100% !important;
        max-height: none !important;
        margin: 0px !important;
        background-color: #eee !important;
      }
    `;
    document.head.appendChild(style);

    // Update the main heading text
    var mainHeading = document.querySelector("#donate-wrapper main h1");
    if (mainHeading) {
      mainHeading.textContent = "Complete your monthly Chai Club Donation below!";
    }

    // Prefill the amount
    var amount = document.querySelector(".custom-amount");
    if (amount) amount.value = number;

    // Add invisible "Chai Club" field above "Dedication or Note"
    var notesFieldWrapper = document.querySelector("#notes").closest(".field-wrapper");
    if (notesFieldWrapper) {
      var chaiClubField = document.createElement("input");
      chaiClubField.type = "hidden";
      chaiClubField.name = "chai_club";
      chaiClubField.value = "yes";
      notesFieldWrapper.parentNode.insertBefore(chaiClubField, notesFieldWrapper);
    }

    // Always select "Monthly" and then click the next button
    setTimeout(function () {
      var monthlyOption = document.querySelector("#frequency-toggle .js-monthly");
      if (monthlyOption) monthlyOption.click(); // Click the "Monthly" option

      setTimeout(function () {
        var nextButton = document.querySelector("button.next-button.js-next-button");
        if (nextButton) nextButton.click(); // Click the next button

        // Hide the recurring amounts column last
        var recurringColumn = document.querySelector(".col.flex-1.amounts-column.recurring");
        if (recurringColumn) {
          recurringColumn.style.display = "none"; // Hide the element
        }
      }, 100); // Delay to allow "Monthly" selection to register
    }, 50); // Initial delay before interacting with "Monthly" option
  }
};
</script><script>

(function () {


  var lastOpen = 0;



  /* =========================
     OPEN POPUP
  ========================== */

  function openSOSSignup() {

    var now = Date.now();


    /*
      Phones can fire both touch and click.
      This prevents the popup from opening twice.
    */

    if (now - lastOpen < 800) {
      return;
    }

    lastOpen = now;


    var popup =
      document.getElementById("sosSignupPopup");


    if (!popup) {
      return;
    }


    popup.style.display = "flex";


    /*
      Stop the page behind the popup
      from scrolling.
    */

    document.documentElement.style.overflow =
      "hidden";

    document.body.style.overflow =
      "hidden";

  }



  /* =========================
     CLOSE POPUP
  ========================== */

  function closeSOSSignup() {

    var popup =
      document.getElementById("sosSignupPopup");


    if (!popup) {
      return;
    }


    popup.style.display = "none";


    document.documentElement.style.overflow =
      "";

    document.body.style.overflow =
      "";

  }



  /* =========================
     CHECK WHAT WAS CLICKED
  ========================== */

  function isSignupTarget(target) {


    if (!target) {
      return false;
    }


    var element = target;



    /*
      Walk upward through the element's
      parents.

      This is important because on mobile
      the visitor might actually tap a
      SPAN or DIV inside the button.
    */

    for (
      var i = 0;
      i < 12 && element;
      i++
    ) {


      /* CHECK URL */

      if (element.getAttribute) {

        var href =
          element.getAttribute("href") || "";


        if (
          href.indexOf("email-signup") !== -1
        ) {

          return true;

        }

      }



      /* CHECK BUTTON TEXT */

      var text = (

        element.innerText ||

        element.textContent ||

        ""

      )

      .replace(/\s+/g, " ")

      .trim()

      .toLowerCase();



      if (

        text === "join our email list" ||

        text === "join our mailing list"

      ) {

        return true;

      }


      element = element.parentElement;

    }


    return false;

  }



  /* =========================
     HANDLE TAPS / CLICKS
  ========================== */

  function interceptSOSClick(event) {


    var target = event.target;


    if (!target) {
      return;
    }



    /* -------------------------
       CLOSE X
    -------------------------- */

    if (

      target.id === "sosSignupClose" ||

      (
        target.closest &&

        target.closest(
          "#sosSignupClose"
        )
      )

    ) {


      if (event.cancelable) {
        event.preventDefault();
      }


      event.stopPropagation();


      closeSOSSignup();


      return;

    }



    /* -------------------------
       CLICK DARK BACKGROUND
    -------------------------- */

    if (

      event.type === "click" &&

      target.id === "sosSignupPopup"

    ) {


      if (event.cancelable) {
        event.preventDefault();
      }


      closeSOSSignup();


      return;

    }



    /* -------------------------
       EMAIL SIGNUP BUTTON
    -------------------------- */

    if (isSignupTarget(target)) {


      /*
        Stop ChabadOne from navigating
        to /email-signup
      */

      if (event.cancelable) {

        event.preventDefault();

      }


      event.stopPropagation();


      if (
        event.stopImmediatePropagation
      ) {

        event.stopImmediatePropagation();

      }



      /* OPEN OUR POPUP */

      openSOSSignup();


      return false;

    }

  }



  /* =========================
     DESKTOP + MOBILE EVENTS
  ========================== */


  /*
    TOUCHSTART

    This catches taps on iPhone,
    Android, etc. BEFORE ChabadOne
    processes them.
  */

  window.addEventListener(

    "touchstart",

    interceptSOSClick,

    {
      capture: true,
      passive: false
    }

  );



  /*
    POINTERDOWN

    Covers modern mobile browsers,
    tablets and touch devices.
  */

  window.addEventListener(

    "pointerdown",

    interceptSOSClick,

    {
      capture: true,
      passive: false
    }

  );



  /*
    CLICK

    Desktop + fallback for mobile.
  */

  window.addEventListener(

    "click",

    interceptSOSClick,

    true

  );



  /* =========================
     ESCAPE KEY CLOSES POPUP
  ========================== */

  document.addEventListener(

    "keydown",

    function (event) {

      if (event.key === "Escape") {

        closeSOSSignup();

      }

    }

  );


})();

</script></head>
<body class="lang_en dir_ltr cco_body sites-article">

	


	
	<div id="PrintCreditHeader" class="show_for_print">
Printed from<b>sosaz.org</b>
</div>
	<div id="header">
		<div class="wrapper header-wrapper">
			
<div id="feedback_bar" class="hide_for_print no_outline">
	<div class="wrapper">
		
	</div>
</div>

			


<div id="header_container" class="header_container">
	<div class="clearfix links">
		<img src="https://w2.chabad.org/images/global/spacer.gif" width="15" height="8" class="baruch_hashem" />
		<div class="float_right">
			
			
				<div class="topBarLink cco_topbar_link ask_the_rabbi_link">
					<a href="/asktherabbi/default_cdo/jewish/Ask-the-Rabbi.htm">Ask the Rabbi</a>
				</div>
				
			
			
				<div class="topBarLink cco_topbar_link contact_link">
					<a href="/tools/feedback.asp">Contact</a>
				</div>
			
			
		</div>
		<div class="float_left">
			
				<div class="topBarLink cco_topbar_link home_link">
					<a href="/">Home</a>
				</div>
				
			
				<div class="topBarLink cco_topbar_link about_link">
					<a href="/4896270">About</a>
				</div>
				
			
			
			
		</div>
	</div>
	<div class="break_floats"></div>
</div>

			<div class="clearfix branding-search">
				<div id="header_branding" class="no_outline  logo">
					<div class="g260 no_margin cco_search_header float_right">
						

<div class="co_search_form margin05">
	<form name="MainSearchForm" id="MainSearchForm" method="get" action="/search/results.asp" class="clearfix" onsubmit="return Co.Forms.Validation.Validate(this, null, {markAsSubmitted:false});">
		<div class="co_global_submit"><button type="submit" class="button" value=" "><span> </span></button></div>
		

<div class="co_global_input_container clearfix">
	<input id="topAreaTopSearch_search" required="true" autocomplete="nope" placeholder="Search" value="" class="co_global_input co_search js-search-field active js-mirrored-input" onblur="this.form.className = this.form.className.replace(/\sactive/gi, &#39;&#39;);" name="searchWord" onfocus="this.form.className+=&#39; active&#39;;" type="text" display_name="Search Field" min_length="3"></input>
</div>

			
		
		
	
		<div id="topAreaTopSearch_search_wrapper" class="co_field_options" style="display:none;">
			<div class="co_absolute_wraper" id="co_absolute_wraper" style="">
				<div class="inner">
					<div id="topAreaTopSearch_search_container" class="co_field_options_suggestions"></div>
					<div class="break_floats"></div>
					
				</div>
			</div>
		</div>
	</form>
</div>
					</div>
					
						<div class="float_left site-logo-wrapper"><a href="/"><img src="https://w2.chabad.org/media/images/1180/KaRK11805265.png" width="100" height="100" border="0"  /></a></div>
					
					<a href="/default.asp" title="Smile on Seniors" class="site_title">Smile on Seniors<span class="site_subtitle clearfix">Dedicated to the Needs of Our Active Adult and Senior Population</span></a>
				</div>
			</div>
			
			
			<button type='button' class='cs-mobile-menu-open js-mobile-menu-open'><i class='fa fa-bars'></i></button>
			<div class="site-nav-wrapper">
				<script>
var primaryNavigationVersion = "639252072000000000";
</script>
<div id="co_menu_container_wrapper" class="co_menu_container_wrapper " data-list-name="primary navigation"> 
<div class="co_menu_container clearfix" id="co_menu_container">
<a class="menu_logo" href="/"></a>
<table cellpadding="0" cellspacing="0" border="0" class="main_menu_container first global">
<tr id="tabContentMain" tab="Main" style="display:table-row;">
<td class="co_menu_item home" data-menu-level="1"><a href="/default.asp"><img class="co_menu_home_image" src="https://w2.chabad.org/images/global/spacer.gif" width="28" height="60" border="0" onmouseover="this.className += ' hover';" onmouseout="this.className=this.className.replace(/\s?hover/gi, '');" /></a></td>
<td class="co_menu_item_divider"><img src="https://w2.chabad.org/images/global/spacer.gif" width="2" height="1" border="0" /></td>
<td class="co_menu_item arrow multi_level" aid="4896270" data-menu-level="1" onmouseover='Co.MainNavigation.Show(event, this);' onmouseout='Co.MainNavigation.Hide(event, this);' >
<div class="co_menu_content"><div class="co_submenu_container" style="width:auto;display:none;clip:rect(auto auto 0px auto);">
<div class="wrapper">
<div class="column_wrapper clearfix" style="height:100%;">
<div class="co_column">
<a href="/tools/feedback.asp" class="item empty" id="menu_item1-1" data-menu-level="2" data-aid="4896271">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Contact Us</span>
</a>
<a href="/templates/articlecco_cdo/aid/7516153/jewish/Our-People.htm" class="item empty" id="menu_item1-2" data-menu-level="2" data-aid="7516153">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Our People</span>
</a>
</div>
<div id="menu_child1-1" class="menu_child empty selected" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child1-2" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
</div>
<div class="break_floats"></div></div></div></div><span class="parent"><img src="https://w2.chabad.org/images/global/spacer.gif" width="12" height="6" border="0" vspace="2" /><div><a href="/templates/articlecco_cdo/aid/4896270/jewish/About-Us.htm" class="parent">About<br />Us</a></div></span><a href="/templates/articlecco_cdo/aid/4896270/jewish/About-Us.htm" class="bg_extension js-parent-menu-link" data-aid="4896270"></a></td>
<td class="co_menu_item_divider"><img src="https://w2.chabad.org/images/global/spacer.gif" width="2" height="1" border="0" /></td>
<td class="co_menu_item arrow multi_level" aid="4896272" data-menu-level="1" onmouseover='Co.MainNavigation.Show(event, this);' onmouseout='Co.MainNavigation.Hide(event, this);' >
<div class="co_menu_content"><div class="co_submenu_container" style="width:auto;display:none;clip:rect(auto auto 0px auto);">
<div class="wrapper">
<div class="column_wrapper clearfix" style="height:100%;">
<div class="co_column">
<a href="/templates/articlecco_cdo/aid/4896276/jewish/Shabbat-Dinner.htm" class="item hover" id="menu_item2-1" data-menu-level="2" data-aid="4896276">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Shabbat Dinner</span>
</a>
<a href="/templates/articlecco_cdo/aid/5263845/jewish/Its-Not-Just-Lunch.htm" class="item" id="menu_item2-2" data-menu-level="2" data-aid="5263845">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>It's Not Just Lunch</span>
</a>
<a href="/templates/articlecco_cdo/aid/6554732/jewish/Discussion-with-the-Rabbi.htm" class="item" id="menu_item2-3" data-menu-level="2" data-aid="6554732">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Discussion with the Rabbi</span>
</a>
<a href="/templates/articlecco_cdo/aid/7022693/jewish/BLT-Mens-Meetup.htm" class="item" id="menu_item2-4" data-menu-level="2" data-aid="7022693">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>BLT - Men's Meetup</span>
</a>
<a href="/templates/articlecco_cdo/aid/7442677/jewish/Bites-and-Insights-Womens-Meetup.htm" class="item" id="menu_item2-5" data-menu-level="2" data-aid="7442677">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Bites and Insights - Women's Meetup</span>
</a>
<a href="/templates/articlecco_cdo/aid/6554724/jewish/Sip-Schmooze.htm" class="item" id="menu_item2-6" data-menu-level="2" data-aid="6554724">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Sip & Schmooze</span>
</a>
<a href="/templates/articlecco_cdo/aid/7462813/jewish/In-the-Kitchen-with-Benita.htm" class="item empty" id="menu_item2-7" data-menu-level="2" data-aid="7462813">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>In the Kitchen with Benita</span>
</a>
<a href="/templates/articlecco_cdo/aid/6315541/jewish/JAM-60s-and-70s.htm" class="item empty" id="menu_item2-8" data-menu-level="2" data-aid="6315541">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>JAM 60s and 70s</span>
</a>
<a href="/templates/articlecco_cdo/aid/6283321/jewish/Canasta.htm" class="item empty" id="menu_item2-9" data-menu-level="2" data-aid="6283321">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Canasta</span>
</a>
<a href="/templates/articlecco_cdo/aid/4896277/jewish/Special-Events.htm" class="item" id="menu_item2-10" data-menu-level="2" data-aid="4896277">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Special Events</span>
</a>
<a href="/templates/articlecco_cdo/aid/4920527/jewish/Friendly-Visits.htm" class="item empty" id="menu_item2-11" data-menu-level="2" data-aid="4920527">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Friendly Visits</span>
</a>
<a href="/templates/articlecco_cdo/aid/7464757/jewish/Volunteer.htm" class="item empty" id="menu_item2-12" data-menu-level="2" data-aid="7464757">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Volunteer</span>
</a>
<a href="/templates/articlecco_cdo/aid/4917897/jewish/Virtual.htm" class="item empty" id="menu_item2-13" data-menu-level="2" data-aid="4917897">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Virtual</span>
</a>
</div>
<div id="menu_child2-1" class="menu_child selected" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="http://www.sosaz.org/shabbat" class="child_item default" data-menu-level="3" data-aid="5024489"><span>Shabbat Dinner RSVP</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-2" class="menu_child" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="http://www.sosaz.org/lunch" class="child_item default" data-menu-level="3" data-aid="5263849"><span>It's Not Just Lunch RSVP</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-3" class="menu_child" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="/templates/articlecco_cdo/aid/6554714/jewish/Discussion-with-the-Rabbi-RSVP.htm" class="child_item default" data-menu-level="3" data-aid="6554714"><span>Discussion with the Rabbi RSVP</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-4" class="menu_child" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="/templates/articlecco_cdo/aid/7022694/jewish/BLT-RSVP.htm" class="child_item default" data-menu-level="3" data-aid="7022694"><span>BLT RSVP</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-5" class="menu_child" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="/templates/articlecco_cdo/aid/7443530/jewish/Bites-and-Insights-RSVP.htm" class="child_item default" data-menu-level="3" data-aid="7443530"><span>Bites and Insights RSVP</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-6" class="menu_child" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="/templates/articlecco_cdo/aid/6554708/jewish/Sip-Schmooze-RSVP.htm" class="child_item default" data-menu-level="3" data-aid="6554708"><span>Sip & Schmooze RSVP</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-7" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-8" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-9" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-10" class="menu_child" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="/templates/articlecco_cdo/aid/5006289/jewish/Purim-RSVP.htm" class="child_item default" data-menu-level="3" data-aid="5006289"><span>Purim RSVP</span></a>
<a href="/templates/articlecco_cdo/aid/6279595/jewish/Chai-Pins-Bowling.htm" class="child_item default" data-menu-level="3" data-aid="6279595"><span>Chai Pins - Bowling</span></a>
<a href="/templates/articlecco_cdo/aid/6678992/jewish/Chanukah-Party.htm" class="child_item default" data-menu-level="3" data-aid="6678992"><span>Chanukah Party</span></a>
<a href="/templates/articlecco_cdo/aid/6358848/jewish/Purim-Party.htm" class="child_item default" data-menu-level="3" data-aid="6358848"><span>Purim Party</span></a>
<a href="/templates/articlecco_cdo/aid/6383883/jewish/NY-Deli-Night.htm" class="child_item default" data-menu-level="3" data-aid="6383883"><span>NY Deli Night</span></a>
<a href="/templates/articlecco_cdo/aid/6429327/jewish/BBQ.htm" class="child_item default" data-menu-level="3" data-aid="6429327"><span>BBQ</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-11" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-12" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child2-13" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
</div>
<div class="break_floats"></div></div></div></div><span class="parent"><img src="https://w2.chabad.org/images/global/spacer.gif" width="12" height="6" border="0" vspace="2" /><div><a href="/templates/articlecco_cdo/aid/4896272/jewish/Programs-and-Events.htm" class="parent">Programs<br />and&nbsp;Events</a></div></span><a href="/templates/articlecco_cdo/aid/4896272/jewish/Programs-and-Events.htm" class="bg_extension js-parent-menu-link" data-aid="4896272"></a></td>
<td class="co_menu_item_divider"><img src="https://w2.chabad.org/images/global/spacer.gif" width="2" height="1" border="0" /></td>
<td class="co_menu_item" aid="6579034" data-menu-level="1" onmouseover="this.className += ' hover';" onmouseout="this.className = this.className.replace(/\shover/gi, '');" >
<div class="co_menu_content"><div class="co_submenu_container" style="width:auto;display:none;clip:rect(auto auto 0px auto);">
<div class="wrapper">
<div class="column_wrapper clearfix" style="height:100%;">
</div>
<div class="break_floats"></div></div></div></div><span class="parent"><div><a href="/templates/articlecco_cdo/aid/6579034/jewish/Resources.htm" class="parent">Resources</a></div></span><a href="/templates/articlecco_cdo/aid/6579034/jewish/Resources.htm" class="bg_extension js-parent-menu-link" data-aid="6579034"></a></td>
<td class="co_menu_item_divider"><img src="https://w2.chabad.org/images/global/spacer.gif" width="2" height="1" border="0" /></td>
<td class="co_menu_item arrow multi_level" aid="5266572" data-menu-level="1" onmouseover='Co.MainNavigation.Show(event, this);' onmouseout='Co.MainNavigation.Hide(event, this);' >
<div class="co_menu_content"><div class="co_submenu_container" style="width:auto;display:none;clip:rect(auto auto 0px auto);">
<div class="wrapper">
<div class="column_wrapper clearfix" style="height:100%;">
<div class="co_column">
<a href="/templates/articlecco_cdo/aid/6560928/jewish/About-Chai-Club.htm" class="item empty" id="menu_item4-1" data-menu-level="2" data-aid="6560928">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>About Chai Club</span>
</a>
</div>
<div id="menu_child4-1" class="menu_child empty selected" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
</div>
<div class="break_floats"></div></div></div></div><span class="parent"><img src="https://w2.chabad.org/images/global/spacer.gif" width="12" height="6" border="0" vspace="2" /><div><a href="/templates/articlecco_cdo/aid/5266572/jewish/Nate-Sachs-Legacy-Chai-Club.htm" class="parent">Nate&nbsp;Sachs<br />Legacy&nbsp;Chai&nbsp;Club</a></div></span><a href="/templates/articlecco_cdo/aid/5266572/jewish/Nate-Sachs-Legacy-Chai-Club.htm" class="bg_extension js-parent-menu-link" data-aid="5266572"></a></td>
<td class="co_menu_item_divider"><img src="https://w2.chabad.org/images/global/spacer.gif" width="2" height="1" border="0" /></td>
<td class="co_menu_item arrow multi_level" aid="4166736" data-menu-level="1" onmouseover='Co.MainNavigation.Show(event, this);' onmouseout='Co.MainNavigation.Hide(event, this);' >
<div class="co_menu_content"><div class="co_submenu_container" style="width:auto;display:none;clip:rect(auto auto 0px auto);">
<div class="wrapper">
<div class="column_wrapper clearfix" style="height:100%;">
<div class="co_column">
<a href="/templates/articlecco_cdo/aid/4454419/jewish/Invitation.htm" class="item empty selected" id="menu_item5-1" data-menu-level="2" data-aid="4454419">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Invitation</span>
</a>
<a href="/templates/articlecco_cdo/aid/4166799/jewish/About-Us.htm" class="item empty selected" id="menu_item5-2" data-menu-level="2" data-aid="4166799">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>About Us</span>
</a>
<a href="/templates/articlecco_cdo/aid/4166820/jewish/Opportunities.htm" class="item empty selected" id="menu_item5-3" data-menu-level="2" data-aid="4166820">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Opportunities</span>
</a>
<a href="https://www.sosaz.org/tools/events/register_cdo/eventid/23509" class="item empty selected" id="menu_item5-4" data-menu-level="2" data-aid="4484838">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Reservations and Sponsorship Opportunities</span>
</a>
<a href="/templates/articlecco_cdo/aid/7514209/jewish/2025-Honor-Roll.htm" class="item empty selected" id="menu_item5-5" data-menu-level="2" data-aid="7514209">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>2025 Honor Roll</span>
</a>
</div>
<div id="menu_child5-1" class="menu_child empty selected" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child5-2" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child5-3" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child5-4" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child5-5" class="menu_child empty" style="width:174px;">
<table cellpadding="0" cellspacing="0" border="0" style="height:100%;">
<tr class="wrapper clearfix">
<td class="co_column"><div class="column_left_wrapper">
<a href="" class="child_item default" data-menu-level="3" data-aid="0"><span></span></a>
</div></td>
</tr>
</table>
</div>
</div>
<div class="break_floats"></div></div></div></div><span class="parent"><img src="https://w2.chabad.org/images/global/spacer.gif" width="12" height="6" border="0" vspace="2" /><div><a href="/templates/section_cdo/aid/4166736/jewish/17-Year-Anniversary-Benefit-Event.htm" class="parent">17&nbsp;Year&nbsp;Anniversary<br />&#8209;&nbsp;Benefit&nbsp;Event</a></div></span><a href="/templates/section_cdo/aid/4166736/jewish/17-Year-Anniversary-Benefit-Event.htm" class="bg_extension js-parent-menu-link" data-aid="4166736"></a></td>
<td class="co_menu_item_divider"><img src="https://w2.chabad.org/images/global/spacer.gif" width="2" height="1" border="0" /></td>
<td class="co_menu_item donate_link" aid="0" data-menu-level="1" onmouseover="this.className += ' hover';" onmouseout="this.className = this.className.replace(/\shover/gi, '');" >
<div class="co_menu_content"><div class="co_submenu_container" style="width:auto;display:none;clip:rect(auto auto 0px auto);">
<div class="wrapper">
<div class="column_wrapper clearfix" style="height:100%;">
</div>
<div class="break_floats"></div></div></div></div><span class="parent"><div><a href="/4970020" class="parent">Donate</a></div></span><a href="/4970020" class="bg_extension js-parent-menu-link" data-aid="0"></a></td>
</tr>
</table>
</div>
</div>
<!-- END CACHE -->
				<div class="mobile-menu-bottom-links">
					
						<a href="/4896270" class="site-menu-general__link">About</a>
					
					<a href="/search">Search</a>
					
						<a href="/tools/feedback.asp">Contact</a>
					
				</div>
			</div>
		</div>
	</div>
	<div id="content">
		<div id="BodyContainer" class="wrapper">
			<div class="body_wrapper   clearfix">
				
	<div class="co_content_container clearfix local_content" id="co_content_container">
		<div class="clearfix">
			
			
			
			<div class="clearfix bh mobile-only align_right">ב"ה</div>
			
				<div class="master-content-wrapper g960" style="background-image: url(https://w2.chabad.org/media/images/1096/fkhr10965016.jpg)">
					

<header class="article-header cf ">
	
<script type="application/ld+json">
{
	"@context": "http://schema.org",
	"@type": "BreadcrumbList",
	"itemListElement": [
  {
    "@type": "ListItem",
    "position": 1,
    "item": {
      "@id": "/templates/articlecco_cdo/aid/4896272/jewish/Programs-and-Events.htm",
      "name": "Programs and Events"
    }
  },
  {
    "@type": "ListItem",
    "position": 2,
    "item": {
      "@id": "/article.asp?aid=4896277",
      "name": "Special Events"
    }
  }
]
}
</script>
<div class="breadcrumbs breadcrumbs hide_for_print" data-list-name="breadcrumbs">
	
			<a class="breadcrumbs__crumb" href='/templates/articlecco_cdo/aid/4896272/jewish/Programs-and-Events.htm' data-aid="4896272">
				Programs and Events
			</a>
		
</div>
	
			<h1 class="article-header__title js-article-title js-page-title">Special Events</h1>
		
			<div>
				
			</div>
		
</header>
				</div>
			
			<div class="body_wrapper clearfix co_body">
				<div class="g960" id="co_body_container">
					
					<div id="ContentBody">
						
						
							<div class="content-area-parent no_margin">
								
	<div id="cco_body">
		<div class="content g960 no_margin no_overflow" id="co_content_container">
			
			
	

	<article class="content js-content" itemscope itemtype="http://schema.org/Article">
	



<meta itemprop="mainEntityOfPage headline name" content="" />

<meta itemprop="image" content="https://w2.chabad.org/media/images/1096/fkhr10965016.jpg" />


		<meta itemprop="thumbnailUrl" content="https://w2.chabad.org/media/images/940/iPws9401715.jpg" />
	
		<meta itemprop="thumbnailUrl" content="https://w2.chabad.org/media/images/1096/fkhr10965016.jpg" />
	
<meta itemprop="uploadDate" content="2020-09-29T13:17:05" />
<span itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
	<meta itemprop="name" content="Smile on Seniors" />
	<meta itemprop="brand" content="Smile on Seniors" />
	<span itemprop="logo" itemscope itemtype="http://schema.org/ImageObject">
		<meta itemprop="url" content="https://w2.chabad.org/media/images/1180/KaRK11805265.png" />
		<meta itemprop="height" content="150" />
		<meta itemprop="width" content="150" />
	</span>
</span>
<meta itemprop="datePublished" content="2020-09-29T13:17:05" />
			<div itemprop="articleBody">
				<co:body xmlns:co="www1.chabadonline.com/alpha1" xmlns:ext="urn:xslt-extensions">
  <div class="co_body article-body cf">
<style type="text/css">

/* ============================================
   SMILE ON SENIORS - SPECIAL EVENTS
   CHABADONE VERSION
   ============================================ */

.sos-special-page {
    width: 100%;
    font-family: Arial, Helvetica, sans-serif;
    color: #333333;
    line-height: 1.6;
}

.sos-special-page * {
    box-sizing: border-box;
}

.sos-special-page a {
    text-decoration: none;
}/* HERO */

.sos-special-hero {
    background: #173f5f;
    padding: 62px 24px;
    text-align: center;
    color: #ffffff;
}

.sos-special-hero-inner {
    max-width: 780px;
    margin: 0 auto;
}

.sos-special-eyebrow {
    color: #f0c96b;
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.sos-special-hero h1 {
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 50px !important;
    line-height: 1.15 !important;
    font-weight: bold !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}

.sos-special-tagline {
    color: #ffffff;
    font-size: 26px;
    line-height: 1.3;
    font-weight: bold;
    margin-bottom: 16px;
}

.sos-special-hero-text {
    max-width: 680px;
    margin: 0 auto;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.65;
}/* INTRO */

.sos-special-intro {
    background: #ffffff;
    padding: 48px 20px 40px 20px;
    text-align: center;
}

.sos-special-intro-inner {
    max-width: 760px;
    margin: 0 auto;
}

.sos-special-kicker {
    color: #32738f;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 1.5px;
    margin-bottom: 8px;
}

.sos-special-page h2 {
    color: #173f5f !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 34px !important;
    line-height: 1.25 !important;
    font-weight: bold !important;
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
}

.sos-special-intro p {
    font-size: 18px;
    color: #555555;
    margin: 0;
}/* UPCOMING EVENTS */

.sos-upcoming {
    background: #faf8f3;
    padding: 46px 20px 52px 20px;
}

.sos-upcoming-inner {
    max-width: 920px;
    margin: 0 auto;
}

.sos-upcoming-heading {
    text-align: center;
    margin-bottom: 26px;
}

.sos-upcoming-heading p {
    color: #666666;
    font-size: 17px;
    margin: 0;
}/* EVENT LIST */

.sos-event-list {
    background: #ffffff;
    border: 1px solid #e0e4e5;
    border-radius: 8px;
    overflow: hidden;
}

.sos-event-row {
    display: table;
    table-layout: fixed;
    width: 100%;
    border-bottom: 1px solid #e7e9ea;
}

.sos-event-row:last-child {
    border-bottom: none;
}

.sos-event-date {
    display: table-cell;
    vertical-align: middle;
    width: 155px;
    padding: 15px 18px;
    background: #eaf4f7;
    color: #32738f;
    font-size: 14px;
    font-weight: bold;
    white-space: nowrap;
}

.sos-event-name {
    display: table-cell;
    vertical-align: middle;
    padding: 15px 20px;
    color: #173f5f;
    font-size: 17px;
    font-weight: bold;
}

.sos-event-action {
    display: table-cell;
    vertical-align: middle;
    width: 135px;
    padding: 12px 16px;
    text-align: right;
}

.sos-event-learn-more {
    display: inline-block;
    background: #173f5f;
    color: #ffffff !important;
    font-size: 13px;
    line-height: 1.2;
    font-weight: bold;
    padding: 9px 14px;
    border-radius: 4px;
    text-decoration: none !important;
    white-space: nowrap;
}

.sos-event-learn-more:hover {
    background: #32738f;
    color: #ffffff !important;
}/* ============================================
   RECURRING GATHERINGS
   ============================================ */

.sos-special-recurring {
    background: #ffffff;
    padding: 52px 20px;
}

.sos-special-recurring-heading {
    max-width: 750px;
    margin: 0 auto 28px auto;
    text-align: center;
}

.sos-special-recurring-heading p {
    color: #666666;
    font-size: 17px;
    margin: 0;
}

.sos-special-recurring-row {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    align-items: stretch;
}

.sos-special-recurring-wrap {
    width: 50%;
    padding: 10px;
    display: flex;
}

.sos-special-recurring-card {
    background: #eaf4f7;
    padding: 28px;
    border-radius: 8px;
    width: 100%;
    min-height: 285px;
    display: flex;
    flex-direction: column;
}

.sos-special-recurring-card h3 {
    color: #173f5f !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 23px !important;
    line-height: 1.3 !important;
    font-weight: bold !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
}

.sos-special-recurring-subtitle {
    color: #32738f;
    font-size: 16px;
    line-height: 1.5;
    font-weight: bold;
    margin-bottom: 10px;
}

.sos-special-recurring-card p {
    color: #555555;
    font-size: 16px;
    line-height: 1.6;
    margin: 0 0 18px 0;
}

.sos-recurring-button-area {
    margin-top: auto;
    padding-top: 5px;
}

.sos-recurring-learn-more {
    display: inline-block;
    background: #173f5f;
    color: #ffffff !important;
    font-size: 14px;
    line-height: 1.2;
    font-weight: bold;
    padding: 11px 19px;
    border-radius: 4px;
    text-decoration: none !important;
}

.sos-recurring-learn-more:hover {
    background: #32738f;
    color: #ffffff !important;
}/* FINAL CTA */

.sos-special-cta {
    background: #173f5f;
    padding: 50px 24px;
    text-align: center;
    color: #ffffff;
}

.sos-special-cta-inner {
    max-width: 700px;
    margin: 0 auto;
}

.sos-special-cta h2 {
    color: #ffffff !important;
    font-size: 34px !important;
    margin-bottom: 14px !important;
}

.sos-special-cta p {
    color: #ffffff !important;
    font-size: 17px !important;
    line-height: 1.6 !important;
    margin: 0 auto 22px auto !important;
}

.sos-special-button {
    display: inline-block;
    background: #e0ad46;
    color: #173f5f !important;
    font-size: 16px;
    font-weight: bold;
    padding: 13px 24px;
    margin: 5px;
    border-radius: 4px;
}

.sos-special-button-outline {
    display: inline-block;
    background: transparent;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: bold;
    padding: 11px 22px;
    margin: 5px;
    border: 2px solid #ffffff;
    border-radius: 4px;
}/* TABLET */

@media only screen and (max-width: 800px) {

    .sos-special-hero h1 {
        font-size: 42px !important;
    }

}/* MOBILE */

@media only screen and (max-width: 600px) {

    .sos-special-hero {
        padding: 40px 18px;
    }

    .sos-special-hero h1 {
        font-size: 35px !important;
    }

    .sos-special-tagline {
        font-size: 22px;
    }

    .sos-special-hero-text {
        font-size: 17px;
    }

    .sos-special-intro {
        padding: 34px 18px 30px 18px;
    }

    .sos-special-page h2,
    .sos-special-cta h2 {
        font-size: 28px !important;
    }

    .sos-upcoming {
        padding: 34px 14px 38px 14px;
    }

    .sos-event-row {
        display: block;
        padding: 12px 15px;
    }

    .sos-event-date,
    .sos-event-name,
    .sos-event-action {
        display: block;
        width: 100%;
        padding: 0;
        text-align: left;
    }

    .sos-event-date {
        background: transparent;
        margin-bottom: 2px;
        font-size: 13px;
    }

    .sos-event-name {
        font-size: 17px;
        margin-bottom: 7px;
    }

    .sos-event-learn-more {
        font-size: 12px;
        padding: 7px 12px;
    }

    .sos-special-recurring {
        padding: 38px 16px;
    }

    .sos-special-recurring-row {
        display: block;
    }

    .sos-special-recurring-wrap {
        display: block;
        width: 100%;
        padding: 7px 0;
    }

    .sos-special-recurring-card {
        width: 100%;
        min-height: 0;
        padding: 24px;
    }

    .sos-recurring-button-area {
        margin-top: 0;
        padding-top: 0;
    }

    .sos-special-button,
    .sos-special-button-outline {
        display: block;
        max-width: 280px;
        margin: 10px auto;
    }

}
</style>
<div class="sos-special-page"><!-- HERO -->
<div class="sos-special-hero">
<div class="sos-special-hero-inner">
<div class="sos-special-eyebrow">Smile On Seniors</div>

<h1>Special Events</h1>

<div class="sos-special-tagline">Celebrate. Connect. Come Together.</div>

<div class="sos-special-hero-text">Throughout the year, Smile On Seniors brings our community together for holiday celebrations, special gatherings and shared experiences.</div>
</div>
</div>
<!-- INTRO -->

<div class="sos-special-intro">
<div class="sos-special-intro-inner"><section>
<div class="sos-special-kicker">Celebrate Together</div>

</section><section><h2>There’s Always Something to Celebrate</h2>

<p>From holiday traditions to community favorites, our special events are opportunities to reconnect with friends, meet new people and enjoy being together.</p>
</section></div>
</div>
<!-- UPCOMING EVENTS -->

<div class="sos-upcoming">
<div class="sos-upcoming-inner">
<div class="sos-upcoming-heading">
<div class="sos-special-kicker">Upcoming</div>

<h2>Special Events</h2>

<p>See what’s coming up at Smile On Seniors.</p>
</div>

<div class="sos-event-list"><!-- SUKKAH PARTY -->
<div class="sos-event-row">
<div class="sos-event-date">September 28</div>

<div class="sos-event-name">Sukkah Party</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="http://www.sosaz.org/sukkah">Learn More </a></div>
</div>
<!-- BENEFIT EVENT -->

<div class="sos-event-row">
<div class="sos-event-date">November 1</div>

<div class="sos-event-name">Benefit Event</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/templates/articlecco_cdo/aid/4454419/jewish/Invitation.htm">Learn More </a></div>
</div>
<!-- THANKSGIVING DINNER -->

<div class="sos-event-row">
<div class="sos-event-date">November 26</div>

<div class="sos-event-name">Thanksgiving Dinner</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/tools/feedback.htm">Learn More </a></div>
</div>
<!-- CHANUKAH -->

<div class="sos-event-row">
<div class="sos-event-date">December 7</div>

<div class="sos-event-name">Chanukah Party</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/templates/articlecco_cdo/aid/6678992/jewish/Chanukah-Party.htm">Learn More </a></div>
</div>
<!-- NY DELI NIGHT -->

<div class="sos-event-row">
<div class="sos-event-date">January 26</div>

<div class="sos-event-name">NY Deli Night</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/templates/articlecco_cdo/aid/6383883/jewish/NY-Deli-Night.htm">Learn More </a></div>
</div>
<!-- SUPER BOWL PARTY -->

<div class="sos-event-row">
<div class="sos-event-date">February 14</div>

<div class="sos-event-name">Super Bowl Party</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/tools/feedback.htm">Learn More </a></div>
</div>
<!-- NONNAS -->

<div class="sos-event-row">
<div class="sos-event-date">February 24</div>

<div class="sos-event-name">Nonnas</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/tools/feedback.htm">Learn More </a></div>
</div>
<!-- PURIM -->

<div class="sos-event-row">
<div class="sos-event-date">March 23</div>

<div class="sos-event-name">Purim Party</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/templates/articlecco_cdo/aid/6358848/jewish/Purim-Party.htm">Learn More </a></div>
</div>
<!-- PASSOVER SEDER -->

<div class="sos-event-row">
<div class="sos-event-date">April 21</div>

<div class="sos-event-name">Passover Seder</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/tools/feedback.htm">Learn More </a></div>
</div>
<!-- ANNUAL BBQ -->

<div class="sos-event-row">
<div class="sos-event-date">May 26</div>

<div class="sos-event-name">Annual BBQ</div>

<div class="sos-event-action">
<a class="sos-event-learn-more" href="/templates/articlecco_cdo/aid/6429327/jewish/BBQ.htm">Learn More </a></div>
</div>
</div>
</div>
</div>
<!-- RECURRING GATHERINGS -->

<div class="sos-special-recurring">
<div class="sos-special-recurring-heading">
<div class="sos-special-kicker">More Ways to Connect</div>

<h2>Recurring Gatherings</h2>

<p>In addition to our special events, enjoy these welcoming gatherings throughout the year.</p>
</div>

<div class="sos-special-recurring-row"><!-- BLT MEN'S MEETUP -->
<div class="sos-special-recurring-wrap">
<div class="sos-special-recurring-card">
<h3>BLT Men’s Meetup</h3>

<div class="sos-special-recurring-subtitle">Bagels. Lox. Tefillin. Friendship.</div>

<p>A relaxed bi-monthly gathering for men featuring good food, conversation and connection.</p>

<div class="sos-recurring-button-area">
<a class="sos-recurring-learn-more" href="/templates/articlecco_cdo/aid/7022693/jewish/BLT-Mens-Meetup.htm">Learn More </a></div>
</div>
</div>
<!-- BITES & INSIGHTS -->

<div class="sos-special-recurring-wrap">
<div class="sos-special-recurring-card">
<h3>Bites &amp; Insights</h3>

<div class="sos-special-recurring-subtitle">Friendship. Refreshments. Inspiration.</div>

<p>A welcoming bi-monthly women’s gathering combining conversation, connection and meaningful Jewish learning.</p>

<div class="sos-recurring-button-area">
<a class="sos-recurring-learn-more" href="/templates/articlecco_cdo/aid/7442677/jewish/Bites-and-Insights-Womens-Meetup.htm">Learn More </a></div>
</div>
</div>
</div>
</div>
<!-- FINAL CTA -->

<div class="sos-special-cta">
<div class="sos-special-cta-inner">
<div class="sos-special-eyebrow">Stay Connected</div>

<h2>Don’t Miss What’s Next</h2>

<p>Stay up to date on upcoming Smile On Seniors events, celebrations and programs.</p>
<a class="sos-special-button" href="/tools/feedback.htm">Join Our Email List </a> <a class="sos-special-button-outline" href="/templates/articlecco_cdo/aid/4896272/jewish/Programs-and-Events.htm"> Explore All Programs </a></div>
</div>
</div>

</div>
</co:body>
			</div>
			

			<div class="break_floats"></div>
			
	<div class="break_floats"></div>
	

<div class="content-footer">
	
	
	
	
	
	
</div>
	</article>

		</div>
	</div>
</div>
						
						<div class="break_floats"></div>
						
					</div>
				</div>
				
				
				
			</div>
			
			
		</div>
		
		<aside class="page-tools-sidebar js-page-tools-sidebar hide_for_print">
<div class="page-tools js-page-tools-menu">
<div class="page-tools__section page-tools__section--share">
<a class="page-tools__tool js-share-popup page-tools__tool--facebook" data-share-url="https://www.facebook.com/dialog/share?app_id=188669250943&amp;display=popup&amp;href=https%3a%2f%2fwww.sosaz.org%2ftemplates%2farticlecco_cdo%2faid%2f4896277%2fjewish%2fSpecial-Events.htm%23utm_medium%3dpage_tools%26utm_content%3ddesktop%26utm_source%3dFB">
				<i class="fa fa-facebook"></i>
			</a>
<a class="page-tools__tool js-share-popup page-tools__tool--twitter" data-share-url="https://twitter.com/intent/tweet?text=Special+Events+-+Smile+on+Seniors&amp;url=https%3a%2f%2fwww.sosaz.org%2ftemplates%2farticlecco_cdo%2faid%2f4896277%2fjewish%2fSpecial-Events.htm%23utm_medium%3dpage_tools%26utm_content%3ddesktop%26utm_source%3dtwitter&amp;via=Chabad">
				<i class="fa fa-twitter"></i>
			</a>
<a class="page-tools__tool js-share-popup page-tools__tool--whatsapp d-lg-none js-share-whatsapp" data-share-url="whatsapp://send?text=Special+Events+-+Smile+on+Seniors https%3a%2f%2fwww.sosaz.org%2ftemplates%2farticlecco_cdo%2faid%2f4896277%2fjewish%2fSpecial-Events.htm%23utm_medium%3dpage_tools%26utm_content%3ddesktop%26utm_source%3dwhatsapp">
				<i class="fa fa-whatsapp">
					<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" fill="#128c7e" width="1em" height="1em"><path d="M25 2C12.318 2 2 12.318 2 25c0 3.96 1.023 7.854 2.963 11.29L2.037 46.73c-.096.343-.003.711.245.966.191.197.451.304.718.304.08 0 .161-.01.24-.029l10.896-2.699C17.463 47.058 21.21 48 25 48c12.682 0 23-10.318 23-23S37.682 2 25 2zm11.57 31.116c-.492 1.362-2.852 2.605-3.986 2.772-1.018.149-2.306.213-3.72-.231-.857-.27-1.957-.628-3.366-1.229-5.923-2.526-9.791-8.415-10.087-8.804-.295-.389-2.411-3.161-2.411-6.03s1.525-4.28 2.067-4.864c.542-.584 1.181-.73 1.575-.73s.787.005 1.132.021c.363.018.85-.137 1.329 1.001.492 1.168 1.673 4.037 1.819 4.33.148.292.246.633.05 1.022s-.294.632-.59.973-.62.76-.886 1.022c-.296.291-.603.606-.259 1.19s1.529 2.493 3.285 4.039c2.255 1.986 4.158 2.602 4.748 2.894.59.292.935.243 1.279-.146.344-.39 1.476-1.703 1.869-2.286s.787-.487 1.329-.292c.542.194 3.445 1.604 4.035 1.896.59.292.984.438 1.132.681.148.242.148 1.41-.344 2.771z"/></svg>
				</i>
			</a>
<a class="page-tools__tool js-share-popup page-tools__tool--pinterest d-none d-lg-block" data-share-url="http://pinterest.com/pin/create/button/?url=https%3a%2f%2fwww.sosaz.org%2ftemplates%2farticlecco_cdo%2faid%2f4896277%2fjewish%2fSpecial-Events.htm%23utm_medium%3dpage_tools%26utm_content%3ddesktop%26utm_source%3dpinterest&amp;description=Special+Events+-+Smile+on+Seniors">
				<i class="fa fa-pinterest"></i>
			</a>
<a class="page-tools__tool" onclick="showEmailLayer(this);">
<i class="fa fa-envelope"></i>
</a>
</div>
<div class="page-tools__section page-tools__section--other js-page-tool-other">
<div class="page-tools__tool popover-parent d-lg-block">
<div class="popover popover--right align_left nowrap">
<div class="popover__content">
<label class="bold bottom_margin block">
Print Options:
</label>
<form class="vcenter" name="print-form" onsubmit="coPrint(event, 4896272);return false;">
<div>
<label><input type="checkbox" name="print-green"><span title="Save paper and ink">Print without images <i class="fa fa-leaf text-green"></i></span></label>
</div>
<br/>
<div class="center">
<button class="co-button page-tools__print-button">Print</button>
</div>
</form>
</div>
</div>
<i class="fa fa-print"></i>
</div>
</div>
</div>
<div class="js-fab-wrapper fab-wrapper">
<div class="fab">
<i class="fab-icon"></i>
</div>
</div>
</aside>
<!-- END CACHE -->
	</div>

				<div class="break_floats"></div>
			</div>
		</div>
	</div>
	<div id="footer">
		
	

		<div class="wrapper body_container">
			
				<div class="g960 footer_family_text bottom_padding">
					
		<div class="footer_container footer_text copyright_text">
			<div class="bottom_padding clear_float">
				<img class="footer_hr" src="https://w2.chabad.org/images/global/spacer.gif" vspace="12" width="100%" height="1" /><br />
				
				<div class="footer_inner_container clearfix">
					

					


	<div class="footer3"><b>Smile on Seniors • 2110 East Lincoln Drive, Phoenix, AZ 85016 • 602-492-7670 • SOS is a non-profit 501(c)3 supported by donations from the community.</b></div>
	<img src="https://w2.chabad.org/images/global/spacer.gif" width="1" height="6" border="0" /><br />




Powered by <a href="https://www.chabad.org/" target="_new" class="">Chabad.org</a> &copy; 1993-2026 <a href="/4026210" target="_blank" class="privacy-link">Privacy Policy</a>




					
				</div>
			</div>
		</div>
	


<div class="cs-f-social-icons">
	
			<a href="https://www.facebook.com/smileonseniors" class="fa fa-facebook facebook_homepage" title="Facebook"></a>
		
			<a href="https://www.instagram.com/smileonseniors" class="fa fa-instagram instagram_homepage" title="Instagram"></a>
		
</div>
	

				</div>
			
		</div>
	</div>

	
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/os/jquery-latest.min.js?v=278824AF"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/co/dist/CoLib.js?v=CC07618E"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/WebComponents/bundles/magen-cdo-global.js?v=5457FBE7"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/templates/sites6.js?v=E04072E1"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/custom/primarynavigation.js?v=76ABCD73"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/modules/pagetools.js?v=930B07AB"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/custom/BetaFeedback.js?v=2A22CA16"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/custom/multimedia/infolayer.js?v=ED1B8531"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/article/comments/reply-form-controller.js?v=DC70C970"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/custom/commentsloader.js?v=AD6AAB79"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/custom/subscribeprompt.js?v=86D84DC2"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/custom/deprecated.js?v=D506A83E"></script>
<script type="text/javascript" src="https://w2.chabad.org/scripts/js/OverrideJSDocumentWrite.js?v=9A0227AA"></script><script>$j = $j.fn ? $j : jQuery;$j(()=>{$q.forEach(f=>{try{f.call(window);}catch(ex){console.error(ex);}});})</script>
	

<script  language="javascript" type="text/javascript"> Co.Settings      = {CacheClassName:'js-cache-default',MosadName:'Smile on Seniors'}; Co.ArticleId     = '4896277';Co.SectionId     = 4896272;Co.PartnerSiteId = 0;Co.SiteId        = 8684;Co.IsMobilePage  = false;Co.IsResponsive  = false;Co.DbDomain      = 'sosaz.org';Co.LanguageCode  = '';Co.LoginStatus   = 'None';</script>

    



<script>
// Check if chaiclub
if (window.location.href === "https://www.sosaz.org/templates/donate_cdo/chaiclub") {
    // Change the text of the h1 element
    document.querySelector('.col.flex-1 h1').textContent = "Yes, count me in! I want to make a difference in seniors' lives with a monthly committed donation via the Chai Club.";

    // Change the text of the .description element
    document.querySelector('.description').innerHTML = "<b>Choose a meaningful amount for you, and partner and grow our community and wondrous offerings!</b><br>At SOS we believe people of all ages should enjoy happiness and dignity. And when we can do so together, as a community, it’s altogether different. Your support provides seniors today with socializing, a caring community and much more!";

    document.querySelector(".js-monthly").click();
    document.querySelector("#frequency-toggle").style.display = "none";
    document.querySelector(".monthly-note").style.display = "none";
    document.querySelector(".monthly-note").style.display = "none";
    
    var campaignSelect = document.querySelector('select[name="campaign_name"]');
    campaignSelect.value = "Nate Sachs Legacy Chai Club - (Select Monthly)";
    campaignSelect.style.display = "none";


        // Add a link under the .amount-wrapper element
    const amountWrapper = document.querySelector('.amount-wrapper');
    if (amountWrapper) {
        const link = document.createElement('a');
        link.href = "https://www.sosaz.org/templates/articlecco_cdo/aid/6560928/jewish/About-Chai-Club.htm";
        link.textContent = "Learn more about the Nate Sachs Legacy Chai Club and Frequently Asked Questions";
        link.classList.add('donation-link'); 
        amountWrapper.appendChild(link);
    }
}

</script><script>
//<![CDATA[
    /* \u003C====Upcoming Events Carousel (Google Sheets) ====> */
    if (window.location.pathname === '/' || window.location.pathname === '/default.aspx' || window.location.pathname === '') {

        (function() {

            // =========================================================
            // CONFIGURATION
            // =========================================================
            // Paste the Apps Script Web App /exec URL here
            var API_URL = 'https://script.google.com/macros/s/AKfycbxRTNyjcAQ6LtC760YQ_nUhwiSMWhR3m8Rs_kCObfqVcBLPZMKp_VJdShzGn-LVhNfRUQ/exec';
            var MAX_EVENTS = 10;
            var VIEW_ALL_URL = 'https://www.sosaz.org/templates/articlecco_cdo/aid/7477506/jewish/Upcoming-Events.htm';
            var DEFAULT_TAG_COLOR = '#212459';
            var HEADING_COLOR = '#ffb400';
            var NO_LOCATION_TEXT = 'Address provided with RSVP';

            // WHERE THE SECTION LANDS ON THE HOMEPAGE
            // The script drops it immediately after the block whose text contains
            // INSERT_AFTER_TEXT. If you know the exact CSS selector for that block,
            // put it in INSERT_AFTER_SELECTOR and the text search is skipped.
            var INSERT_AFTER_SELECTOR = '#BodyContainer > div > div.g960 > div > div.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.g960.no_margin.g960.no_margin > div > div:nth-child(2)';
            var INSERT_AFTER_TEXT = 'About Smile on Seniors';
            // ChabadOne wraps each homepage widget in a .hp-row. Climbing to the
            // nearest one of these lands on the whole About block every time,
            // instead of guessing how many parents to walk up.
            var INSERT_AFTER_BLOCK_SELECTOR = '.hp-row';
            // 'before' puts the carousel above the matched block, 'after' below it.
            var INSERT_POSITION = 'before';
            var INSERT_AFTER_LEVELS = 3;   // only used if the block selector finds nothing
            // =========================================================

            var tagColors = {};
            var tagPulse = {};
            var dayOfWeekMap = { 'sunday':0, 'monday':1, 'tuesday':2, 'wednesday':3, 'thursday':4, 'friday':5, 'saturday':6, 'shabbos':6, 'shabbat':6 };

            // Broken image fallback without inline handlers (Cloudflare WAF safe)
            document.addEventListener('error', function(e) {
                if (e.target && e.target.tagName && e.target.tagName.toLowerCase() === 'img') {
                    if (!e.target.dataset.fallbackApplied) {
                        e.target.dataset.fallbackApplied = 'true';
                        e.target.src = 'https://placehold.co/400x300/eee/ccc?text=Image+Not+Found';
                    }
                }
            }, true);

            function escapeAttr(str) { return String(str || '').replace(/"/g, '\u0026quot;'); }

            // A sheet value like "sosaz.org/benefit" has no protocol, so the browser
            // treats it as a path relative to the current page. Give it one.
            function normalizeUrl(u) {
                var v = String(u || '').trim();
                if (!v || v === '#') return '#';
                if (/^(https?:\/\/|mailto:|tel:|\/|#)/i.test(v)) return v;
                return 'https://' + v;
            }

            // ==== Date / calendar helpers ====
            // The API sends plain yyyy-mm-dd strings, built in the sheet's own
            // timezone. Parsing the parts by hand keeps it a local date and avoids
            // the UTC shift that new Date('2026-03-22') would introduce.
            function parseYmd(s) {
                if (!s) return null;
                var parts = String(s).trim().split('-');
                if (parts.length !== 3) return null;
                var d = new Date(parseInt(parts[0], 10), parseInt(parts[1], 10) - 1, parseInt(parts[2], 10));
                if (isNaN(d.getTime())) return null;
                d.setHours(0, 0, 0, 0);
                return d;
            }

            function parseTimeToParts(timeStr) {
                var hours = 0, mins = 0, ok = false;
                if (timeStr) {
                    var match = String(timeStr).match(/(\d+):(\d+)\s*(AM|PM)/i);
                    if (match) {
                        hours = parseInt(match[1], 10); mins = parseInt(match[2], 10);
                        if (match[3].toUpperCase() === 'PM' && 12 > hours) hours += 12;
                        if (match[3].toUpperCase() === 'AM' && hours === 12) hours = 0;
                        ok = true;
                    }
                }
                return { hours: hours, mins: mins, ok: ok };
            }

            function getStartEnd(dateObj, timeStr) {
                var p = parseTimeToParts(timeStr);
                var start = new Date(dateObj);
                start.setHours(p.hours, p.mins, 0, 0);
                return { start: start, end: new Date(start.getTime() + 60 * 60 * 1000) };
            }

            function formatICSDate(d) {
                return d.getUTCFullYear() + String(d.getUTCMonth() + 1).padStart(2, '0') + String(d.getUTCDate()).padStart(2, '0') + 'T' + String(d.getUTCHours()).padStart(2, '0') + String(d.getUTCMinutes()).padStart(2, '0') + String(d.getUTCSeconds()).padStart(2, '0') + 'Z';
            }

            function stripHtml(html) { var d = document.createElement('div'); d.innerHTML = html || ''; return d.textContent || d.innerText || ''; }

            function icsEscape(str) {
                return String(str || '').replace(/\\/g, '\\\\').replace(/;/g, '\\;').replace(/,/g, '\\,').replace(/\r?\n/g, '\\n');
            }

            function buildGCalUrl(ev) {
                var se = getStartEnd(ev.dateObj, ev.time);
                return 'https://calendar.google.com/calendar/render?action=TEMPLATE\u0026text=' + encodeURIComponent(ev.title) +
                       '\u0026dates=' + formatICSDate(se.start) + '/' + formatICSDate(se.end) +
                       '\u0026details=' + encodeURIComponent(stripHtml(ev.description)) +
                       '\u0026location=' + encodeURIComponent(ev.location || '');
            }

            function buildIcsUrl(ev) {
                var se = getStartEnd(ev.dateObj, ev.time);
                var out = 'BEGIN:VCALENDAR\r\nVERSION:2.0\r\nPRODID:-//Chabad Events//EN\r\nCALSCALE:GREGORIAN\r\n';
                out += 'BEGIN:VEVENT\r\n';
                out += 'UID:' + formatICSDate(se.start) + '-' + Math.floor(Math.random() * 100000) + '@chabadevents\r\n';
                out += 'DTSTAMP:' + formatICSDate(new Date()) + '\r\n';
                out += 'DTSTART:' + formatICSDate(se.start) + '\r\n';
                out += 'DTEND:' + formatICSDate(se.end) + '\r\n';
                out += 'SUMMARY:' + icsEscape(ev.title) + '\r\n';
                out += 'DESCRIPTION:' + icsEscape(stripHtml(ev.description)) + '\r\n';
                out += 'LOCATION:' + icsEscape(ev.location) + '\r\n';
                out += 'END:VEVENT\r\nEND:VCALENDAR';
                return URL.createObjectURL(new Blob([out], { type: 'text/calendar;charset=utf-8' }));
            }

            function fmtFull(d) { return d.toLocaleDateString('en-US', { weekday: 'long', month: 'long', day: 'numeric' }).toUpperCase(); }

            function cleanTime(t) {
                var timeText = t ? String(t).trim().toUpperCase() : '';
                if (timeText) timeText = timeText.replace(/(\d)([AP]M)$/, '$1 $2');
                return timeText;
            }

            // ==== Loading the data ====
            // Apps Script answers /exec with a 302 to script.googleusercontent.com.
            // Browsers cache that redirect, but its user_content_key expires, so a
            // cached 302 later lands on a 404 HTML page. A cache-busting param keeps
            // each request fresh; if it still fails we fall back to JSONP, which goes
            // through a script tag and sidesteps the redirect and CORS entirely.
            function cacheBust(url, extra) {
                var join = (url.indexOf('?') === -1) ? '?' : '\u0026';
                return url + join + 't=' + Date.now() + (extra || '');
            }

            function loadEventsData(onOk, onErr) {
                fetch(cacheBust(API_URL), { cache: 'no-store' })
                    .then(function(r) { return r.text(); })
                    .then(function(txt) {
                        var data;
                        try { data = JSON.parse(txt); }
                        catch (e) { throw new Error('Reply was not JSON (the Apps Script redirect probably expired)'); }
                        onOk(data);
                    })['catch'](function(err) {
                        console.warn('Direct fetch failed, retrying over JSONP:', err.message || err);
                        jsonpLoad(onOk, onErr);
                    });
            }

            function jsonpLoad(onOk, onErr) {
                var cbName = 'sosEventsCb' + Date.now();
                var settled = false;
                var script = document.createElement('script');

                function cleanup() {
                    try { delete window[cbName]; } catch (e) { window[cbName] = undefined; }
                    if (script.parentNode) script.parentNode.removeChild(script);
                }

                window[cbName] = function(data) { settled = true; cleanup(); onOk(data); };
                script.src = cacheBust(API_URL, '\u0026callback=' + cbName);
                script.onerror = function() { if (!settled) { settled = true; cleanup(); onErr(new Error('JSONP request failed')); } };
                setTimeout(function() { if (!settled) { settled = true; cleanup(); onErr(new Error('JSONP timed out')); } }, 15000);
                document.head.appendChild(script);
            }

            // ==== Main ====
            function runTransformation() {
                loadEventsData(function(data) {
                        if (!data || !data.events) throw new Error((data && data.error) ? data.error : 'Empty response from the API');

                        // Tag colours arrive keyed by lowercase tag name
                        if (data.tags) {
                            for (var key in data.tags) {
                                if (!data.tags.hasOwnProperty(key)) continue;
                                var entry = data.tags[key] || {};
                                if (entry.color) tagColors[key] = entry.color;
                                if (entry.pulse) tagPulse[key] = true;
                            }
                        }

                        var processedEvents = [];
                        var today = new Date(); today.setHours(0, 0, 0, 0);

                        data.events.forEach(function(row) {
                            if (!row.title) return;

                            var base = {
                                title: row.title,
                                description: row.description || '',
                                imageSrc: row.image || 'https://placehold.co/600x400/eee/ccc?text=Event+Image',
                                location: row.location || '',
                                moreInfoLink: normalizeUrl(row.link),
                                time: row.time || '',
                                tags: row.tags || []
                            };

                            var dateObj = parseYmd(row.date);
                            var untilDate = parseYmd(row.until);
                            var recurRaw = String(row.recurring || '').toLowerCase();
                            var isRecurring = (recurRaw === 'true' || recurRaw === 'yes' || recurRaw === 'weekly' || recurRaw === 'bi-weekly' || recurRaw === 'monthly');
                            var dayOfWeekStr = String(row.dayOfWeek || '').toLowerCase();

                            function push(targetDate) {
                                var copy = {};
                                for (var k in base) { if (base.hasOwnProperty(k)) copy[k] = base[k]; }
                                copy.dateObj = new Date(targetDate);
                                processedEvents.push(copy);
                            }

                            if (isRecurring && untilDate) {
                                if (recurRaw === 'monthly' && dateObj) {
                                    var startFrom = new Date(dateObj);
                                    var mCount = 0;
                                    while (untilDate >= startFrom && 36 > mCount) {
                                        if (startFrom >= today) push(startFrom);
                                        startFrom.setMonth(startFrom.getMonth() + 1);
                                        mCount++;
                                    }
                                } else {
                                    var targetDay = dayOfWeekMap[dayOfWeekStr];
                                    if (targetDay !== undefined) {
                                        var stepDays = (recurRaw === 'bi-weekly') ? 14 : 7;
                                        var cursor = new Date(); cursor.setHours(0, 0, 0, 0);
                                        if (dateObj && dateObj > cursor) cursor = new Date(dateObj);
                                        var guard = 0;
                                        while (cursor.getDay() !== targetDay && 7 > guard) { cursor.setDate(cursor.getDate() + 1); guard++; }
                                        var loopCount = 0;
                                        while (untilDate >= cursor && 60 > loopCount) {
                                            if (cursor >= today) push(cursor);
                                            cursor.setDate(cursor.getDate() + stepDays);
                                            loopCount++;
                                        }
                                    }
                                }
                            } else if (dateObj && dateObj >= today) {
                                push(dateObj);
                            }
                        });

                        processedEvents.sort(function(a, b) {
                            if (a.dateObj - b.dateObj !== 0) return a.dateObj - b.dateObj;
                            var pa = parseTimeToParts(a.time), pb = parseTimeToParts(b.time);
                            return (pa.hours * 60 + pa.mins) - (pb.hours * 60 + pb.mins);
                        });

                        var featured = processedEvents.slice(0, MAX_EVENTS);
                        if (featured.length === 0) return;

                        buildSection(featured);
                }, function(error) { console.error('Error fetching events:', error); });
            }

            function buildSection(featured) {
                var eventsSection = document.createElement('div');
                eventsSection.className = 'injected-featured-events-section';
                eventsSection.id = 'injected-upcoming-events-section';
                eventsSection.innerHTML = '\u003Cdiv class="injected-featured-events-header">\u003Ch2>Upcoming Events\u003C/h2>\u003C/div>';

                var carouselContainer = document.createElement('div');
                carouselContainer.className = 'injected-events-carousel-container';
                var carouselWrapper = document.createElement('div');
                carouselWrapper.className = 'injected-events-carousel-wrapper';

                featured.forEach(function(ev) {
                    var cardEl = document.createElement('div');
                    cardEl.className = 'unified-event-card';

                    var tagsHtml = ev.tags.map(function(t) {
                        var key = t.toLowerCase();
                        var color = tagColors[key] || DEFAULT_TAG_COLOR;
                        var cls = tagPulse[key] ? 'uec-category uec-pulse-tag' : 'uec-category';
                        return '\u003Cspan class="' + cls + '" style="background-color: ' + color + '">' + t + '\u003C/span>';
                    }).join('');

                    var timeText = cleanTime(ev.time);
                    var dateTimeString = timeText ? (fmtFull(ev.dateObj) + ' | ' + timeText) : fmtFull(ev.dateObj);

                    var locationText = ev.location || NO_LOCATION_TEXT;

                    cardEl.innerHTML =
                        '\u003Cdiv class="uec-image">\u003Ca href="' + ev.moreInfoLink + '">\u003Cimg src="' + ev.imageSrc + '" alt="' + escapeAttr(ev.title) + '" />\u003C/a>\u003C/div>' +
                        '\u003Cdiv class="uec-body">' +
                            '\u003Cdiv class="uec-date">\u003Ci class="far fa-clock">\u003C/i> ' + dateTimeString + '\u003C/div>' +
                            '\u003Cdiv class="uec-location">\u003Ci class="fas fa-map-marker-alt">\u003C/i> ' + locationText + '\u003C/div>' +
                            '\u003Ch3 class="uec-title">\u003Ca href="' + ev.moreInfoLink + '">' + ev.title + '\u003C/a>\u003C/h3>' +
                            '\u003Cdiv class="uec-desc" title="' + escapeAttr(ev.description) + '">' + ev.description + '\u003C/div>' +
                            '\u003Cdiv class="uec-actions">' +
                                '\u003Cdiv class="uec-main-action-row">\u003Ca href="' + ev.moreInfoLink + '" class="uec-btn-main">MORE INFO\u003C/a>\u003C/div>' +
                                '\u003Cdiv class="uec-cal-col">' +
                                    '\u003Ca href="' + buildGCalUrl(ev) + '" target="_blank" class="uec-btn-cal" title="Add to Google Calendar">\u003Ci class="fab fa-google">\u003C/i> Add to Google Calendar\u003C/a>' +
                                    '\u003Ca href="' + buildIcsUrl(ev) + '" download="event.ics" class="uec-btn-cal" title="Add to Apple/Outlook Calendar">\u003Ci class="fab fa-apple">\u003C/i> Add to Apple / Outlook\u003C/a>' +
                                '\u003C/div>' +
                            '\u003C/div>' +
                            '\u003Cdiv class="uec-tags">' + tagsHtml + '\u003C/div>' +
                        '\u003C/div>';

                    carouselWrapper.appendChild(cardEl);
                });

                var viewAllCard = document.createElement('a');
                viewAllCard.className = 'unified-event-card view-all-card';
                viewAllCard.href = VIEW_ALL_URL;
                viewAllCard.innerHTML = '\u003Cdiv class="view-all-content">\u003Ch3>View All\u003C/h3>\u003Cp>Upcoming Events\u003C/p>\u003Cspan class="view-all-arrow">\u2192\u003C/span>\u003C/div>';
                carouselWrapper.appendChild(viewAllCard);

                carouselContainer.appendChild(carouselWrapper);
                eventsSection.appendChild(carouselContainer);

                var swipeHint = document.createElement('div');
                swipeHint.className = 'mobile-swipe-hint';
                swipeHint.innerHTML = '\u003Cspan>Swipe for more events\u003C/span> \u003Cspan class="arrow">\u2192\u003C/span>';
                eventsSection.appendChild(swipeHint);

                if (carouselWrapper.children.length > 3) {
                    var prevButton = document.createElement('button');
                    prevButton.className = 'events-carousel-arrow prev'; prevButton.innerHTML = '\u276E';
                    var nextButton = document.createElement('button');
                    nextButton.className = 'events-carousel-arrow next'; nextButton.innerHTML = '\u276F';
                    carouselContainer.appendChild(prevButton);
                    carouselContainer.appendChild(nextButton);

                    var currentIndex = 0;
                    var itemsToShowDesktop = 3;
                    var totalItems = carouselWrapper.children.length;

                    var updateCarousel = function() {
                        if (carouselWrapper.children.length === 0) return;
                        var cardWidth = carouselWrapper.children[0].offsetWidth;
                        var gap = 30;
                        carouselWrapper.style.transform = 'translateX(-' + ((cardWidth + gap) * currentIndex) + 'px)';
                        prevButton.disabled = currentIndex === 0;
                        nextButton.disabled = currentIndex >= totalItems - itemsToShowDesktop;
                    };

                    prevButton.addEventListener('click', function() { if (currentIndex > 0) { currentIndex--; updateCarousel(); } });
                    nextButton.addEventListener('click', function() { if (totalItems - itemsToShowDesktop > currentIndex) { currentIndex++; updateCarousel(); } });

                    updateCarousel();
                    window.addEventListener('resize', updateCarousel);
                }

                placeSection(eventsSection);
            }

            // Finds the block to sit after: explicit selector first, then a text
            // search for INSERT_AFTER_TEXT, then the old structural selector.
            function findAnchor() {
                if (INSERT_AFTER_SELECTOR) {
                    try {
                        var chosen = document.querySelector(INSERT_AFTER_SELECTOR);
                        if (chosen) return chosen;
                    } catch (e) {}
                }

                if (INSERT_AFTER_TEXT) {
                    var needle = INSERT_AFTER_TEXT.toLowerCase();
                    var candidates = document.querySelectorAll('h1, h2, h3, h4, h5, strong, b, p, span, div');

                    // Several nested elements can contain the phrase. Take the one
                    // with the least text, and on a tie take the LAST such element -
                    // a heading and its wrapper div have identical text, and document
                    // order puts the wrapper first, so >= keeps the inner heading.
                    var el = null, bestLen = 100000;
                    for (var i = 0; candidates.length > i; i++) {
                        var cand = candidates[i];
                        var ctxt = (cand.textContent || '').trim().toLowerCase();
                        if (ctxt.indexOf(needle) !== -1 && 200 > ctxt.length && bestLen >= ctxt.length) {
                            el = cand; bestLen = ctxt.length;
                        }
                    }

                    if (el) {
                        // Preferred: jump straight to the widget block that wraps it.
                        if (INSERT_AFTER_BLOCK_SELECTOR && el.closest) {
                            try {
                                var wrapper = el.closest(INSERT_AFTER_BLOCK_SELECTOR);
                                if (wrapper) return wrapper;
                            } catch (e) {}
                        }

                        // Fallback: climb, stopping before any parent holding other
                        // headings. h5 and h6 count - ChabadOne widget titles are h5.
                        var block = el;
                        for (var lvl = 0; INSERT_AFTER_LEVELS > lvl; lvl++) {
                            var parent = block.parentElement;
                            if (!parent || parent === document.body) break;
                            if (parent.querySelectorAll('h1, h2, h3, h4, h5, h6').length > 1) break;
                            block = parent;
                        }
                        return block;
                    }
                }

                try { return document.querySelector('#BodyContainer > div > div.g960 > div > div.g960.no_margin > div > div:nth-child(2)'); }
                catch (e) { return null; }
            }

            function placeSection(eventsSection) {
                var anchor = findAnchor();
                if (anchor && anchor.parentElement) {
                    if (INSERT_POSITION === 'before') {
                        anchor.parentElement.insertBefore(eventsSection, anchor);
                    } else {
                        anchor.parentElement.insertBefore(eventsSection, anchor.nextSibling);
                    }
                } else {
                    document.body.appendChild(eventsSection);
                }
            }

            function injectCSS() {
                if (!document.querySelector('link[href*="font-awesome"]')) {
                    var fa = document.createElement('link');
                    fa.rel = 'stylesheet';
                    fa.href = 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css';
                    document.head.appendChild(fa);
                }

                var style = document.createElement('style');
                style.textContent = ''
                    + '@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900\u0026display=swap");'
                    + '.injected-featured-events-section { padding: 80px 20px; background-color: #f8f9fa; font-family: "Inter", sans-serif; box-sizing: border-box; }'
                    + '.injected-featured-events-section * { box-sizing: border-box; }'
                    + '.injected-featured-events-header { text-align: center; margin-bottom: 50px; max-width: 800px; margin-left: auto; margin-right: auto; }'
                    + '.injected-featured-events-header h2 { font-size: 42px; font-weight: 800; color: ' + HEADING_COLOR + ' !important; letter-spacing: -1px; margin-bottom: 10px; position: relative; display: inline-block; }'
                    + '.injected-featured-events-header h2:after { content: ""; display: block; width: 60px; height: 4px; background: ' + HEADING_COLOR + '; margin: 15px auto 0; border-radius: 2px; }'
                    + '.injected-events-carousel-container { position: relative; max-width: 1200px; margin: 0 auto; overflow: hidden; padding: 20px 0 40px 0; }'
                    + '.injected-events-carousel-wrapper { display: flex; gap: 30px; transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1); align-items: stretch; }'

                    + '.unified-event-card { flex: 0 0 calc(33.333% - 20px); background: #ffffff; border-radius: 16px; overflow: hidden; box-shadow: 0 10px 40px -10px rgba(33, 36, 89, 0.1); display: flex; flex-direction: column; border: 1px solid rgba(0,0,0,0.05); transition: transform 0.3s ease, box-shadow 0.3s ease; height: auto; }'
                    + '.unified-event-card:hover { transform: translateY(-8px); box-shadow: 0 20px 50px -10px rgba(33, 36, 89, 0.2); }'
                    + '.uec-image { position: relative; height: 200px !important; overflow: hidden; background-color: #eee; flex-shrink: 0; }'
                    + '.uec-image img { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover !important; object-position: center !important; display: block; margin: 0 !important; padding: 0 !important; transition: transform 0.5s ease; }'
                    + '.unified-event-card:hover .uec-image img { transform: scale(1.05); }'
                    + '.uec-body { padding: 25px; flex-grow: 1; display: flex; flex-direction: column; }'

                    + '.uec-tags { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; margin: 14px 0 0; padding-top: 14px; border-top: 1px solid #eef0f4; min-height: 32px; }'
                    + '.uec-category { display: inline-flex; align-items: center; justify-content: center; font-size: 10px; font-weight: 700; text-transform: uppercase; padding: 4px 12px; border-radius: 50px; color: white; white-space: nowrap; }'
                    + '.uec-pulse-tag { box-shadow: 0 0 0 0 rgba(0, 0, 0, 1); transform: scale(1); animation: pulse-tag 2s infinite; }'
                    + '@keyframes pulse-tag { 0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.2); } 70% { transform: scale(1); box-shadow: 0 0 0 5px rgba(0, 0, 0, 0); } 100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); } }'

                    + '.uec-date { font-family: "Inter", sans-serif; color: #212459; font-weight: 800; font-size: 13px; letter-spacing: 0.5px; margin-bottom: 4px; display: flex; align-items: center; gap: 6px; }'
                    + '.uec-location { font-family: "Inter", sans-serif; font-size: 13px; font-weight: 500; color: #555; margin-bottom: 10px; display: flex; align-items: flex-start; gap: 6px; }'
                    + '.uec-location i { margin-top: 3px; }'
                    + '.uec-title { font-family: "Inter", sans-serif; color: #212459; margin: 0 0 10px; line-height: 1.3; }'
                    + '.uec-title a { font-size: 20px !important; font-weight: 800 !important; color: #212459 !important; text-decoration: none; transition: color 0.2s; }'
                    + '.uec-title a:hover { color: #6b1457 !important; }'
                    + '.uec-desc { font-size: 13px; color: #666; line-height: 1.5; margin: 0 0 20px; flex-grow: 1; max-height: 60px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }'

                    + '.uec-actions { margin-top: auto; display: flex; flex-direction: column; gap: 8px; }'
                    + '.uec-main-action-row { display: flex; gap: 8px; width: 100%; align-items: stretch; margin-bottom: 8px; }'
                    + '.uec-btn-main { flex-grow: 1; display: flex; align-items: center; justify-content: center; background-color: #212459; color: #ffffff !important; padding: 10px; border-radius: 8px; text-decoration: none; font-weight: 700; text-align: center; border: 2px solid #212459; transition: all 0.2s; font-size: 14px; margin: 0; }'
                    + '.uec-btn-main:hover { background-color: #6b1457; border-color: #6b1457; color: #ffffff !important; }'
                    + '.uec-cal-col { display: flex; flex-direction: column; gap: 8px; }'
                    + '.uec-btn-cal { display: block; width: 100%; text-align: center; padding: 8px; border-radius: 8px; font-size: 12px; font-weight: 600; color: #555 !important; background: #f0f0f0; text-decoration: none; transition: all 0.2s; box-sizing: border-box; }'
                    + '.uec-btn-cal:hover { background: #e0e0e0; color: #222 !important; }'
                    + '.uec-btn-cal i { margin-right: 4px; }'
                    + '.uec-cal-col a.uec-btn-cal i.fab, .uec-cal-col a.uec-btn-cal i.fas { background: transparent !important; border-radius: 0 !important; width: auto !important; height: auto !important; padding: 0 !important; margin: 0 4px 0 0 !important; display: inline-block !important; color: inherit !important; line-height: inherit !important; text-align: left !important; box-shadow: none !important; }'
                    + '.uec-cal-col a.uec-btn-cal i.fab::before, .uec-cal-col a.uec-btn-cal i.fas::before { position: static !important; transform: none !important; }'

                    + '.view-all-card { justify-content: center; align-items: center; text-align: center; background-color: #ffffff; border: 2px dashed #afc78b; text-decoration: none; }'
                    + '.view-all-card:hover { background-color: #fcfcfc; border-color: #6b1457; }'
                    + '.view-all-card .view-all-content h3 { font-size: 22px; font-weight: 800; color: #6b1457; margin: 0 0 5px; text-transform: uppercase; font-family: "Inter", sans-serif; }'
                    + '.view-all-card .view-all-content p { font-size: 15px; color: #888; margin: 0 0 15px; font-family: "Inter", sans-serif; }'
                    + '.view-all-card .view-all-arrow { font-size: 32px; font-weight: bold; color: #afc78b; transition: transform 0.3s; display: inline-block; }'
                    + '.view-all-card:hover .view-all-arrow { transform: translateX(5px); color: #6b1457; }'

                    + '.events-carousel-arrow { position: absolute; top: 50%; transform: translateY(-50%); background-color: #fff; border: 1px solid #eee; border-radius: 50%; width: 48px; height: 48px; box-shadow: 0 5px 15px rgba(0,0,0,0.1); cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 18px; color: #212459; z-index: 10; transition: all 0.2s; }'
                    + '.events-carousel-arrow:hover { background-color: #212459; color: #fff; }'
                    + '.events-carousel-arrow.prev { left: 0px; }'
                    + '.events-carousel-arrow.next { right: 0px; }'
                    + '.mobile-swipe-hint { display: none; text-align: center; margin-top: 10px; font-family: "Inter", sans-serif; color: #999; font-size: 13px; align-items: center; justify-content: center; gap: 8px; }'

                    + '@media (max-width: 1250px) { .events-carousel-arrow.prev { left: 10px; } .events-carousel-arrow.next { right: 10px; } }'
                    + '@media (max-width: 900px) { .unified-event-card { flex-basis: calc(50% - 15px); } }'
                    + '@media (max-width: 600px) {'
                    + '  .injected-featured-events-header h2 { font-size: 28px; }'
                    + '  .injected-events-carousel-container { overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; -ms-overflow-style: none; padding: 0 20px 20px 20px; margin: 0 -20px; }'
                    + '  .injected-events-carousel-container::-webkit-scrollbar { display: none; }'
                    + '  .injected-events-carousel-wrapper { width: max-content; transform: none !important; padding-right: 20px; gap: 15px; }'
                    + '  .unified-event-card { flex-basis: 72vw; max-width: 320px; scroll-snap-align: start; box-shadow: 0 5px 15px rgba(0,0,0,0.1); }'
                    + '  .uec-image { height: 150px !important; }'
                    + '  .uec-body { padding: 16px; }'
                    + '  .uec-title a { font-size: 17px !important; }'
                    + '  .uec-desc { font-size: 12px; max-height: 54px; margin-bottom: 14px; }'
                    + '  .uec-date, .uec-location { font-size: 12px; }'
                    + '  .uec-btn-main { padding: 9px; font-size: 13px; }'
                    + '  .uec-btn-cal { padding: 7px; font-size: 11px; }'
                    + '  .uec-tags { margin-top: 10px; padding-top: 10px; min-height: 28px; }'
                    + '  .events-carousel-arrow { display: none; }'
                    + '  .mobile-swipe-hint { display: flex; }'
                    + '}';
                document.head.appendChild(style);
            }

            injectCSS();
            if (document.readyState === 'complete' || document.readyState === 'interactive') runTransformation();
            else window.addEventListener('DOMContentLoaded', runTransformation);

        })();
    }
//]]>
</script>
</body>
</html>