<!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 name="description" content="Time and Date TBA" />

<meta property="og:image" content="https://w2.chabad.org/media/images/923/MlYF9234257.jpg" itemprop="image" width="130" height="131" />
<meta property="og:image:width" content="130" />
<meta property="og:image:height" content="131" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<meta name="keywords" content="Delmar,Loop,Public,Lighting,Join,Chabad,to,celebrate,Chanukah,on,&amp;quot;one,of,10,great,streets,in,America.&amp;quot;,," />
<meta name="title" content="Delmar Loop Public Lighting - Join Chabad to celebrate Chanukah on &quot;one of 10 great streets in America.&quot; - ChabadWashU.org" />
<meta property="og:type" content="website" />
<meta name="scope-aids" content="73150-73154-75990-6193425-2051021" />
<meta name="article-keywords" content="1675-6760-2170-2898" />
<meta name="scope-aid" content="73150" />
<meta name="scope-aid" content="73154" />
<meta name="scope-aid" content="75990" />
<meta name="scope-aid" content="6193425" />
<meta name="scope-aid" content="2051021" />
<meta name="article-keyword" content="1675" />
<meta name="article-keyword" content="6760" />
<meta name="article-keyword" content="2170" />
<meta name="article-keyword" content="2898" />
<meta property="og:url" content="https://www.chabadwashu.org/templates/articlecco_cdo/aid/2051021/jewish/Delmar-Loop-Public-Lighting.htm" />
<meta property="twitter:card" content="summary_large_image" />
<meta property="twitter:site" content="@chabad" />
<meta property="og:title" content="Delmar Loop Public Lighting - Join Chabad to celebrate Chanukah on &quot;one of 10 great streets in America.&quot;" /><link rel="canonical" href="https://www.chabadwashu.org/templates/articlecco_cdo/aid/2051021/jewish/Delmar-Loop-Public-Lighting.htm" />
<link rel="image_src" href="https://w2.chabad.org/media/images/923/MlYF9234257.jpg" />
<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/green-theme.css?v=F6327DC1" 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>
	Delmar Loop Public Lighting - Join Chabad to celebrate Chanukah on &quot;one of 10 great streets in America.&quot; - ChabadWashU.org
</title>
	



<script>
	window.dataLayer = window.dataLayer || [];
	dataLayer.push({"event":"datalayer-initialized","page":{"numberOfComments":0,"publicationDate":"2012-11-25","primaryArticleId":2051021,"title":"Delmar Loop Public Lighting - Join Chabad to celebrate Chanukah on &quot;one of 10 great streets in America.&quot;","author":"","authorId":0,"contentLevel1":"My Site","contentLevel2":"WashU Undergrads","contentLevel3":"Chanukah 2025","contentLevel4":"Delmar Loop Public Lighting ","siteName":"ChabadWashU.org"},"time":{"upcomingHoliday":"Sukkot","daysToUpcomingHoliday":-4,"hebrewDate":"5787-07-19"}});
		dataLayer.push({ 'articleHierarchy': '-73150-73154-75990-6193425-2051021-', 'keywords': '-k2898-k2170-k6760-k1675-', 'k': '-73150-73154-75990-6193425-2051021--k2898-k2170-k6760-k1675-' });
	
</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 = 1076046;var sc_partition = 1;var sc_invisible = 1;var sc_remove_link=1;var sc_security = "cf925eec";var sc_https = 1;
	</script>
	<script type="text/javascript" src="https://secure.statcounter.com/counter/counter_xhtml.js" defer async></script>
	<noscript><img src="//c2.statcounter.com/counter.php?sc_project=1076046&amp;java=0&amp;security=cf925eec&amp;invisible=1" border="0" /> </noscript>
	<!-- End of StatCounter Code -->


<meta name="google-site-verification" content="O69ZPwMt1_IrR50LhNSS_x6BNGsvCye4tzsKPCh1e10" />
<meta property="fb:admins" content="500219161", "chabadWashU" />
<meta property="og:type" content="article" />
<link rel="stylesheet" href="https://w2.Chabad.org/images/Shluchim/minisites/themes/form-redesign/form-style.css?v=7/17/2026" />

<style>
body.embedded .form-line {border-bottom:0;}
</style>


<noscript><img height="1" width="1" border="0" alt="" style="display:none" src="https://www.facebook.com/tr?id=612234658865892&ev=NoScript" /></noscript><meta name="google-site-verification" content="AoRYLshRom6yPv1lYbdNA2dcgNSd1nCGpyecn6yjJGM" />
<style> 
.cs-f-social-icons {
    font-size: xx-large;
}
* { font-family:  var(--cwu-font) !important;}
@media(min-width:768px){
.hp-table .hp-row-first{ padding-top: 130px !important;}
#cwu-typer {text-align: left !important;}}
.hp-table>:nth-of-type(2n){ background: white !important;}
#BodyContainer > div > div.g960 > div > div.g960.g960.g960.g960.g960.g960.no_margin.g960.no_margin > div > section.cwu-cta {
  background: var(--cwu-green) !important;
  padding: 60px 24px;
}

/* ══════════════════════════════════════════════════════
   HERO CAPTION OVERLAY
   ══════════════════════════════════════════════════════ */
.cwu-fade-panel {
  position: relative;
}

.cwu-hero-caption {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  background: linear-gradient(to top,
              rgba(21,115,100,.85) 0%,
              rgba(21,115,100,.35) 40%,
              rgba(21,115,100,0)   70%) !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.cwu-hero-caption-inner {
  max-width: 640px !important;
  padding: 0 44px 64px !important; 
  color: var(--cwu-white) !important;
}

.cwu-hero-title {
  font-family: var(--cwu-font) !important;
  font-size: clamp(28px, 3.4vw, 52px) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  color: var(--cwu-white) !important;
  margin: 0 0 14px !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.28) !important;
}

.cwu-hero-desc {
  font-family: var(--cwu-font) !important;
  font-size: clamp(15px, 1.4vw, 19px) !important;
  font-weight: 300 !important;
  line-height: 1.6 !important;
  color: var(--cwu-white) !important;
  margin: 0 0 22px !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.25) !important;
}

.cwu-hero-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--cwu-font) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--cwu-green) !important;
  background: var(--cwu-white) !important;
  padding: 13px 28px !important;
  border-radius: 6px !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.18) !important;
  transition: background .3s, color .3s !important;
pointer-events: auto !important;   /* ADD THIS */
  cursor: pointer !important;        /* ADD THIS */
}
.cwu-fade-panel:hover .cwu-hero-btn {
  background: var(--cwu-green-light) !important;
  color: var(--cwu-green) !important;
}
.cwu-hero-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important; 
}

/* Tablet */
@media (max-width: 1100px) {
  .cwu-hero-caption-inner { padding: 0 32px 48px; max-width: 520px !important; }
}

/* Mobile */
@media (max-width: 768px) {
  .cwu-hero-caption {
    background: linear-gradient(to top,
                rgba(21,115,100,.9) 0%,
                rgba(21,115,100,.4) 55%,
                rgba(21,115,100,0)  90%) !important;
  }
  .cwu-hero-caption-inner { padding: 0 18px 30px !important; }
  .cwu-hero-title { margin-bottom: 8px !important; }
  .cwu-hero-desc  { margin-bottom: 14px; -webkit-line-clamp: 3;
                    display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden !important; }
  .cwu-hero-btn   { padding: 10px 20px; font-size: 14px !important; }
}
#BodyContainer > div > div.g960 > div > div.g960.g960.g960.g960.g960.g960.g960.no_margin.g960.no_margin > div > div:nth-child(6){ padding: 22px 10px !important;}
</style>


<!-- =====================================================
     ChabadWashU Custom Redesign — HEADER CODE
     Paste this entire block into: Custom Head Code
     ===================================================== -->
<link href="https://fonts.googleapis.com/css2?family=Commissioner:wght@100;300;400;600;700;800&display=swap" rel="stylesheet">
<style>
/* =====================================================
   ChabadWashU Custom Redesign | v1.2
   All classes prefixed cwu- to avoid CMS conflicts
   ===================================================== */

:root {
  --cwu-green:       #157364;
  --cwu-green-light: #d6eae7;
  --cwu-gray-light:  #eceeed;
  --cwu-white:       #ffffff;
  --cwu-dark:        #313131;
  --cwu-body:        #4d4d4d;
  --cwu-font:        'Commissioner', sans-serif;
}

/* Remove link underlines sitewide */
a, a:hover, a:focus, a:active, a:visited {
  text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════
   NAV — always green, always white text
   ══════════════════════════════════════════════════════ */
#header,
.header-wrapper,
#header_container,
.header_container,
.site-nav-wrapper,
.co_menu_container,
#co_menu_container_wrapper {
  background-color: var(--cwu-green) !important;
}

#header .links,
#header .branding-search {
  background-color: var(--cwu-green) !important;
}

/* All nav text → white */
.co_menu_item .parent a,
.co_menu_item .parent a:visited,
.co_menu_item a.bg_extension,
.main_menu_container .co_menu_item > span a,
.topBarLink a,
.topBarLink a:visited,
.search-trigger,
.search-trigger i,
#mychabad_login_bar a,
#mychabad_login_bar a:visited,
#header_branding a,
#header_branding .site_title,
#header_branding .site_subtitle {
  color: var(--cwu-white) !important;
}

/* Nav items — bold */
.co_menu_item .parent a,
.co_menu_item .parent a:visited,
.main_menu_container .co_menu_item > span a {
  font-weight: 700 !important;
}

/* Hamburger lines */
.cs-mobile-menu-open span {
  background: var(--cwu-white) !important;
}

/* Subtle dividers */
.co_menu_item_divider img {
  opacity: 0.35;
}

/* ══════════════════════════════════════════════════════
   HERO — 90vh desktop, shrinks on mobile
   ══════════════════════════════════════════════════════ */
.promo_slider,
.promo_slider .wrapper,
.promo_slider .widget_content {
  height: 90vh      !important;
  min-height: 480px !important;
  max-height: 900px !important;
}

.promo_slider .slider {
  height: 100%     !important;
  overflow: hidden !important;
  position: relative !important;
}

.promo_slider .slides {
  height: 100% !important;
  width: 100%  !important;
  position: relative !important;
}

.promo_slider .slide_wrapper {
  height: 100% !important;
  width: 100%  !important;
}

.promo_slider .slide_wrapper img {
  height: 100% !important;
  width: 100%  !important;
}

/* Hide CMS navigation controls inside hero */
.promo_slider .cycle-caption,
.promo_slider .cycle-controlNav,
.promo_slider .cycle-directionNav {
  display: none !important;
}

/* ══════════════════════════════════════════════════════
   ABOUT SECTION
   Heading spans both columns (grid-column: 1/-1),
   then text + image sit side by side below it.
   ══════════════════════════════════════════════════════ */
.cwu-about-wrap {
  background: #ffffff;
  width: 100%;
}

.cwu-about {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 24px 44px;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 36px 44px;
  align-items: center;
  box-sizing: border-box;
}

/* Heading sits above BOTH columns */
.cwu-heading {
  grid-column: 1 / -1;
  text-align: center;
  font-family: var(--cwu-font) !important;
  font-size: clamp(22px, 2.4vw, 40px);
  text-transform: uppercase;
  line-height: 1.15;
  font-weight: 100;
  color: var(--cwu-dark);
  margin: 0;
  white-space: pre-wrap; /* keeps "...place to [word]" on one line */
}

.cwu-about-text {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* Typewriter outer box — display:inline-block + min-width set by JS.
   No border-right here — cursor is a separate child element that flows
   right after the last typed letter regardless of the reserved width. */
#cwu-typer {
  font-weight: 800;
  color: var(--cwu-green);
  vertical-align: baseline;
}

/* Cursor — a real blinking bar that sits immediately after typed text */
.cwu-cursor {
  display: inline-block;
  width: 3px;
  height: 1em;
  background: var(--cwu-green);
  vertical-align: text-bottom;
  margin-left: 2px;
  animation: cwu-cursor-blink 0.75s step-end infinite;
}

@keyframes cwu-cursor-blink {
  from, to { opacity: 1; }
  50%       { opacity: 0; }
}

.cwu-desc {
  font-family: var(--cwu-font);
  font-size: 17px;
  font-weight: 300;
  color: var(--cwu-dark);
  line-height: 1.65;
}

.cwu-btns {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.cwu-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--cwu-font);
  font-size: 17px;
  font-weight: 600;
  padding: 14px 32px;
  border-radius: 6px;
  text-decoration: none !important;
  cursor: pointer;
  transition: background-color .3s, color .3s, border-color .3s;
  white-space: nowrap;
  border: 1.5px solid transparent;
}

.cwu-btn-out {
  background: var(--cwu-white);
  color: var(--cwu-green);
  border-color: var(--cwu-green);
}
.cwu-btn-out:hover {
  background: var(--cwu-green-light);
  color: var(--cwu-green);
  border-color: transparent;
}

.cwu-btn-fill {
  background: var(--cwu-green);
  color: var(--cwu-white);
  border-color: var(--cwu-green);
}
.cwu-btn-fill:hover {
  background: var(--cwu-green-light);
  color: var(--cwu-green);
  border-color: transparent;
}

.cwu-about-img {
  border-radius: 10px;
  overflow: hidden;
  height: 380px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .13);
}
.cwu-about-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .6s ease;
}
.cwu-about-img:hover img {
  transform: scale(1.04);
}

/* ══════════════════════════════════════════════════════
   PHOTO CARDS  (Parents / Students / Alumni)
   ══════════════════════════════════════════════════════ */
.cwu-cards {
  padding: 30px 44px;
}

.cwu-cards-grid {
  display: flex;
  justify-content: center;
  gap: 18px;
  max-width: 1200px;
  margin: 0 auto;
}

.cwu-card {
  position: relative;
  flex: 1 1 0;
  max-width: 400px;
  height: 400px;
  border-radius: 10px;
  overflow: hidden;
  display: block;
  text-decoration: none !important;
  cursor: pointer;
  box-shadow: 0 4px 15px rgba(0, 0, 0, .08);
}

.cwu-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.cwu-card:hover img {
  transform: scale(1.04);
}

.cwu-card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(21,115,100,0) 32%, rgba(21,115,100,.92) 100%);
  border-radius: 10px;
  z-index: 1;
  transition: opacity .4s;
}

.cwu-card-hover {
  position: absolute;
  inset: 0;
  background: rgba(21, 115, 100, .82);
  border-radius: 10px;
  z-index: 2;
  transform: translateY(100%);
  transition: transform .4s cubic-bezier(.4, 0, .2, 1);
}

.cwu-card:hover .cwu-card-overlay { opacity: 0; }
.cwu-card:hover .cwu-card-hover   { transform: translateY(0); }

.cwu-card-info {
  position: absolute;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  z-index: 3;
  transition: bottom .4s cubic-bezier(.4, 0, .2, 1),
              transform .4s cubic-bezier(.4, 0, .2, 1);
}
.cwu-card:hover .cwu-card-info {
  bottom: 50%;
  transform: translate(-50%, 50%);
}

.cwu-card-label {
  font-family: var(--cwu-font);
  font-size: 35px;
  font-weight: 700;
  color: var(--cwu-white);
  white-space: nowrap;
  text-shadow: 0 1px 4px rgba(0, 0, 0, .22);
}

.cwu-card-arrow {
  width: 28px;
  height: 28px;
  color: var(--cwu-white);
  margin-top: 10px;
  opacity: 0;
  transform: translateY(14px);
  transition: opacity .4s, transform .4s;
}
.cwu-card-arrow svg {
  width: 100%;
  height: 100%;
}
.cwu-card:hover .cwu-card-arrow {
  opacity: 1;
  transform: translateY(0);
}

/* ══════════════════════════════════════════════════════
   TESTIMONIALS
   ══════════════════════════════════════════════════════ */
.cwu-testimonials .widget_header {
  display: none !important;
}

.cwu-testimonials .widget_content,
.cwu-testimonials .make_scrollable {
  height: auto     !important;
  max-height: none !important;
  overflow: visible !important;
  padding: 0       !important;
}
.cwu-testimonials .wrapper {
  height: auto     !important;
  overflow: visible !important;
}

.cwu-testimonials {
  padding: 50px 0;
  overflow: visible;
}

.cwu-ttrack-wrap {
  overflow: hidden;
  white-space: nowrap;
  padding: 10px 0 18px;
}

.cwu-ttrack {
  display: inline-flex;
  gap: 22px;
  padding: 8px 11px;
  animation: cwu-scroll 200s linear infinite;
}

@keyframes cwu-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(calc(-50% - 11px)); }
}

.cwu-tcard {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  flex: 0 0 600px;
  width: 600px;
  min-height: 360px;
  border-radius: 16px;
  padding: 28px 26px;
  white-space: normal;
  vertical-align: top;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .06);
  font-family: var(--cwu-font);
  box-sizing: border-box;
}

.cwu-tcard:nth-child(odd)  { background: var(--cwu-green-light); }
.cwu-tcard:nth-child(even) { background: var(--cwu-gray-light); }

.cwu-tquote {
  width: 52px;
  height: 52px;
  border-radius: 500px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}
.cwu-tcard:nth-child(odd)  .cwu-tquote { background: var(--cwu-white); }
.cwu-tcard:nth-child(even) .cwu-tquote { background: var(--cwu-green); }

.cwu-tquote svg { width: 22px; height: 22px; }
.cwu-tcard:nth-child(odd)  .cwu-tquote svg { fill: var(--cwu-green); }
.cwu-tcard:nth-child(even) .cwu-tquote svg { fill: var(--cwu-white); }

.cwu-ttext {
  font-size: 14px;
  font-weight: 300;
  color: var(--cwu-body);
  line-height: 1.65;
  margin-bottom: 14px;
  flex: 1;
}

.cwu-tname {
  font-size: 16px;
  font-weight: 700;
  color: var(--cwu-dark);
  margin-top: auto;
}

.cwu-trole {
  font-size: 14px;
  font-weight: 300;
  color: var(--cwu-dark);
  margin-top: 2px;
}

/* ══════════════════════════════════════════════════════
   CTA CARDS
   ══════════════════════════════════════════════════════ */
.cwu-cta {
  background: var(--cwu-green);
  padding: 50px 44px;
}

.cwu-cta-grid {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 1250px;
  margin: 0 auto;
}

.cwu-ctacard {
  width: 275px;
  min-height: 340px;
  border-radius: 16px;
  border: 2px solid rgba(214, 234, 231, .45);
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  cursor: pointer;
  /* No hover transform/popup — just subtle image scale */
  transition: box-shadow .3s;
  box-sizing: border-box;
}
/* Hover: no card lift, just a hint of shadow */
.cwu-ctacard:hover {
  box-shadow: 0 4px 18px rgba(0, 0, 0, .15);
}

.cwu-ctacard:nth-child(odd)  { background: var(--cwu-green-light); }
.cwu-ctacard:nth-child(even) { background: var(--cwu-gray-light); }

.cwu-cta-imgwrap {
  width: calc(100% - 24px);
  height: 165px;
  border-radius: 8px;
  overflow: hidden;
  margin: 14px auto 0;
  box-shadow: 0 3px 8px rgba(0, 0, 0, .1);
  flex-shrink: 0;
}
.cwu-cta-imgwrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s;
}
.cwu-ctacard:hover .cwu-cta-imgwrap img {
  transform: scale(1.05);
}

.cwu-cta-bottom {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 16px 14px 20px;
  margin-top: auto;
  gap: 8px;
}

.cwu-cta-ttl {
  font-family: var(--cwu-font);
  font-size: 26px;
  font-weight: 600;
  color: #323232;
  line-height: 1.1;
  max-width: 165px;
  text-transform: capitalize;
}

.cwu-cta-arr {
  width: 46px;
  height: 46px;
  flex-shrink: 0;
  border-radius: 50%;
  border: 2px solid var(--cwu-green);
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .3s, background .3s, border-color .3s;
}
.cwu-ctacard:hover .cwu-cta-arr {
  transform: scale(1.1);
  background: var(--cwu-green);
  border-color: var(--cwu-white);
}
.cwu-cta-arr svg {
  width: 18px;
  height: 18px;
  stroke: var(--cwu-green);
  fill: none;
  transition: stroke .3s;
}
.cwu-ctacard:hover .cwu-cta-arr svg {
  stroke: var(--cwu-white);
}

/* ══════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════ */

/* ── Tablet ── */
@media (max-width: 1100px) {
  .cwu-about {
    grid-template-columns: 1fr;
    padding: 28px 32px;
    gap: 20px;
  }
  .cwu-about-img { height: 280px; }
  .cwu-cards { padding: 24px 24px; }
}

/* ── Mobile ── */
@media (max-width: 768px) {
  /* Hero — shorter on mobile */
  .promo_slider,
  .promo_slider .wrapper,
  .promo_slider .widget_content {
    height: 60vh      !important;
    min-height: 260px !important;
    max-height: 600px !important;
  }

  /* Nav — taller top bar on mobile */
  #header_container .links {
    padding-top: 10px    !important;
    padding-bottom: 10px !important;
  }

.header-wrapper{ height:80px !important;}
  /* About */
  .cwu-about   { padding: 24px 18px; gap: 18px; }
  .cwu-about-img { display: none; }
  .cwu-heading { font-size: 22px !important; }

  /* Photo cards — stack vertically, full width */
  .cwu-cards { padding: 20px 14px; }
  .cwu-cards-grid {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }
  .cwu-card {
    max-width: 100% !important;
    width: 100%;
    flex: 0 0 auto;
    height: 220px;
  }

  /* CTA */
  .cwu-cta { padding: 36px 14px; }
  .cwu-ctacard { width: calc(50% - 8px); min-height: auto; }
  .cwu-cta-imgwrap { height: 120px; }
  .cwu-cta-ttl { font-size: 20px; }

  /* Testimonials */
  .cwu-testimonials { padding: 36px 0; }
  .cwu-tcard { flex: 0 0 300px; width: 300px; }
}

/* ── Small mobile ── */
@media (max-width: 480px) {
  .promo_slider,
  .promo_slider .wrapper,
  .promo_slider .widget_content {
    height: 50vh      !important;
    min-height: 220px !important;
  }

  .cwu-cta { padding: 28px 10px; }
  .cwu-cta-grid { gap: 10px; }
  .cwu-ctacard { width: calc(50% - 5px); }
  .cwu-cta-ttl { font-size: 17px; }
  .cwu-cta-imgwrap { height: 100px; }
}

/* ══════════════════════════════════════════════════════
   LOADING STATE
   ══════════════════════════════════════════════════════ */
.hp-row:not(.hp-row-first) {
  opacity: 0;
  transition: opacity 0.45s ease;
}

.cwu-about-wrap,
.cwu-cards,
.cwu-cta {
  opacity: 0;
  transition: opacity 0.45s ease;
}

#cwu-loader {
  position: fixed;
  left: 50%;
  bottom: 32px;
  transform: translateX(-50%);
  z-index: 9500;
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgba(255, 255, 255, 0.95);
  padding: 9px 20px 9px 14px;
  border-radius: 999px;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.14);
  font-family: var(--cwu-font);
  font-size: 13px;
  font-weight: 600;
  color: var(--cwu-green);
  pointer-events: none;
  white-space: nowrap;
}

.cwu-spinner {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2.5px solid var(--cwu-green-light);
  border-top-color: var(--cwu-green);
  flex-shrink: 0;
  animation: cwu-spin 0.7s linear infinite;
}

@keyframes cwu-spin {
  to { transform: rotate(360deg); }
}

/* ══════════════════════════════════════════════════════
   FEEDBACK BAR
   ══════════════════════════════════════════════════════ */
#feedback_bar {
  height: 0        !important;
  min-height: 0    !important;
  max-height: 0    !important;
  overflow: hidden !important;
  padding: 0       !important;
  margin: 0        !important;
  border: none     !important;
}

/* ══════════════════════════════════════════════════════
   DONATE BUTTON
   ══════════════════════════════════════════════════════ */
.co_menu_item.donate_link .bg_extension {
  display: none !important;
}

.co_menu_item.donate_link span.parent div a.parent {
  background:    #ffffff !important;
  color:         var(--cwu-green) !important;
  border-radius: 10px !important;
  padding:       8px 18px 8px 12px !important;
  font-weight:   700 !important;
  display:       inline-flex !important;
  align-items:   center !important;
  gap:           7px !important;
  line-height:   1.2 !important;
  border:        none !important;
  box-shadow:    0 1px 6px rgba(0,0,0,0.12) !important;
  transition:    background .2s !important;
}
.co_menu_item.donate_link:hover span.parent div a.parent {
  background: var(--cwu-green-light) !important;
}

.cwu-donate-heart {
  display:     inline-flex;
  align-items: center;
  flex-shrink: 0;
}
.cwu-donate-heart svg {
  width:  16px;
  height: 16px;
  fill:   var(--cwu-green);
}
</style>

<script type="text/javascript" src="https://w2.Chabad.org/images/Shluchim/minisites/themes/form-redesign/form-script.js?v=7/17/2026"></script><script>(function() {
  var _fbq = window._fbq || (window._fbq = []);
  if (!_fbq.loaded) {
    var fbds = document.createElement('script');
    fbds.async = true;
    fbds.src = '//connect.facebook.net/en_US/fbds.js';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(fbds, s);
    _fbq.loaded = true;
  }
  _fbq.push(['addPixelId', "612234658865892"]);
})();
window._fbq = window._fbq || [];
window._fbq.push(["track", "PixelInitialized", {}]);
</script><script>
// on dom ready run this code to edit the custom payment message in the Spring 2023 Fundraising Drive
window.addEventListener("DOMContentLoaded", function () {
	if (window.location.href.includes("6390043")) {
		const paymentMethod = document.querySelector("div.fs-payment-method > label:nth-child(3) > span");
		const paymentMessage = document.querySelector("#CustomPaymentMessage > div");
		paymentMethod ? (paymentMethod.innerText = "Check, DAF, Digital Payments") : null;
		paymentMessage ? (paymentMessage.innerHTML = "<B>CHECK:</B> Send to Chabad WashU at 7018 Forsyth Blvd. St. Louis, MO 63105</br><B>DONOR ADVISED FUNDS</b>: Please recommend a grant to our organization EIN is 34-2049857.</br><b>DIGITAL PAYMENTS:</b></br>CASHAPP: $chabadwashu | VENMO: @chabadwashu | ZELLE: zelle@chabadwashu.org") : null;
	}
});
</script></head>
<body class="lang_en dir_ltr cco_body sites-article">

	


	
	<div id="PrintCreditHeader" class="show_for_print">
Printed from<b>ChabadWashU.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 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="/73176">About</a>
				</div>
				
			
			

<div class="topBarLink mychabad_login_bar" id="mychabad_login_bar">
	
			
				<a href="/tools/login/default.asp?aid=2051021&amp;jewish=Delmar-Loop-Public-Lighting.htm" class="login_link" id="login_link">Sign In</a>
			
			
		
</div>
			
		</div>
	</div>
	<div class="break_floats"></div>
</div>

			<div class="clearfix branding-search">
				<div id="header_branding" class="no_outline ">
					<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="" OnAutoSuggestSelect="OnSearchAutoSuggestSelect(ev);" 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" autoSuggestProperties="&quot;Highlight&quot;:true,&quot;Name&quot;:&quot;topAreaTopSearch_search&quot;,&quot;AutoSubmit&quot;:true,&quot;ShowRecommendedOnTop&quot;:false" autoSuggestUrl="/WebServices/RemoteCall/Get_Suggestions" 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>
					
					<a href="/default.asp" title="ChabadWashU.org" class="site_title">ChabadWashU.org<span class="site_subtitle clearfix"></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 = "639263861748859379";
</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="75990" 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/4847979/jewish/Welcome-to-Students-and-Parents.htm" class="item hover" id="menu_item1-1" data-menu-level="2" data-aid="4847979">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Welcome to Students and Parents</span>
</a>
<a href="/templates/articlecco_cdo/aid/3194546/jewish/Shabbat-at-Chabad.htm" class="item" id="menu_item1-2" data-menu-level="2" data-aid="3194546">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Shabbat at Chabad</span>
</a>
<a href="/templates/articlecco_cdo/aid/567608/jewish/High-Holidays-20265787.htm" class="item" id="menu_item1-3" data-menu-level="2" data-aid="567608">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>High Holidays 2026/5787</span>
</a>
<a href="/templates/articlecco_cdo/aid/5868377/jewish/Passover-2026-with-Chabad-WashU.htm" class="item" id="menu_item1-4" data-menu-level="2" data-aid="5868377">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Passover 2026 with Chabad WashU</span>
</a>
<a href="/templates/articlecco_cdo/aid/2871124/jewish/Purim-2026.htm" class="item" id="menu_item1-5" data-menu-level="2" data-aid="2871124">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Purim 2026</span>
</a>
<a href="/templates/articlecco_cdo/aid/6773253/jewish/Social-Events.htm" class="item empty" id="menu_item1-6" data-menu-level="2" data-aid="6773253">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Social Events</span>
</a>
<a href="/templates/articlecco_cdo/aid/73730/jewish/Jewish-Learning.htm" class="item empty" id="menu_item1-7" data-menu-level="2" data-aid="73730">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Jewish Learning</span>
</a>
<a href="http://bit.ly/mayanotisrael" class="item" id="menu_item1-8" data-menu-level="2" data-aid="2648167">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Free Trips to Israel with Birthright Israel</span>
</a>
<a href="/calendar/view/month.asp" class="item empty" id="menu_item1-9" data-menu-level="2" data-aid="5005267">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Calendar </span>
</a>
<a href="/templates/articlecco_cdo/aid/6057727/jewish/Dorm-Mezuzah.htm" class="item empty" id="menu_item1-10" data-menu-level="2" data-aid="6057727">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Dorm Mezuzah</span>
</a>
<a href="/templates/articlecco_cdo/aid/5197078/jewish/Get-Connected.htm" class="item empty" id="menu_item1-11" data-menu-level="2" data-aid="5197078">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Get Connected </span>
</a>
<a href="/templates/articlecco_cdo/aid/5382646/jewish/Religious-Holiday-Class-Absence-Policy.htm" class="item empty" id="menu_item1-12" data-menu-level="2" data-aid="5382646">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Religious Holiday Class Absence Policy</span>
</a>
<a href="/templates/articlecco_cdo/aid/6907587/jewish/Summer-Activities-2026.htm" class="item empty" id="menu_item1-13" data-menu-level="2" data-aid="6907587">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Summer Activities 2026</span>
</a>
<a href="/templates/articlecco_cdo/aid/6193425/jewish/Chanukah-2025.htm" class="item" id="menu_item1-14" data-menu-level="2" data-aid="6193425">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow" />
<span>Chanukah 2025</span>
</a>
<a href="/templates/articlecco_cdo/aid/6991519/jewish/Listening-Ear.htm" class="item empty" id="menu_item1-15" data-menu-level="2" data-aid="6991519">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Listening Ear</span>
</a>
</div>
<div id="menu_child1-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="/templates/articlecco_cdo/aid/7392742/jewish/Move-in-Shabbat-Schedule-and-RSVP-Form-2026.htm" class="child_item default" data-menu-level="3" data-aid="7392742"><span>Move-in Shabbat Schedule and RSVP Form 2026</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child1-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="/templates/articlecco_cdo/aid/6310728/jewish/Shabbat-at-Chabad-Fall-2026-Guest-Form.htm" class="child_item default" data-menu-level="3" data-aid="6310728"><span>Shabbat at Chabad Fall 2026 - Guest Form</span></a>
<a href="/templates/articlecco_cdo/aid/6059406/jewish/Student-Cha-bot-system-for-RSVPs.htm" class="child_item default" data-menu-level="3" data-aid="6059406"><span>Student Cha-bot system for RSVPs </span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child1-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="https://student.chabadoncampus.org/chabadwashu/rsvp/events/53356" class="child_item default" data-menu-level="3" data-aid="6078971"><span>Rosh Hashana Dinner at The AC</span></a>
<a href="/templates/articlecco_cdo/aid/5635840/jewish/Rosh-Hashana-Yom-Kippur-Services-Schedule-and-Meals-RSVP-Form.htm" class="child_item default" data-menu-level="3" data-aid="5635840"><span>Rosh Hashana & Yom Kippur Services Schedule and Meals RSVP Form</span></a>
<a href="/templates/articlecco_cdo/aid/5243846/jewish/Shofar-Blowing-Opportunities.htm" class="child_item default" data-menu-level="3" data-aid="5243846"><span>Shofar Blowing Opportunities</span></a>
<a href="https://student.chabadoncampus.org/chabadwashu/rsvp/resources/98" class="child_item default" data-menu-level="3" data-aid="6083565"><span>Rosh Hashana Host Your Own</span></a>
<a href="https://student.chabadoncampus.org/chabadwashu/rsvp/events/54384" class="child_item default" data-menu-level="3" data-aid="6586333"><span>Yom Kippur Break-Fast</span></a>
<a href="/templates/articlecco_cdo/aid/6627713/jewish/Sukkot-Schedule.htm" class="child_item default" data-menu-level="3" data-aid="6627713"><span>Sukkot Schedule</span></a>
<a href="/templates/articlecco_cdo/aid/4596214/jewish/Make-a-Gift-Today.htm" class="child_item link" data-menu-level="3" data-aid="5646432"><span>Make a Gift Today</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child1-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/5875132/jewish/Seder-Night-One-at-Chabad.htm" class="child_item default" data-menu-level="3" data-aid="5875132"><span>Seder Night One at Chabad</span></a>
<a href="/templates/articlecco_cdo/aid/5875602/jewish/Seder-Night-Two-at-Chabad.htm" class="child_item default" data-menu-level="3" data-aid="5875602"><span>Seder Night Two at Chabad</span></a>
<a href="/templates/articlecco_cdo/aid/5872704/jewish/Passover-Holiday-Meal-Overview-and-Form.htm" class="child_item default" data-menu-level="3" data-aid="5872704"><span>Passover Holiday Meal Overview and Form</span></a>
<a href="/templates/articlecco_cdo/aid/5869245/jewish/Host-Your-Own-Seder-Form-2026.htm" class="child_item default" data-menu-level="3" data-aid="5869245"><span>Host Your Own Seder Form 2026</span></a>
<a href="https://www.chabadwashu.org/holidays/passover/sell_chometz_cdo/jewish/Sell-Your-Chametz-Online.htm" class="child_item default" data-menu-level="3" data-aid="5489933"><span>Sell Your Chametz Online</span></a>
<a href="/templates/articlecco_cdo/aid/5086651/jewish/Haggadah-Library-Borrowing-Form.htm" class="child_item default" data-menu-level="3" data-aid="5086651"><span>Haggadah Library Borrowing Form </span></a>
<a href="https://chabadwashu.org/media/pdf/1274/YKTT12744509.pdf" class="child_item default" data-menu-level="3" data-aid="5876481"><span>Pre-Pesach 2026 Memo (PDF)</span></a>
<a href="/templates/articlecco_cdo/aid/6404242/jewish/Prayer-Times-during-Passover.htm" class="child_item default" data-menu-level="3" data-aid="6404242"><span>Prayer Times during Passover</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child1-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="https://student.chabadoncampus.org/chabadwashu/rsvp/events/45955" class="child_item default" data-menu-level="3" data-aid="6317314"><span>Hamantaschen Bake</span></a>
<a href="https://student.chabadoncampus.org/chabadwashu/rsvp/events/45990" class="child_item default" data-menu-level="3" data-aid="6357993"><span>Purim in the Wild West Party</span></a>
<a href="/templates/articlecco_cdo/aid/7266419/jewish/Mocha-and-Megilla-in-the-DUC.htm" class="child_item default" data-menu-level="3" data-aid="7266419"><span>Mocha and Megilla in the DUC</span></a>
<a href="/templates/articlecco_cdo/aid/5844791/jewish/Megila-Reading-Schedule-and-Davening-Times.htm" class="child_item default" data-menu-level="3" data-aid="5844791"><span>Megila Reading Schedule and Davening Times</span></a>
<a href="/templates/articlecco_cdo/aid/5826499/jewish/Gifts-to-the-Poor.htm" class="child_item default" data-menu-level="3" data-aid="5826499"><span>Gifts to the Poor</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child1-6" 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_child1-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_child1-8" 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/6747270/jewish/Explore-Israel-with-Birthright-Israel-Join-an-Unforgettable-Journey.htm" class="child_item default" data-menu-level="3" data-aid="6747270"><span>Explore Israel with Birthright Israel: Join an Unforgettable Journey!</span></a>
<a href="/templates/articlecco_cdo/aid/5385435/jewish/Birthright-Israel-Info-Session.htm" class="child_item default" data-menu-level="3" data-aid="5385435"><span>Birthright Israel: Info Session</span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child1-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_child1-10" 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_child1-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_child1-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_child1-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 id="menu_child1-14" 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="https://student.chabadoncampus.org/chabadwashu/rsvp/events/43367" class="child_item default" data-menu-level="3" data-aid="7159787"><span>Chanukah Party for WashU Undergrads & friends</span></a>
<a href="https://docs.google.com/forms/d/e/1FAIpQLSczQezx0w6Bz3i9OhEL9ewC2sBl2MF_X6SGDCaLcyfj4eU6aw/viewform" class="child_item default" data-menu-level="3" data-aid="6210640"><span>JGrads Chanukah Party </span></a>
<a href="https://student.chabadoncampus.org/chabadwashu/rsvp/resources/543" class="child_item default" data-menu-level="3" data-aid="6193583"><span>Menorah Kits for Students</span></a>
<a href="/templates/articlecco_cdo/aid/2051021/jewish/Delmar-Loop-Public-Lighting.htm" class="child_item default" data-menu-level="3" data-aid="2051021"><span>Delmar Loop Public Lighting </span></a>
</div></td>
</tr>
</table>
</div>
<div id="menu_child1-15" 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/75990/jewish/WashU-Undergrads.htm" class="parent">WashU<br />Undergrads</a></div></span><a href="/templates/articlecco_cdo/aid/75990/jewish/WashU-Undergrads.htm" class="bg_extension js-parent-menu-link" data-aid="75990"></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="74066" 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/74066/jewish/JGrads.htm" class="parent">JGrads</a></div></span><a href="/templates/articlecco_cdo/aid/74066/jewish/JGrads.htm" class="bg_extension js-parent-menu-link" data-aid="74066"></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="3027760" 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/3027760/jewish/Prospective-Students.htm" class="parent">Prospective<br />Students</a></div></span><a href="/templates/articlecco_cdo/aid/3027760/jewish/Prospective-Students.htm" class="bg_extension js-parent-menu-link" data-aid="3027760"></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="104554" 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/7392742/jewish/Move-in-Shabbat-Schedule-and-RSVP-Form-2026.htm" class="item empty" id="menu_item4-1" data-menu-level="2" data-aid="7392819">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Move-in Shabbat Schedule and RSVP Form 2026</span>
</a>
<a href="/templates/articlecco_cdo/aid/3413457/jewish/Chicken-Soup-Delivery.htm" class="item empty" id="menu_item4-2" data-menu-level="2" data-aid="3413457">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Chicken Soup Delivery</span>
</a>
<a href="/templates/articlecco_cdo/aid/7392822/jewish/Parent-and-Family-Weekend-Schedule-and-RSVP-Form-2026.htm" class="item empty" id="menu_item4-3" data-menu-level="2" data-aid="7392822">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Parent and Family Weekend Schedule and RSVP Form 2026</span>
</a>
<a href="/templates/articlecco_cdo/aid/6768025/jewish/Alumni-Reunions-2026.htm" class="item empty" id="menu_item4-4" data-menu-level="2" data-aid="6768025">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Alumni Reunions 2026</span>
</a>
<a href="/templates/articlecco_cdo/aid/7034460/jewish/Graduation-Events-2026.htm" class="item empty" id="menu_item4-5" data-menu-level="2" data-aid="7034460">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Graduation Events 2026</span>
</a>
<a href="/templates/articlecco_cdo/aid/5197014/jewish/Make-a-Gift-Today.htm" class="item empty" id="menu_item4-6" data-menu-level="2" data-aid="5197014">
<img src="https://w2.chabad.org/images/global/spacer.gif" width="5" height="10" alt="" border="0" class="arrow off" />
<span>Make a Gift Today</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 id="menu_child4-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_child4-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_child4-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_child4-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 id="menu_child4-6" 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/104554/jewish/Parents-and-Alumni.htm" class="parent">Parents&nbsp;and<br />Alumni</a></div></span><a href="/templates/articlecco_cdo/aid/104554/jewish/Parents-and-Alumni.htm" class="bg_extension js-parent-menu-link" data-aid="104554"></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="719963" 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/719963/jewish/-.htm" class="parent">מידע<br />לישראלים</a></div></span><a href="/templates/articlecco_cdo/aid/719963/jewish/-.htm" class="bg_extension js-parent-menu-link" data-aid="719963"></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="/4596214" class="parent">Donate</a></div></span><a href="/4596214" 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="/73176" 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  no-hero-image 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" >
					

<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/75990/jewish/WashU-Undergrads.htm",
      "name": "WashU Undergrads"
    }
  },
  {
    "@type": "ListItem",
    "position": 2,
    "item": {
      "@id": "/templates/articlecco_cdo/aid/6193425/jewish/Chanukah-2025.htm",
      "name": "Chanukah 2025"
    }
  },
  {
    "@type": "ListItem",
    "position": 3,
    "item": {
      "@id": "/article.asp?aid=2051021",
      "name": "Delmar Loop Public Lighting "
    }
  }
]
}
</script>
<div class="breadcrumbs breadcrumbs hide_for_print" data-list-name="breadcrumbs">
	
			<a class="breadcrumbs__crumb" href='/templates/articlecco_cdo/aid/75990/jewish/WashU-Undergrads.htm' data-aid="75990">
				WashU Undergrads
			</a>
		<span class="breadcrumbs__divider fa fa-angle-end"></span>
			<a class="breadcrumbs__crumb" href='/templates/articlecco_cdo/aid/6193425/jewish/Chanukah-2025.htm' data-aid="6193425">
				Chanukah 2025
			</a>
		
</div>
	
			<h1 class="article-header__title js-article-title js-page-title">Delmar Loop Public Lighting </h1>
		
			<div class="set-direction-to-content">
				<h2 class="article-header__subtitle">Join Chabad to celebrate Chanukah on &quot;one of 10 great streets in America.&quot;  </h2>
			</div>
		
			<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="Delmar Loop Public Lighting - Join Chabad to celebrate Chanukah on &amp;quot;one of 10 great streets in America.&amp;quot; " />

<meta itemprop="image" content="" />

	<meta itemprop="description" content="Time and Date TBA" />


		<meta itemprop="thumbnailUrl" content="https://w2.chabad.org/media/images/923/MlYF9234257.jpg" />
	
<meta itemprop="uploadDate" content="2012-11-25T17:24:17" />
<span itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
	<meta itemprop="name" content="ChabadWashU.org" />
	<meta itemprop="brand" content="ChabadWashU.org" />
	<span itemprop="logo" itemscope itemtype="http://schema.org/ImageObject">
		<meta itemprop="url" content="https://w2.chabad.org/images/logos/chabad.org.amp.60_330.png" />
		<meta itemprop="height" content="60" />
		<meta itemprop="width" content="330" />
	</span>
</span>
<meta itemprop="datePublished" content="2012-11-25T17:24:17" />
			<div itemprop="articleBody">
				<co:body xmlns:co="www1.chabadonline.com/alpha1" xmlns:ext="urn:xslt-extensions">
  <div class="co_body article-body cf">
<p>You are invited to join the kindling of a giant Menorah at the Market in the Loop, located at 6655 Delmar Blvd.<br>
<br>
Time/Date TBA</p>

<p>Join Chabad to celebrate Chanukah on "one of 10 great streets in America." Featuring</p>

<ul>
<li>Music</li>
<li>Chasidic Dancing</li>
<li>Menorah &amp; Candle Kits</li>
<li>Dreidel Giveaway</li>
<li>Chocolate Coins</li>
</ul>

<p>... and more!</p>

<p> </p>

<p>
<span id="1512447091988E" style="display: none;"> </span></p>

<p> </p>

</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>
		
		
	</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>Chabad on Campus • Rohr Center for Jewish Life at Washington University in St. Louis • 7018 Forsyth Blvd. • St. Louis, MO 63105 • 314-721-2884</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/ChabadWashU" class="fa fa-facebook facebook_homepage" title="Facebook"></a>
		
			<a href="https://www.instagram.com/washu_chabad" 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/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:'ChabadWashU.org'}; Co.ArticleId     = '2051021';Co.SectionId     = 75990;Co.PartnerSiteId = 0;Co.SiteId        = 3571;Co.IsMobilePage  = false;Co.IsResponsive  = false;Co.DbDomain      = 'ChabadWashU.org';Co.LanguageCode  = '';Co.LoginStatus   = 'None';</script>

    



<script>
(() => {
  'use strict';

  // Skip the entire homepage redesign (and its loading overlay)
  // when this page is an embed.
  if (window.CWU_IS_EMBED) return;

  /* ── CONFIGURE ───────────────────────────────────────── */
  const ABOUT_IMG  = 'https://chabadwashu.org/media/images/1374/SZWR13748847.png';
    const DONATE_URL = 'https://www.chabadwashu.org/templates/articlecco_cdo/aid/4596214/jewish/Make-a-Gift-Today.htm';

  /* ── SVG constants ─────────────────────────────────── */
  const SVG_ARROW_RIGHT = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M14 5l7 7m0 0l-7 7m7-7H3"/></svg>`;
  const SVG_ARROW_NE = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M4.5 19.5l15-15m0 0H8.25m11.25 0v11.25"/></svg>`;
  const SVG_QUOTE = `<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24"><path d="M14.017 21v-7.391c0-5.704 3.731-9.57 8.983-10.609l.995 2.151c-2.432.917-3.995 3.638-3.995 5.849h4v10h-9.983zm-14.017 0v-7.391c0-5.704 3.748-9.57 9-10.609l.996 2.151c-2.433.917-3.996 3.638-3.996 5.849h3.983v10h-9.983z"/></svg>`;

  /* ── Utilities ─────────────────────────────────────── */
  const bgUrl = (img) => {
    if (!img) return '';
    const style = img.getAttribute('style') || '';
    const m = style.match(/background(?:-image)?\s*:\s*url\(\s*["']?([^"'()]+)["']?\s*\)/);
    if (m?.[1]) return m[1].trim();
    const src = img.getAttribute('src') || '';
    return src.includes('spacer') ? '' : src;
  };

  const closest = (node, sel) => {
    if (!node) return null;
    if (node.closest) return node.closest(sel);
    let el = node;
    while (el && el !== document) {
      if (el.matches?.(sel)) return el;
      el = el.parentNode;
    }
    return null;
  };

  const mk = (tag, cls) => {
    const e = document.createElement(tag);
    if (cls) e.className = cls;
    return e;
  };

  /* ════════════════════════════════════════════════════
     MAIN (homepage redesign — unchanged)
  ════════════════════════════════════════════════════ */
  const run = () => {

    document.querySelectorAll('.promo_slider .slide_wrapper img').forEach(img => {
      img.style.setProperty('mix-blend-mode', 'normal', 'important');
      img.style.setProperty('will-change',    'auto',   'important');
    });

    (() => {
      const fb = document.getElementById('feedback_bar');
      if (!fb) return;
      fb.style.setProperty('height',     '0',       'important');
      fb.style.setProperty('min-height', '0',       'important');
      fb.style.setProperty('max-height', '0',       'important');
      fb.style.setProperty('overflow',   'hidden',  'important');
      fb.style.setProperty('padding',    '0',       'important');
      fb.style.setProperty('margin',     '0',       'important');
      fb.style.setProperty('border',     'none',    'important');
    })();

    (() => {
      const link = document.querySelector('.co_menu_item.donate_link a.parent');
      if (!link) return;
      const heart = mk('span', 'cwu-donate-heart');
      heart.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 21.593c-5.63-5.539-11-10.297-11-14.402 0-3.791 3.068-5.191 5.281-5.191 1.312 0 4.151.501 5.719 4.457 1.59-3.968 4.464-4.447 5.726-4.447 2.54 0 5.274 1.621 5.274 5.181 0 4.069-5.136 8.625-11 14.402z"/></svg>`;
      link.prepend(heart);
    })();

    (() => {
  const sliderEl = document.querySelector('.promo_slider .slider');
  if (!sliderEl) return;
  const wrappers = [...sliderEl.querySelectorAll('.slide_wrapper')];
  if (wrappers.length < 2) return;

  // Build caption lookup keyed by bare "caption-N" (no dot)
  const capList = {};
  sliderEl.querySelectorAll('.captionList > li').forEach(li => {
    const key = [...li.classList].find(c => c.startsWith('caption-'));
    if (!key) return;

    const big = li.querySelector('big');
    const rm  = li.querySelector('.readMore, a');
    const title = big ? big.textContent.trim() : '';

    // Description = the .caption <span>'s text nodes, minus the <big> title.
    // Clone the span, strip <big> and any anchors, read what's left.
    let desc = '';
    const span = li.querySelector('span') || li;
    const clone = span.cloneNode(true);
    clone.querySelectorAll('big, a').forEach(n => n.remove());
    desc = clone.textContent.replace(/\s+/g, ' ').trim();

    capList[key] = {
      title,
      desc,
      rmHref:  rm ? (rm.getAttribute('href') || '') : '',
      rmLabel: rm ? rm.textContent.trim() : 'Learn More'
    };
  });

  const slideData = wrappers.map(w => {
    const img    = w.querySelector('img');
    const a      = w.querySelector('a');
    const href   = a?.getAttribute('href');
    // caption attr looks like ".caption-0" — strip leading dot to match capList keys
    const rawCap = (w.getAttribute('caption') || '').replace(/^\./, '').trim();
    const cap    = rawCap ? capList[rawCap] : null;
    return {
      bg:     bgUrl(img),
      href:   (href && href !== '#') ? href : null,
      target: a?.getAttribute('target') || '_self',
      cap
    };
  }).filter(s => s.bg);

  if (slideData.length < 2) return;

  const container = mk('div', 'cwu-fade-slider');
  Object.assign(container.style, {
    position: 'absolute', top: '0', left: '0',
    width: '100%', height: '100%',
    zIndex: '10', overflow: 'hidden'
  });

  const panels = slideData.map((slide, i) => {
    const cap     = slide.cap;
    const btnHref = (cap && cap.rmHref) || slide.href;
    const hasBtn  = cap && (cap.title || cap.desc) && btnHref;

    // Use a div panel if we're adding a button link, to avoid <a> inside <a>
    const panelTag = (slide.href && !hasBtn) ? 'a' : 'div';
    const panel = mk(panelTag, 'cwu-fade-panel');
    if (panelTag === 'a') { panel.href = slide.href; panel.target = slide.target; }

    Object.assign(panel.style, {
      position:           'absolute',
      top: '0', left: '0', width: '100%', height: '100%',
      backgroundImage:    `url("${slide.bg}")`,
      backgroundSize:     'cover',
      backgroundPosition: 'center center',
      backgroundRepeat:   'no-repeat',
      opacity:            i === 0 ? '1' : '0',
      transition:         'opacity 1.2s ease-in-out',
      display:            'block'
    });

    if (cap && (cap.title || cap.desc)) {
      const cont  = mk('div', 'cwu-hero-caption');
      const inner = mk('div', 'cwu-hero-caption-inner');
      if (cap.title) inner.append(Object.assign(mk('h2', 'cwu-hero-title'), { textContent: cap.title }));
      if (cap.desc)  inner.append(Object.assign(mk('p',  'cwu-hero-desc'),  { textContent: cap.desc }));

      if (btnHref) {
        const btn = mk('a', 'cwu-hero-btn');
        btn.href   = btnHref;
        btn.target = slide.target || '_self';
        btn.innerHTML = (cap.rmLabel || 'Learn More') + ' ' + SVG_ARROW_RIGHT;
        inner.append(btn);
      }
      cont.append(inner);
      panel.append(cont);
    }

    container.appendChild(panel);
    return panel;
  });

  const slidesEl = sliderEl.querySelector('.slides');
  if (slidesEl) slidesEl.style.setProperty('display', 'none', 'important');
  sliderEl.querySelectorAll('.cycle-caption, .cycle-controlNav, .cycle-directionNav, .captionList')
           .forEach(el => el.style.display = 'none');

  sliderEl.insertBefore(container, sliderEl.firstChild);

  let cur = 0;
  setInterval(() => {
    panels[cur].style.opacity = '0';
    cur = (cur + 1) % panels.length;
    panels[cur].style.opacity = '1';
  }, 5000);
})();

    const typewriter = (words) => {
      const typer = document.getElementById('cwu-typer');
      if (!typer) return;
      let idx = 0;
      const textSpan = mk('span', 'cwu-type-text');
      const cursor   = mk('span', 'cwu-cursor');
      typer.innerHTML = '';
      typer.append(textSpan, cursor);

      (() => {
      const sliderEl = document.querySelector('.promo_slider .slider');
      if (!sliderEl) return;
      const wrappers = [...sliderEl.querySelectorAll('.slide_wrapper')];
      if (wrappers.length < 2) return;

      // Build a lookup of caption <li> content keyed by ".caption-N"
      const capList = {};
      sliderEl.querySelectorAll('.captionList > li').forEach(li => {
        const key = [...li.classList].find(c => c.startsWith('caption-'));
        if (!key) return;
        const big   = li.querySelector('big');
        const rm    = li.querySelector('.readMore');
        const title = big ? big.textContent.trim() : '';
        // Description = li text minus the <big> title and minus the readMore text
        let desc = li.textContent;
        if (big) desc = desc.replace(big.textContent, '');
        if (rm)  desc = desc.replace(rm.textContent, '');
        desc = desc.trim();
        capList['.' + key] = {
          title,
          desc,
          rmHref:  rm ? (rm.getAttribute('href') || '') : '',
          rmLabel: rm ? rm.textContent.trim() : 'Learn More'
        };
      });

      const slideData = wrappers.map(w => {
        const img     = w.querySelector('img');
        const a       = w.querySelector('a');
        const href    = a?.getAttribute('href');
        const capKey  = w.getAttribute('caption');
        const cap     = capKey ? capList[capKey] : null;
        return {
          bg:      bgUrl(img),
          href:    (href && href !== '#') ? href : null,
          target:  a?.getAttribute('target') || '_self',
          cap
        };
      }).filter(s => s.bg);

      if (slideData.length < 2) return;

      const container = mk('div', 'cwu-fade-slider');
      Object.assign(container.style, {
        position: 'absolute', top: '0', left: '0',
        width: '100%', height: '100%',
        zIndex: '10', overflow: 'hidden'
      });

      const panels = slideData.map((slide, i) => {
        const panel = mk(slide.href ? 'a' : 'div', 'cwu-fade-panel');
        if (slide.href) { panel.href = slide.href; panel.target = slide.target; }
        Object.assign(panel.style, {
          position:           'absolute',
          top: '0', left: '0', width: '100%', height: '100%',
          backgroundImage:    `url("${slide.bg}")`,
          backgroundSize:     'cover',
          backgroundPosition: 'center center',
          backgroundRepeat:   'no-repeat',
          opacity:            i === 0 ? '1' : '0',
          transition:         'opacity 1.2s ease-in-out',
          display:            'block'
        });

        // Caption overlay (title + desc + Learn More)
        const cap = slide.cap;
        if (cap && (cap.title || cap.desc)) {
          const cont = mk('div', 'cwu-hero-caption');
          const inner = mk('div', 'cwu-hero-caption-inner');
          if (cap.title) inner.append(Object.assign(mk('h2', 'cwu-hero-title'), { textContent: cap.title }));
          if (cap.desc)  inner.append(Object.assign(mk('p',  'cwu-hero-desc'),  { textContent: cap.desc }));

          const btnHref = cap.rmHref || slide.href;
          if (btnHref) {
            const btn = Object.assign(mk('span', 'cwu-hero-btn'), {});
            btn.innerHTML = (cap.rmLabel || 'Learn More') + ' ' + SVG_ARROW_RIGHT;
            inner.append(btn);
          }
          cont.append(inner);
          panel.append(cont);
        }

        container.appendChild(panel);
        return panel;
      });

      const slidesEl = sliderEl.querySelector('.slides');
      if (slidesEl) slidesEl.style.setProperty('display', 'none', 'important');
      sliderEl.querySelectorAll('.cycle-caption, .cycle-controlNav, .cycle-directionNav')
               .forEach(el => el.style.display = 'none');

      sliderEl.insertBefore(container, sliderEl.firstChild);

      let cur = 0;
      setInterval(() => {
        panels[cur].style.opacity = '0';
        cur = (cur + 1) % panels.length;
        panels[cur].style.opacity = '1';
      }, 5000);
    })();

      const erase = () => {
        let chars = textSpan.textContent.split('');
        const loop = () => {
          if (chars.length) {
            chars.pop();
            textSpan.textContent = chars.join('');
            setTimeout(loop, 50);
          } else {
            idx = (idx + 1) % words.length;
            setTimeout(type, 500);
          }
        };
        loop();
      };

      const type = () => {
        const chars = words[idx].split('');
        textSpan.textContent = '';
        const loop = () => {
          if (chars.length) {
            textSpan.textContent += chars.shift();
            setTimeout(loop, 100);
          } else {
            setTimeout(erase, 2200);
          }
        };
        loop();
      };

      type();
    };

    (() => {
      const widgets = document.querySelectorAll('.chabad_updates');
      if (!widgets.length) return;
      const w   = widgets[0];
      const row = closest(w, '.hp-row');
      if (!row) return;

      const wc       = w.querySelector('.widget_content');
      const descEl   = wc?.querySelector('.bottom_padding');
      const readMore = w.querySelector('.readMore');

      const descHTML  = descEl?.innerHTML ?? '';
      const aboutHref = readMore?.getAttribute('href') || '#';

      const wrap    = mk('div', 'cwu-about-wrap');
      const section = mk('div', 'cwu-about');
      wrap.appendChild(section);

      const heading = mk('h2', 'cwu-heading');
      heading.innerHTML = 'Chabad WashU is a place to <span id="cwu-typer"></span>';

      const textCol = mk('div', 'cwu-about-text');

      const desc = mk('div', 'cwu-desc');
      desc.innerHTML = descHTML;

      const btns = mk('div', 'cwu-btns');
      const btnA = Object.assign(mk('a', 'cwu-btn cwu-btn-out'),  { href: aboutHref, textContent: 'About Us' });
           const btnD = Object.assign(mk('a', 'cwu-btn cwu-btn-fill'), { href: DONATE_URL, textContent: 'Donate'   });
      btns.append(btnA, btnD);

      textCol.append(desc, btns);

      const imgCol = mk('div', 'cwu-about-img');
      imgCol.appendChild(Object.assign(mk('img'), { src: ABOUT_IMG, alt: 'Chabad WashU community' }));

      section.append(heading, textCol, imgCol);

      row.parentNode.insertBefore(wrap, row);
      row.style.display = 'none';

      typewriter(['Belong', 'Celebrate', 'Learn', 'Connect', 'Grow']);
    })();

    (() => {
      const items = document.querySelectorAll('.sneak_peek.v400');
      if (!items.length) return;
      const row = closest(items[0], '.hp-row');
      if (!row) return;

      const section = mk('section', 'cwu-cards');
      const grid    = mk('div', 'cwu-cards-grid');
      section.appendChild(grid);

      items.forEach(w => {
        const tLink = w.querySelector('.title_only a');
        const tImg  = w.querySelector('.thumbnail img');
        if (!tLink) return;

        const label = tLink.textContent.trim();
        const card  = Object.assign(mk('a', 'cwu-card'), { href: tLink.getAttribute('href') || '#' });
        const img   = Object.assign(mk('img'), { src: bgUrl(tImg), alt: label });

        const arr = mk('span', 'cwu-card-arrow');
        arr.innerHTML = SVG_ARROW_RIGHT;

        const info = mk('div', 'cwu-card-info');
        info.append(Object.assign(mk('span', 'cwu-card-label'), { textContent: label }), arr);

        card.append(img, mk('div', 'cwu-card-overlay'), mk('div', 'cwu-card-hover'), info);
        grid.appendChild(card);
      });

      row.parentNode.insertBefore(section, row);
      row.style.display = 'none';
    })();

    (() => {
      const widgets = document.querySelectorAll('.chabad_updates');
      if (widgets.length < 2) return;
      const w = widgets[1];

      w.classList.add('cwu-testimonials');
      w.style.setProperty('height',   'auto',    'important');
      w.style.setProperty('overflow', 'visible', 'important');

      const row = closest(w, '.hp-row');
      if (row) {
        row.style.overflow = 'visible';
        row.style.height   = 'auto';
      }
      const wr = w.querySelector('.wrapper');
      if (wr) {
        wr.style.overflow = 'visible';
        wr.style.height   = 'auto';
      }

      w.querySelectorAll('[class*="enscroll"]').forEach(el => el.style.display = 'none');

      const wContent = w.querySelector('.widget_content');
      if (!wContent) return;

      const h6s = wContent.querySelectorAll('h6');
      if (!h6s.length) return;

      const trackWrap = mk('div', 'cwu-ttrack-wrap');
      const track     = mk('div', 'cwu-ttrack');
      trackWrap.appendChild(track);

      h6s.forEach(h6 => {
        const rawTitle = h6.textContent.trim();
        const next     = h6.nextElementSibling;
        const bodyText = next?.classList?.contains('bottom_padding') ? next.textContent.trim() : '';
        if (!bodyText) return;

        const parts = rawTitle.split(/\s+/);
        const role  = parts.length > 1 ? parts.pop() : '';
        const name  = parts.join(' ');

        const card  = mk('article', 'cwu-tcard');
        const quote = mk('div', 'cwu-tquote');
        quote.innerHTML = SVG_QUOTE;

        card.append(
          quote,
          Object.assign(mk('p', 'cwu-ttext'),  { textContent: bodyText }),
          Object.assign(mk('p', 'cwu-tname'),  { textContent: name })
        );

        if (role) {
          card.appendChild(Object.assign(mk('p', 'cwu-trole'), { textContent: role }));
        }

        track.appendChild(card);
      });

      track.innerHTML += track.innerHTML;

      wContent.style.cssText = 'height:auto !important; max-height:none !important; overflow:visible !important; padding:0 !important;';
      wContent.innerHTML = '';
      wContent.appendChild(trackWrap);
    })();

    (() => {
      const items = document.querySelectorAll('.sneak_peek.v200');
      if (!items.length) return;
      const row = closest(items[0], '.hp-row');
      if (!row) return;

      const section = mk('section', 'cwu-cta');
      const grid    = mk('div', 'cwu-cta-grid');
      section.appendChild(grid);

      items.forEach(w => {
        const tLink = w.querySelector('.title_only a');
        const tImg  = w.querySelector('.thumbnail img');
        if (!tLink) return;

        const label   = tLink.textContent.trim();
        const card    = Object.assign(mk('a', 'cwu-ctacard'), { href: tLink.getAttribute('href') || '#' });
        const imgWrap = mk('div', 'cwu-cta-imgwrap');
        imgWrap.appendChild(Object.assign(mk('img'), { src: bgUrl(tImg), alt: label }));

        const arr = mk('div', 'cwu-cta-arr');
        arr.innerHTML = SVG_ARROW_NE;

        const bottom = mk('div', 'cwu-cta-bottom');
        bottom.append(Object.assign(mk('h3', 'cwu-cta-ttl'), { textContent: label }), arr);

        card.append(imgWrap, bottom);
        grid.appendChild(card);
      });

      row.parentNode.insertBefore(section, row);
      row.style.display = 'none';
    })();

    (() => {
      const newSections = [
        document.querySelector('.cwu-about-wrap'),
        document.querySelector('.cwu-cards'),
        document.querySelector('.cwu-cta'),
      ];
      const testimonialsWidget = document.querySelector('.cwu-testimonials');
      const testimonialsRow    = testimonialsWidget ? closest(testimonialsWidget, '.hp-row') : null;
      if (testimonialsRow) newSections.push(testimonialsRow);

      newSections.forEach(el => { if (el) el.style.opacity = '1'; });
      document.getElementById('cwu-loader')?.remove();
    })();

  }; /* end run() */

  /* ── Bootstrap (homepage) ─────────────────────────── */
  (() => {
    const s = document.createElement('style');
    s.textContent = [
      '@supports (background-blend-mode:multiply){',
        '.hp-table .hp-row-first .promo_slider .slider .slides .slide_wrapper img{',
          'mix-blend-mode:normal!important;will-change:auto!important',
        '}',
      '}',
      '.promo_slider .slide_wrapper img{mix-blend-mode:normal!important}'
    ].join('');
    document.head.appendChild(s);
  })();

  (() => {
    const loader = document.createElement('div');
    loader.id = 'cwu-loader';
    loader.innerHTML = '<div class="cwu-spinner"></div>Loading…';
    document.body.appendChild(loader);
  })();

  if (document.readyState === 'loading') {
    document.addEventListener('DOMContentLoaded', () => setTimeout(run, 200));
  } else {
    setTimeout(run, 200);
  }

})();
</script><script>
//<![CDATA[
(function () {

    // 1. URL GATE
    if (!window.location.href.includes('7485515')) {
        return;
    }

    // ==========================================
    // SETUP
    // ==========================================
    var API_URL = "https://script.google.com/macros/s/AKfycbxq3TyMsQna52eGxcg66Eov31z65JRO9cKqynBczNembuGDsFQXaJpB9vV00vb4dFYW/exec";

    var FIELD_TABLE = 'input_13';   // Head of table
    var FIELD_SEAT  = 'input_14';   // Selected seat
    var PLACEHOLDER = 'sh1000-seatmap';

    var state = {
        tables: [],
        table: null,
        seat: null,
        seatId: null,
        token: null,
        hits: [],
        confirmed: false
    };

    // A token identifying this browser's hold. Survives a refresh so a
    // reload does not orphan the seat the person already picked.
    try {
        state.token = window.sessionStorage.getItem('sh1000-token');
    } catch (e) { state.token = null; }
    if (!state.token) {
        state.token = 'h' + Date.now().toString(36) + Math.random().toString(36).slice(2, 8);
        try { window.sessionStorage.setItem('sh1000-token', state.token); } catch (e) {}
    }

    // ==========================================
    // 2. CSS
    // ==========================================
    var style = document.createElement('style');
    style.innerHTML = `
        #sh1000-seatmap {
            background: #16301F !important;
            border-radius: 14px !important;
            padding: 26px 22px !important;
            font-family: Arial, Helvetica, sans-serif !important;
            color: #F1EFE4 !important;
            box-sizing: border-box !important;
        }
        #sh1000-seatmap * { box-sizing: border-box !important; font-family: inherit !important; }

        .sh1k-msg { margin: 0 !important; padding: 26px 0 !important; text-align: center !important; font-size: 15px !important; color: #A8B5A9 !important; line-height: 1.6 !important; }
        .sh1k-msg-error { color: #E8A9A0 !important; }

        .sh1k-controls { display: flex !important; flex-wrap: wrap !important; gap: 14px !important; margin: 0 0 20px !important; }
        .sh1k-ctl { flex: 1 1 240px !important; min-width: 0 !important; }
        .sh1k-ctl label { display: block !important; font-size: 11px !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: #A8B5A9 !important; margin: 0 0 7px !important; font-weight: bold !important; text-align: left !important; }
        .sh1k-ctl select, .sh1k-ctl input {
            width: 100% !important; height: 44px !important; padding: 0 12px !important;
            background: #1D3D28 !important; color: #F1EFE4 !important;
            border: 1px solid rgba(241,239,228,.18) !important; border-radius: 8px !important;
            font-size: 15px !important; cursor: pointer !important; -webkit-appearance: none !important; appearance: none !important;
        }
        .sh1k-ctl select:focus, .sh1k-ctl input:focus { outline: 2px solid #D9B65F !important; outline-offset: 1px !important; }

        .sh1k-legend { display: flex !important; flex-wrap: wrap !important; gap: 16px !important; margin: 0 0 16px !important; }
        .sh1k-legend span { display: flex !important; align-items: center !important; gap: 7px !important; font-size: 12px !important; color: #A8B5A9 !important; }
        .sh1k-key { width: 12px !important; height: 12px !important; border-radius: 50% !important; display: inline-block !important; flex: none !important; }
        .sh1k-key-open { border: 1px dashed rgba(241,239,228,.5) !important; }
        .sh1k-key-taken { background: #5E8C6A !important; }
        .sh1k-key-mine { background: #D9B65F !important; }

        .sh1k-grid { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)) !important; gap: 8px !important; max-height: 460px !important; overflow-y: auto !important; padding-right: 6px !important; }
        .sh1k-grid::-webkit-scrollbar { width: 8px !important; }
        .sh1k-grid::-webkit-scrollbar-track { background: rgba(241,239,228,.06) !important; border-radius: 10px !important; }
        .sh1k-grid::-webkit-scrollbar-thumb { background: #5E8C6A !important; border-radius: 10px !important; }

        .sh1k-table { padding: 10px 6px 12px !important; border: 1px solid transparent !important; border-radius: 12px !important; text-align: center !important; cursor: pointer !important; transition: background .18s ease, border-color .18s ease !important; }
        .sh1k-table:hover { background: #1D3D28 !important; border-color: rgba(241,239,228,.18) !important; }
        .sh1k-table.is-active { background: #1D3D28 !important; border-color: #D9B65F !important; }
        .sh1k-table.is-full { opacity: .5 !important; }
        .sh1k-table.is-dimmed { opacity: .2 !important; }

        .sh1k-found { margin: -8px 0 16px !important; font-size: 12.5px !important; color: #D9B65F !important; line-height: 1.5 !important; min-height: 1px !important; }
        .sh1k-found:empty { margin: 0 !important; }

        .sh1k-disc { position: relative !important; width: 130px !important; height: 130px !important; margin: 0 auto !important; }
        .sh1k-plate { position: absolute !important; left: 34px !important; top: 34px !important; width: 62px !important; height: 62px !important; border-radius: 50% !important; background: #1D3D28 !important; border: 1px solid rgba(241,239,228,.18) !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; font-size: 18px !important; font-weight: bold !important; line-height: 1 !important; }
        .sh1k-plate small { font-size: 9px !important; letter-spacing: .1em !important; text-transform: uppercase !important; color: #A8B5A9 !important; margin-top: 4px !important; font-weight: normal !important; }

        .sh1k-seat { position: absolute !important; width: 22px !important; height: 22px !important; padding: 0 !important; margin: 0 !important; border-radius: 50% !important; cursor: pointer !important; font-size: 9px !important; font-weight: bold !important; line-height: 1 !important; display: flex !important; align-items: center !important; justify-content: center !important; border: 1px dashed rgba(241,239,228,.45) !important; background: transparent !important; color: transparent !important; transition: transform .15s ease !important; }
        .sh1k-seat:hover { transform: scale(1.2) !important; }
        .sh1k-seat.taken { border: 1px solid #3F6B4E !important; background: #5E8C6A !important; color: #0E2415 !important; cursor: not-allowed !important; }
        .sh1k-seat.held { border: 1px solid #6E7F70 !important; background: #46584B !important; color: transparent !important; cursor: not-allowed !important; }
        .sh1k-seat.blocked { border: 1px solid rgba(241,239,228,.2) !important; background: rgba(241,239,228,.08) !important; cursor: not-allowed !important; }
        .sh1k-seat.mine { border: 1px solid #A8842E !important; background: #D9B65F !important; color: #2C2205 !important; }
        .sh1k-seat.is-hit { box-shadow: 0 0 0 3px #16301F, 0 0 0 6px #F1EFE4 !important; animation: sh1kPulse 1.6s ease-out infinite !important; z-index: 3 !important; }
        @keyframes sh1kPulse {
            0%, 100% { box-shadow: 0 0 0 3px #16301F, 0 0 0 5px #F1EFE4; }
            50% { box-shadow: 0 0 0 3px #16301F, 0 0 0 9px rgba(241,239,228,.25); }
        }

        .sh1k-host { margin: 8px 0 0 !important; font-size: 12px !important; font-weight: bold !important; line-height: 1.3 !important; color: #F1EFE4 !important; }
        .sh1k-open { margin: 2px 0 0 !important; font-size: 11px !important; color: #A8B5A9 !important; }

        .sh1k-detail { margin: 20px 0 0 !important; padding: 16px !important; background: #1D3D28 !important; border-radius: 12px !important; }
        .sh1k-detail h3 { margin: 0 0 4px !important; font-size: 17px !important; font-weight: bold !important; color: #F1EFE4 !important; line-height: 1.3 !important; }
        .sh1k-detail p.sh1k-detail-sub { margin: 0 0 14px !important; font-size: 12px !important; color: #A8B5A9 !important; }
        .sh1k-rows { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid !important; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)) !important; gap: 4px !important; }
        .sh1k-row { display: flex !important; align-items: center !important; gap: 10px !important; width: 100% !important; padding: 8px 10px !important; border: none !important; border-radius: 8px !important; background: transparent !important; color: #F1EFE4 !important; font-size: 13px !important; text-align: left !important; cursor: default !important; }
        .sh1k-row.is-open { cursor: pointer !important; }
        .sh1k-row.is-open:hover { background: rgba(241,239,228,.08) !important; }
        .sh1k-num { flex: none !important; width: 24px !important; height: 24px !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 10px !important; font-weight: bold !important; border: 1px dashed rgba(241,239,228,.45) !important; color: #A8B5A9 !important; }
        .sh1k-row.taken .sh1k-num { border: 1px solid #3F6B4E !important; background: #5E8C6A !important; color: #0E2415 !important; }
        .sh1k-row.mine .sh1k-num { border: 1px solid #A8842E !important; background: #D9B65F !important; color: #2C2205 !important; }
        .sh1k-row.is-hit { background: rgba(217,182,95,.18) !important; }
        .sh1k-who { flex: 1 !important; min-width: 0 !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
        .sh1k-take { flex: none !important; font-size: 11px !important; color: #D9B65F !important; font-weight: bold !important; }

        .sh1k-picked { margin: 18px 0 0 !important; padding: 14px 16px !important; background: #1D3D28 !important; border-left: 3px solid #D9B65F !important; border-radius: 0 !important; }
        .sh1k-picked small { display: block !important; font-size: 10px !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: #A8B5A9 !important; margin: 0 0 4px !important; }
        .sh1k-picked b { font-size: 17px !important; color: #F1EFE4 !important; font-weight: bold !important; }
        .sh1k-note { margin: 12px 0 0 !important; font-size: 12px !important; color: #A8B5A9 !important; line-height: 1.6 !important; }
        .sh1k-note-warn { color: #E8C98A !important; }

        /* The two CMS fields become read-only confirmations, never disabled.
           A disabled input is not submitted and the seat would arrive blank. */
        #input_13, #input_14 { background: #F1EFE8 !important; cursor: not-allowed !important; }

        @media (max-width: 700px) {
            #sh1000-seatmap { padding: 18px 14px !important; }
            .sh1k-grid { grid-template-columns: repeat(auto-fill, minmax(132px, 1fr)) !important; max-height: 380px !important; }
            .sh1k-disc { width: 118px !important; height: 118px !important; }
            .sh1k-plate { left: 30px !important; top: 30px !important; width: 58px !important; height: 58px !important; }
        }
    `;
    document.head.appendChild(style);

    // ==========================================
    // 3. HELPERS
    // ==========================================
    function el(id) { return document.getElementById(id); }

    function api(params) {
        var qs = Object.keys(params).map(function (k) {
            return encodeURIComponent(k) + '=' + encodeURIComponent(params[k]);
        }).join('&');
        return fetch(API_URL + '?' + qs).then(function (r) { return r.json(); });
    }

    function initials(name) {
        if (!name) return '';
        return name.replace(/[^A-Za-z ]/g, '').split(/\s+/).map(function (w) {
            return w.charAt(0);
        }).join('').slice(0, 2).toUpperCase();
    }

    function tableById(n) {
        for (var i = 0; i < state.tables.length; i++) {
            if (state.tables[i].n == n) return state.tables[i];
        }
        return null;
    }

    function openCount(t) {
        var used = 0;
        for (var k in t.seats) { used++; }
        return Math.max(t.cap - used, 0);
    }

    function isHit(tableNo, seatNo) {
        if (!state.hits.length) return false;
        return state.hits.indexOf(tableNo + '-' + seatNo) !== -1;
    }

    function tableHasHit(tableNo) {
        for (var i = 0; i < state.hits.length; i++) {
            if (state.hits[i].split('-')[0] == tableNo) return true;
        }
        return false;
    }

    // Only confirmed bookings carry a name, so the search reaches
    // exactly the people who are actually seated.
    function runSearch(q) {
        q = (q || '').trim().toLowerCase();
        state.hits = [];

        if (q.length > 1) {
            state.tables.forEach(function (t) {
                for (var n in t.seats) {
                    var who = t.seats[n].n;
                    if (who && who.toLowerCase().indexOf(q) !== -1) {
                        state.hits.push(t.n + '-' + n);
                    }
                }
            });
            if (state.hits.length) {
                state.table = parseInt(state.hits[0].split('-')[0], 10);
            }
        }

        var found = el('sh1k-found');
        if (found) {
            if (q.length > 1 && !state.hits.length) {
                found.textContent = 'Nobody by that name has booked a seat yet.';
            } else if (state.hits.length === 1) {
                var p = state.hits[0].split('-');
                var t1 = tableById(parseInt(p[0], 10));
                found.textContent = 'Found at table ' + p[0] + (t1 && t1.head ? ' - ' + t1.head : '') + ', seat ' + p[1] + '.';
            } else if (state.hits.length > 1) {
                found.textContent = state.hits.length + ' people match. They are highlighted below.';
            } else {
                found.textContent = '';
            }
        }

        drawTableSelect(); drawGrid(); drawDetail(); drawSeatSelect();
    }

    function seatState(t, n) {
        var s = t.seats[n];
        if (state.table == t.n && state.seat == n) return 'mine';
        if (!s) return 'open';
        return s.s;
    }

    // ==========================================
    // 4. WRITE INTO THE CMS FIELDS
    // ==========================================
    function lockFields() {
        [FIELD_TABLE, FIELD_SEAT].forEach(function (id) {
            var f = el(id);
            if (!f) return;
            f.setAttribute('readonly', 'readonly');
            f.setAttribute('tabindex', '-1');
        });
    }

    function writeFields() {
        var t = el(FIELD_TABLE), s = el(FIELD_SEAT);
        if (!t || !s) return;
        var tbl = tableById(state.table);
        t.value = state.table
            ? (tbl && tbl.head ? 'Table ' + state.table + ' - ' + tbl.head : 'Table ' + state.table)
            : '';
        s.value = state.seat ? 'Seat ' + state.seat + ' (' + state.seatId + ')' : '';
        [t, s].forEach(function (f) {
            f.dispatchEvent(new Event('input', { bubbles: true }));
            f.dispatchEvent(new Event('change', { bubbles: true }));
        });
    }

    // ==========================================
    // 5. RENDER
    // ==========================================
    function render() {
        var root = el(PLACEHOLDER);
        if (!root) return;

        var html = '';

        html += '<div class="sh1k-controls">';
        html += '<div class="sh1k-ctl"><label for="sh1k-search">Find someone</label><input type="text" id="sh1k-search" placeholder="Start typing a name" autocomplete="off"></div>';
        html += '<div class="sh1k-ctl"><label for="sh1k-table-select">Head of table</label><select id="sh1k-table-select"></select></div>';
        html += '<div class="sh1k-ctl"><label for="sh1k-seat-select">Seat</label><select id="sh1k-seat-select"></select></div>';
        html += '</div>';
        html += '<p class="sh1k-found" id="sh1k-found"></p>';

        html += '<div class="sh1k-legend">';
        html += '<span><i class="sh1k-key sh1k-key-open"></i>Open</span>';
        html += '<span><i class="sh1k-key sh1k-key-taken"></i>Taken</span>';
        html += '<span><i class="sh1k-key sh1k-key-mine"></i>Your seat</span>';
        html += '</div>';

        html += '<div class="sh1k-grid" id="sh1k-grid"></div>';
        html += '<div id="sh1k-detail"></div>';
        html += '<div class="sh1k-picked"><small>Your seat</small><b id="sh1k-picked">Nothing picked yet</b>';
        html += '<p class="sh1k-note" id="sh1k-note">Pick a table, then a seat. It is held for you for 25 minutes while you finish the form.</p></div>';

        root.innerHTML = html;

        el('sh1k-search').addEventListener('input', function (e) {
            runSearch(e.target.value);
        });
        el('sh1k-table-select').addEventListener('change', function (e) {
            state.table = e.target.value ? parseInt(e.target.value, 10) : null;
            drawGrid(); drawDetail(); drawSeatSelect(); drawPicked();
        });
        el('sh1k-seat-select').addEventListener('change', function (e) {
            if (!e.target.value) return;
            choose(state.table, parseInt(e.target.value, 10));
        });

        drawTableSelect(); drawGrid(); drawDetail(); drawSeatSelect(); drawPicked();
    }

    function drawTableSelect() {
        var sel = el('sh1k-table-select');
        if (!sel) return;
        var html = '<option value="">Choose a table</option>';
        state.tables.forEach(function (t) {
            var free = openCount(t);
            if (free === 0 && state.table != t.n) return;   // full tables drop out of the list
            html += '<option value="' + t.n + '"' + (state.table == t.n ? ' selected' : '') + '>'
                 + 'Table ' + t.n + (t.head ? ' - ' + t.head : '')
                 + ' (' + free + ' open)</option>';
        });
        sel.innerHTML = html;
    }

    function drawSeatSelect() {
        var sel = el('sh1k-seat-select');
        if (!sel) return;
        var t = tableById(state.table);
        if (!t) { sel.innerHTML = '<option value="">Choose a table first</option>'; return; }
        var html = '<option value="">Choose a seat</option>';
        for (var n = 1; n <= t.cap; n++) {
            var st = seatState(t, n);
            if (st !== 'open' && st !== 'mine') continue;   // only offer what is actually free
            html += '<option value="' + n + '"' + (state.seat == n ? ' selected' : '') + '>Seat ' + n + '</option>';
        }
        sel.innerHTML = html;
    }

    function drawGrid() {
        var grid = el('sh1k-grid');
        if (!grid) return;
        var html = '';

        state.tables.forEach(function (t) {
            var dots = '';
            for (var i = 0; i < t.cap; i++) {
                var n = i + 1;
                var a = (i / t.cap) * 2 * Math.PI - Math.PI / 2;
                var x = Math.round(65 + 54 * Math.cos(a) - 11);
                var y = Math.round(65 + 54 * Math.sin(a) - 11);
                var st = seatState(t, n);
                var who = t.seats[n] && t.seats[n].n ? t.seats[n].n : '';
                var label = st === 'taken' && who ? who + ', seat ' + n
                          : st === 'open' ? 'Seat ' + n + ', open'
                          : 'Seat ' + n + ', not available';
                dots += '<button type="button" class="sh1k-seat ' + st + (isHit(t.n, n) ? ' is-hit' : '') + '" style="left:' + x + 'px;top:' + y + 'px"'
                     +  ' data-t="' + t.n + '" data-s="' + n + '" title="' + label + '" aria-label="' + label + '">'
                     +  (st === 'taken' ? initials(who) : '') + '</button>';
            }
            var free = openCount(t);
            var dimmed = state.hits.length && !tableHasHit(t.n);
            html += '<div class="sh1k-table' + (state.table == t.n ? ' is-active' : '') + (free === 0 ? ' is-full' : '') + (dimmed ? ' is-dimmed' : '') + '" data-t="' + t.n + '">'
                 +  '<div class="sh1k-disc">' + dots
                 +  '<div class="sh1k-plate">' + t.n + '<small>' + free + ' open</small></div></div>'
                 +  '<p class="sh1k-host">' + (t.head || 'Table ' + t.n) + '</p>'
                 +  '<p class="sh1k-open">' + (free ? free + ' seats open' : 'full') + '</p>'
                 +  '</div>';
        });

        grid.innerHTML = html;

        Array.prototype.forEach.call(grid.querySelectorAll('.sh1k-table'), function (d) {
            d.addEventListener('click', function () {
                state.table = parseInt(d.getAttribute('data-t'), 10);
                drawTableSelect(); drawGrid(); drawDetail(); drawSeatSelect(); drawPicked();
            });
        });
        Array.prototype.forEach.call(grid.querySelectorAll('.sh1k-seat'), function (b) {
            b.addEventListener('click', function (ev) {
                ev.stopPropagation();
                var t = parseInt(b.getAttribute('data-t'), 10);
                var n = parseInt(b.getAttribute('data-s'), 10);
                var tbl = tableById(t);
                var st = seatState(tbl, n);
                state.table = t;
                if (st === 'open' || st === 'mine') choose(t, n);
                else { drawTableSelect(); drawGrid(); drawDetail(); drawSeatSelect(); }
            });
        });
    }

    function drawDetail() {
        var box = el('sh1k-detail');
        if (!box) return;
        var t = tableById(state.table);
        if (!t) { box.innerHTML = ''; return; }

        var rows = '';
        for (var n = 1; n <= t.cap; n++) {
            var st = seatState(t, n);
            var who = t.seats[n] && t.seats[n].n ? t.seats[n].n : '';
            var body, cls;
            if (st === 'mine') { cls = 'mine'; body = '<span class="sh1k-who">Your seat</span>'; }
            else if (st === 'taken') { cls = 'taken'; body = '<span class="sh1k-who">' + who + '</span>'; }
            else if (st === 'open') { cls = 'is-open'; body = '<span class="sh1k-who">Seat ' + n + ' - open</span><span class="sh1k-take">Take it</span>'; }
            else { cls = ''; body = '<span class="sh1k-who">Seat ' + n + ' - not available</span>'; }
            rows += '<button type="button" class="sh1k-row ' + cls + (isHit(t.n, n) ? ' is-hit' : '') + '" data-s="' + n + '">'
                 +  '<i class="sh1k-num">' + (st === 'taken' ? initials(who) : n) + '</i>' + body + '</button>';
        }

        box.innerHTML = '<div class="sh1k-detail"><h3>Table ' + t.n + (t.head ? ' - ' + t.head : '') + '</h3>'
                      + '<p class="sh1k-detail-sub">' + openCount(t) + ' of ' + t.cap + ' seats open</p>'
                      + '<div class="sh1k-rows">' + rows + '</div></div>';

        Array.prototype.forEach.call(box.querySelectorAll('.sh1k-row.is-open'), function (r) {
            r.addEventListener('click', function () {
                choose(state.table, parseInt(r.getAttribute('data-s'), 10));
            });
        });
    }

    function drawPicked() {
        var p = el('sh1k-picked');
        if (!p) return;
        if (!state.seat) { p.textContent = 'Nothing picked yet'; return; }
        var t = tableById(state.table);
        p.textContent = 'Table ' + state.table + (t && t.head ? ' - ' + t.head : '') + ', seat ' + state.seat;
    }

    function note(text, warn) {
        var n = el('sh1k-note');
        if (!n) return;
        n.textContent = text;
        n.className = warn ? 'sh1k-note sh1k-note-warn' : 'sh1k-note';
    }

    // ==========================================
    // 6. CHOOSE A SEAT (places the hold)
    // ==========================================
    function choose(tableNo, seatNo) {
        var previous = state.seatId;
        var seatId = 'T' + tableNo + '-S' + seatNo;

        note('Holding that seat...');

        api({ action: 'hold', seatId: seatId, token: state.token }).then(function (res) {
            if (res.status === 'success') {
                state.table = tableNo;
                state.seat = seatNo;
                state.seatId = seatId;
                writeFields();

                if (previous && previous !== seatId) {
                    api({ action: 'release', seatId: previous, token: state.token }).catch(function () {});
                    var pt = previous.split('-');
                    var oldT = tableById(parseInt(pt[0].slice(1), 10));
                    if (oldT) delete oldT.seats[parseInt(pt[1].slice(1), 10)];
                }

                note('Seat held for you for 25 minutes. Finish the form to confirm it.');
            } else if (res.status === 'unavailable') {
                var t = tableById(tableNo);
                if (t) t.seats[seatNo] = { s: 'taken', n: '' };
                note('Someone just took that seat. Please pick another one.', true);
            } else {
                note('Could not hold that seat. Try again in a moment.', true);
            }
            drawTableSelect(); drawGrid(); drawDetail(); drawSeatSelect(); drawPicked();
        }).catch(function () {
            note('Could not reach the seating list. Check your connection and try again.', true);
        });
    }

    // ==========================================
    // 7. LOAD
    // ==========================================
    function load(silent) {
        return api({ action: 'map' }).then(function (res) {
            if (res.status !== 'success') throw new Error(res.message || 'bad response');
            state.tables = res.tables || [];
            if (!silent) render();
            else { drawTableSelect(); drawGrid(); drawDetail(); drawSeatSelect(); }
        }).catch(function (err) {
            var root = el(PLACEHOLDER);
            if (root && !silent) {
                root.innerHTML = '<p class="sh1k-msg sh1k-msg-error">The seating chart could not load right now. '
                               + 'Please refresh the page, or call the Chabad House and we will seat you.</p>';
            }
            if (window.console) console.error('Shabbat 1000 seating:', err);
        });
    }

    // ==========================================
    // 8. SUBMIT HOOK
    //    Never calls preventDefault. Never blocks. Never validates
    //    on its own. It watches for the CMS to accept the submission
    //    and then fires a keepalive request that survives navigation.
    // ==========================================
    function hookSubmit() {
        var form = document.querySelector('.userform-form') || document.forms[0];
        var button = document.querySelector('.form-submit-button');
        if (!form || !button) return;

        button.addEventListener('click', function () {
            setTimeout(function () {
                if (state.confirmed) return;
                if (!state.seatId) return;

                var hasErrors = document.querySelectorAll('.form-line-error, .form-validation-error, .form-error-message').length > 0;
                var html5Valid = form.checkValidity ? form.checkValidity() : true;
                if (hasErrors || !html5Valid) return;

                var first = el('first_4'), last = el('last_4');
                var fullName = ((first ? first.value : '') + ' ' + (last ? last.value : '')).trim();
                var emailEl = el('input_6');
                var spc = el('simple_spc');

                var payload = {
                    action: 'confirm',
                    token: state.token,
                    seatId: state.seatId,
                    table: state.table,
                    seat: state.seat,
                    fullName: fullName || 'Guest',
                    email: emailEl ? emailEl.value.trim() : '',
                    submissionId: spc ? spc.value : ''
                };

                state.confirmed = true;

                fetch(API_URL, {
                    method: 'POST',
                    mode: 'no-cors',
                    keepalive: true,
                    headers: { 'Content-Type': 'text/plain;charset=utf-8' },
                    body: JSON.stringify(payload)
                }).catch(function () {});

                try { window.sessionStorage.removeItem('sh1000-token'); } catch (e) {}

            }, 300);
        });
    }

    // ==========================================
    // 9. GO
    // ==========================================
    function start() {
        if (!el(PLACEHOLDER)) return;
        lockFields();
        load(false);
        hookSubmit();

        // Refresh the map periodically so a long form fill does not
        // show a stale picture of who is sitting where.
        setInterval(function () {
            if (!state.confirmed) load(true);
        }, 45000);
    }

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', start);
    } else {
        start();
    }

})();
//]]>
</script>
</body>
</html>