{"id":98,"date":"2026-09-14T11:20:49","date_gmt":"2026-09-14T11:20:49","guid":{"rendered":"https:\/\/lucedicandela.pl\/?page_id=98"},"modified":"2026-09-14T13:52:09","modified_gmt":"2026-09-14T13:52:09","slug":"luce-di-candela-nowa","status":"publish","type":"page","link":"https:\/\/lucedicandela.pl\/","title":{"rendered":"Strona g\u0142\u00f3wna \u2013 Luce di Candela (nowa)"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"98\" class=\"elementor elementor-98\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1f308c3 e-con-full e-flex e-con e-parent\" data-id=\"1f308c3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dbaa75a elementor-widget elementor-widget-html\" data-id=\"dbaa75a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- Luce di Candela \u2014 strona g\u0142\u00f3wna. Wklej ca\u0142o\u015b\u0107 do widgetu HTML Elementora. -->\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Outfit:wght@300;400;500&display=swap\" rel=\"stylesheet\">\n<style>\n\/* =====================================================================\n   Luce di Candela \u2014 koncerty przy \u015bwiecach\n   Wszystkie style \u017cyj\u0105 w przestrzeni .ldc-root, \u017ceby nie gryz\u0142y si\u0119\n   z motywem WordPressa ani z Elementorem. Klasy maj\u0105 prefiks ldc-.\n   Czcionki: Cormorant Garamond (nag\u0142\u00f3wki) + Outfit (tekst).\n   ===================================================================== *\/\n\n.ldc-root,\n.ldc-root *,\n.ldc-root *::before,\n.ldc-root *::after { box-sizing: border-box; }\n\n.ldc-root {\n  \/* paleta \u2014 ciep\u0142a czer\u0144 sali, krem \u015bwiec, bursztyn p\u0142omienia (kolor z logo) *\/\n  --ink: #0b0806;\n  --ink-2: #14100c;\n  --ink-3: #201811;\n  --cream: #f2e8da;\n  --cream-2: #d9cbb5;\n  --paper: #ede2cf;\n  --paper-2: #e2d3ba;\n  --amber: #d47404;\n  --gold: #e9a24a;\n  --gold-2: #f5c17a;\n  --muted: rgba(242, 232, 218, .62);\n  --rule: rgba(242, 232, 218, .14);\n  --rule-dark: rgba(11, 8, 6, .16);\n  --serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;\n  --sans: 'Outfit', 'Helvetica Neue', Arial, sans-serif;\n  --ease: cubic-bezier(.22, 1, .36, 1);\n  --wrap: min(1220px, calc(100% - 2 * clamp(20px, 5vw, 72px)));\n  \/* margines boczny p\u00f3\u0142ki program\u00f3w = odleg\u0142o\u015b\u0107 .ldc-wrap od kraw\u0119dzi okna *\/\n  --rail-pad: max(calc((100vw - 1220px) \/ 2), clamp(20px, 5vw, 72px));\n\n  font-family: var(--sans);\n  font-weight: 300;\n  font-size: clamp(15px, .45vw + 12.5px, 17px);\n  line-height: 1.6;\n  color: var(--cream);\n  background: var(--ink);\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n  overflow-x: clip;\n}\n\nhtml { scroll-behavior: smooth; }\n@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }\n\n.ldc-root :where(img) { max-width: 100%; display: block; }\n.ldc-root :where(a) { color: inherit; }\n.ldc-root :where(p, ul, ol, figure) { margin: 0; }\n.ldc-root :where(ul, ol) { padding: 0; list-style: none; }\n.ldc-root :where(button) { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; padding: 0; }\n.ldc-root :where(h1, h2, h3, h4) {\n  margin: 0;\n  font-family: var(--serif);\n  font-weight: 300;\n  line-height: 1.05;\n  letter-spacing: -.005em;\n  color: inherit;\n}\n.ldc-root :focus-visible { outline: 1px solid var(--gold); outline-offset: 4px; }\n\n\/* ---------- pomocnicze ---------- *\/\n.ldc-wrap { width: var(--wrap); margin-inline: auto; }\n.ldc-section { position: relative; padding-block: clamp(88px, 12vw, 168px); }\n.ldc-paper { background: var(--paper); color: var(--ink); }\n\n\/* ziarno papieru \/ filmu \u2014 jedna warstwa SVG, \u017ceby powierzchnie nie by\u0142y sterylnie p\u0142askie *\/\n.ldc-grain::after {\n  content: \"\";\n  position: absolute; inset: 0;\n  pointer-events: none;\n  opacity: .16;\n  mix-blend-mode: multiply;\n  background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'\/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'\/%3E%3C\/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'\/%3E%3C\/svg%3E\");\n}\n.ldc-grain:not(.ldc-paper)::after { opacity: .07; mix-blend-mode: screen; }\n.ldc-grain > * { position: relative; z-index: 1; }\n\n.ldc-kicker {\n  display: flex; align-items: center; gap: 14px;\n  font: 500 .72rem\/1 var(--sans);\n  letter-spacing: .24em; text-transform: uppercase;\n  color: var(--gold);\n}\n.ldc-kicker::before { content: \"\"; width: 36px; height: 1px; background: currentColor; opacity: .75; }\n.ldc-paper .ldc-kicker { color: var(--amber); }\n\n.ldc-h2 { font-size: clamp(38px, 4.8vw, 74px); margin-top: 22px; max-width: 15ch; }\n.ldc-lead { font-size: clamp(17px, 1.3vw, 20px); color: var(--muted); max-width: 52ch; line-height: 1.7; }\n.ldc-paper .ldc-lead { color: rgba(11, 8, 6, .7); }\n.ldc-i { font-style: italic; font-weight: 400; color: var(--gold); }\n.ldc-paper .ldc-i { color: var(--amber); }\n\n.ldc-head {\n  display: grid; grid-template-columns: 1.3fr 1fr;\n  gap: clamp(28px, 5vw, 80px); align-items: end;\n}\n.ldc-head__side { padding-bottom: 8px; }\n.ldc-head__side .ldc-lead { margin-top: 0; }\n\n\/* link z animowanym podkre\u015bleniem *\/\n.ldc-link {\n  display: inline-flex; align-items: center; gap: 10px;\n  font: 500 .76rem\/1 var(--sans); letter-spacing: .18em; text-transform: uppercase;\n  text-decoration: none; color: var(--gold-2); position: relative; padding-bottom: 8px;\n}\n.ldc-link::after {\n  content: \"\"; position: absolute; left: 0; right: 0; bottom: 0; height: 1px;\n  background: currentColor; transform: scaleX(.35); transform-origin: left;\n  transition: transform .6s var(--ease);\n}\n.ldc-link:hover::after { transform: scaleX(1); }\n.ldc-link svg { width: 16px; height: 16px; transition: transform .5s var(--ease); }\n.ldc-link:hover svg { transform: translateX(5px); }\n.ldc-paper .ldc-link { color: var(--amber); }\n\n\/* przyciski *\/\n.ldc-btn {\n  --bg: var(--amber); --fg: var(--ink); --hover: var(--gold-2);\n  position: relative; isolation: isolate; overflow: hidden;\n  display: inline-flex; align-items: center; justify-content: center; gap: .7em;\n  padding: 1.1em 2em;\n  font: 500 .78rem\/1 var(--sans); letter-spacing: .16em; text-transform: uppercase;\n  color: var(--fg); background: var(--bg);\n  border: 1px solid transparent; border-radius: 999px; text-decoration: none;\n  transition: transform .55s var(--ease), box-shadow .55s var(--ease), color .45s, border-color .45s;\n}\n.ldc-btn::before {\n  content: \"\"; position: absolute; inset: 0; z-index: -1;\n  background: var(--hover);\n  transform: translateY(102%); transition: transform .6s var(--ease);\n}\n.ldc-btn:hover::before, .ldc-btn:focus-visible::before { transform: translateY(0); }\n.ldc-btn:hover { transform: translateY(-2px); box-shadow: 0 22px 44px -20px rgba(233, 162, 74, .7); }\n.ldc-btn--ghost { --bg: transparent; --fg: var(--cream); --hover: var(--cream); border-color: rgba(242, 232, 218, .35); }\n.ldc-btn--ghost:hover { color: var(--ink); border-color: var(--cream); box-shadow: none; }\n.ldc-btn--sm { padding: .9em 1.45em; font-size: .7rem; }\n.ldc-btn--dark { --bg: var(--ink); --fg: var(--cream); --hover: var(--amber); }\n.ldc-btn--dark:hover { color: var(--ink); }\n.ldc-btn svg { width: 14px; height: 14px; }\n\n\/* pojawianie si\u0119 przy przewijaniu *\/\n.ldc-root [data-reveal] {\n  opacity: 0; transform: translateY(26px);\n  transition: opacity 1s var(--ease), transform 1.15s var(--ease);\n  transition-delay: calc(var(--i, 0) * 90ms);\n}\n.ldc-root [data-reveal=\"fade\"] { transform: none; }\n.ldc-root [data-reveal=\"left\"] { transform: translateX(-30px); }\n.ldc-root [data-reveal=\"scale\"] { transform: scale(.96); }\n.ldc-root [data-reveal].is-in { opacity: 1; transform: none; }\n\n\/* =====================================================================\n   NAWIGACJA\n   ===================================================================== *\/\n.ldc-nav {\n  position: fixed; top: 0; left: 0; right: 0; z-index: 60;\n  padding: 24px 0;\n  transition: padding .5s var(--ease), background .5s, box-shadow .5s;\n}\nbody.admin-bar .ldc-nav { top: 32px; }\n@media (max-width: 782px) { body.admin-bar .ldc-nav { top: 46px; } }\n.ldc-nav.is-solid {\n  padding: 12px 0;\n  background: rgba(11, 8, 6, .84);\n  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);\n  box-shadow: 0 1px 0 var(--rule);\n}\n.ldc-nav__in { width: var(--wrap); margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 32px; }\n.ldc-nav__logo { display: block; line-height: 0; }\n.ldc-nav__logo img { height: 40px; width: auto; transition: height .5s var(--ease); }\n.ldc-nav.is-solid .ldc-nav__logo img { height: 32px; }\n.ldc-nav__links { display: flex; gap: clamp(20px, 2.6vw, 38px); }\n.ldc-nav__links a {\n  position: relative; text-decoration: none; padding: 6px 0;\n  font: 500 .74rem\/1 var(--sans); letter-spacing: .18em; text-transform: uppercase;\n  color: rgba(242, 232, 218, .72); transition: color .4s;\n}\n.ldc-nav__links a::after {\n  content: \"\"; position: absolute; left: 0; right: 0; bottom: 0; height: 1px;\n  background: var(--gold); transform: scaleX(0); transform-origin: right; transition: transform .5s var(--ease);\n}\n.ldc-nav__links a:hover { color: var(--cream); }\n.ldc-nav__links a:hover::after { transform: scaleX(1); transform-origin: left; }\n.ldc-nav__right { display: flex; align-items: center; gap: 22px; }\n\n.ldc-burger { display: none; width: 44px; height: 44px; position: relative; }\n.ldc-burger span {\n  position: absolute; left: 10px; right: 10px; height: 1px; background: var(--cream);\n  transition: transform .5s var(--ease), opacity .3s;\n}\n.ldc-burger span:nth-child(1) { top: 16px; }\n.ldc-burger span:nth-child(2) { top: 22px; }\n.ldc-burger span:nth-child(3) { top: 28px; }\n.ldc-burger.is-open span:nth-child(1) { transform: translateY(6px) rotate(45deg); }\n.ldc-burger.is-open span:nth-child(2) { opacity: 0; }\n.ldc-burger.is-open span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }\n\n.ldc-menu {\n  position: fixed; inset: 0; z-index: 55;\n  background: rgba(11, 8, 6, .985);\n  display: grid; align-content: center; padding: 100px clamp(24px, 8vw, 96px);\n  opacity: 0; pointer-events: none; transition: opacity .5s var(--ease);\n}\n.ldc-menu.is-open { opacity: 1; pointer-events: auto; }\n.ldc-menu > a {\n  display: block; text-decoration: none; padding: 12px 0;\n  font: 300 clamp(34px, 8vw, 56px)\/1.1 var(--serif); color: var(--cream);\n  border-bottom: 1px solid var(--rule);\n  opacity: 0; transform: translateY(18px); transition: opacity .6s var(--ease), transform .7s var(--ease), color .3s;\n  transition-delay: calc(var(--i) * 60ms);\n}\n.ldc-menu.is-open > a { opacity: 1; transform: none; }\n.ldc-menu > a:hover { color: var(--gold-2); }\n.ldc-menu__cta { margin-top: 36px; opacity: 0; transform: translateY(18px); transition: opacity .6s var(--ease) .4s, transform .7s var(--ease) .4s; }\n.ldc-menu.is-open .ldc-menu__cta { opacity: 1; transform: none; }\n\n\/* =====================================================================\n   HERO\n   ===================================================================== *\/\n.ldc-hero {\n  position: relative; isolation: isolate; overflow: hidden;\n  min-height: 100svh; display: grid; align-items: end;\n}\n.ldc-hero__bg {\n  position: absolute; inset: -4%; z-index: -3;\n  background: url(\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-hero.webp\") 62% 55% \/ cover no-repeat;\n  transform-origin: 50% 60%;\n  animation: ldcKen 32s ease-in-out infinite alternate;\n}\n.ldc-hero__bg::after {\n  content: \"\"; position: absolute; inset: 0;\n  background:\n    linear-gradient(180deg, rgba(11, 8, 6, .55) 0%, rgba(11, 8, 6, .12) 30%, rgba(11, 8, 6, .42) 64%, var(--ink) 100%),\n    linear-gradient(90deg, rgba(11, 8, 6, .72) 0%, rgba(11, 8, 6, .42) 36%, rgba(11, 8, 6, 0) 66%);\n}\n\/* po\u015bwiata \u015bwiec \u2014 dwa mi\u0119kkie kr\u0105\u017cki, mrugaj\u0105 w nier\u00f3wnym rytmie *\/\n.ldc-hero__glow, .ldc-hero__glow2 {\n  position: absolute; z-index: -2; border-radius: 50%; pointer-events: none;\n  mix-blend-mode: screen; filter: blur(28px);\n  will-change: transform, opacity;\n}\n.ldc-hero__glow {\n  width: 78vmax; height: 78vmax; left: 58%; top: 62%;\n  transform: translate(-50%, -50%);\n  background: radial-gradient(circle, rgba(233, 162, 74, .30) 0%, rgba(212, 116, 4, .10) 32%, transparent 62%);\n  animation: ldcFlicker 5.4s ease-in-out infinite;\n}\n.ldc-hero__glow2 {\n  width: 40vmax; height: 40vmax; left: 30%; top: 78%;\n  transform: translate(-50%, -50%);\n  background: radial-gradient(circle, rgba(245, 193, 122, .22) 0%, transparent 60%);\n  animation: ldcFlicker 7.1s ease-in-out infinite reverse;\n}\n.ldc-hero__in {\n  width: var(--wrap); margin-inline: auto;\n  padding: clamp(150px, 20vh, 220px) 0 clamp(60px, 9vh, 96px);\n  display: grid; grid-template-columns: minmax(0, 1fr); align-items: end;\n}\n.ldc-hero h1 {\n  font-size: clamp(46px, 7.6vw, 118px); line-height: .96; margin-top: 28px; max-width: 11ch;\n  text-wrap: balance;\n}\n.ldc-hero h1 .ldc-i { font-weight: 300; }\n.ldc-hero__lead { margin-top: 30px; font-size: clamp(17px, 1.35vw, 21px); color: var(--muted); max-width: 44ch; line-height: 1.7; }\n.ldc-hero__cta { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 42px; }\n.ldc-scrollcue {\n  position: absolute; left: 50%; bottom: 26px; width: 1px; height: 72px; z-index: 1;\n  background: linear-gradient(var(--gold), transparent);\n  transform-origin: top; animation: ldcCue 2.6s var(--ease) infinite;\n}\n\n@keyframes ldcKen { from { transform: scale(1); } to { transform: scale(1.09); } }\n@keyframes ldcFlicker {\n  0%, 100% { opacity: .82; transform: translate(-50%, -50%) scale(1); }\n  17% { opacity: 1; transform: translate(-50%, -50%) scale(1.03); }\n  34% { opacity: .88; }\n  52% { opacity: .97; transform: translate(-50%, -50%) scale(1.045); }\n  71% { opacity: .86; transform: translate(-50%, -50%) scale(.99); }\n  86% { opacity: .95; }\n}\n@keyframes ldcCue { 0% { transform: scaleY(0); opacity: 0; } 30% { opacity: 1; } 100% { transform: scaleY(1); opacity: 0; } }\n\n\/* =====================================================================\n   O KONCERTACH \u2014 strona z programu, papier\n   ===================================================================== *\/\n.ldc-about__grid { display: grid; grid-template-columns: minmax(240px, .9fr) 1.5fr; gap: clamp(40px, 6vw, 120px); align-items: start; }\n.ldc-about__left { position: sticky; top: 120px; }\n.ldc-about__left .ldc-h2 { max-width: 12ch; }\n.ldc-manifest p { font-size: clamp(17px, 1.3vw, 20px); line-height: 1.75; color: rgba(11, 8, 6, .74); }\n.ldc-manifest p:first-child { font-size: clamp(19px, 1.5vw, 23px); color: var(--ink); }\n.ldc-manifest p + p { margin-top: 1.15em; }\n.ldc-facts { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 56px; border-top: 1px solid var(--rule-dark); }\n.ldc-facts div { padding: 28px 24px 8px 0; border-right: 1px solid var(--rule-dark); }\n.ldc-facts div + div { padding-left: 24px; }\n.ldc-facts div:last-child { border-right: 0; }\n.ldc-facts strong { display: block; font: 300 clamp(40px, 4vw, 60px)\/1 var(--serif); color: var(--ink); }\n.ldc-facts span { display: block; margin-top: 10px; font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; color: rgba(11, 8, 6, .55); }\n\n\/* =====================================================================\n   NADCHODZ\u0104CE KONCERTY \u2014 lista jak w programie wieczoru\n   ===================================================================== *\/\n.ldc-concerts { background: var(--ink); }\n.ldc-clist { margin-top: clamp(44px, 5vw, 72px); border-top: 1px solid var(--rule); }\n.ldc-month {\n  display: flex; align-items: center; gap: 18px; padding: 44px 0 10px;\n  font: 500 .72rem\/1 var(--sans); letter-spacing: .24em; text-transform: uppercase; color: var(--gold);\n}\n.ldc-month::after { content: \"\"; flex: 1; height: 1px; background: var(--rule); }\n.ldc-crow {\n  position: relative;\n  display: grid; grid-template-columns: 96px 92px 1fr auto; gap: clamp(18px, 2.6vw, 36px); align-items: center;\n  padding: 28px 0; border-bottom: 1px solid var(--rule);\n}\n.ldc-crow::before {\n  content: \"\"; position: absolute; inset: 0 -22px; border-radius: 4px; z-index: -1;\n  background: linear-gradient(90deg, rgba(233, 162, 74, .07), rgba(233, 162, 74, .02));\n  opacity: 0; transition: opacity .5s var(--ease);\n}\n.ldc-crow:hover::before { opacity: 1; }\n.ldc-crow__date { text-align: center; }\n.ldc-crow__day { display: block; font: 300 clamp(44px, 4.2vw, 60px)\/1 var(--serif); color: var(--cream); }\n.ldc-crow__mon { display: block; margin-top: 8px; font-size: .68rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); }\n.ldc-crow__thumb {\n  width: 92px; aspect-ratio: 1; overflow: hidden; border-radius: 2px; background: var(--ink-3);\n  position: relative;\n}\n.ldc-crow__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ease); }\n.ldc-crow:hover .ldc-crow__thumb img { transform: scale(1.07); }\n.ldc-crow__thumb--empty::before {\n  content: \"\"; position: absolute; inset: 0;\n  background: radial-gradient(ellipse at 50% 70%, rgba(233, 162, 74, .55), rgba(212, 116, 4, .15) 45%, transparent 70%);\n}\n.ldc-crow__body h3 { font-size: clamp(24px, 2.3vw, 34px); font-weight: 400; line-height: 1.15; }\n.ldc-crow__body h3 a { text-decoration: none; }\n.ldc-crow__meta { margin-top: 9px; display: flex; flex-wrap: wrap; gap: 4px 20px; font-size: .84rem; color: var(--muted); }\n.ldc-crow__meta b { font-weight: 500; color: var(--cream-2); }\n.ldc-crow__desc {\n  margin-top: 8px; font-size: .95rem; color: var(--muted); max-width: 64ch;\n  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;\n}\n.ldc-crow__act { justify-self: end; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }\n.ldc-tag {\n  display: inline-block; padding: .6em 1.1em; border: 1px solid var(--rule); border-radius: 999px;\n  font: 500 .66rem\/1 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: var(--muted);\n}\n.ldc-tag--today { border-color: rgba(233, 162, 74, .6); color: var(--gold-2); }\n.ldc-cempty {\n  margin-top: 56px; padding: clamp(48px, 6vw, 80px) 24px; text-align: center;\n  border: 1px dashed rgba(242, 232, 218, .28); border-radius: 4px;\n}\n.ldc-cempty h3 { font-size: clamp(28px, 3vw, 40px); font-weight: 300; }\n.ldc-cempty p { margin: 14px auto 28px; color: var(--muted); max-width: 46ch; }\n.ldc-csource {\n  margin-top: 18px; font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-2);\n  display: inline-flex; gap: 8px; align-items: center; padding: .6em 1.1em; border: 1px dashed rgba(233, 162, 74, .5); border-radius: 999px;\n}\n\n\/* =====================================================================\n   PROGRAMY \u2014 p\u00f3\u0142ka z ok\u0142adkami (przewijana w poziomie)\n   ===================================================================== *\/\n.ldc-programmes { background: linear-gradient(180deg, var(--ink) 0%, #170d0c 48%, var(--ink) 100%); overflow: clip; }\n.ldc-rail__nav { display: flex; gap: 10px; justify-content: flex-end; align-items: center; }\n.ldc-rail__btn {\n  width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(242, 232, 218, .3);\n  display: grid; place-items: center; color: var(--cream); transition: border-color .4s, background .4s, transform .4s var(--ease);\n}\n.ldc-rail__btn svg { width: 18px; height: 18px; }\n.ldc-rail__btn:hover { border-color: var(--gold); background: rgba(233, 162, 74, .1); transform: scale(1.05); }\n.ldc-rail__btn[disabled] { opacity: .3; pointer-events: none; }\n.ldc-rail {\n  display: flex; gap: clamp(14px, 1.6vw, 22px);\n  margin-top: clamp(40px, 5vw, 64px);\n  margin-inline: calc(50% - 50vw); padding-inline: var(--rail-pad);\n  padding-block: 6px 12px;\n  overflow-x: auto; scroll-snap-type: x proximity; scroll-padding-inline: var(--rail-pad);\n  scrollbar-width: none; -webkit-overflow-scrolling: touch;\n}\n.ldc-rail::-webkit-scrollbar { display: none; }\n.ldc-tile {\n  flex: 0 0 clamp(250px, 24vw, 330px); aspect-ratio: 4 \/ 5; scroll-snap-align: start;\n  position: relative; overflow: hidden; border-radius: 3px; background: var(--ink-3);\n  text-align: left; outline-offset: 5px;\n  transition: outline-color .4s;\n  outline: 1px solid transparent;\n}\n.ldc-tile img {\n  width: 100%; height: 100%; object-fit: cover;\n  filter: saturate(.85) brightness(.88);\n  transition: transform 1.2s var(--ease), filter .8s var(--ease);\n}\n.ldc-tile:hover img, .ldc-tile.is-active img { transform: scale(1.06); filter: none; }\n.ldc-tile::after {\n  content: \"\"; position: absolute; inset: 0;\n  background: linear-gradient(180deg, rgba(11, 8, 6, .25) 0%, rgba(11, 8, 6, 0) 40%, rgba(11, 8, 6, .92) 100%);\n}\n.ldc-tile.is-active { outline-color: var(--gold); }\n.ldc-tile__num { position: absolute; top: 16px; left: 20px; z-index: 1; font: italic 400 34px\/1 var(--serif); color: var(--gold-2); }\n.ldc-tile__txt { position: absolute; left: 22px; right: 22px; bottom: 22px; z-index: 1; }\n.ldc-tile__txt h3 { font-size: clamp(24px, 2vw, 30px); font-weight: 400; line-height: 1.1; color: var(--cream); white-space: normal; overflow-wrap: anywhere; text-wrap: balance; }\n.ldc-root .ldc-tile, .ldc-root .ldc-tile * { white-space: normal; letter-spacing: inherit; }\n.ldc-root .ldc-tile__txt span { letter-spacing: .2em; }\n.ldc-tile__txt span { display: block; margin-top: 8px; font-size: .68rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); }\n.ldc-tile__rep { display: none; }\n.ldc-rail__bar { position: relative; height: 1px; background: var(--rule); margin-top: 8px; }\n.ldc-rail__bar span { position: absolute; left: 0; top: 0; height: 100%; width: 20%; background: var(--gold); transition: transform .3s linear, width .3s; }\n\n.ldc-prog__detail { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .8s var(--ease); }\n.ldc-prog__detail.is-open { grid-template-rows: 1fr; }\n.ldc-prog__detail > div { overflow: hidden; min-height: 0; }\n.ldc-prog__inner {\n  display: grid; grid-template-columns: 1fr 1.5fr; gap: clamp(32px, 5vw, 80px);\n  margin-top: 44px; padding-top: 44px; border-top: 1px solid var(--rule);\n  opacity: 0; transform: translateY(14px); transition: opacity .6s var(--ease) .15s, transform .7s var(--ease) .15s;\n}\n.ldc-prog__detail.is-open .ldc-prog__inner { opacity: 1; transform: none; }\n.ldc-prog__inner h3 { font-size: clamp(32px, 3.4vw, 50px); margin-top: 18px; }\n.ldc-prog__facts { margin-top: 22px; display: grid; gap: 10px; font-size: .9rem; color: var(--muted); }\n.ldc-prog__facts b { font-weight: 500; color: var(--cream-2); margin-right: 8px; }\n.ldc-prog__inner .ldc-btn { margin-top: 30px; }\n.ldc-prog__close { margin-left: 16px; }\n.ldc-rep { columns: 2; column-gap: 40px; counter-reset: rep; }\n.ldc-rep li {\n  break-inside: avoid; padding: 11px 0 11px 34px; position: relative;\n  border-bottom: 1px solid var(--rule); font: 400 1.1rem\/1.35 var(--serif); color: var(--cream);\n  counter-increment: rep;\n}\n.ldc-rep li::before {\n  content: counter(rep, decimal-leading-zero); position: absolute; left: 0; top: 14px;\n  font: 500 .66rem\/1 var(--sans); letter-spacing: .1em; color: var(--gold);\n}\n.ldc-rep li em { font-style: normal; color: var(--muted); font-size: .95rem; }\n\n\/* =====================================================================\n   GALERIA + WIDEO\n   ===================================================================== *\/\n.ldc-gallery { background: var(--ink); }\n.ldc-ggrid {\n  display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-flow: dense;\n  grid-auto-rows: clamp(84px, 10vw, 150px); gap: clamp(8px, 1vw, 14px);\n  margin-top: clamp(44px, 5vw, 72px);\n}\n\/* rytm 8 kadr\u00f3w = 12 p\u00f3l = r\u00f3wne 3 rz\u0119dy: du\u017cy 2\u00d72, pion 1\u00d72 i sze\u015b\u0107 ma\u0142ych; powtarza si\u0119 w drugiej \u00f3semce *\/\n.ldc-gfig:nth-child(8n + 1) { grid-column: span 2; grid-row: span 2; }\n.ldc-gfig:nth-child(8n + 4) { grid-row: span 2; }\n.ldc-gfig--more { display: none; }\n.ldc-ggrid.is-open .ldc-gfig--more { display: block; }\n.ldc-gmore { display: flex; justify-content: center; margin-top: clamp(22px, 3vw, 36px); }\n.ldc-ggrid.is-open + .ldc-gmore { display: none; }\n.ldc-gfig { position: relative; overflow: hidden; border-radius: 3px; background: var(--ink-3); cursor: zoom-in; }\n.ldc-gfig img {\n  \/* bez transform\/will-change: parallax przesuwa `top`, zapas 16 % wysoko\u015bci daje miejsce na ruch *\/\n  position: absolute; left: 0; top: -8%; width: 100%; height: 116%; object-fit: cover;\n  transition: filter .8s var(--ease);\n}\n.ldc-gfig::after {\n  content: \"\"; position: absolute; inset: 0; opacity: 0;\n  background: linear-gradient(180deg, transparent 50%, rgba(11, 8, 6, .7));\n  transition: opacity .5s;\n}\n.ldc-gfig:hover::after { opacity: 1; }\n.ldc-gfig figcaption {\n  position: absolute; left: 18px; bottom: 16px; z-index: 1;\n  font-size: .7rem; letter-spacing: .18em; text-transform: uppercase; color: var(--cream);\n  opacity: 0; transform: translateY(8px); transition: opacity .5s var(--ease), transform .6s var(--ease);\n}\n.ldc-gfig:hover figcaption { opacity: 1; transform: none; }\n\n.ldc-video {\n  position: relative; margin-top: clamp(14px, 1.6vw, 22px); aspect-ratio: 21 \/ 9; overflow: hidden; border-radius: 3px;\n  background: var(--ink-3); cursor: pointer;\n}\n.ldc-video[data-video=\"\"] { display: none; }\n.ldc-video img { width: 100%; height: 100%; object-fit: cover; filter: brightness(.65); transition: transform 1.4s var(--ease), filter .8s; }\n.ldc-video:hover img { transform: scale(1.03); filter: brightness(.8); }\n.ldc-video__play {\n  position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 18px; color: var(--cream);\n}\n.ldc-video__play i {\n  width: 88px; height: 88px; border-radius: 50%; border: 1px solid rgba(242, 232, 218, .55);\n  display: grid; place-items: center; transition: transform .5s var(--ease), background .5s, border-color .5s;\n  background: rgba(11, 8, 6, .35);\n}\n.ldc-video:hover .ldc-video__play i { transform: scale(1.08); background: var(--amber); border-color: var(--amber); }\n.ldc-video__play i svg { width: 22px; height: 22px; margin-left: 4px; }\n.ldc-video__play span { font-size: .72rem; letter-spacing: .22em; text-transform: uppercase; }\n.ldc-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }\n\n.ldc-lb {\n  position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 24px;\n  background: rgba(11, 8, 6, .94); opacity: 0; pointer-events: none; transition: opacity .45s var(--ease);\n}\n.ldc-lb.is-open { opacity: 1; pointer-events: auto; }\n.ldc-lb img { max-width: min(94vw, 1300px); max-height: 88vh; border-radius: 3px; transform: scale(.96); transition: transform .6s var(--ease); }\n.ldc-lb.is-open img { transform: none; }\n.ldc-lb__close { position: absolute; top: 22px; right: 26px; font-size: .74rem; letter-spacing: .2em; text-transform: uppercase; color: var(--cream); padding: 10px; }\n\n\/* =====================================================================\n   FAQ \u2014 papier\n   ===================================================================== *\/\n.ldc-faq__grid { display: grid; grid-template-columns: .9fr 1.5fr; gap: clamp(40px, 6vw, 110px); }\n.ldc-faq__side { position: sticky; top: 110px; align-self: start; }\n.ldc-faq__side .ldc-lead { margin-top: 22px; }\n.ldc-faq__side .ldc-link { margin-top: 28px; }\n.ldc-faq__item { border-top: 1px solid var(--rule-dark); }\n.ldc-faq__item:last-child { border-bottom: 1px solid var(--rule-dark); }\n.ldc-faq__item summary {\n  display: flex; align-items: center; justify-content: space-between; gap: 28px; list-style: none; cursor: pointer;\n  padding: 26px 0; font: 400 clamp(20px, 1.8vw, 26px)\/1.3 var(--serif); color: var(--ink);\n  transition: color .3s;\n}\n.ldc-faq__item summary::-webkit-details-marker { display: none; }\n.ldc-faq__item summary:hover { color: var(--amber); }\n.ldc-faq__plus { position: relative; flex: none; width: 30px; height: 30px; border: 1px solid rgba(11, 8, 6, .3); border-radius: 50%; transition: transform .6s var(--ease), background .4s, border-color .4s; }\n.ldc-faq__plus::before, .ldc-faq__plus::after { content: \"\"; position: absolute; left: 50%; top: 50%; width: 12px; height: 1px; background: currentColor; transform: translate(-50%, -50%); }\n.ldc-faq__plus::after { transform: translate(-50%, -50%) rotate(90deg); }\n.ldc-faq__item[open] .ldc-faq__plus { transform: rotate(135deg); background: var(--ink); color: var(--paper); border-color: var(--ink); }\n.ldc-faq__item p { padding: 0 60px 30px 0; color: rgba(11, 8, 6, .72); max-width: 62ch; line-height: 1.75; }\n.ldc-faq__item p a { color: var(--amber); }\n\n\/* =====================================================================\n   KONTAKT\n   ===================================================================== *\/\n.ldc-contact { background: var(--ink); }\n.ldc-contact__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(48px, 7vw, 130px); align-items: start; }\n.ldc-contact__rows { margin-top: 40px; border-top: 1px solid var(--rule); }\n.ldc-contact__row { display: grid; grid-template-columns: 130px 1fr; gap: 20px; align-items: baseline; padding: 20px 0; border-bottom: 1px solid var(--rule); }\n.ldc-contact__row span { font-size: .7rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); }\n.ldc-contact__row a { font: 400 clamp(20px, 1.8vw, 27px)\/1.2 var(--serif); text-decoration: none; position: relative; }\n.ldc-contact__row a::after { content: \"\"; position: absolute; left: 0; right: 0; bottom: -3px; height: 1px; background: var(--gold); transform: scaleX(0); transform-origin: left; transition: transform .5s var(--ease); }\n.ldc-contact__row a:hover::after { transform: scaleX(1); }\n.ldc-social { display: flex; gap: 26px; margin-top: 30px; }\n.ldc-form { padding-top: 6px; }\n.ldc-field { margin-top: 26px; }\n.ldc-field label { display: block; font-size: .7rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); margin-bottom: 4px; }\n.ldc-field input, .ldc-field textarea {\n  width: 100%; background: transparent; border: 0; border-bottom: 1px solid rgba(242, 232, 218, .28);\n  padding: 14px 0; color: var(--cream); font: 300 1.05rem\/1.5 var(--sans); outline: none; border-radius: 0;\n  transition: border-color .4s;\n}\n.ldc-field textarea { min-height: 120px; resize: vertical; }\n.ldc-field input:focus, .ldc-field textarea:focus { border-bottom-color: var(--gold); }\n.ldc-field input::placeholder, .ldc-field textarea::placeholder { color: rgba(242, 232, 218, .3); }\n.ldc-form__foot { margin-top: 34px; display: flex; flex-wrap: wrap; align-items: center; gap: 22px; }\n.ldc-form__note { font-size: .76rem; color: var(--muted); max-width: 40ch; line-height: 1.6; }\n.ldc-form__ok { margin-top: 18px; font: 400 1.2rem var(--serif); color: var(--gold-2); display: none; }\n.ldc-form.is-sent .ldc-form__ok { display: block; }\n\n\/* =====================================================================\n   STOPKA\n   ===================================================================== *\/\n.ldc-footer { border-top: 1px solid var(--rule); padding: 64px 0 32px; background: var(--ink); }\n.ldc-footer__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: clamp(28px, 5vw, 80px); }\n.ldc-footer__logo img { height: 44px; width: auto; }\n.ldc-footer__claim { margin-top: 18px; font: italic 400 1.25rem\/1.4 var(--serif); color: var(--cream-2); max-width: 30ch; }\n.ldc-footer h4 { font: 500 .7rem\/1 var(--sans); letter-spacing: .22em; text-transform: uppercase; color: var(--gold); margin-bottom: 18px; }\n.ldc-footer li { padding: 5px 0; font-size: .9rem; color: var(--muted); }\n.ldc-footer li a { text-decoration: none; transition: color .3s; }\n.ldc-footer li a:hover { color: var(--gold-2); }\n.ldc-footer__bottom {\n  margin-top: 56px; padding-top: 22px; border-top: 1px solid var(--rule);\n  display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 24px;\n  font-size: .74rem; color: rgba(242, 232, 218, .45);\n}\n.ldc-footer__bottom a { text-decoration: none; }\n\n\/* =====================================================================\n   RESPONSYWNO\u015a\u0106\n   ===================================================================== *\/\n@media (max-width: 1000px) {\n  .ldc-nav__links, .ldc-nav__cta { display: none; }\n  .ldc-burger { display: block; }\n  .ldc-hero__in { grid-template-columns: 1fr; }\n  .ldc-head, .ldc-about__grid, .ldc-faq__grid, .ldc-contact__grid, .ldc-prog__inner { grid-template-columns: 1fr; }\n  .ldc-about__left, .ldc-faq__side { position: static; }\n  .ldc-footer__grid { grid-template-columns: 1fr 1fr; }\n  .ldc-rep { columns: 1; }\n}\n@media (max-width: 760px) {\n  .ldc-section { padding-block: 80px; }\n  .ldc-hero__bg { background-image: url(\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-hero-mobile.webp\"); background-position: 50% 70%; }\n  .ldc-hero__bg::after {\n    background:\n      linear-gradient(180deg, rgba(11, 8, 6, .7) 0%, rgba(11, 8, 6, .35) 30%, rgba(11, 8, 6, .62) 58%, var(--ink) 100%),\n      linear-gradient(90deg, rgba(11, 8, 6, .75) 0%, rgba(11, 8, 6, .45) 55%, rgba(11, 8, 6, .2) 100%);\n  }\n  .ldc-crow { grid-template-columns: 64px 1fr; gap: 16px 20px; padding: 22px 0; }\n  .ldc-crow__thumb { display: none; }\n  .ldc-crow__day { font-size: 40px; }\n  .ldc-crow__act { grid-column: 2; justify-self: start; flex-direction: row; align-items: center; }\n  .ldc-crow::before { inset: 0 -12px; }\n  .ldc-facts { grid-template-columns: 1fr; }\n  .ldc-facts div { border-right: 0; border-bottom: 1px solid var(--rule-dark); padding: 20px 0 18px; }\n  .ldc-facts div + div { padding-left: 0; }\n  .ldc-facts div:last-child { border-bottom: 0; }\n  .ldc-ggrid { grid-template-columns: 1fr 1fr; grid-auto-rows: 34vw; }\n  .ldc-gfig:nth-child(8n + 1), .ldc-gfig:nth-child(8n + 4) { grid-column: span 1; grid-row: span 1; }\n  .ldc-gfig:nth-child(8n + 1) { grid-column: span 2; }\n  .ldc-video { aspect-ratio: 16 \/ 9; }\n  .ldc-footer__grid { grid-template-columns: 1fr; }\n  .ldc-contact__row { grid-template-columns: 1fr; gap: 6px; }\n  .ldc-faq__item p { padding-right: 0; }\n  .ldc-rail__nav { display: none; }\n}\n\n@media (prefers-reduced-motion: reduce) {\n  .ldc-root [data-reveal] { opacity: 1; transform: none; transition: none; }\n  .ldc-hero__bg, .ldc-hero__glow, .ldc-hero__glow2, .ldc-scrollcue { animation: none; }\n  .ldc-root * { transition-duration: .01ms !important; }\n}\n\n<\/style>\n<div class=\"ldc-root\">\n\n  <!-- ============ NAWIGACJA ============ -->\n  <header class=\"ldc-nav\" id=\"ldc-nav\">\n    <div class=\"ldc-nav__in\">\n      <a class=\"ldc-nav__logo\" href=\"#start\" aria-label=\"Luce di Candela \u2014 pocz\u0105tek strony\">\n        <img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-logo.png\" alt=\"Luce di Candela\" width=\"1000\" height=\"400\">\n      <\/a>\n      <nav class=\"ldc-nav__links\" aria-label=\"Menu g\u0142\u00f3wne\">\n        <a href=\"#o-koncertach\">O koncertach<\/a>\n        <a href=\"#koncerty\">Koncerty<\/a>\n        <a href=\"#programy\">Programy<\/a>\n        <a href=\"#galeria\">Galeria<\/a>\n        <a href=\"#faq\">FAQ<\/a>\n        <a href=\"#kontakt\">Kontakt<\/a>\n      <\/nav>\n      <div class=\"ldc-nav__right\">\n        <a class=\"ldc-btn ldc-btn--sm ldc-nav__cta\" href=\"#koncerty\"><span>Kup bilet<\/span><\/a>\n        <button class=\"ldc-burger\" id=\"ldc-burger\" aria-label=\"Otw\u00f3rz menu\" aria-expanded=\"false\" aria-controls=\"ldc-menu\">\n          <span><\/span><span><\/span><span><\/span>\n        <\/button>\n      <\/div>\n    <\/div>\n  <\/header>\n  <div class=\"ldc-menu\" id=\"ldc-menu\" aria-hidden=\"true\">\n    <a href=\"#o-koncertach\" style=\"--i:0\">O koncertach<\/a>\n    <a href=\"#koncerty\" style=\"--i:1\">Koncerty<\/a>\n    <a href=\"#programy\" style=\"--i:2\">Programy<\/a>\n    <a href=\"#galeria\" style=\"--i:3\">Galeria<\/a>\n    <a href=\"#faq\" style=\"--i:4\">FAQ<\/a>\n    <a href=\"#kontakt\" style=\"--i:5\">Kontakt<\/a>\n    <div class=\"ldc-menu__cta\" style=\"--i:6\"><a class=\"ldc-btn\" href=\"#koncerty\"><span>Kup bilet<\/span><\/a><\/div>\n  <\/div>\n\n  <main>\n\n    <!-- ============ HERO ============ -->\n    <section class=\"ldc-hero\" id=\"start\">\n      <div class=\"ldc-hero__bg\" aria-hidden=\"true\"><\/div>\n      <div class=\"ldc-hero__glow\" aria-hidden=\"true\"><\/div>\n      <div class=\"ldc-hero__glow2\" aria-hidden=\"true\"><\/div>\n      <div class=\"ldc-hero__in\">\n        <div>\n          <p class=\"ldc-kicker\" data-reveal=\"fade\">Koncerty przy \u015bwiecach<\/p>\n          <h1 data-reveal style=\"--i:1\">Muzyka na \u017cywo <span class=\"ldc-i\">w blasku<\/span> tysi\u0105ca \u015bwiec.<\/h1>\n          <p class=\"ldc-hero__lead\" data-reveal style=\"--i:2\">Instrumentalne koncerty w niepowtarzalnych miejscach \u2013 od klasyki i muzyki filmowej po najwi\u0119ksze przeboje pop, w aran\u017cacji na kwartet smyczkowy.<\/p>\n          <div class=\"ldc-hero__cta\" data-reveal style=\"--i:3\">\n            <a class=\"ldc-btn\" href=\"#koncerty\"><span>Nadchodz\u0105ce koncerty<\/span><\/a>\n            <a class=\"ldc-btn ldc-btn--ghost\" href=\"#programy\"><span>Poznaj programy<\/span><\/a>\n          <\/div>\n        <\/div>\n      <\/div>\n      <div class=\"ldc-scrollcue\" aria-hidden=\"true\"><\/div>\n    <\/section>\n\n    <!-- ============ O KONCERTACH ============ -->\n    <section class=\"ldc-section ldc-paper ldc-grain ldc-about\" id=\"o-koncertach\">\n      <div class=\"ldc-wrap ldc-about__grid\">\n        <div class=\"ldc-about__left\">\n          <p class=\"ldc-kicker\" data-reveal=\"fade\">O koncertach<\/p>\n          <h2 class=\"ldc-h2\" data-reveal style=\"--i:1\">Wiecz\u00f3r, kt\u00f3ry <span class=\"ldc-i\">zostaje<\/span> w pami\u0119ci.<\/h2>\n        <\/div>\n        <div>\n          <div class=\"ldc-manifest\">\n            <p data-reveal>Koncerty instrumentalne przy \u015bwietle \u015bwiec to niezwyk\u0142e do\u015bwiadczenie, kt\u00f3re pobudza zmys\u0142y i tworzy niezapomnian\u0105 atmosfer\u0119. W p\u00f3\u0142mroku arty\u015bci wype\u0142niaj\u0105 przestrze\u0144 muzyk\u0105, tworz\u0105c intymny i pe\u0142en emocji nastr\u00f3j.<\/p>\n            <p data-reveal style=\"--i:1\">W naszej ofercie znajdziesz r\u00f3\u017cnorodne style muzyczne: od muzyki klasycznej, przez jazz, muzyk\u0119 popularn\u0105, a\u017c po \u015bcie\u017cki d\u017awi\u0119kowe z film\u00f3w.<\/p>\n            <p data-reveal style=\"--i:2\">Z pasj\u0105 kreujemy niezapomniane muzyczne prze\u017cycia. Nasze wydarzenia \u0142\u0105cz\u0105 pi\u0119kno muzyki z wyj\u0105tkow\u0105 atmosfer\u0105, tworz\u0105c chwile, kt\u00f3re zostaj\u0105 w pami\u0119ci na d\u0142ugo.<\/p>\n            <p data-reveal style=\"--i:3\">Ka\u017cdy koncert przygotowujemy z sercem, dba\u0142o\u015bci\u0105 o szczeg\u00f3\u0142y i najwy\u017csz\u0105 jako\u015bci\u0105, aby ka\u017cdy uczestnik m\u00f3g\u0142 w pe\u0142ni cieszy\u0107 si\u0119 tym wyj\u0105tkowym do\u015bwiadczeniem.<\/p>\n          <\/div>\n          <a class=\"ldc-link\" href=\"#koncerty\" data-reveal style=\"--i:4;margin-top:34px\">Do\u0142\u0105cz do nas na najbli\u017cszym koncercie\n            <svg viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.2\"><path d=\"M1 8h13M9 3l5 5-5 5\"\/><\/svg>\n          <\/a>\n          <div class=\"ldc-facts\">\n            <div data-reveal style=\"--i:1\"><strong>1000+<\/strong><span>\u015bwiec na scenie<\/span><\/div>\n            <div data-reveal style=\"--i:2\"><strong>7<\/strong><span>program\u00f3w muzycznych<\/span><\/div>\n            <div data-reveal style=\"--i:3\"><strong>100%<\/strong><span>muzyki na \u017cywo<\/span><\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- ============ NADCHODZ\u0104CE KONCERTY ============ -->\n    <!--\n      Dane koncert\u00f3w wczytywane s\u0105 w tej kolejno\u015bci:\n        1. blok <script type=\"application\/json\" id=\"luce-concerts-data\"> (gdziekolwiek na stronie),\n        2. plik wskazany w data-src,\n        3. localStorage (zapis z panelu admin\/ \u2014 do podgl\u0105du).\n      Minione koncerty s\u0105 ukrywane automatycznie, przysz\u0142e sortowane chronologicznie.\n    -->\n    <section class=\"ldc-section ldc-grain ldc-concerts\" id=\"koncerty\" data-luce-concerts data-tickets-fallback=\"https:\/\/kulturalnykoneser.pl\/koncerty-luce-di-candela\/\">\n      <div class=\"ldc-wrap\">\n        <div class=\"ldc-head\">\n          <div>\n            <p class=\"ldc-kicker\" data-reveal=\"fade\">Nadchodz\u0105ce koncerty<\/p>\n            <h2 class=\"ldc-h2\" data-reveal style=\"--i:1\">Wybierz sw\u00f3j <span class=\"ldc-i\">wiecz\u00f3r<\/span> przy \u015bwiecach.<\/h2>\n          <\/div>\n          <div class=\"ldc-head__side\" data-reveal style=\"--i:2\">\n            <p class=\"ldc-lead\">Zanurz si\u0119 w wyj\u0105tkow\u0105 atmosfer\u0119 naszych koncert\u00f3w. Wybierz nadchodz\u0105ce wydarzenie dla siebie.<\/p>\n            <a class=\"ldc-link\" href=\"https:\/\/kulturalnykoneser.pl\/koncerty-luce-di-candela\/\" target=\"_blank\" rel=\"noopener\" style=\"margin-top:22px\">Zobacz wszystkie koncerty\n              <svg viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.2\"><path d=\"M1 8h13M9 3l5 5-5 5\"\/><\/svg>\n            <\/a>\n          <\/div>\n        <\/div>\n        <div class=\"ldc-clist\" id=\"ldc-clist\" aria-live=\"polite\">\n          <!-- wype\u0142nia js\/concerts.js -->\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- ============ PROGRAMY MUZYCZNE ============ -->\n    <section class=\"ldc-section ldc-grain ldc-programmes\" id=\"programy\">\n      <div class=\"ldc-wrap\">\n        <div class=\"ldc-head\">\n          <div>\n            <p class=\"ldc-kicker\" data-reveal=\"fade\">Programy muzyczne<\/p>\n            <h2 class=\"ldc-h2\" data-reveal style=\"--i:1\">Siedem program\u00f3w, <span class=\"ldc-i\">jeden<\/span> nastr\u00f3j.<\/h2>\n          <\/div>\n          <div class=\"ldc-head__side\" data-reveal style=\"--i:2\">\n            <p class=\"ldc-lead\">Ka\u017cdy program to oko\u0142o dwunastu utwor\u00f3w w aran\u017cacji na kwartet smyczkowy. Wybierz ok\u0142adk\u0119, \u017ceby zobaczy\u0107 pe\u0142ny repertuar.<\/p>\n            <div class=\"ldc-rail__nav\" style=\"margin-top:22px\">\n              <button class=\"ldc-rail__btn\" data-rail-prev aria-label=\"Poprzednie programy\"><svg viewBox=\"0 0 18 18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.2\"><path d=\"M11 3 5 9l6 6\"\/><\/svg><\/button>\n              <button class=\"ldc-rail__btn\" data-rail-next aria-label=\"Nast\u0119pne programy\"><svg viewBox=\"0 0 18 18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.2\"><path d=\"m7 3 6 6-6 6\"\/><\/svg><\/button>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"ldc-rail\" id=\"ldc-rail\" data-reveal=\"fade\">\n          <button class=\"ldc-tile\" data-programme=\"klasyczne\" data-genre=\"Klasyka\" data-desc=\"Szostakowicz, Mozart, Dvo\u0159\u00e1k, Puccini i Vivaldi \u2013 najpi\u0119kniejsze melodie klasyki w kameralnym brzmieniu kwartetu, w otoczeniu setek \u015bwiec.\">\n            <img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-program-klasyczne.webp\" alt=\"\" loading=\"lazy\">\n            <span class=\"ldc-tile__num\">I<\/span>\n            <div class=\"ldc-tile__txt\"><h3>Najpi\u0119kniejsze utwory klasyczne<\/h3><span>Klasyka<\/span><\/div>\n            <ul class=\"ldc-tile__rep\">\n              <li>Dmitrij Szostakowicz \u2013 Walc nr 2<\/li><li>Wolfgang Amadeusz Mozart \u2013 Eine Kleine Nachtmusik<\/li><li>Anton\u00edn Dvo\u0159\u00e1k \u2013 Humoreske<\/li><li>Anton\u00edn Dvo\u0159\u00e1k \u2013 Kwartet smyczkowy F-dur nr 12<\/li><li>Anton\u00edn Dvo\u0159\u00e1k \u2013 Largo z Symfonii Nowego \u015awiata<\/li><li>Edvard Grieg \u2013 In the Hall of the Mountain King<\/li><li>Edward Elgar \u2013 Nimrod<\/li><li>Edward Elgar \u2013 Salut d\u2019Amour<\/li><li>Gabriel Faur\u00e9 \u2013 Pavane<\/li><li>Giacomo Puccini \u2013 Nessun Dorma<\/li><li>Giacomo Puccini \u2013 O Mio Babbino Caro<\/li><li>Georges Bizet \u2013 Habanera<\/li><li>Antonio Vivaldi \u2013 Spring<\/li>\n            <\/ul>\n          <\/button>\n          <button class=\"ldc-tile\" data-programme=\"disney\" data-genre=\"Muzyka filmowa\" data-desc=\"Od Kr\u00f3la Lwa przez Ma\u0142\u0105 Syrenk\u0119 po Krain\u0119 Lodu \u2013 melodie, kt\u00f3re zna ka\u017cde pokolenie, w wersji na smyczki i przy blasku \u015bwiec.\">\n            <img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-program-disney.webp\" alt=\"\" loading=\"lazy\">\n            <span class=\"ldc-tile__num\">II<\/span>\n            <div class=\"ldc-tile__txt\"><h3>Najpi\u0119kniejsze utwory Disney\u2019a<\/h3><span>Muzyka filmowa<\/span><\/div>\n            <ul class=\"ldc-tile__rep\">\n              <li>Alan Menken \u2013 I Won\u2019t Say (Hercules)<\/li><li>Cliff Edwards \u2013 When You Wish Upon a Star<\/li><li>Alan Menken \u2013 I\u2019ve Got a Dream (Zapl\u0105tani)<\/li><li>Alan Menken \u2013 Little Mermaid Theme<\/li><li>Alan Menken \u2013 Under the Sea<\/li><li>Brad Kane, Lea Salonga \u2013 A Whole New World<\/li><li>Phil Collins \u2013 You\u2019ll Be in My Heart<\/li><li>Dwayne Johnson \u2013 You\u2019re Welcome<\/li><li>Elton John \u2013 Can You Feel the Love<\/li><li>Elton John \u2013 Hakuna Matata<\/li><li>Christina Aguilera \u2013 Reflection<\/li><li>Judy Kuhn \u2013 Colors of the Wind (Pocahontas)<\/li><li>Beauty and the Beast Theme<\/li>\n            <\/ul>\n          <\/button>\n          <button class=\"ldc-tile\" data-programme=\"coldplay-imagine-dragons\" data-genre=\"Pop i rock symfonicznie\" data-desc=\"Believer, Fix You, A Sky Full of Stars \u2013 stadionowe hity Coldplay i Imagine Dragons zamienione w kameralny, intymny wiecz\u00f3r.\">\n            <img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-program-coldplay-imagine-dragons.webp\" alt=\"\" loading=\"lazy\">\n            <span class=\"ldc-tile__num\">III<\/span>\n            <div class=\"ldc-tile__txt\"><h3>Coldplay &amp; Imagine Dragons<\/h3><span>Pop i rock symfonicznie<\/span><\/div>\n            <ul class=\"ldc-tile__rep\">\n              <li>Imagine Dragons \u2013 Believer<\/li><li>Imagine Dragons \u2013 Demons<\/li><li>Imagine Dragons \u2013 Follow You<\/li><li>Imagine Dragons \u2013 Natural<\/li><li>Imagine Dragons \u2013 Radioactive<\/li><li>Imagine Dragons \u2013 Thunder<\/li><li>Coldplay \u2013 A Sky Full of Stars<\/li><li>Coldplay \u2013 Adventure of a Lifetime<\/li><li>Coldplay \u2013 Clocks<\/li><li>Coldplay \u2013 Fix You<\/li><li>Coldplay \u2013 My Universe<\/li><li>Coldplay \u2013 Paradise<\/li>\n            <\/ul>\n          <\/button>\n          <button class=\"ldc-tile\" data-programme=\"whitney-celine\" data-genre=\"Ballady\" data-desc=\"Najwi\u0119ksze ballady dw\u00f3ch wielkich g\u0142os\u00f3w \u2013 od My Heart Will Go On po One Moment in Time \u2013 opowiedziane smyczkami.\">\n            <img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-program-whitney-celine.webp\" alt=\"\" loading=\"lazy\">\n            <span class=\"ldc-tile__num\">IV<\/span>\n            <div class=\"ldc-tile__txt\"><h3>Whitney Houston &amp; Celine Dion<\/h3><span>Ballady<\/span><\/div>\n            <ul class=\"ldc-tile__rep\">\n              <li>Whitney Houston \u2013 You Light Up My Life<\/li><li>Whitney Houston \u2013 Your Love Is My Love<\/li><li>Whitney Houston \u2013 One Moment in Time<\/li><li>Whitney Houston \u2013 How Will I Know<\/li><li>Whitney Houston, Mariah Carey \u2013 When You Believe<\/li><li>Celine Dion \u2013 A New Day Has Come<\/li><li>Celine Dion \u2013 All by Myself<\/li><li>Celine Dion \u2013 Because You Loved Me<\/li><li>Celine Dion \u2013 Beauty and the Beast<\/li><li>Celine Dion \u2013 My Heart Will Go On<\/li><li>Celine Dion \u2013 Tell Him<\/li><li>Celine Dion \u2013 The Power of Love<\/li><li>Celine Dion \u2013 That\u2019s the Way It Is<\/li>\n            <\/ul>\n          <\/button>\n          <button class=\"ldc-tile\" data-programme=\"latino\" data-genre=\"Latino i tango\" data-desc=\"Od tanga Piazzolli i Gardela po Havan\u0119 i Lambad\u0119 \u2013 gor\u0105ce rytmy w ch\u0142odnym p\u00f3\u0142mroku sali.\">\n            <img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-program-latino.webp\" alt=\"\" loading=\"lazy\">\n            <span class=\"ldc-tile__num\">V<\/span>\n            <div class=\"ldc-tile__txt\"><h3>Wiecz\u00f3r z rytmami Latino<\/h3><span>Latino i tango<\/span><\/div>\n            <ul class=\"ldc-tile__rep\">\n              <li>Astor Piazzolla \u2013 Oblivion<\/li><li>Barry Manilow \u2013 Copacabana<\/li><li>Camila Cabello \u2013 Havana<\/li><li>Camila Cabello \u2013 Se\u00f1orita<\/li><li>Bad Bunny \u2013 Dtmf<\/li><li>Carlos Gardel \u2013 Por Una Cabeza<\/li><li>Celina Cruz \u2013 Guantanamera<\/li><li>Gerardo Matos Rodriguez \u2013 La Cumparsita<\/li><li>Kaoma \u2013 Lambada<\/li><li>Los Lobos \u2013 La Bamba<\/li><li>Rodrigo Amarante \u2013 Tuyo<\/li><li>Shakira \u2013 Hips Don\u2019t Lie<\/li>\n            <\/ul>\n          <\/button>\n          <button class=\"ldc-tile\" data-programme=\"bruno-mars-lady-gaga\" data-genre=\"Pop\" data-desc=\"Shallow, Die With a Smile, Uptown Funk \u2013 wsp\u00f3\u0142czesny pop w aran\u017cacjach, kt\u00f3re wyci\u0105gaj\u0105 z tych piosenek to, co najbardziej melodyjne.\">\n            <img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-program-bruno-mars-lady-gaga.webp\" alt=\"\" loading=\"lazy\">\n            <span class=\"ldc-tile__num\">VI<\/span>\n            <div class=\"ldc-tile__txt\"><h3>Bruno Mars &amp; Lady Gaga<\/h3><span>Pop<\/span><\/div>\n            <ul class=\"ldc-tile__rep\">\n              <li>Lady Gaga \u2013 Bad Romance<\/li><li>Lady Gaga \u2013 Abracadabra<\/li><li>Lady Gaga \u2013 Paparazzi<\/li><li>Lady Gaga \u2013 Born This Way<\/li><li>Lady Gaga, Bradley Cooper \u2013 Shallow<\/li><li>Bruno Mars \u2013 Just the Way You Are<\/li><li>Bruno Mars \u2013 Leave the Door Open<\/li><li>Bruno Mars \u2013 Marry You<\/li><li>Bruno Mars \u2013 Uptown Funk<\/li><li>Bruno Mars, Lady Gaga \u2013 Die With a Smile<\/li>\n            <\/ul>\n          <\/button>\n          <button class=\"ldc-tile\" data-programme=\"abba-queen\" data-genre=\"Rock i pop klasyczny\" data-desc=\"Bohemian Rhapsody obok Dancing Queen \u2013 pi\u0119tna\u015bcie ponadczasowych przeboj\u00f3w dw\u00f3ch zespo\u0142\u00f3w, kt\u00f3re zdefiniowa\u0142y swoj\u0105 epok\u0119.\">\n            <img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-program-abba-queen.webp\" alt=\"\" loading=\"lazy\">\n            <span class=\"ldc-tile__num\">VII<\/span>\n            <div class=\"ldc-tile__txt\"><h3>Abba &amp; Queen<\/h3><span>Rock i pop klasyczny<\/span><\/div>\n            <ul class=\"ldc-tile__rep\">\n              <li>ABBA \u2013 Dancing Queen<\/li><li>ABBA \u2013 Fernando<\/li><li>ABBA \u2013 Chiquitita<\/li><li>ABBA \u2013 Lay All Your Love On Me<\/li><li>ABBA \u2013 SOS<\/li><li>ABBA \u2013 I Have a Dream<\/li><li>ABBA \u2013 Mamma Mia<\/li><li>Queen \u2013 Bohemian Rhapsody<\/li><li>Queen \u2013 Crazy Little Thing Called Love<\/li><li>Queen \u2013 Don\u2019t Stop Me Now<\/li><li>Queen \u2013 I Want to Break Free<\/li><li>Queen \u2013 Killer Queen<\/li><li>Queen \u2013 Love of My Life<\/li><li>Queen \u2013 We Are the Champions<\/li><li>Queen \u2013 You\u2019re My Best Friend<\/li>\n            <\/ul>\n          <\/button>\n        <\/div>\n        <div class=\"ldc-rail__bar\" aria-hidden=\"true\"><span id=\"ldc-rail-bar\"><\/span><\/div>\n\n        <div class=\"ldc-prog__detail\" id=\"ldc-prog-detail\">\n          <div>\n            <div class=\"ldc-prog__inner\">\n              <div>\n                <p class=\"ldc-kicker\">Repertuar programu<\/p>\n                <h3 id=\"ldc-prog-title\"><\/h3>\n                <div class=\"ldc-prog__facts\">\n                  <p><b>Gatunek<\/b> <span id=\"ldc-prog-genre\"><\/span><\/p>\n                <\/div>\n                <p class=\"ldc-lead\" id=\"ldc-prog-desc\" style=\"margin-top:22px;font-size:1rem\"><\/p>\n                <div>\n                  <a class=\"ldc-btn ldc-btn--sm\" href=\"#koncerty\"><span>Sprawd\u017a terminy<\/span><\/a>\n                  <button class=\"ldc-link ldc-prog__close\" id=\"ldc-prog-close\">Zwi\u0144<\/button>\n                <\/div>\n              <\/div>\n              <ol class=\"ldc-rep\" id=\"ldc-prog-rep\"><\/ol>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- ============ GALERIA \/ WIDEO ============ -->\n    <section class=\"ldc-section ldc-grain ldc-gallery\" id=\"galeria\">\n      <div class=\"ldc-wrap\">\n        <div class=\"ldc-head\">\n          <div>\n            <p class=\"ldc-kicker\" data-reveal=\"fade\">Zobacz, jak to wygl\u0105da<\/p>\n            <h2 class=\"ldc-h2\" data-reveal style=\"--i:1\">Poczuj <span class=\"ldc-i\">atmosfer\u0119<\/span> naszych wydarze\u0144.<\/h2>\n          <\/div>\n          <div class=\"ldc-head__side\" data-reveal style=\"--i:2\">\n            <p class=\"ldc-lead\">Zdj\u0119cia z naszych koncert\u00f3w. Kliknij, \u017ceby powi\u0119kszy\u0107.<\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"ldc-ggrid\" id=\"ldc-ggrid\">\n          <figure class=\"ldc-gfig\" data-reveal=\"scale\" style=\"--i:0\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-0009.webp\" alt=\"Wokalistka i kwartet smyczkowy na scenie w\u015br\u00f3d \u015bwiec\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Scena<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig\" data-reveal=\"scale\" style=\"--i:1\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-0068.webp\" alt=\"Widok z g\u00f3ry na scen\u0119 pe\u0142n\u0105 \u015bwiec\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Z g\u00f3ry<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig\" data-reveal=\"scale\" style=\"--i:2\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-1871.webp\" alt=\"Kwartet na scenie w niebieskim \u015bwietle\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Scena<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig\" data-reveal=\"scale\" style=\"--i:3\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-1304.webp\" alt=\"Publiczno\u015b\u0107 w sali koncertowej przy \u015bwiecach\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Publiczno\u015b\u0107<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig\" data-reveal=\"scale\" style=\"--i:4\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-galeria-5-1.webp\" alt=\"Kwartet smyczkowy na scenie otoczony \u015bwiecami, przed pe\u0142n\u0105 sal\u0105\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Kwartet i publiczno\u015b\u0107<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig\" data-reveal=\"scale\" style=\"--i:5\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-galeria-3.webp\" alt=\"Kwartet smyczkowy graj\u0105cy w\u015br\u00f3d \u015bwiec pod reflektorami\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Kwartet smyczkowy<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig\" data-reveal=\"scale\" style=\"--i:6\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-1258.webp\" alt=\"Zbli\u017cenie na \u015bwiece\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Tysi\u0105c \u015bwiec<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig\" data-reveal=\"scale\" style=\"--i:7\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-galeria-1-1.webp\" alt=\"Muzycy w niebieskim \u015bwietle sceny, wok\u00f3\u0142 \u015bwiece\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Scena w p\u00f3\u0142mroku<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig ldc-gfig--more\" data-reveal=\"scale\" style=\"--i:0\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-1325.webp\" alt=\"Muzycy i widownia w blasku \u015bwiec\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Koncert<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig ldc-gfig--more\" data-reveal=\"scale\" style=\"--i:1\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-galeria-9-1.webp\" alt=\"Widok z boku sceny na widowni\u0119 i muzyk\u00f3w\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Widownia<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig ldc-gfig--more\" data-reveal=\"scale\" style=\"--i:2\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-galeria-8-1.webp\" alt=\"Publiczno\u015b\u0107 s\u0142uchaj\u0105ca koncertu przy \u015bwiecach\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Publiczno\u015b\u0107<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig ldc-gfig--more\" data-reveal=\"scale\" style=\"--i:3\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-1315.webp\" alt=\"Muzycy w otoczeniu setek \u015bwiec\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>W\u015br\u00f3d \u015bwiec<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig ldc-gfig--more\" data-reveal=\"scale\" style=\"--i:4\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-1298.webp\" alt=\"Kwartet na scenie w\u015br\u00f3d \u015bwiec\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Scena<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig ldc-gfig--more\" data-reveal=\"scale\" style=\"--i:5\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-galeria-6-1.webp\" alt=\"Widownia i muzycy w ciep\u0142ym \u015bwietle\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Widownia<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig ldc-gfig--more\" data-reveal=\"scale\" style=\"--i:6\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-1334.webp\" alt=\"Kwartet w p\u00f3\u0142mroku sali\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>P\u00f3\u0142mrok<\/figcaption><\/figure>\n          <figure class=\"ldc-gfig ldc-gfig--more\" data-reveal=\"scale\" style=\"--i:7\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-foto-1755.webp\" alt=\"Kwartet smyczkowy graj\u0105cy na scenie otoczonej \u015bwiecami\" loading=\"lazy\" data-parallax=\"0.05\"><figcaption>Kwartet<\/figcaption><\/figure>\n        <\/div>\n        <div class=\"ldc-gmore\"><button class=\"ldc-btn ldc-btn--ghost\" type=\"button\" id=\"ldc-gmore\" aria-expanded=\"false\" aria-controls=\"ldc-ggrid\"><span>Poka\u017c wi\u0119cej zdj\u0119\u0107 (8)<\/span><\/button><\/div>\n\n        <!-- Zapowied\u017a wideo: wpisz ID filmu z YouTube w data-video (np. data-video=\"dQw4w9WgXcQ\").\n             Pusty atrybut ukrywa ca\u0142y blok. -->\n        <div class=\"ldc-video\" id=\"ldc-video\" data-video=\"\" data-reveal=\"fade\">\n          <img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-hero.webp\" alt=\"\" loading=\"lazy\">\n          <div class=\"ldc-video__play\">\n            <i><svg viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M6 4l14 8-14 8z\"\/><\/svg><\/i>\n            <span>Zapowied\u017a wideo<\/span>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- ============ FAQ ============ -->\n    <section class=\"ldc-section ldc-paper ldc-grain ldc-faq\" id=\"faq\">\n      <div class=\"ldc-wrap ldc-faq__grid\">\n        <div class=\"ldc-faq__side\">\n          <p class=\"ldc-kicker\" data-reveal=\"fade\">Najcz\u0119\u015bciej zadawane pytania<\/p>\n          <h2 class=\"ldc-h2\" data-reveal style=\"--i:1\">Zanim <span class=\"ldc-i\">przyjdziesz<\/span>.<\/h2>\n          <p class=\"ldc-lead\" data-reveal style=\"--i:2\">Kilka odpowiedzi, kt\u00f3re u\u0142atwi\u0105 wiecz\u00f3r. Je\u015bli czego\u015b tu nie ma \u2013 napisz do nas.<\/p>\n          <a class=\"ldc-link\" href=\"#kontakt\" data-reveal style=\"--i:3\">Zadaj pytanie\n            <svg viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.2\"><path d=\"M1 8h13M9 3l5 5-5 5\"\/><\/svg>\n          <\/a>\n        <\/div>\n        <div data-reveal style=\"--i:2\">\n          <details class=\"ldc-faq__item\" name=\"ldc-faq\">\n            <summary>Czy mog\u0119 robi\u0107 zdj\u0119cia i nagrywa\u0107 wideo podczas koncertu?<i class=\"ldc-faq__plus\"><\/i><\/summary>\n            <p>Jak najbardziej! Zachowaj pi\u0119kne wspomnienia z koncertu i podziel si\u0119 nimi w mediach spo\u0142eczno\u015bciowych. Zawsze cieszymy si\u0119, gdy je widzimy!<\/p>\n          <\/details>\n          <details class=\"ldc-faq__item\" name=\"ldc-faq\">\n            <summary>Czy mog\u0119 przynie\u015b\u0107 w\u0142asne jedzenie i napoje?<i class=\"ldc-faq__plus\"><\/i><\/summary>\n            <p>Prosimy o nieprzynoszenie jedzenia i napoj\u00f3w na koncert, aby nie zak\u0142\u00f3ca\u0107 komfortu pozosta\u0142ych uczestnik\u00f3w.<\/p>\n          <\/details>\n          <details class=\"ldc-faq__item\" name=\"ldc-faq\">\n            <summary>Czy musz\u0119 przyjecha\u0107 na koncert wcze\u015bniej?<i class=\"ldc-faq__plus\"><\/i><\/summary>\n            <p>Zalecamy przybycie oko\u0142o p\u00f3\u0142 godziny przed koncertem, aby spokojnie zaj\u0105\u0107 miejsce i w pe\u0142ni wprowadzi\u0107 si\u0119 w nastr\u00f3j wieczoru i muzyk\u0119.<\/p>\n          <\/details>\n          <details class=\"ldc-faq__item\" name=\"ldc-faq\">\n            <summary>Czy mog\u0119 zwr\u00f3ci\u0107 bilet?<i class=\"ldc-faq__plus\"><\/i><\/summary>\n            <p>Odezwij si\u0119 do nas na adres e-mail <a href=\"mailto:bilety@kulturalnykoneser.pl\">bilety@kulturalnykoneser.pl<\/a>.<\/p>\n          <\/details>\n          <details class=\"ldc-faq__item\" name=\"ldc-faq\">\n            <summary>Co zrobi\u0107, je\u015bli bilet nie dotrze na e-mail?<i class=\"ldc-faq__plus\"><\/i><\/summary>\n            <p>Prosimy o przes\u0142anie zg\u0142oszenia na adres <a href=\"mailto:bilety@kulturalnykoneser.pl\">bilety@kulturalnykoneser.pl<\/a>. W tytule wiadomo\u015bci nale\u017cy wpisa\u0107: Bilet \u2013 miasto, imi\u0119 i nazwisko. Po weryfikacji w systemie bilet zostanie wys\u0142any ponownie.<\/p>\n          <\/details>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- ============ KONTAKT ============ -->\n    <section class=\"ldc-section ldc-grain ldc-contact\" id=\"kontakt\">\n      <div class=\"ldc-wrap ldc-contact__grid\">\n        <div>\n          <p class=\"ldc-kicker\" data-reveal=\"fade\">Masz pytania?<\/p>\n          <h2 class=\"ldc-h2\" data-reveal style=\"--i:1\">Porozmawiajmy o <span class=\"ldc-i\">Twoim<\/span> wieczorze.<\/h2>\n          <p class=\"ldc-lead\" data-reveal style=\"--i:2;margin-top:22px\">Skontaktuj si\u0119 z nami \u2013 ch\u0119tnie odpowiemy na wszystkie pytania dotycz\u0105ce koncert\u00f3w, bilet\u00f3w i wydarze\u0144 specjalnych.<\/p>\n          <div class=\"ldc-contact__rows\" data-reveal style=\"--i:3\">\n            <div class=\"ldc-contact__row\"><span>Telefon<\/span><a href=\"tel:+48727437814\">+48 727 437 814<\/a><\/div>\n            <div class=\"ldc-contact__row\"><span>E-mail<\/span><a href=\"mailto:info@kulturalnykoneser.pl\">info@kulturalnykoneser.pl<\/a><\/div>\n            <div class=\"ldc-contact__row\"><span>Bilety<\/span><a href=\"mailto:bilety@kulturalnykoneser.pl\">bilety@kulturalnykoneser.pl<\/a><\/div>\n          <\/div>\n          <div class=\"ldc-social\" data-reveal style=\"--i:4\">\n            <a class=\"ldc-link\" href=\"https:\/\/www.facebook.com\/profile.php?id=61583561490178\" target=\"_blank\" rel=\"noopener\">Facebook<\/a>\n            <a class=\"ldc-link\" href=\"https:\/\/www.instagram.com\/koncertylucedicandela\/\" target=\"_blank\" rel=\"noopener\">Instagram<\/a>\n          <\/div>\n        <\/div>\n\n        <!-- Formularz otwiera gotow\u0105 wiadomo\u015b\u0107 e-mail (mailto). W WordPressie mo\u017cesz go podmieni\u0107 na widget \u201eFormularz\u201d Elementora. -->\n        <form class=\"ldc-form\" id=\"ldc-form\" data-reveal style=\"--i:2\" data-mailto=\"info@kulturalnykoneser.pl\" novalidate>\n          <div class=\"ldc-field\"><label for=\"ldc-f-name\">Imi\u0119 i nazwisko<\/label><input id=\"ldc-f-name\" name=\"name\" type=\"text\" autocomplete=\"name\" placeholder=\"Jan Kowalski\" required><\/div>\n          <div class=\"ldc-field\"><label for=\"ldc-f-email\">E-mail<\/label><input id=\"ldc-f-email\" name=\"email\" type=\"email\" autocomplete=\"email\" placeholder=\"jan@przyklad.pl\" required><\/div>\n          <div class=\"ldc-field\"><label for=\"ldc-f-topic\">Temat<\/label><input id=\"ldc-f-topic\" name=\"topic\" type=\"text\" placeholder=\"Bilety, rezerwacja grupowa, koncert dla firmy\u2026\"><\/div>\n          <div class=\"ldc-field\"><label for=\"ldc-f-msg\">Wiadomo\u015b\u0107<\/label><textarea id=\"ldc-f-msg\" name=\"message\" placeholder=\"W czym mo\u017cemy pom\u00f3c?\" required><\/textarea><\/div>\n          <div class=\"ldc-form__foot\">\n            <button class=\"ldc-btn\" type=\"submit\"><span>Wy\u015blij wiadomo\u015b\u0107<\/span><\/button>\n            <p class=\"ldc-form__note\">Odpowiadamy zwykle w ci\u0105gu jednego dnia roboczego.<\/p>\n          <\/div>\n          <p class=\"ldc-form__ok\">Dzi\u0119kujemy \u2013 otworzyli\u015bmy Tw\u00f3j program pocztowy z gotow\u0105 wiadomo\u015bci\u0105.<\/p>\n        <\/form>\n      <\/div>\n    <\/section>\n\n  <\/main>\n\n  <!-- ============ STOPKA ============ -->\n  <footer class=\"ldc-footer\">\n    <div class=\"ldc-wrap\">\n      <div class=\"ldc-footer__grid\">\n        <div>\n          <a class=\"ldc-footer__logo\" href=\"#start\"><img decoding=\"async\" src=\"https:\/\/lucedicandela.pl\/wp-content\/uploads\/2026\/09\/luce-logo.png\" alt=\"Luce di Candela\"><\/a>\n          <p class=\"ldc-footer__claim\">Instrumentalna muzyka na \u017cywo w blasku tysi\u0105ca \u015bwiec, w niepowtarzalnych miejscach.<\/p>\n        <\/div>\n        <div>\n          <h4>Organizator<\/h4>\n          <ul>\n            <li>Polskie Stowarzyszenie Animator\u00f3w Kultury<br>Kulturalny Koneser<\/li>\n            <li>NIP 894312513<\/li>\n            <li>REGON 369451410<\/li>\n          <\/ul>\n        <\/div>\n        <div>\n          <h4>Na skr\u00f3ty<\/h4>\n          <ul>\n            <li><a href=\"#koncerty\">Nadchodz\u0105ce koncerty<\/a><\/li>\n            <li><a href=\"#programy\">Programy muzyczne<\/a><\/li>\n            <li><a href=\"#faq\">FAQ<\/a><\/li>\n            <li><a href=\"https:\/\/www.facebook.com\/profile.php?id=61583561490178\" target=\"_blank\" rel=\"noopener\">Facebook<\/a><\/li>\n            <li><a href=\"https:\/\/www.instagram.com\/koncertylucedicandela\/\" target=\"_blank\" rel=\"noopener\">Instagram<\/a><\/li>\n          <\/ul>\n        <\/div>\n      <\/div>\n      <div class=\"ldc-footer__bottom\">\n        <span>Wszelkie prawa zastrze\u017cone \u00a9 <span id=\"ldc-year\">2026<\/span> Luce di Candela \u2014 Koncerty przy \u015bwiecach<\/span>\n        <span>Kulturalny Koneser<\/span>\n      <\/div>\n    <\/div>\n  <\/footer>\n\n  <div class=\"ldc-lb\" id=\"ldc-lb\" aria-hidden=\"true\">\n    <button class=\"ldc-lb__close\" id=\"ldc-lb-close\">Zamknij \u00d7<\/button>\n    <img decoding=\"async\" src=\"\" alt=\"\">\n  <\/div>\n\n<\/div><!-- \/.ldc-root -->\n<script>\n\/* =====================================================================\n   Luce di Candela \u2014 modu\u0142 \u201eNadchodz\u0105ce koncerty\u201d\n   - czyta dane z: #luce-concerts-data (JSON w HTML) \u2192 data-src (plik JSON) \u2192 localStorage (panel)\n   - ukrywa koncerty, kt\u00f3re ju\u017c si\u0119 odby\u0142y (3 h po godzinie rozpocz\u0119cia)\n   - sortuje chronologicznie i grupuje po miesi\u0105cach\n   Format jednego koncertu (wszystkie pola poza title i date s\u0105 opcjonalne):\n   {\n     \"id\": \"disney-gostyn-2026-10-15\",\n     \"title\": \"Najpi\u0119kniejsze utwory Disney\u2019a\",\n     \"date\": \"2026-10-15\",          \/\/ RRRR-MM-DD (akceptuje te\u017c DD.MM.RRRR)\n     \"time\": \"18:00\",\n     \"city\": \"Gosty\u0144\",\n     \"venue\": \"GOK Hutnik\",\n     \"address\": \"ul. Hutnika 4\",\n     \"performer\": \"Praski Quartet\",\n     \"description\": \"\u2026\",\n     \"cover\": \"https:\/\/\u2026\/okladka.webp\",\n     \"tickets\": \"https:\/\/bilety.koncertykonesera.pl\/event\/view\/id\/\u2026\",\n     \"soldOut\": false\n   }\n   ===================================================================== *\/\n(function () {\n  'use strict';\n\n  var LS_KEY = 'luce.concerts.v1';\n  var HIDE_AFTER_HOURS = 3;\n\n  var MONTHS_NOM = ['Stycze\u0144', 'Luty', 'Marzec', 'Kwiecie\u0144', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpie\u0144', 'Wrzesie\u0144', 'Pa\u017adziernik', 'Listopad', 'Grudzie\u0144'];\n  var MONTHS_SHORT = ['sty', 'lut', 'mar', 'kwi', 'maj', 'cze', 'lip', 'sie', 'wrz', 'pa\u017a', 'lis', 'gru'];\n  var DAYS_SHORT = ['nd', 'pn', 'wt', '\u015br', 'czw', 'pt', 'sb'];\n\n  function esc(s) {\n    return String(s == null ? '' : s).replace(\/[&<>\"']\/g, function (ch) {\n      return { '&': '&amp;', '<': '&lt;', '>': '&gt;', '\"': '&quot;', \"'\": '&#39;' }[ch];\n    });\n  }\n\n  \/** Data + godzina koncertu jako Date w czasie lokalnym. null gdy data nieczytelna. *\/\n  function parseWhen(c) {\n    var d = String(c.date || '').trim();\n    var m = d.match(\/^(\\d{4})-(\\d{1,2})-(\\d{1,2})\/);\n    if (!m) {\n      var m2 = d.match(\/^(\\d{1,2})[.\\\/-](\\d{1,2})[.\\\/-](\\d{4})$\/);\n      if (m2) m = [null, m2[3], m2[2], m2[1]];\n    }\n    if (!m) return null;\n    var t = String(c.time || '00:00').match(\/^(\\d{1,2})[:.](\\d{2})\/);\n    return new Date(+m[1], +m[2] - 1, +m[3], t ? +t[1] : 0, t ? +t[2] : 0, 0, 0);\n  }\n\n  function isUpcoming(when, now) {\n    return when.getTime() + HIDE_AFTER_HOURS * 3600e3 > now.getTime();\n  }\n\n  function isSameDay(a, b) {\n    return a.getFullYear() === b.getFullYear() && a.getMonth() === b.getMonth() && a.getDate() === b.getDate();\n  }\n\n  function asList(v) {\n    if (Array.isArray(v)) return v;\n    if (v && Array.isArray(v.concerts)) return v.concerts;\n    return null;\n  }\n\n  function readInline() {\n    var el = document.getElementById('luce-concerts-data');\n    if (!el) return null;\n    try { return asList(JSON.parse(el.textContent || '[]')); }\n    catch (e) { console.warn('[Luce di Candela] B\u0142\u0119dny JSON w #luce-concerts-data:', e.message); return null; }\n  }\n\n  function readLocal() {\n    try { return asList(JSON.parse(localStorage.getItem(LS_KEY) || 'null')); }\n    catch (e) { return null; }\n  }\n\n  function fetchSrc(url) {\n    if (!url || typeof fetch !== 'function') return Promise.resolve(null);\n    return fetch(url, { cache: 'no-store' })\n      .then(function (r) { return r.ok ? r.json() : null; })\n      .then(asList)\n      .catch(function () { return null; });\n  }\n\n  function nonEmpty(list) { return list && list.length ? list : null; }\n\n  \/** Kolejno\u015b\u0107 \u017ar\u00f3de\u0142: ?podglad \u2192 localStorage; potem inline \u2192 data-src \u2192 localStorage. *\/\n  function load(section) {\n    var preview = \/[?&]podglad(=|&|$)\/.test(location.search);\n    var src = section.getAttribute('data-src');\n    var local = nonEmpty(readLocal());\n\n    if (preview && local) return Promise.resolve({ list: local, source: 'localStorage', preview: true });\n\n    var inline = nonEmpty(readInline());\n    if (inline) return Promise.resolve({ list: inline, source: 'inline' });\n\n    return fetchSrc(src).then(function (remote) {\n      if (nonEmpty(remote)) return { list: remote, source: 'src' };\n      if (local) return { list: local, source: 'localStorage', preview: true };\n      return { list: [], source: 'none' };\n    });\n  }\n\n  \/** Filtruje minione, sortuje rosn\u0105co. Zwraca [{c, when}]. *\/\n  function prepare(list, now) {\n    now = now || new Date();\n    return list\n      .map(function (c) { return { c: c, when: parseWhen(c) }; })\n      .filter(function (x) { return x.when && !isNaN(x.when) && isUpcoming(x.when, now); })\n      .sort(function (a, b) { return a.when - b.when; });\n  }\n\n  function rowHTML(x, now, fallbackTickets) {\n    var c = x.c, w = x.when;\n    var meta = [];\n    if (c.time) meta.push('<b>' + esc(c.time) + '<\/b>');\n    var place = [c.venue, c.city].filter(Boolean).join(', ');\n    if (place) meta.push(esc(place));\n    if (c.address) meta.push(esc(c.address));\n    if (c.performer) meta.push(esc(c.performer));\n\n    var thumb = c.cover\n      ? '<div class=\"ldc-crow__thumb\"><img decoding=\"async\" src=\"' + esc(c.cover) + '\" alt=\"\" loading=\"lazy\"><\/div>'\n      : '<div class=\"ldc-crow__thumb ldc-crow__thumb--empty\" aria-hidden=\"true\"><\/div>';\n\n    var action;\n    if (c.soldOut) {\n      action = '<span class=\"ldc-tag\">Wyprzedane<\/span>';\n    } else if (c.tickets) {\n      action = '<a class=\"ldc-btn ldc-btn--sm\" href=\"' + esc(c.tickets) + '\" target=\"_blank\" rel=\"noopener\"><span>Kup bilet<\/span><\/a>';\n    } else if (fallbackTickets) {\n      action = '<a class=\"ldc-btn ldc-btn--sm ldc-btn--ghost\" href=\"' + esc(fallbackTickets) + '\" target=\"_blank\" rel=\"noopener\"><span>Bilety wkr\u00f3tce<\/span><\/a>';\n    } else {\n      action = '<span class=\"ldc-tag\">Bilety wkr\u00f3tce<\/span>';\n    }\n    var today = isSameDay(w, now) ? '<span class=\"ldc-tag ldc-tag--today\">Dzi\u015b<\/span>' : '';\n\n    var title = c.tickets && !c.soldOut\n      ? '<a href=\"' + esc(c.tickets) + '\" target=\"_blank\" rel=\"noopener\">' + esc(c.title) + '<\/a>'\n      : esc(c.title);\n\n    return '<article class=\"ldc-crow\" data-reveal style=\"--i:' + (x.i % 6) + '\">' +\n      '<div class=\"ldc-crow__date\"><time datetime=\"' + esc(c.date) + (c.time ? 'T' + esc(c.time) : '') + '\">' +\n        '<span class=\"ldc-crow__day\">' + w.getDate() + '<\/span>' +\n        '<span class=\"ldc-crow__mon\">' + MONTHS_SHORT[w.getMonth()] + ' \u00b7 ' + DAYS_SHORT[w.getDay()] + '<\/span>' +\n      '<\/time><\/div>' +\n      thumb +\n      '<div class=\"ldc-crow__body\">' +\n        '<h3>' + title + '<\/h3>' +\n        (meta.length ? '<p class=\"ldc-crow__meta\">' + meta.join('<span aria-hidden=\"true\">\u00b7<\/span>') + '<\/p>' : '') +\n        (c.description ? '<p class=\"ldc-crow__desc\">' + esc(c.description) + '<\/p>' : '') +\n      '<\/div>' +\n      '<div class=\"ldc-crow__act\">' + today + action + '<\/div>' +\n    '<\/article>';\n  }\n\n  function emptyHTML(fallbackTickets) {\n    return '<div class=\"ldc-cempty\" data-reveal>' +\n      '<h3>Nowe terminy <span class=\"ldc-i\">og\u0142osimy<\/span> wkr\u00f3tce.<\/h3>' +\n      '<p>Pracujemy nad kolejn\u0105 tras\u0105. \u015aled\u017a nas na Facebooku i Instagramie \u2013 tam pojawiaj\u0105 si\u0119 pierwsze zapowiedzi.<\/p>' +\n      (fallbackTickets ? '<a class=\"ldc-btn ldc-btn--ghost\" href=\"' + esc(fallbackTickets) + '\" target=\"_blank\" rel=\"noopener\"><span>Wszystkie koncerty Konesera<\/span><\/a>' : '') +\n    '<\/div>';\n  }\n\n  \/** Renderuje list\u0119 do kontenera. Mo\u017cna wywo\u0142a\u0107 r\u0119cznie: LuceConcerts.render(lista). *\/\n  function render(list, opts) {\n    opts = opts || {};\n    var section = opts.section || document.querySelector('[data-luce-concerts]');\n    var box = opts.container || (section && section.querySelector('#ldc-clist, .ldc-clist'));\n    if (!box) return;\n    var now = opts.now || new Date();\n    var fallback = section ? section.getAttribute('data-tickets-fallback') : '';\n\n    var items = prepare(list || [], now);\n    if (!items.length) {\n      box.innerHTML = emptyHTML(fallback);\n    } else {\n      var html = '', lastKey = '';\n      items.forEach(function (x, i) {\n        x.i = i;\n        var key = x.when.getFullYear() + '-' + x.when.getMonth();\n        if (key !== lastKey) {\n          html += '<h3 class=\"ldc-month\">' + MONTHS_NOM[x.when.getMonth()] + ' ' + x.when.getFullYear() + '<\/h3>';\n          lastKey = key;\n        }\n        html += rowHTML(x, now, fallback);\n      });\n      box.innerHTML = html;\n    }\n    if (opts.preview) {\n      box.insertAdjacentHTML('beforeend', '<p class=\"ldc-csource\">Podgl\u0105d danych z panelu (localStorage) \u2014 nieopublikowane<\/p>');\n    }\n    if (window.LuceUI && typeof window.LuceUI.observe === 'function') window.LuceUI.observe(box);\n    else box.querySelectorAll('[data-reveal]').forEach(function (el) { el.classList.add('is-in'); });\n  }\n\n  function init() {\n    var section = document.querySelector('[data-luce-concerts]');\n    if (!section) return;\n    load(section).then(function (res) {\n      render(res.list, { section: section, preview: !!res.preview });\n      section.setAttribute('data-source', res.source);\n    });\n  }\n\n  window.LuceConcerts = {\n    LS_KEY: LS_KEY,\n    HIDE_AFTER_HOURS: HIDE_AFTER_HOURS,\n    parseWhen: parseWhen,\n    prepare: prepare,\n    render: render,\n    load: load,\n    init: init\n  };\n\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', init);\n  else init();\n})();\n\n\/* =====================================================================\n   Luce di Candela \u2014 interfejs strony\n   nawigacja \u00b7 pojawianie przy przewijaniu \u00b7 parallax \u00b7 po\u015bwiata hero\n   p\u00f3\u0142ka program\u00f3w \u00b7 galeria (lightbox) \u00b7 wideo \u00b7 FAQ \u00b7 formularz\n   ===================================================================== *\/\n(function () {\n  'use strict';\n\n  var root = document.querySelector('.ldc-root');\n  if (!root) return;\n  var reduce = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n  var $ = function (sel, ctx) { return (ctx || document).querySelector(sel); };\n  var $$ = function (sel, ctx) { return Array.prototype.slice.call((ctx || document).querySelectorAll(sel)); };\n\n  \/* ---------- pojawianie si\u0119 element\u00f3w ---------- *\/\n  var io = ('IntersectionObserver' in window) && !reduce\n    ? new IntersectionObserver(function (entries) {\n        entries.forEach(function (e) {\n          if (e.isIntersecting) { e.target.classList.add('is-in'); io.unobserve(e.target); }\n        });\n      }, { rootMargin: '0px 0px -8% 0px', threshold: 0.08 })\n    : null;\n\n  function observe(ctx) {\n    $$('[data-reveal]', ctx || root).forEach(function (el) {\n      if (el.classList.contains('is-in')) return;\n      if (io) io.observe(el); else el.classList.add('is-in');\n    });\n  }\n  window.LuceUI = { observe: observe };\n  observe();\n  \/\/ hero pokazuje si\u0119 od razu\n  $$('.ldc-hero [data-reveal]').forEach(function (el) { el.classList.add('is-in'); });\n\n  \/* ---------- nawigacja ---------- *\/\n  var nav = $('#ldc-nav');\n  var burger = $('#ldc-burger');\n  var menu = $('#ldc-menu');\n\n  function onScrollNav() {\n    if (nav) nav.classList.toggle('is-solid', window.scrollY > 40);\n  }\n  onScrollNav();\n\n  function closeMenu() {\n    if (!menu) return;\n    menu.classList.remove('is-open');\n    menu.setAttribute('aria-hidden', 'true');\n    burger.classList.remove('is-open');\n    burger.setAttribute('aria-expanded', 'false');\n    document.documentElement.style.overflow = '';\n  }\n  if (burger && menu) {\n    burger.addEventListener('click', function () {\n      var open = !menu.classList.contains('is-open');\n      menu.classList.toggle('is-open', open);\n      menu.setAttribute('aria-hidden', String(!open));\n      burger.classList.toggle('is-open', open);\n      burger.setAttribute('aria-expanded', String(open));\n      burger.setAttribute('aria-label', open ? 'Zamknij menu' : 'Otw\u00f3rz menu');\n      document.documentElement.style.overflow = open ? 'hidden' : '';\n    });\n    $$('a', menu).forEach(function (a) { a.addEventListener('click', closeMenu); });\n    document.addEventListener('keydown', function (e) { if (e.key === 'Escape') closeMenu(); });\n  }\n\n  \/* ---------- parallax + po\u015bwiata ---------- *\/\n  var parallaxEls = $$('[data-parallax]');\n  var glow = $('.ldc-hero__glow');\n  var glowTarget = { x: 0, y: 0 }, glowPos = { x: 0, y: 0 };\n  var ticking = false;\n\n  function updateParallax() {\n    var vh = window.innerHeight;\n    parallaxEls.forEach(function (img) {\n      var box = img.parentElement.getBoundingClientRect();\n      if (box.bottom < -100 || box.top > vh + 100) return;\n      var speed = parseFloat(img.getAttribute('data-parallax')) || 0.06;\n      var center = box.top + box.height \/ 2 - vh \/ 2;\n      img.style.top = 'calc(-8% + ' + (-center * speed).toFixed(1) + 'px)';\n    });\n  }\n\n  function frame() {\n    ticking = false;\n    onScrollNav();\n    if (!reduce) updateParallax();\n  }\n  function requestFrame() { if (!ticking) { ticking = true; requestAnimationFrame(frame); } }\n  window.addEventListener('scroll', requestFrame, { passive: true });\n  window.addEventListener('resize', requestFrame);\n  requestFrame();\n\n  if (glow && !reduce && window.matchMedia('(pointer:fine)').matches) {\n    var hero = $('.ldc-hero');\n    hero.addEventListener('mousemove', function (e) {\n      var r = hero.getBoundingClientRect();\n      glowTarget.x = ((e.clientX - r.left) \/ r.width - .5) * 60;\n      glowTarget.y = ((e.clientY - r.top) \/ r.height - .5) * 40;\n    });\n    (function animateGlow() {\n      glowPos.x += (glowTarget.x - glowPos.x) * .04;\n      glowPos.y += (glowTarget.y - glowPos.y) * .04;\n      glow.style.marginLeft = glowPos.x.toFixed(1) + 'px';\n      glow.style.marginTop = glowPos.y.toFixed(1) + 'px';\n      requestAnimationFrame(animateGlow);\n    })();\n  }\n\n  \/* ---------- p\u00f3\u0142ka program\u00f3w ---------- *\/\n  var rail = $('#ldc-rail');\n  if (rail) {\n    var bar = $('#ldc-rail-bar');\n    var prev = $('[data-rail-prev]'), next = $('[data-rail-next]');\n    var detail = $('#ldc-prog-detail');\n    var tiles = $$('.ldc-tile', rail);\n\n    function updateBar() {\n      var max = rail.scrollWidth - rail.clientWidth;\n      var p = max > 0 ? rail.scrollLeft \/ max : 0;\n      var w = Math.max(8, rail.clientWidth \/ rail.scrollWidth * 100);\n      if (bar) { bar.style.width = w + '%'; bar.style.transform = 'translateX(' + (p * (100 \/ w) * (100 - w)) + '%)'; }\n      if (prev) prev.disabled = rail.scrollLeft < 4;\n      if (next) next.disabled = rail.scrollLeft > max - 4;\n    }\n    rail.addEventListener('scroll', updateBar, { passive: true });\n    window.addEventListener('resize', updateBar);\n    updateBar();\n\n    function step(dir) {\n      var tile = tiles[0];\n      var w = tile ? tile.getBoundingClientRect().width + 18 : rail.clientWidth * .6;\n      rail.scrollBy({ left: dir * w * 2, behavior: reduce ? 'auto' : 'smooth' });\n    }\n    if (prev) prev.addEventListener('click', function () { step(-1); });\n    if (next) next.addEventListener('click', function () { step(1); });\n\n    function openProgramme(tile) {\n      var isSame = tile.classList.contains('is-active');\n      tiles.forEach(function (t) { t.classList.remove('is-active'); });\n      if (isSame) { detail.classList.remove('is-open'); return; }\n      tile.classList.add('is-active');\n      $('#ldc-prog-title').textContent = $('h3', tile).textContent;\n      $('#ldc-prog-genre').textContent = tile.getAttribute('data-genre') || '';\n      $('#ldc-prog-desc').textContent = tile.getAttribute('data-desc') || '';\n      var rep = $('#ldc-prog-rep');\n      rep.innerHTML = '';\n      $$('.ldc-tile__rep li', tile).forEach(function (li) {\n        var parts = li.textContent.split(' \u2013 ');\n        var item = document.createElement('li');\n        if (parts.length > 1) {\n          item.innerHTML = '<em>' + parts[0].replace(\/<\/g, '&lt;') + '<\/em><br>' + parts.slice(1).join(' \u2013 ').replace(\/<\/g, '&lt;');\n        } else item.textContent = li.textContent;\n        rep.appendChild(item);\n      });\n      var wasOpen = detail.classList.contains('is-open');\n      detail.classList.add('is-open');\n      if (!wasOpen) {\n        setTimeout(function () {\n          var top = detail.getBoundingClientRect().top + window.scrollY - 110;\n          window.scrollTo({ top: top, behavior: reduce ? 'auto' : 'smooth' });\n        }, 120);\n      }\n    }\n    tiles.forEach(function (t) { t.addEventListener('click', function () { openProgramme(t); }); });\n    var close = $('#ldc-prog-close');\n    if (close) close.addEventListener('click', function () {\n      detail.classList.remove('is-open');\n      tiles.forEach(function (t) { t.classList.remove('is-active'); });\n    });\n  }\n\n  \/* ---------- galeria: \u201ePoka\u017c wi\u0119cej zdj\u0119\u0107\u201d ---------- *\/\n  var gmore = $('#ldc-gmore'), ggrid = $('#ldc-ggrid');\n  if (gmore && ggrid) {\n    gmore.addEventListener('click', function () {\n      ggrid.classList.add('is-open');\n      gmore.setAttribute('aria-expanded', 'true');\n      observe(ggrid);\n      requestFrame();\n    });\n  }\n\n  \/* ---------- galeria: lightbox ---------- *\/\n  var lb = $('#ldc-lb');\n  if (lb) {\n    var lbImg = $('img', lb);\n    function openLb(src, alt) {\n      lbImg.src = src; lbImg.alt = alt || '';\n      lb.classList.add('is-open'); lb.setAttribute('aria-hidden', 'false');\n      document.documentElement.style.overflow = 'hidden';\n    }\n    function closeLb() {\n      lb.classList.remove('is-open'); lb.setAttribute('aria-hidden', 'true');\n      document.documentElement.style.overflow = '';\n    }\n    $$('.ldc-gfig').forEach(function (fig) {\n      fig.addEventListener('click', function () {\n        var img = $('img', fig);\n        openLb(img.currentSrc || img.src, img.alt);\n      });\n    });\n    lb.addEventListener('click', function (e) { if (e.target !== lbImg) closeLb(); });\n    $('#ldc-lb-close').addEventListener('click', closeLb);\n    document.addEventListener('keydown', function (e) { if (e.key === 'Escape') closeLb(); });\n  }\n\n  \/* ---------- wideo (YouTube, \u0142adowane po klikni\u0119ciu) ---------- *\/\n  var video = $('#ldc-video');\n  if (video) {\n    video.addEventListener('click', function () {\n      var id = (video.getAttribute('data-video') || '').trim();\n      if (!id) return;\n      var src = \/^https?:\\\/\\\/\/.test(id)\n        ? id\n        : 'https:\/\/www.youtube-nocookie.com\/embed\/' + encodeURIComponent(id) + '?autoplay=1&rel=0';\n      var iframe = document.createElement('iframe');\n      iframe.src = src;\n      iframe.allow = 'autoplay; encrypted-media; picture-in-picture';\n      iframe.setAttribute('allowfullscreen', '');\n      iframe.title = 'Zapowied\u017a wideo Luce di Candela';\n      video.innerHTML = '';\n      video.appendChild(iframe);\n      video.style.cursor = 'default';\n    }, { once: true });\n  }\n\n  \/* ---------- FAQ: jedno otwarte naraz (dla przegl\u0105darek bez atrybutu name) ---------- *\/\n  var faqItems = $$('.ldc-faq__item');\n  faqItems.forEach(function (d) {\n    d.addEventListener('toggle', function () {\n      if (d.open) faqItems.forEach(function (o) { if (o !== d) o.open = false; });\n    });\n  });\n\n  \/* ---------- formularz \u2192 gotowy e-mail ---------- *\/\n  var form = $('#ldc-form');\n  if (form) {\n    form.addEventListener('submit', function (e) {\n      e.preventDefault();\n      var name = form.name.value.trim(), email = form.email.value.trim(), msg = form.message.value.trim();\n      var topic = form.topic.value.trim() || 'Pytanie ze strony Luce di Candela';\n      var invalid = [];\n      if (!name) invalid.push(form.name);\n      if (!email || !\/^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$\/.test(email)) invalid.push(form.email);\n      if (!msg) invalid.push(form.message);\n      $$('input,textarea', form).forEach(function (f) { f.style.borderBottomColor = ''; });\n      if (invalid.length) { invalid.forEach(function (f) { f.style.borderBottomColor = '#e2542a'; }); invalid[0].focus(); return; }\n      var to = form.getAttribute('data-mailto') || 'info@kulturalnykoneser.pl';\n      var body = msg + '\\n\\n\u2014 ' + name + '\\n' + email;\n      window.location.href = 'mailto:' + to + '?subject=' + encodeURIComponent(topic) + '&body=' + encodeURIComponent(body);\n      form.classList.add('is-sent');\n    });\n  }\n\n  \/* ---------- rok w stopce ---------- *\/\n  var year = $('#ldc-year');\n  if (year) year.textContent = String(new Date().getFullYear());\n})();\n\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>O koncertach Koncerty Programy Galeria FAQ Kontakt Kup bilet O koncertach Koncerty Programy Galeria FAQ Kontakt Kup bilet Koncerty przy \u015bwiecach Muzyka na \u017cywo w blasku tysi\u0105ca \u015bwiec. Instrumentalne koncerty w niepowtarzalnych miejscach \u2013 od klasyki i muzyki filmowej po najwi\u0119ksze przeboje pop, w aran\u017cacji na kwartet smyczkowy. Nadchodz\u0105ce koncerty Poznaj programy O koncertach Wiecz\u00f3r, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"_eb_attr":"","footnotes":""},"class_list":["post-98","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/lucedicandela.pl\/index.php?rest_route=\/wp\/v2\/pages\/98","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lucedicandela.pl\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lucedicandela.pl\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lucedicandela.pl\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lucedicandela.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=98"}],"version-history":[{"count":29,"href":"https:\/\/lucedicandela.pl\/index.php?rest_route=\/wp\/v2\/pages\/98\/revisions"}],"predecessor-version":[{"id":142,"href":"https:\/\/lucedicandela.pl\/index.php?rest_route=\/wp\/v2\/pages\/98\/revisions\/142"}],"wp:attachment":[{"href":"https:\/\/lucedicandela.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=98"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}