{"product_id":"single-drum-pendant-for-the-side-of-a-room","title":"Shade Drum Vertical Rib Brass Hardware Pendant Light","description":"\u003c!-- window: ribbed-drum-pendant-40 | four glass colors, brass hardware --\u003e\u003cstyle\u003e\n#fecify-typography-scope { scroll-behavior: auto; overflow-x: visible; display: flow-root; width: 100%; max-width: none; margin: 0; font-weight: 400 !important; }\n#fecify-typography-scope *, #fecify-typography-scope *::before, #fecify-typography-scope *::after { box-sizing: border-box; }\n#fecify-typography-scope img { display: block !important; max-width: 100% !important; width: 100% !important; height: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }\n#fecify-typography-scope video { display: block; max-width: 100%; width: 100%; height: auto; margin: 0 !important; }\n#fecify-typography-scope {\n  --bg: #f3eee6;\n  --bg-soft: #e8e0d4;\n  --bg-band: #ebe4d8;\n  --ink: #1a1510;\n  --text: #2c241c;\n  --text-soft: #5c5044;\n  --muted: #8a7c6c;\n  --line: rgba(26, 21, 16, 0.12);\n  --accent: #a07838;\n  --accent-deep: #6b4e22;\n  --brass: #c49a4a;\n  --brass-deep: #8a6528;\n  --amber: #d4a85a;\n  --glass: #ebe4d6;\n  --paper: #fffcf7;\n  --glow: rgba(196, 154, 74, 0.55);\n  --fs-eyebrow: 0.75rem;\n  --fs-meta: 0.875rem;\n  --fs-body: 1rem;\n  --fs-lead: 1.0625rem;\n  --fs-h3: 1.3125rem;\n  --fs-h2: clamp(1.65rem, 2.5vw, 2.05rem);\n  --fs-display: clamp(1.9rem, 3.1vw, 2.45rem);\n  --font-title: \"Newsreader\", \"Iowan Old Style\", Georgia, serif;\n  --font-ui: \"Manrope\", \"Helvetica Neue\", Arial, sans-serif;\n  --space: clamp(1.05rem, 2vw, 1.55rem);\n  --max: 1180px;\n  --ease: cubic-bezier(0.22, 1, 0.36, 1);\n  --radius: 10px;\n  margin: 0;\n  color: var(--text);\n  background:\n    radial-gradient(ellipse 70% 48% at 10% -4%, rgba(196, 154, 74, 0.55), transparent 56%),\n    radial-gradient(ellipse 48% 38% at 92% 8%, rgba(255, 252, 247, 0.95), transparent 52%),\n    radial-gradient(ellipse 55% 42% at 55% 100%, rgba(138, 101, 40, 0.12), transparent 55%),\n    linear-gradient(168deg, #faf7f2 0%, #f3eee6 40%, #ebe4d8 78%, #e3d9ca 100%);\n  font-family: var(--font-ui);\n  font-size: var(--fs-body);\n  font-weight: 400 !important;\n  line-height: 1.62;\n  -webkit-font-smoothing: antialiased;\n}\n#fecify-typography-scope a { color: inherit; text-decoration: none; }\n#fecify-typography-scope p, #fecify-typography-scope span, #fecify-typography-scope li, #fecify-typography-scope div { font-weight: inherit; }\n#fecify-typography-scope .wrap { width: min(100% - 2rem, var(--max)); margin-inline: auto; }\n#fecify-typography-scope .eyebrow {\n  display: inline-flex; align-items: center; gap: 0.55rem;\n  margin: 0 0 0.75rem; color: var(--accent-deep);\n  font-family: var(--font-ui); font-size: var(--fs-eyebrow); font-weight: 700 !important;\n  letter-spacing: 0.16em; text-transform: uppercase;\n}\n#fecify-typography-scope .eyebrow::before {\n  content: \"\"; width: 1.35rem; height: 2px; border-radius: 0;\n  background: linear-gradient(90deg, var(--brass-deep), var(--brass));\n}\n#fecify-typography-scope .display {\n  margin: 0; font-family: var(--font-title); font-size: var(--fs-display);\n  font-weight: 500 !important; font-style: normal; line-height: 1.16;\n  letter-spacing: -0.015em; color: var(--ink);\n  font-optical-sizing: auto; text-wrap: balance;\n}\n#fecify-typography-scope .h2 {\n  margin: 0; font-family: var(--font-title); font-size: var(--fs-h2);\n  font-weight: 500 !important; line-height: 1.18; letter-spacing: -0.01em; color: var(--ink);\n  font-optical-sizing: auto;\n}\n#fecify-typography-scope .h3 {\n  margin: 0; font-family: var(--font-title); font-size: var(--fs-h3);\n  font-weight: 500 !important; line-height: 1.25; color: var(--ink);\n  font-optical-sizing: auto;\n}\n#fecify-typography-scope .lead {\n  margin: 0.55rem 0 0; max-width: 42rem; color: var(--text-soft);\n  font-size: var(--fs-lead); font-weight: 400 !important; line-height: 1.58;\n}\n#fecify-typography-scope .section-head .lead { max-width: 46rem; text-wrap: pretty; }\n#fecify-typography-scope .body {\n  margin: 0.35rem 0 0; color: var(--text-soft);\n  font-size: var(--fs-body); font-weight: 400 !important; line-height: 1.55;\n}\n#fecify-typography-scope .section { padding: calc(var(--space) * 0.85) 0; }\n#fecify-typography-scope .section-band { background: transparent; border-block: 0; box-shadow: none; }\n#fecify-typography-scope .section-band .wrap { background: transparent; }\n#fecify-typography-scope .section-panel \u003e .wrap {\n  padding: clamp(1rem, 2vw, 1.45rem);\n  background: #ebe4d8;\n  border: 0;\n  box-shadow: none;\n  border-radius: calc(var(--radius) + 4px);\n}\n#fecify-typography-scope .section-head { margin-bottom: clamp(0.55rem, 1.2vw, 0.85rem); max-width: 40rem; }\n#fecify-typography-scope .reveal { opacity: 1; transform: none; }\n#fecify-typography-scope.js-animate .reveal { opacity: 0; transform: translateY(18px); transition: opacity 0.7s var(--ease), transform 0.7s var(--ease); }\n#fecify-typography-scope.js-animate .reveal.is-in { opacity: 1; transform: none; }\n#fecify-typography-scope .shot {\n  position: relative; overflow: hidden; border-radius: var(--radius);\n  background: var(--bg-soft);\n  box-shadow: 0 12px 32px rgba(26, 21, 16, 0.08), 0 1px 0 rgba(255, 255, 255, 0.7) inset;\n  line-height: 0;\n}\n#fecify-typography-scope .shot img, #fecify-typography-scope .shot video {\n  width: 100% !important; height: auto !important; margin: 0 !important; display: block !important;\n}\n#fecify-typography-scope .hero-grid {\n  display: grid; grid-template-columns: 1.2fr 0.8fr;\n  gap: clamp(1rem, 2.2vw, 1.75rem); align-items: center;\n}\n#fecify-typography-scope .media-frame {\n  position: relative; overflow: hidden; border-radius: calc(var(--radius) + 6px);\n  background: #1c1610;\n  box-shadow: 0 28px 64px rgba(26, 21, 16, 0.16), 0 0 0 1px rgba(154, 115, 64, 0.35);\n  line-height: 0;\n}\n#fecify-typography-scope .media-frame::after {\n  content: \"\"; position: absolute; inset: auto 0 0 0; height: 5px; z-index: 3;\n  background: linear-gradient(90deg, #c49a4a, #f7f1e8, #8a6528, #6b4e22, #c49a4a);\n}\n#fecify-typography-scope .swap-stack { position: relative; display: grid; width: 100%; }\n#fecify-typography-scope .swap-stack img { grid-area: 1 \/ 1; width: 100% !important; height: auto !important; margin: 0 !important; display: block !important; }\n#fecify-typography-scope .swap-day,\n#fecify-typography-scope img[data-media-slot=\"hero-off\"] { z-index: 0; }\n#fecify-typography-scope .swap-night,\n#fecify-typography-scope img[data-media-slot=\"hero-on\"] {\n  z-index: 1; opacity: 0;\n  animation: og-day-night 5.5s ease-in-out infinite;\n}\n@keyframes og-day-night { 0%, 12% { opacity: 0; } 40%, 60% { opacity: 1; } 88%, 100% { opacity: 0; } }\n@media (prefers-reduced-motion: reduce) {\n  #fecify-typography-scope .swap-night,\n  #fecify-typography-scope img[data-media-slot=\"hero-on\"] { animation: none; opacity: 1; }\n}\n#fecify-typography-scope .media-badge {\n  position: absolute; left: 0.9rem; bottom: 1.15rem; z-index: 2;\n  padding: 0.5rem 0.85rem; border-radius: 999px;\n  background: linear-gradient(135deg, #c49a4a 0%, #6b4e22 100%);\n  color: #fff; box-shadow: 0 8px 20px rgba(154, 115, 64, 0.28);\n  font-family: var(--font-ui); font-size: var(--fs-eyebrow); font-weight: 700 !important;\n  letter-spacing: 0.14em; text-transform: uppercase;\n}\n#fecify-typography-scope .hero-copy .meta { display: flex; flex-wrap: wrap; gap: 0.45rem; margin: 0.9rem 0 0; }\n#fecify-typography-scope .chip {\n  display: inline-flex; align-items: center; gap: 0.4rem;\n  padding: 0.45rem 0.8rem; border-radius: 999px;\n  background: rgba(255, 252, 247, 0.9);\n  border: 1px solid rgba(160, 120, 56, 0.28);\n  color: var(--accent-deep);\n  font-size: var(--fs-meta); font-weight: 600 !important;\n  backdrop-filter: blur(6px);\n}\n#fecify-typography-scope .chip::before { content: \"\"; width: 7px; height: 7px; border-radius: 50%; background: #c49a4a; }\n#fecify-typography-scope .swatches { display: flex; flex-wrap: wrap; gap: 0.55rem 0.85rem; margin-top: 1rem; align-items: center; }\n#fecify-typography-scope .swatches-label {\n  margin: 0; font-size: var(--fs-eyebrow); font-weight: 700 !important; letter-spacing: 0.12em;\n  text-transform: uppercase; color: var(--muted);\n}\n#fecify-typography-scope .finish-item { display: inline-flex; align-items: center; gap: 0.4rem; }\n#fecify-typography-scope .finish-name { margin: 0; color: var(--text-soft); font-size: var(--fs-meta); font-weight: 500 !important; line-height: 1.2; }\n#fecify-typography-scope .swatch {\n  flex: 0 0 auto; width: 1.45rem; height: 1.45rem; border-radius: 50%;\n  border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(21,24,29,.16), 0 4px 10px rgba(21,24,29,.08);\n}\n#fecify-typography-scope .detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(0.85rem, 1.8vw, 1.15rem); }\n#fecify-typography-scope .carousel { position: relative; }\n#fecify-typography-scope .carousel-nav {\n  display: flex; align-items: center; justify-content: center; gap: 0.5rem;\n  margin-top: 0.5rem; width: 100%; padding: 0; border: 0;\n  background: transparent !important; box-shadow: none !important;\n}\n#fecify-typography-scope .carousel-nav.is-disabled { display: none !important; }\n@media (min-width: 721px) { #fecify-typography-scope .carousel:has(.detail-grid) .carousel-nav { display: none !important; } }\n@media (min-width: 721px) { #fecify-typography-scope .carousel:has(.shade-grid) .carousel-nav { display: none !important; } }\n#fecify-typography-scope .carousel-btn {\n  display: inline-grid; place-items: center; width: 2.55rem; height: 2.55rem; padding: 0;\n  border: 1.5px solid rgba(201, 165, 106, 0.45); border-radius: 999px;\n  background: rgba(255, 252, 247, 0.92); color: var(--accent-deep); cursor: pointer; pointer-events: auto !important;\n  touch-action: manipulation; appearance: none; -webkit-appearance: none; box-shadow: none;\n  transition: background 0.25s var(--ease), color 0.25s var(--ease), opacity 0.25s, border-color 0.25s;\n}\n#fecify-typography-scope .carousel-btn:hover { background: var(--accent-deep); border-color: var(--accent-deep); color: #fff; }\n#fecify-typography-scope .carousel-btn.is-dim { opacity: 0.35; }\n#fecify-typography-scope .carousel-btn svg { width: 14px; height: 14px; pointer-events: none; }\n#fecify-typography-scope .carousel-track {\n  display: flex; gap: clamp(0.85rem, 1.8vw, 1.15rem);\n  overflow-x: scroll !important; overflow-y: hidden !important;\n  -webkit-overflow-scrolling: touch !important; touch-action: pan-x pan-y !important;\n  overscroll-behavior-x: contain; scrollbar-width: none; -ms-overflow-style: none;\n  cursor: grab; scroll-snap-type: none; scroll-behavior: auto;\n}\n#fecify-typography-scope .carousel-track.is-dragging { cursor: grabbing; }\n#fecify-typography-scope .carousel-track::-webkit-scrollbar { display: none; }\n#fecify-typography-scope .carousel-track img, #fecify-typography-scope .carousel-track a, #fecify-typography-scope .carousel-track button {\n  -webkit-user-drag: none !important; user-select: none; -webkit-user-select: none;\n}\n#fecify-typography-scope .space-grid.carousel-track \u003e * {\n  flex: 0 0 calc((100% - 2 * clamp(0.85rem, 1.8vw, 1.15rem)) \/ 3);\n  max-width: calc((100% - 2 * clamp(0.85rem, 1.8vw, 1.15rem)) \/ 3);\n  min-width: 0;\n}\n#fecify-typography-scope .detail-grid.carousel-track { display: grid; overflow: visible !important; cursor: default; touch-action: auto; }\n#fecify-typography-scope .shade-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(0.85rem, 1.8vw, 1.15rem); }\n#fecify-typography-scope .shade-grid.carousel-track { display: grid; overflow: visible !important; cursor: default; touch-action: auto; }\n\n#fecify-typography-scope .space-card {\n  padding: 0.7rem; border-radius: calc(var(--radius) + 2px);\n  background: linear-gradient(180deg, rgba(252,252,253,0.98), rgba(236,238,241,0.94));\n  border: 1px solid rgba(160, 120, 56, 0.16);\n  box-shadow: 0 10px 28px rgba(26, 21, 16, 0.06); min-width: 0;\n}\n#fecify-typography-scope .space-card .h3 { margin-top: 0.65rem; }\n#fecify-typography-scope .detail-card {\n  margin: 0; padding: 0.8rem; border-radius: var(--radius);\n  background: linear-gradient(165deg, #fffcf7 0%, #ebe4d8 100%);\n  border: 1px solid rgba(160, 120, 56, 0.16);\n  box-shadow: 0 10px 28px rgba(26, 21, 16, 0.06); min-width: 0;\n}\n#fecify-typography-scope .detail-card .meta { margin-top: 0.65rem; }\n#fecify-typography-scope .detail-card .eyebrow { margin-bottom: 0.35rem; color: var(--accent-deep); }\n#fecify-typography-scope .detail-card .eyebrow::before { background: linear-gradient(90deg, var(--glass), var(--brass-deep)); }\n#fecify-typography-scope .feature-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.15rem, 2.5vw, 1.85rem); align-items: stretch; }\n#fecify-typography-scope .feature-copy {\n  position: relative; display: flex; flex-direction: column; justify-content: center;\n  padding: clamp(1.35rem, 2.6vw, 1.9rem) clamp(1.2rem, 2.4vw, 1.7rem);\n  border-radius: 18px 28px 16px 34px \/ 22px 16px 30px 18px;\n  border: 1px solid rgba(160, 120, 56, 0.22);\n  background-color: #ebe3d6;\n  background-image:\n    radial-gradient(ellipse 42% 36% at 12% 18%, rgba(255, 252, 247, 0.7), transparent 70%),\n    radial-gradient(ellipse 38% 44% at 88% 72%, rgba(196, 154, 74, 0.35), transparent 68%),\n    linear-gradient(152deg, #ebe4d6 0%, #ebe3d6 48%, #e8e0d4 100%);\n  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55), 0 12px 28px rgba(26, 21, 16, 0.04);\n  min-height: 0; overflow: hidden;\n}\n#fecify-typography-scope .feature-copy__ornament { position: absolute; inset: 0; pointer-events: none; z-index: 0; }\n#fecify-typography-scope .feature-molten { position: absolute; top: 0.55rem; right: 0.15rem; width: min(52%, 10.5rem); height: auto; color: #8a6528; opacity: 0.55; }\n#fecify-typography-scope .feature-caustic {\n  position: absolute; width: 4.5rem; height: 3.2rem;\n  border-radius: 70% 30% 55% 45% \/ 45% 60% 40% 55%;\n  background: radial-gradient(ellipse at 40% 35%, rgba(255, 255, 255, 0.7), rgba(196, 154, 74, 0.2) 55%, transparent 72%);\n  opacity: 0.85;\n}\n#fecify-typography-scope .feature-caustic--a { top: 1.1rem; left: 0.9rem; }\n#fecify-typography-scope .feature-caustic--b { width: 3.2rem; height: 3.8rem; bottom: 1.2rem; right: 1.1rem; border-radius: 40% 60% 35% 65% \/ 55% 40% 60% 45%; opacity: 0.55; }\n#fecify-typography-scope .feature-copy \u003e :not(.feature-copy__ornament) { position: relative; z-index: 1; }\n#fecify-typography-scope .feature-points { margin: 1rem 0 0; padding: 0; list-style: none !important; }\n#fecify-typography-scope .feature-point {\n  position: relative; display: block; margin: 0; padding: 0.5rem 0 0.5rem 1.15rem;\n  color: var(--text-soft); font-size: var(--fs-body); font-weight: 400 !important; line-height: 1.5; list-style: none !important;\n}\n#fecify-typography-scope .feature-point::before {\n  content: \"\"; position: absolute; left: 0; top: 0.95rem; width: 0.45rem; height: 0.45rem; border-radius: 50%;\n  background: linear-gradient(135deg, #ebe4d6, #8a6528);\n}\n#fecify-typography-scope .specs-block {\n  padding: clamp(1.25rem, 2.8vw, 1.85rem);\n  border-radius: calc(var(--radius) + 4px);\n  background:\n    radial-gradient(ellipse 60% 50% at 0% 0%, rgba(201, 165, 106, 0.16), transparent 55%),\n    radial-gradient(ellipse 50% 45% at 100% 100%, rgba(212, 168, 90, 0.8), transparent 55%),\n    linear-gradient(165deg, #fffcf7 0%, #f0e8dc 100%);\n  border: 1px solid rgba(160, 120, 56, 0.2);\n  box-shadow: 0 16px 40px rgba(26, 21, 16, 0.07);\n}\n#fecify-typography-scope .specs-shot-track {\n  display: flex !important; gap: 0 !important; overflow-x: scroll !important; overflow-y: hidden !important;\n  -webkit-overflow-scrolling: touch !important; touch-action: pan-x pan-y !important; scrollbar-width: none;\n  border-radius: var(--radius); cursor: grab;\n}\n#fecify-typography-scope .specs-shot-track::-webkit-scrollbar { display: none; }\n#fecify-typography-scope .specs-shot-track \u003e img { flex: 0 0 100%; max-width: 100%; width: 100%; height: auto; }\n#fecify-typography-scope .specs-layout \u003e .carousel { position: relative; min-width: 0; }\n#fecify-typography-scope .specs-layout \u003e .carousel \u003e .carousel-nav { position: absolute; top: calc(100% + 0.55rem); left: 0; right: 0; margin-top: 0; }\n@media (max-width: 980px) {\n  #fecify-typography-scope .specs-layout \u003e .carousel \u003e .carousel-nav { position: static; top: auto; margin-top: 0.65rem; }\n}\n#fecify-typography-scope .specs-layout {\n  display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);\n  gap: clamp(1rem, 2.2vw, 1.75rem); align-items: center; margin-top: 0.95rem; margin-bottom: 2.85rem;\n}\n#fecify-typography-scope .spec-list { border-top: 1px solid var(--line); margin: 0; padding: 0; min-width: 0; }\n#fecify-typography-scope .spec-row {\n  display: grid; grid-template-columns: 7.4rem minmax(0, 1fr);\n  gap: 0.3rem 0.55rem; padding: 0.5rem 0; border-bottom: 1px solid var(--line); align-items: center;\n}\n#fecify-typography-scope .spec-k { margin: 0; color: var(--muted); font-size: var(--fs-meta) !important; font-weight: 500 !important; letter-spacing: 0.01em; line-height: 1.35; }\n#fecify-typography-scope .spec-v { margin: 0; color: var(--text); font-size: var(--fs-body) !important; font-weight: 400 !important; line-height: 1.45; overflow-wrap: break-word; }\n#fecify-typography-scope .spec-chips { display: flex; flex-wrap: wrap; gap: 0.28rem; align-items: center; }\n#fecify-typography-scope .spec-chips span {\n  display: inline-block; padding: 0.22rem 0.6rem; border-radius: 999px;\n  background: rgba(255, 252, 247, 0.95); border: 1px solid rgba(160, 120, 56, 0.22);\n  color: var(--accent-deep); font-size: var(--fs-meta) !important; font-weight: 500 !important;\n}\n@media (max-width: 980px) {\n  #fecify-typography-scope .hero-grid, #fecify-typography-scope .feature-grid, #fecify-typography-scope .specs-layout {\n    display: grid !important; grid-template-columns: 1fr !important;\n  }\n  #fecify-typography-scope .space-grid.carousel-track \u003e * {\n    flex: 0 0 calc((100% - clamp(0.85rem, 1.8vw, 1.15rem)) \/ 2);\n    max-width: calc((100% - clamp(0.85rem, 1.8vw, 1.15rem)) \/ 2);\n  }\n}\n@media (max-width: 720px) {\n  #fecify-typography-scope {\n    --fs-eyebrow: 0.71875rem; --fs-meta: 0.875rem; --fs-body: 0.9375rem; --fs-lead: 0.9375rem;\n    --fs-h3: 1.25rem; --fs-h2: 1.5rem; --fs-display: 1.75rem;\n    width: 100vw !important; max-width: 100vw !important;\n    margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important;\n    padding-left: max(24px, env(safe-area-inset-left, 0px)) !important;\n    padding-right: max(24px, env(safe-area-inset-right, 0px)) !important;\n    box-sizing: border-box !important; overflow-x: visible;\n  }\n  #fecify-typography-scope .wrap { width: 100%; max-width: none; padding-inline: 0; box-sizing: border-box; }\n  #fecify-typography-scope .wrap.specs-block { padding: 1.35rem 1.25rem !important; }\n  #fecify-typography-scope .section { padding-top: 1.05rem; padding-bottom: 1.05rem; }\n  #fecify-typography-scope .section-panel \u003e .wrap { padding: 0; background: transparent; border-radius: 0; }\n  #fecify-typography-scope .feature-copy { padding: 1.15rem 1rem; }\n  #fecify-typography-scope .hero-grid, #fecify-typography-scope .feature-grid, #fecify-typography-scope .specs-layout {\n    display: grid !important; grid-template-columns: 1fr !important; gap: 1rem !important;\n  }\n  #fecify-typography-scope .spec-row { grid-template-columns: 1fr; gap: 0.18rem; padding: 0.62rem 0; align-items: start; }\n  #fecify-typography-scope .detail-grid.carousel-track {\n    display: flex !important; overflow-x: scroll !important; overflow-y: hidden !important; cursor: grab;\n    touch-action: pan-x pan-y !important; scroll-snap-type: none; -webkit-overflow-scrolling: touch !important;\n  }\n  #fecify-typography-scope .detail-grid.carousel-track \u003e *, #fecify-typography-scope .space-grid.carousel-track \u003e * {\n    flex: 0 0 min(78%, 300px); max-width: min(78%, 300px);\n  }\n  #fecify-typography-scope .shade-grid.carousel-track {\n    display: flex !important; overflow-x: scroll !important; overflow-y: hidden !important; cursor: grab;\n    touch-action: pan-x pan-y !important; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch !important;\n  }\n  #fecify-typography-scope .shade-grid.carousel-track \u003e * {\n    flex: 0 0 100% !important; max-width: 100% !important; scroll-snap-align: start;\n  }\n  #fecify-typography-scope .specs-block { border-radius: 14px; }\n}\n@media (max-width: 720px) {\n  .el-collapse-item__wrap:has(#fecify-typography-scope),\n  .el-collapse-item__content:has(#fecify-typography-scope),\n  .body_html:has(#fecify-typography-scope) {\n    overflow: visible !important; height: auto !important; max-height: none !important;\n  }\n  .el-collapse-item:has(#fecify-typography-scope) \u003e .el-collapse-item__header {\n    padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important;\n  }\n  .body_html:has(#fecify-typography-scope) {\n    width: 100vw !important; max-width: 100vw !important;\n    margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important;\n    padding-left: 0 !important; padding-right: 0 !important; box-sizing: border-box !important; background: transparent !important;\n  }\n  #fecify-typography-scope { box-shadow: -100vw 0 0 0 #f3eee6, 100vw 0 0 0 #f3eee6; }\n}\n\u003c\/style\u003e\u003cdiv id=\"fecify-typography-scope\" data-window=\"ribbed-drum-pendant-40\"\u003e\n\u003csection class=\"section\"\u003e\u003cdiv class=\"wrap hero-grid reveal\"\u003e\n\u003cdiv class=\"media-frame\" aria-label=\"Pendant light on and off\"\u003e\n\u003cdiv class=\"swap-stack\"\u003e\n\u003cimg class=\"swap-day\" data-media-slot=\"hero-off\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/da55373a8e13d22ec8a9ce8d11bfedef.jpg\" alt=\"Brass and clear glass pendant, light off\" width=\"1672\" height=\"941\"\u003e \u003cimg class=\"swap-night\" data-media-slot=\"hero-on\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/55e7a5a6c690f10c40fa59fff806f1e1.jpg\" alt=\"Brass and clear glass pendant, light on\" width=\"1672\" height=\"941\"\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"media-badge\"\u003eOn \/ Off\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"hero-copy\"\u003e\n\u003cp class=\"eyebrow\"\u003eFour glass colors\u003c\/p\u003e\n\u003ch1 class=\"display\"\u003eBrass hardware.\u003cbr\u003eFour glass shades.\u003c\/h1\u003e\n\u003cp class=\"lead\"\u003eClear, Green, Smoke gray, or Amber. 40 cm across. 15 cm high. Brass metal hardware and one E27 socket. No bulb in the box.\u003c\/p\u003e\n\u003cdiv class=\"meta\"\u003e\n\u003cspan class=\"chip\"\u003eCeiling pendant\u003c\/span\u003e \u003cspan class=\"chip\"\u003eDrop up to 150 cm\u003c\/span\u003e \u003cspan class=\"chip\"\u003eØ 40 cm · E27\u003c\/span\u003e \u003cspan class=\"chip\"\u003eBrass hardware\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"swatches\" aria-label=\"Glass colors\"\u003e\n\u003cp class=\"swatches-label\"\u003eGlass colors\u003c\/p\u003e\n\u003cspan class=\"finish-item\"\u003e\u003cspan class=\"swatch\" aria-hidden=\"true\" style=\"background: linear-gradient(145deg,#ffffff,#e7eef3 48%,#c9d3dc);\"\u003e\u003c\/span\u003e\u003cspan class=\"finish-name\"\u003eClear\u003c\/span\u003e\u003c\/span\u003e \u003cspan class=\"finish-item\"\u003e\u003cspan class=\"swatch\" aria-hidden=\"true\" style=\"background: linear-gradient(145deg,#e7f0dc,#8fa86a 52%,#5f7344);\"\u003e\u003c\/span\u003e\u003cspan class=\"finish-name\"\u003eGreen\u003c\/span\u003e\u003c\/span\u003e \u003cspan class=\"finish-item\"\u003e\u003cspan class=\"swatch\" aria-hidden=\"true\" style=\"background: linear-gradient(145deg,#d9d5d1,#8a847e 50%,#4e4a46);\"\u003e\u003c\/span\u003e\u003cspan class=\"finish-name\"\u003eSmoke gray\u003c\/span\u003e\u003c\/span\u003e \u003cspan class=\"finish-item\"\u003e\u003cspan class=\"swatch\" aria-hidden=\"true\" style=\"background: linear-gradient(145deg,#f6ddb0,#d08a3a 50%,#8a5a1e);\"\u003e\u003c\/span\u003e\u003cspan class=\"finish-name\"\u003eAmber\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/section\u003e\u003csection class=\"section\"\u003e\u003cdiv class=\"wrap\"\u003e\u003cdiv class=\"carousel\"\u003e\n\u003cdiv class=\"section-head reveal\"\u003e\n\u003cp class=\"eyebrow\"\u003eShades\u003c\/p\u003e\n\u003ch2 class=\"h2\"\u003eFour glass colors\u003c\/h2\u003e\n\u003cp class=\"lead\"\u003eFour shade colors, one wide ribbed form, brass hardware unchanged: Clear, Green, Smoke gray, or Amber.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"shade-grid carousel-track\"\u003e\n\u003carticle class=\"detail-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"shade-clear\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/7290e2ef70d6a53e2c80fc2bfb1d1c18.jpg\" alt=\"Clear ribbed glass shade\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"meta\"\u003e\n\u003cp class=\"eyebrow\"\u003eClear\u003c\/p\u003e\n\u003ch3 class=\"h3\"\u003eClear glass\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eTransparent ribs, glass shade, brass hardware still in sight.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003carticle class=\"detail-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"shade-green\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/99a709b4ce932f1c4dd98a7bbaa56819.jpg\" alt=\"Green ribbed glass shade\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"meta\"\u003e\n\u003cp class=\"eyebrow\"\u003eGreen\u003c\/p\u003e\n\u003ch3 class=\"h3\"\u003eGreen glass\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eSame 40 cm ribbed form, this time in a soft green shade.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003carticle class=\"detail-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"shade-smoke\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/35ae118b6cc704bae3269dfe009b6dd3.jpg\" alt=\"Smoke gray ribbed glass shade\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"meta\"\u003e\n\u003cp class=\"eyebrow\"\u003eSmoke gray\u003c\/p\u003e\n\u003ch3 class=\"h3\"\u003eSmoke gray glass\u003c\/h3\u003e\n\u003cp class=\"body\"\u003ePick gray glass, darker than clear and less loud than amber.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003carticle class=\"detail-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"shade-amber\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/125d0d33cba7d42d47abfde7589eab8d.jpg\" alt=\"Amber ribbed glass shade\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"meta\"\u003e\n\u003cp class=\"eyebrow\"\u003eAmber\u003c\/p\u003e\n\u003ch3 class=\"h3\"\u003eAmber glass\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eAmber, warm, ribbed. The glow goes deeper once the light is on.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/article\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"carousel-nav\" aria-label=\"Shade carousel controls\"\u003e\n\u003cbutton type=\"button\" class=\"carousel-btn carousel-btn--prev\" aria-label=\"Previous\" onclick=\"(function(b){var c=b.closest('.carousel');var t=c\u0026amp;\u0026amp;c.querySelector('.carousel-track');if(!t)return;var i=t.children[0];var g=parseFloat(getComputedStyle(t).columnGap||getComputedStyle(t).gap||0)||0;var w=(i?i.getBoundingClientRect().width:280)+g;if(t.scrollBy)t.scrollBy({left:-w,behavior:'smooth'});else t.scrollLeft-=w;})(this)\"\u003e\u003csvg viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\"\u003e\u003cpath d=\"M9 2L4 7l5 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"carousel-btn carousel-btn--next\" aria-label=\"Next\" onclick=\"(function(b){var c=b.closest('.carousel');var t=c\u0026amp;\u0026amp;c.querySelector('.carousel-track');if(!t)return;var i=t.children[0];var g=parseFloat(getComputedStyle(t).columnGap||getComputedStyle(t).gap||0)||0;var w=(i?i.getBoundingClientRect().width:280)+g;if(t.scrollBy)t.scrollBy({left:w,behavior:'smooth'});else t.scrollLeft+=w;})(this)\"\u003e\u003csvg viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\"\u003e\u003cpath d=\"M5 2l5 5-5 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/section\u003e\u003csection class=\"section\"\u003e\u003cdiv class=\"wrap\"\u003e\u003cdiv class=\"carousel\"\u003e\n\u003cdiv class=\"section-head reveal\"\u003e\n\u003cp class=\"eyebrow\"\u003eDetails\u003c\/p\u003e\n\u003ch2 class=\"h2\"\u003eA brass edge with a wide shade\u003c\/h2\u003e\n\u003cp class=\"lead\"\u003eBrass metal, four glass colors. Broad, low, and never dropping past 150 cm.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"detail-grid carousel-track\"\u003e\n\u003carticle class=\"detail-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"detail-1\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/5ad72205a65f434a9e26763f167f7ca8.jpg\" alt=\"Ribbed clear glass shade\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"meta\"\u003e\n\u003cp class=\"eyebrow\"\u003eGlass\u003c\/p\u003e\n\u003ch3 class=\"h3\"\u003e40 cm ribbed shade\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eClear, Green, Smoke gray, or Amber, and the ribbed glass is cut to 40 cm by 15 cm.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003carticle class=\"detail-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"detail-2\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/eedb876691aa4589577e0717b279db86.jpg\" alt=\"Brass inner fitting with cross arms and a knurled socket holder\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"meta\"\u003e\n\u003cp class=\"eyebrow\"\u003eFitting\u003c\/p\u003e\n\u003ch3 class=\"h3\"\u003eBrass inner structure\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eThe socket is held inside the shade by a brass cross-arm fitting.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003carticle class=\"detail-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"detail-3\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/6f069c17a164f28ecc335e0d57ed3048.jpg\" alt=\"Brushed brass ceiling canopy and twisted cord\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"meta\"\u003e\n\u003cp class=\"eyebrow\"\u003eDrop\u003c\/p\u003e\n\u003ch3 class=\"h3\"\u003e150 cm and canopy\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eTwisted cord, round brass canopy, suspension up to 150 cm.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/article\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"carousel-nav\" aria-label=\"Details carousel controls\"\u003e\n\u003cbutton type=\"button\" class=\"carousel-btn carousel-btn--prev\" aria-label=\"Previous\" onclick=\"(function(b){var c=b.closest('.carousel');var t=c\u0026amp;\u0026amp;c.querySelector('.carousel-track');if(!t)return;var i=t.children[0];var g=parseFloat(getComputedStyle(t).columnGap||getComputedStyle(t).gap||0)||0;var w=(i?i.getBoundingClientRect().width:280)+g;if(t.scrollBy)t.scrollBy({left:-w,behavior:'smooth'});else t.scrollLeft-=w;})(this)\"\u003e\u003csvg viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\"\u003e\u003cpath d=\"M9 2L4 7l5 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"carousel-btn carousel-btn--next\" aria-label=\"Next\" onclick=\"(function(b){var c=b.closest('.carousel');var t=c\u0026amp;\u0026amp;c.querySelector('.carousel-track');if(!t)return;var i=t.children[0];var g=parseFloat(getComputedStyle(t).columnGap||getComputedStyle(t).gap||0)||0;var w=(i?i.getBoundingClientRect().width:280)+g;if(t.scrollBy)t.scrollBy({left:w,behavior:'smooth'});else t.scrollLeft+=w;})(this)\"\u003e\u003csvg viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\"\u003e\u003cpath d=\"M5 2l5 5-5 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/section\u003e\u003csection class=\"section section-band\"\u003e\u003cdiv class=\"wrap\"\u003e\u003cdiv class=\"carousel\"\u003e\n\u003cdiv class=\"section-head reveal\"\u003e\n\u003cp class=\"eyebrow\"\u003eStyled scenes\u003c\/p\u003e\n\u003ch2 class=\"h2\"\u003eDining room and living room\u003c\/h2\u003e\n\u003cp class=\"lead\"\u003eSeating area, a single light. Table, one wide pendant. The list says dining room and living room.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"space-grid carousel-track\"\u003e\n\u003carticle class=\"space-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"scene-1\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/32c1d56f64c42ef0642b4a18e2581f06.jpg\" alt=\"Clear glass pendant centered over a round dining table\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003ch3 class=\"h3\"\u003eDining table\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eTable, centered, clear glass. Room on the list: dining.\u003c\/p\u003e\u003c\/article\u003e\u003carticle class=\"space-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"scene-2\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/d522d44c0c7d13a8b14650bc2aa85be1.jpg\" alt=\"Green glass pendant over a living room sofa\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003ch3 class=\"h3\"\u003eLiving room\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eSofa below, green glass as the focus, living room as the listed room.\u003c\/p\u003e\u003c\/article\u003e\u003carticle class=\"space-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"scene-3\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/2209cdf16e331c5343ec3e8ce7fd334c.jpg\" alt=\"Amber glass pendant in a pale seating corner\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003ch3 class=\"h3\"\u003eOpen seating\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eThe corner is pale. The materials are amber glass and brass.\u003c\/p\u003e\u003c\/article\u003e\u003carticle class=\"space-card reveal\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg data-media-slot=\"scene-4\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/d7a9d705fc51f4084be14a9f261e165b.jpg\" alt=\"Clear glass pendant switched on over a chair and side table\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003ch3 class=\"h3\"\u003eQuiet corner\u003c\/h3\u003e\n\u003cp class=\"body\"\u003eChair and side table, covered by one clear shade once the light is on.\u003c\/p\u003e\u003c\/article\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"carousel-nav\" aria-label=\"Scenes carousel controls\"\u003e\n\u003cbutton type=\"button\" class=\"carousel-btn carousel-btn--prev\" aria-label=\"Previous\" onclick=\"(function(b){var c=b.closest('.carousel');var t=c\u0026amp;\u0026amp;c.querySelector('.carousel-track');if(!t)return;var i=t.children[0];var g=parseFloat(getComputedStyle(t).columnGap||getComputedStyle(t).gap||0)||0;var w=(i?i.getBoundingClientRect().width:280)+g;if(t.scrollBy)t.scrollBy({left:-w,behavior:'smooth'});else t.scrollLeft-=w;})(this)\"\u003e\u003csvg viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\"\u003e\u003cpath d=\"M9 2L4 7l5 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"carousel-btn carousel-btn--next\" aria-label=\"Next\" onclick=\"(function(b){var c=b.closest('.carousel');var t=c\u0026amp;\u0026amp;c.querySelector('.carousel-track');if(!t)return;var i=t.children[0];var g=parseFloat(getComputedStyle(t).columnGap||getComputedStyle(t).gap||0)||0;var w=(i?i.getBoundingClientRect().width:280)+g;if(t.scrollBy)t.scrollBy({left:w,behavior:'smooth'});else t.scrollLeft+=w;})(this)\"\u003e\u003csvg viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\"\u003e\u003cpath d=\"M5 2l5 5-5 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/section\u003e\u003csection class=\"section section-panel\"\u003e\u003cdiv class=\"wrap feature-grid reveal\"\u003e\n\u003cdiv class=\"feature-copy\"\u003e\n\u003cdiv class=\"feature-copy__ornament\" aria-hidden=\"true\"\u003e\n\u003cspan class=\"feature-caustic feature-caustic--a\"\u003e\u003c\/span\u003e \u003cspan class=\"feature-caustic feature-caustic--b\"\u003e\u003c\/span\u003e \u003csvg class=\"feature-molten\" viewbox=\"0 0 160 120\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"\u003e \u003cpath d=\"M80 8v18\" stroke=\"currentColor\" stroke-width=\"1.2\" stroke-linecap=\"round\"\u003e\u003c\/path\u003e \u003cpath d=\"M74 6h12\" stroke=\"currentColor\" stroke-width=\"1.2\" stroke-linecap=\"round\"\u003e\u003c\/path\u003e \u003cpath d=\"M28 58c8-22 28-34 52-34s44 12 52 34c4 10 2 18-4 24-10 10-28 16-48 16s-38-6-48-16c-6-6-8-14-4-24z\" stroke=\"currentColor\" stroke-width=\"1.35\"\u003e\u003c\/path\u003e \u003cpath d=\"M48 62c6-10 18-16 32-16s26 6 32 16\" stroke=\"currentColor\" stroke-width=\"1\" opacity=\".45\"\u003e\u003c\/path\u003e \u003c\/svg\u003e\n\u003c\/div\u003e\n\u003cp class=\"eyebrow\"\u003eIn detail\u003c\/p\u003e\n\u003ch2 class=\"h2\"\u003eGlass, brass, one socket.\u003c\/h2\u003e\n\u003cp class=\"lead\"\u003eBrass metal. Four glasses: Clear, Green, Smoke gray, Amber. Dimming needs an external dimmer you do not get in the box.\u003c\/p\u003e\n\u003cdiv class=\"feature-points\"\u003e\n\u003cdiv class=\"feature-point\"\u003eRibbed glass shade in Clear, Green, Smoke gray, or Amber, Ø 40 cm × H 15 cm\u003c\/div\u003e\n\u003cdiv class=\"feature-point\"\u003eBrass metal finish\u003c\/div\u003e\n\u003cdiv class=\"feature-point\"\u003eMaximum suspension 150 cm\u003c\/div\u003e\n\u003cdiv class=\"feature-point\"\u003e1 × E27, 15 W, bulb not included\u003c\/div\u003e\n\u003cdiv class=\"feature-point\"\u003eDimmable; external dimmer not included\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"shot\" aria-label=\"Brass and glass pendant detail video\"\u003e\u003cvideo width=\"1254\" height=\"1254\" data-media-slot=\"feature\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/file_upload\/561\/video\/2026\/10\/16\/d34935a2565efe300e588b88ab769543.mp4\" poster=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/9cc36ca1d4e3760eb84d442336551eb2.jpg\" autoplay=\"autoplay\" muted=\"\" loop=\"loop\" controls=\"controls\" playsinline=\"\" preload=\"metadata\" controlslist=\"nodownload\"\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/section\u003e\u003csection class=\"section\"\u003e\u003cdiv class=\"wrap specs-block reveal\"\u003e\n\u003cdiv class=\"section-head\"\u003e\n\u003cp class=\"eyebrow\"\u003eSpecifications\u003c\/p\u003e\n\u003ch2 class=\"h2\"\u003eAt a glance with one size\u003c\/h2\u003e\n\u003cp class=\"lead\"\u003eThe brass pendant's size line is diameter, height, drop, socket, and four glass colors.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"specs-layout\"\u003e\n\u003cdiv class=\"carousel\"\u003e\n\u003cdiv class=\"shot carousel-track specs-shot-track\"\u003e\u003cimg data-media-slot=\"spec-1\" src=\"https:\/\/d5754b614d.yunchenkeji.com\/media\/editor\/561\/image\/2026\/10\/16\/169ae96e9ca180de84fbbaa2d6993556.jpg\" alt=\"Size diagram, canopy 12 cm, drop 150 cm, shade diameter 40 cm, height 15 cm\" width=\"1254\" height=\"1254\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"carousel-nav\" aria-label=\"Size diagram carousel\"\u003e\n\u003cbutton type=\"button\" class=\"carousel-btn carousel-btn--prev\" aria-label=\"Previous\" onclick=\"(function(b){var c=b.closest('.carousel');var t=c\u0026amp;\u0026amp;c.querySelector('.carousel-track');if(!t)return;var i=t.children[0];var g=parseFloat(getComputedStyle(t).columnGap||getComputedStyle(t).gap||0)||0;var w=(i?i.getBoundingClientRect().width:280)+g;if(t.scrollBy)t.scrollBy({left:-w,behavior:'smooth'});else t.scrollLeft-=w;})(this)\"\u003e\u003csvg viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\"\u003e\u003cpath d=\"M9 2L4 7l5 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"carousel-btn carousel-btn--next\" aria-label=\"Next\" onclick=\"(function(b){var c=b.closest('.carousel');var t=c\u0026amp;\u0026amp;c.querySelector('.carousel-track');if(!t)return;var i=t.children[0];var g=parseFloat(getComputedStyle(t).columnGap||getComputedStyle(t).gap||0)||0;var w=(i?i.getBoundingClientRect().width:280)+g;if(t.scrollBy)t.scrollBy({left:w,behavior:'smooth'});else t.scrollLeft+=w;})(this)\"\u003e\u003csvg viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\"\u003e\u003cpath d=\"M5 2l5 5-5 5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-list\"\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eType\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003ePendant light\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eSize\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eØ 40 cm \/ 15.7 in × H 15 cm \/ 5.9 in\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eDrop\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eMaximum suspension 150 cm \/ 59 in\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eShade\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003e\u003cdiv class=\"spec-chips\"\u003e\n\u003cspan\u003eClear\u003c\/span\u003e\u003cspan\u003eGreen\u003c\/span\u003e\u003cspan\u003eSmoke gray\u003c\/span\u003e\u003cspan\u003eAmber\u003c\/span\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eFinish\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eBrass\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eMaterials\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eGlass and metal\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eWeight\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003e2.6 kg\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eMounting\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eCeiling pendant\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eSocket\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003e1 × E27\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eWattage\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003e15 W\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eLED\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eNo integrated LED\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eBulbs\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eNot included\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eDimming\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eDimmable; external dimmer not included\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eRating\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003eIP20\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-k\"\u003eRooms\u003c\/div\u003e\n\u003cdiv class=\"spec-v\"\u003e\u003cdiv class=\"spec-chips\"\u003e\n\u003cspan\u003eLiving room\u003c\/span\u003e\u003cspan\u003eDining room\u003c\/span\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/section\u003e\u003cscript\u003e\n(function () {\n  var roots = [];\n  function addRoot(el) { if (!el || roots.indexOf(el) !== -1) return; roots.push(el); }\n  Array.prototype.forEach.call(document.querySelectorAll(\"#fecify-typography-scope\"), addRoot);\n  if (!roots.length) return;\n  function unclipAncestors(root) {\n    var node = root.parentElement, depth = 0;\n    while (node \u0026\u0026 node !== document.body \u0026\u0026 depth \u003c 14) {\n      var cs = window.getComputedStyle(node);\n      if (cs.overflow !== \"visible\" || cs.overflowX !== \"visible\" || cs.overflowY !== \"visible\") {\n        node.style.setProperty(\"overflow\", \"visible\", \"important\");\n      }\n      if (node.classList) {\n        if (node.classList.contains(\"el-collapse-item__wrap\")) {\n          node.style.setProperty(\"overflow\", \"visible\", \"important\");\n          node.style.setProperty(\"height\", \"auto\", \"important\");\n        }\n        if (node.classList.contains(\"el-collapse-item__content\") || node.classList.contains(\"body_html\") || node.classList.contains(\"rte\") || node.classList.contains(\"product-single__description\")) {\n          node.style.setProperty(\"overflow\", \"visible\", \"important\");\n        }\n      }\n      node = node.parentElement; depth += 1;\n    }\n  }\n  function applyBleed(root) {\n    if (window.innerWidth \u003e 720) {\n      root.style.removeProperty(\"width\"); root.style.removeProperty(\"max-width\");\n      root.style.removeProperty(\"margin-left\"); root.style.removeProperty(\"margin-right\");\n      root.style.removeProperty(\"position\"); return;\n    }\n    unclipAncestors(root);\n    root.style.setProperty(\"width\", \"100vw\", \"important\");\n    root.style.setProperty(\"max-width\", \"100vw\", \"important\");\n    root.style.setProperty(\"margin-left\", \"calc(50% - 50vw)\", \"important\");\n    root.style.setProperty(\"margin-right\", \"calc(50% - 50vw)\", \"important\");\n    root.style.setProperty(\"box-sizing\", \"border-box\", \"important\");\n    root.style.setProperty(\"position\", \"relative\", \"important\");\n    root.style.setProperty(\"overflow-x\", \"visible\", \"important\");\n  }\n  function stepWidth(track) {\n    var item = track.children[0]; if (!item) return 280;\n    var styles = window.getComputedStyle(track);\n    var gap = parseFloat(styles.columnGap || styles.gap || \"0\") || 0;\n    return Math.max(160, item.getBoundingClientRect().width + gap);\n  }\n  function scrollTrack(track, dir) {\n    if (!track) return; var w = stepWidth(track);\n    if (typeof track.scrollBy === \"function\") track.scrollBy({ left: dir * w, behavior: \"smooth\" });\n    else track.scrollLeft += dir * w;\n  }\n  function updateNav(carousel) {\n    var track = carousel.querySelector(\".carousel-track\");\n    var nav = carousel.querySelector(\".carousel-nav\");\n    if (!track || !nav) return;\n    var maxScroll = track.scrollWidth - track.clientWidth;\n    if (maxScroll \u003c 8) { nav.classList.add(\"is-disabled\"); return; }\n    nav.classList.remove(\"is-disabled\");\n    var prev = carousel.querySelector(\".carousel-btn--prev\");\n    var next = carousel.querySelector(\".carousel-btn--next\");\n    if (prev) prev.classList.toggle(\"is-dim\", track.scrollLeft \u003c= 2);\n    if (next) next.classList.toggle(\"is-dim\", track.scrollLeft \u003e= maxScroll - 2);\n  }\n  function bindCarousels(root) {\n    root.querySelectorAll(\".carousel\").forEach(function (carousel) {\n      var track = carousel.querySelector(\".carousel-track\"); if (!track) return;\n      var prev = carousel.querySelector(\".carousel-btn--prev\");\n      var next = carousel.querySelector(\".carousel-btn--next\");\n      if (prev) prev.addEventListener(\"click\", function (e) { e.preventDefault(); e.stopPropagation(); scrollTrack(track, -1); window.setTimeout(function () { updateNav(carousel); }, 120); });\n      if (next) next.addEventListener(\"click\", function (e) { e.preventDefault(); e.stopPropagation(); scrollTrack(track, 1); window.setTimeout(function () { updateNav(carousel); }, 120); });\n      track.addEventListener(\"scroll\", function () { updateNav(carousel); }, { passive: true });\n      window.addEventListener(\"resize\", function () { updateNav(carousel); });\n      window.setTimeout(function () { updateNav(carousel); }, 60);\n      window.setTimeout(function () { updateNav(carousel); }, 400);\n      var drag = false, startX = 0, startLeft = 0, moved = false;\n      function onDown(e) {\n        if (e.pointerType !== \"mouse\" || e.button !== 0) return;\n        drag = true; moved = false; startX = e.clientX; startLeft = track.scrollLeft;\n        track.classList.add(\"is-dragging\");\n        try { track.setPointerCapture(e.pointerId); } catch (err) {}\n      }\n      function onMove(e) { if (!drag) return; var dx = e.clientX - startX; if (Math.abs(dx) \u003e 3) moved = true; track.scrollLeft = startLeft - dx; }\n      function onUp(e) { if (!drag) return; drag = false; track.classList.remove(\"is-dragging\"); try { track.releasePointerCapture(e.pointerId); } catch (err) {} updateNav(carousel); }\n      track.addEventListener(\"pointerdown\", onDown);\n      track.addEventListener(\"pointermove\", onMove);\n      track.addEventListener(\"pointerup\", onUp);\n      track.addEventListener(\"pointercancel\", onUp);\n      track.addEventListener(\"click\", function (e) { if (moved) { e.preventDefault(); e.stopPropagation(); } }, true);\n    });\n  }\n  function initRoot(root) {\n    if (root.getAttribute(\"data-ribbed-ready\") === \"1\") return;\n    root.setAttribute(\"data-ribbed-ready\", \"1\");\n    root.classList.add(\"js-animate\");\n    if (\"IntersectionObserver\" in window) {\n      var io = new IntersectionObserver(function (entries) {\n        entries.forEach(function (entry) { if (entry.isIntersecting) { entry.target.classList.add(\"is-in\"); io.unobserve(entry.target); } });\n      }, { threshold: 0.12, rootMargin: \"0px 0px -4% 0px\" });\n      root.querySelectorAll(\".reveal\").forEach(function (el) { io.observe(el); });\n    } else { root.querySelectorAll(\".reveal\").forEach(function (el) { el.classList.add(\"is-in\"); }); }\n    applyBleed(root);\n    window.addEventListener(\"resize\", function () { applyBleed(root); });\n    window.setTimeout(function () { applyBleed(root); }, 300);\n    window.setTimeout(function () { applyBleed(root); }, 1000);\n    document.addEventListener(\"click\", function () {\n      window.setTimeout(function () { applyBleed(root); }, 50);\n      window.setTimeout(function () { applyBleed(root); }, 350);\n    }, true);\n    bindCarousels(root);\n    bindSwap(root);\n  }\n  function bindSwap(root) {\n    var night = root.querySelector('[data-media-slot=\"hero-on\"]');\n    var day = root.querySelector('[data-media-slot=\"hero-off\"]');\n    if (!night || !day) return;\n    night.classList.add(\"swap-night\");\n    day.classList.add(\"swap-day\");\n    function cssWorks() {\n      var name = (window.getComputedStyle(night).animationName || \"\");\n      return name.indexOf(\"og-day-night\") !== -1;\n    }\n    window.setTimeout(function () {\n      if (window.matchMedia \u0026\u0026 window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n        night.style.opacity = \"1\";\n        return;\n      }\n      if (cssWorks()) return;\n      var showing = false;\n      night.style.transition = \"opacity 0.9s ease\";\n      function tick() {\n        showing = !showing;\n        night.style.opacity = showing ? \"1\" : \"0\";\n      }\n      tick();\n      window.setInterval(tick, 2800);\n    }, 500);\n  }\n  roots.forEach(initRoot);\n})();\n\u003c\/script\u003e\n\u003c\/div\u003e","brand":"Monulo","offers":[{"title":"15.6″ \/ 40cm \/ Clear","offer_id":67841766391966,"sku":"AITC26-002-1025513","price":159.5,"currency_code":"USD","in_stock":true},{"title":"15.6″ \/ 40cm \/ Green","offer_id":67841766424734,"sku":"AITC26-002-1025512","price":159.5,"currency_code":"USD","in_stock":true},{"title":"15.6″ \/ 40cm \/ Smoke gray","offer_id":67841766457502,"sku":"AITC26-002-1025511","price":159.5,"currency_code":"USD","in_stock":true},{"title":"15.6″ \/ 40cm \/ Amber","offer_id":67841766490270,"sku":"AITC26-002-1025510","price":159.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/7290e2ef70d6a53e2c80fc2bfb1d1c18.jpg?v=1793159779","url":"https:\/\/www.monulo.com\/fr\/products\/single-drum-pendant-for-the-side-of-a-room","provider":"Monulo","version":"1.0","type":"link"}